Beruflich Dokumente
Kultur Dokumente
Prcticas
[Escriba el subttulo del documento]
Alexandru
[Seleccione la fecha]
Bloque 1
En este bloque se recopilan y se explican los hitos (del 1.1 hasta 1.14)
realizados el primer da de prcticas. Los cdigos estn en el fichero .zip
entregado, dentro de la carpeta Hitos 1.
Hito 1.1
El hito consiste en entender la funcin de void setup(), mediante la
elaboracin de un cdigo.
Cdigo
Hito 1.2
Manejar entradas digitales mediante la funcin digitalWrite para ello se
elabor un cdigo que en enciende un led y tras 8 segundos lo apaga y
enciende otro que a su vez se apaga tras 8 segundos.
Cdigo
Hito 1.3
Utilizar la funcin digitalRead, para leer el valor de un pin digital y utilizar
ese valor.
Se hizo un programa que encendiera un led cuando se accionara el botn.
Cuando el botn estuviese en su estado de no accin el led deba estar
apagado
Cdigo
Hito 1.4
El objetivo es el mismo que en el apartado anterior, no obstante en este
caso se debe utilizar la funcin analogRead, que lee el valor de la entrada
de pines analgicos.
El programa leer el valor de un dial conectado a un pin analgico, y
mostrar el valor en pantalla.
Cdigo
Hito 1.5
Para este hito se debe utilizar la funcin delay (). Esta funcin sirve para
retrasar un tiempo determinado una accin que realizar el programa.
El programa har parpadear un led, es decir encender y apagar un led
cada segundo.
Cdigo
Hito 1.6
Devolver el tiempo en milisegundos transcurrido desde que arranc el
programa en la placa de Arduino.
El programa ir mostrando en pantalla cada el tiempo que lleva funcionando
el programa, con actualizaciones cada segundo.
Cdigo
Hito 1.7
El objetivo es la utilizacin de funciones matemticas min, max, abs, sq
Para cumplir el objetivo se realiz un programa que comparaba valores
numricos introducidos por el usuario (a, b,) y se mostraba en pantalla:
El
El
El
El
nmero ms grande
nmero ms pequeo
valor absoluto de primero
cuadrad del primero
Cdigo
El resultado
Hito 1.8
En este apartado se deba utilizar las funciones if, else, else if. Para la
elaboracin de condiciones dentro del cdigo.
Para ello se escribi un cdigo que al ejecutarse leera el valor de un pin
analgico y mostrara en pantalla 3 estados.
Cdigo
Hito 1.9
En este hito se debe utilizar un bucle for . Para ello se escribi un cdigo
con un bucle for que cada vez que va aumentando la intensidad de un led
cada x tiempo
Cdigo
Hito 1.10
El fin de este hito es la utilizacin de un bucle while y entender su
funcionamiento, para ello se escribi el siguiente cdigo.
El programa entra en el bucle while y se enciende un led, cada vez que se
actualiza el bucle el contador aumenta hasta un valor lmite puesto en la
condicin del while cuando se alcanza ese valor, se sale del bucle y se
apaga el led.
Cdigo
Hito 1.11
El objetivo de este hito es utilizar los comandos Series.println para enviar
informacin en pantalla (desde la placa). Leer resultados.
Cdigo
Resultado
Hito 1.12
En este hito el objetivo es la utilizacin del puerto series para introducir
datos al sistema mediante la funcin Serial.read()
Se escribi un cdigo que al introducir un nmero en el COM, se mostraba
en pantalla el valor de ese nmero en cdigo ASCII.
Cdigo
Resultado
Hito 1.13
En este apartado se tiene que tratar de entender el cdigo proporcionado en
el guion y responder a las preguntas.
Cdigo
Preguntas
1. Cundo se visualiza algo en pantalla?
Al introducir cualquier carcter en el COM.
2. Qu utiliza para concatenar strings?
Se utiliza un bucle while que va aadiendo caracteres a una variable tipo
string mediante la operacin +=
3. Se te ocurre otro modo con vectores de caracteres?
Almacenando los caracteres ledos en un vector
Hito 1.14
Leer una cadena de caracteres que representa un nmero de ms de dos
dgitos a travs del puerto serie, imprimir por pantalla el nmero y operar
con el nmero
Cdigo
Resultado
Bloque 3
En este bloque de las prcticas se nos propuso disear un sistema
domtico, utilizando el Kit Grove de Arduino. Nosotros decidimos disear
una alarma que identifique al usuario mediante un cdigo de seguridad, que
bautizamos como ALARMA 64705.
Diagrama de bloques
A continuacin se representa el diagrama de bloques del sistema.
Comportamiento
Cuando el sistema est activado y funcionando si el sensor de presencia no detecta movimiento, no ocurre nada, en cambio si
detecta movimiento mostrar en pantalla un mensaje pidiendo el cdigo de seguridad, que se deber introducir.
Si el cdigo es correcto se activarn los siguientes procesos:
Si el cdigo introducido es errneo se pedir al usuario que vuelva a introducir el cdigo entonces:
Si el cdigo que se ha vuelto a introducir es correcto se realizarn las acciones descritas en el apartado anterior
Si no es correcto:
o Se activar un buzzer en seal de alarma
o Se activar dos leds rojos que parpadean
o Se muestra en pantalla el siguiente mensaje Intruso detectado
Pseudocdigo
A continuacin viene expuesto el pseudocdigo del sistema, que se realiz antes de empezar a programar en Arduino.
Inicio
Declaracin de variables.
Sensor presenciaConectado
Sensor luzConectado
Sensor temperaturaConectado
Led verdeConectado
Led rojo1Conectado
Led rojo2Conectado
Variable 0
Cdigo0
Subrutina correcto
Mostrar en pantalla (Bienvenido a casa)
Encender led verde
Mostrar en pantalla la temperatura
Leer sensor de luza
S.luzValor sensor luz
Si <S.Luz=bajo>
o Encender led verde
SI no
Dejarlo tal cual
Fin si
Cuerpo (estamos en el void, es decir, esto se repetir todo el rato)
S.presencia Valor ledo del sensor de presencia
Mientras <S.presencia >0 y Variable =0>
Mostrar en pantalla (Introduzca cdigo)
Codigo cdigo introducido por el usuario
SI <Codigo=5321>
Llamar funcin correcto
SI no
Mostrar en pantalla (Introduzca cdigo)
Codigo cdigo introducido por el usuario
SI <Codigo=5321>
Llamar funcin correcto
Si no
Mostrar en pantalla (Sistema bloqueado)
Variable1
Encender alarma sonora
Hacer parpadear luces rojas
Fin si
Fin si
Fin mientras
Declaracin de variables
En esta primera parte se especifica a que pines digitales o analgicos se han conectado cada componente del sistema.
Adems se han declarado distintas variables que se utilizan en el cdigo. Las variables para temperatura son parmetros que
se necesitan para mostrar el valor que lee el sensor en grados Celsius. Las variables para la luz, es el parmetro que se utiliza
para comparar con el dato que lee el sensor y encender o apagar las luces.
Void setup
Aqu se ha declarado los distintos pines si son de entrada o salida, y se ha inicializado el Serial.
Funcin correcto
Void loop