Sensor DHT11: Determinación del grado de confort de una habitación

Prácticas con DASA

Título de la práctica:Sensor DHT11: Determinación del grado de confort de una habitación
Objetivo:El alumno utilice la estructura de control condicional para determinar el grado de confort de una habitación a partir de la temperatura y humedad registrados por medio del sensor de humedad DHT11.
Tiempo estimado:50 minutos
Nivel de dificultad:Avanzado
Autor:Miguel Angel Bañuelos Saucedo

Introducción

Dos de los aspectos que más influyen en el grado de confort de un ambiente de trabajo son la temperatura y la humedad. El sensor DHT11 permite medir temperaturas entre 0 °C y 50 °C y humedades relativas entre 20% y 90%. Ambos parámetros, temperatura y humedad, también son útiles en la operación de plantas industriales, sistemas de cultivo de invernadero, almacenes de productos, etc. 

Materiales

Programas

Arduino IDE. Disponible en: https://www.arduino.cc/en/software

Desarrollo

En esta práctica deberás desarrollar un programa que indique mediante una señal visual (LEDs rojo, amarillo y verde), una señal auditiva (zumbador), o de texto (display LCD), el grado de confort de un ambiente de trabajo. Deberás investigar cuáles son los intervalos de temperatura y humedad que se consideran adecuados y cuáles no.

Si decides indicar el grado de confort mediante texto, requerirás utilizar el display LCD integrado en la tarjeta DASA. Si no estás familiarizado con su uso, es conveniente que revises la práctica Impresión de información con un display LCD.

Para conocer el funcionamiento del sensor de temperatura y humedad DHT11 y cómo descargar e instalar las bibliotecas necesarias para programarlo en Arduino, te invitamos a que revises el siguiente video:

Sensor de temperatura y humedad DHT11

Construcción del circuito electrónico

Conecta el sensor de temperatura y humedad DHT11 a la tarjeta DASA como se muestra en la Figura 1. Los siguientes pasos detallan el proceso:

  1. Introduce los tres pines del sensor DHT11en la protoboard.
  2. La terminal del sensor DHT11 marcada con la letra D corresponde a la línea de datos digitales. Toma un cable jumper macho-macho y conecta esta terminal a la línea D6 del header de la tarjeta DASA.
  3. Toma otro cable macho-macho y conecta la terminal del sensor DHT11 marcada con la letra G a la línea GND del header de la tarjeta DASA.
  4. Finalmente, con otro cable macho-macho conecta la terminal del sensor DHT11 marcada con la letra V a la línea VCC del header de la tarjeta DASA.
Figura 1 Conexión del sensor DHT11 a la tarjeta DASA

Nota: si no cuentas con un DASA, puedes construir el circuito electrónico mostrado en la Figura 2.

Figura 2 Diagrama de conexiones de un display LCD y un sensor DHT11 a la tarjeta Arduino UNO

Programación del circuito electrónico

Un programa básico que lee el sensor DHT11 e imprime los valores de temperatura y humedad en un display LCD se muestra a continuación:

/* LCD_DHT11
* Programa que lee un sensor DHT11
* y despliega los datos en el LCD
* Basado en el código de ejemplo
* UNAM 2021
* Se requiren las bibliotecas disponibles en:
* https://github.com/adafruit/Adafruit_Sensor
* https://github.com/adafruit/DHT-sensor-library
*
*/
#include <LiquidCrystal.h>
#include <DHT.h>   
int const DHTPIN = 6;     // Datos del sensor en D6
#include DHTTYPE DHT11   // DHT 11
DHT dht(DHTPIN, DHTTYPE);
LiquidCrystal lcd(13, 12, 11, 10, 9, 8);

void setup() {
  lcd.begin(16, 2);   // LCD es de 2 renglones y 16 caracteres
  dht.begin();
  lcd.setCursor(0,0);   // Primer renglón
  lcd.print("Temp=");
  lcd.setCursor(0,1);    // Segundo renglón
  lcd.print("HR=");
}

void loop() {
  delay(2000);  //Retardo en tre mediciónes
int h = dht.readHumidity();
  int t = dht.readTemperature();  //Lee Celsius
  lcd.setCursor(5,0);
  lcd.print(t);
  lcd.write(char(223));
  lcd.print("C");
  lcd.setCursor(3,1);
  lcd.print(h);
  lcd.print("%");
}

Investiga los valores de temperatura y humedad que se consideran intervalos de confort en un ambiente de trabajo y modifica el programa anterior para que se indique ya sea de manera visual (LEDs), acústica (zumbador) o con mensaje de texto (display LCD), si el grado de confort es malo, regular u óptimo.

Resultados

Presenta la operación de tu dispositivo a la clase y compara tu diseño con el de otros equipos.

Discusión y conclusiones

Responde las siguientes preguntas:

  1. ¿Qué aprendiste con esta práctica?
  2. ¿Cuáles fueron los rangos de valores de temperatura y humedad que utilizaste para considerar los grados de confort en el ambiente de trabajo?
  3. ¿Cuál fue el criterio que utilizaste para escoger el tipo de señal (visual, auditiva o texto)?
  4. ¿Qué aplicaciones le darías al sistema desarrollado?
  5. ¿Cómo se modificaría el sistema si se aplicara a un invernadero?

Referencias

Arduino. (2021). Language Reference. https://www.arduino.cc/reference/en/

Bañuelos, M., Pacheco, M. y Villegas, R. (2022). Dispositivo Automatizado de Sensores Arduino (DASA). Manual de usuario.