Objetivos
Kit de inicio para seguir el curso
.
Kit de inicio a mBlock
Para poder seguir este curso te recomendamos que compres nuestro kit de inicio mBlock.
El sensor de temperatura y humedad DHT11
Una de las cosas bonitas de Arduino es que podemos usarlo para interactuar con nuestro entorno. En este caso vamos a utilizarlo para leer la temperatura y la humedad del lugar en el que estemos. Para ello vamos a utilizar el sensor DHT11, que es ese cuadrado grande azul que tiene nuestra placa.
Hemos preparado unos bloques muy sencillos para utilizarlos, que nos dan directamente los valores de temperatura o humedad. Tenemos un bloque para cada medida, que podemos usar para lo que queramos..
Mostrar temperatura y humedad
En la sesión anterior ya vimos cómo podemos hacer para mostrar valores del Arduino en la pantalla de mBlock. Si queremos mostrar la temperatura y humedad es igual de sencillo. Utilizamos el bloque para mostrar mensajes y metemos dentro los bloques del sensor.
Necesitamos uno para cada bloque si queremos mostrar las dos cosas. Además de eso, tenemos que meterlo todo en un bloque «por siempre» y ponerle un bloque de esperar para que lo muestre, por ejemplo, una vez por segundo. Esto ya lo tenéis que tener dominado.
Y si queréis, podemos poner delante de cada valor a qué medida pertenece. Como veis, a veces se ve un poco feo, pero poniendo un poco de nuestra parte se lee perfectamente.
- Recordad que para que se vean los valores en el monitor tenemos que ir a «Conectar» y volver a seleccionar el puerto serie al que tenemos conectado nuestro Arduino.
- Podéis hacer que varíe la temperatura y la humedad poniendo vuestro dedo en el sensor o echándole un poco el aliento.
Creando una alarma de temperatura
Ya tenemos los valores de temperatura y humedad, ahora vamos a hacer algo con ellos. Se nos ha ocurrido que podríamos hacer una alarma de temperatura utilizando los leds para avisarnos si sube o baja demasiado. La idea es que cuando suba mucho la temperatura, se encienda el led de color rojo, y cuando baje demasiado el azul.
Así que podemos aprovechar el programa anterior y simplemente añadir la parte de la alarma. Así podremos seguir consultando los valores en el monitor.
Vamos a empezar por la alarma para cuando baja demasiado la temperatura. Tenemos que utilizar un bloque «si …» en el que compararemos el valor de temperatura con el límite que pongamos. Para esta comparación vamos a usar el bloque «… < …» que nos dice si la parte de la izquierda es menor que la de la derecha.
Por eso metemos en la parte de la izquierda el valor de temperatura del sensor, y en la derecha el límite bajo de temperatura.
Y dentro de la condición metemos lo que queremos que haga si se cumple, que se encienda el led azul y que el rojo permanezca apagado.
- Lo mejor es que elijáis límites cercanos al valor que hayáis medido en el apartado anterior, para poder hacer que varíe un poco y comprobar que funcione la alarma.
Ahora tenemos que hacer lo mismo pero con el límite superior. Es prácticamente igual, pero usaremos el bloque «… > …» (mayor que), y dentro de la condición hacemos lo contrario; encendemos el led rojo y apagamos el azul.
Podríamos pensar que está terminado, pero no, nos falta hacer que se apaguen las dos luces si la temperatura está dentro de los límites. Para ello tenemos que hacer una condición doble, y eso lo hacemos con el bloque «… y …».
Metiendolo en un condicional «si …» podemos hacer que se tengan que cumplir dos condicones, en este caso que la temperatura sea más baja de 27ºC y más alta de 23ºC.
Y ahora si sois capaces de hacer que varíe la temperatura deberíais poder ver cómo se encienden los leds cuando sobrepasamos las temperaturas que hemos puesto como límite. Si no conseguís que las temperaturas cambien tanto, podéis meter otros límites a mano y cargar el programa de nuevo.
Resumen de la sesión
En esta sesión hemos aprendido varias cosas importantes: