El sensor DHT22 es una opción sencilla y económica para medir la temperatura y la humedad. Se trata de un sensor calibrado al que se accede a través de una interfaz de un solo cable (MaxDetect), es decir, una línea de datos con un solo cable.
Aquí te mostramos a hacer el código y a cómo conectarlo a una placa Arduino para que muestre los valores de humedad y temperatura en un display LCD.
Materiales
Elementos y componentes
Arduino UNO
Tabla protoboard
Cable o jumpers
1 resistencia de 4.7kΩ (o aproximada)
DHT22
Display LCD
Software, aplicaciones y servicios online
Arduino IDE
Conexión DHT22 Arduino
El sensor no requiere ningún otro componente a excepción de una resistencia de 4.7kΩ y funciona con 5V.
Si colocas el sensor con la rejilla (o cuadrícula) en dirección hacia ti el pin de la izquierda (Pin 1) es el conector de 5V+, el que le sigue (Pin 2) es el pin de datos que está conectado a 5V+ a través una resistencia de 4.7kΩ. El pin de la derecha (Pin 4) es el GND o tierra.
El Pin 3 no tiene ninguna función y no es necesario considerarlo.
Instalar biblioteca de sensores DHT
La biblioteca de programas que necesitas se llama biblioteca de sensores DHT (DHT sensor library).
- La forma más fácil de instalarlo es dirigirte al menú de Arduino IDE y hacer clic en Sketch>Include Library>Manage Libraries
- En la parte superior de la ventana hay un campo de búsqueda donde tendrás que introducir «DHT»
- Ahora puedes hacer clic en la biblioteca de sensores de DHT y pulsar Instalar
Código
Este programa lee la temperatura y la humedad y las muestra en el LCD.
El sensor sólo puede hacer lecturas cada uno o dos segundos. Además, requiere un período de calentamiento de dos segundos.
include <LiquidCrystal.h>
include <DHT.h>
define DHTPIN 8
define DHTTYPE DHT22
DHT dht(DHTPIN, DHTTYPE);
LiquidCrystal lcd(12, 11, 5, 4, 3, 2);
float humidity, temperature;
void setup() {
dht.begin();
lcd.begin(16, 2);
}
void loop() {
humidity = dht.readHumidity();
temperature = dht.readTemperature();
delay(2000);
lcd.setCursor(8, 0);
lcd.print("Temperatur:");
lcd.setCursor(8, 1);
lcd.print("Humidity:");
lcd.setCursor(0, 0);
lcd.print(temperature);
lcd.setCursor(0, 1);
lcd.print(humidity);
}
Puedes modificar el código y cambiar los parámetros. Además, la propia biblioteca ofrece otras funciones útiles, como la evaluación de errores del sensor.
Si estás interesado en estas funciones adicionales, debes abrir el archivo de ejemplo en Arduino IDE siguiendo la siguiente dirección: Archivo>Ejemplos>Librería de sensores DHT>Serie.
Submit your review | |