ESP8266 - DHT22
Este tutorial explica cómo usar el ESP8266 para leer la temperatura y la humedad del sensor DHT22. En detalle, aprenderemos:
- Cómo conectar el ESP8266 al sensor DHT22
- Cómo programar el ESP8266 para leer la temperatura y la humedad de un DHT22
Hardware Requerido
Or you can buy the following kits:
| 1 | × | DIYables Sensor Kit (30 sensors/displays) | |
| 1 | × | DIYables Sensor Kit (18 sensors/displays) |
Acerca del sensor DHT22 de temperatura y humedad
Esquema de pines del sensor de temperatura y humedad
El DHT22 que se comercializa en el mercado viene en dos formas: sensor y módulo.
Los sensores DHT22 tienen cuatro pines:
- Pin GND: debe conectarse a GND (0 V)
- Pin VCC: debe conectarse a VCC (5 V)
- Pin DATA: se utiliza para la comunicación entre el sensor y el ESP8266
- Pin NC: No conectado; este pin puede ignorarse

El módulo DHT22 tiene tres pines:
- Pin GND (-): debe conectarse a GND (0V)
- Pin VCC (+): debe conectarse a VCC (5V)
- Pin OUT: se utiliza para la comunicación entre el sensor y el ESP8266
※ Nota:
La disposición de los pines en un módulo puede variar dependiendo del fabricante. Es IMPERATIVO utilizar las etiquetas impresas en el módulo como referencia. ¡Asegúrese de mirar detenidamente!
Diagrama de Cableado
ESP8266 - Cableado del sensor DHT22
Se requiere una resistencia con un valor entre 5 kΩ y 10 kΩ para mantener la línea de datos en un nivel alto, lo que permite la comunicación entre el sensor y el ESP8266.

This image is created using Fritzing. Click to enlarge image
Para obtener m\u00e1s informaci\u00f3n, consulte Pines del ESP8266 y c\u00f3mo alimentar ESP8266 y otros componentes.
ESP8266 - Cableado del Módulo DHT22
La mayoría de los módulos de sensor DHT22 tienen una resistencia integrada, lo que elimina la necesidad de cableado o soldadura adicional.

This image is created using Fritzing. Click to enlarge image
Cómo programar para el sensor de temperatura DHT22
- Para empezar, la biblioteca debe incluirse:
- Especifique el pin del ESP8266 al que está conectado el sensor DHT22.
- Especificar el tipo de sensor: DHT22
- Crear un objeto DHT.
- Comience la configuración del sensor:
- Lee el valor de la humedad.
- Lee la temperatura en grados Celsius.
- Lee la temperatura en Fahrenheit.
Código ESP8266 para DHT22
Pasos R\u00e1pidos
Para empezar con ESP8266 en el IDE de Arduino, siga estos pasos:
- Consulte el tutorial cómo configurar el entorno para ESP8266 en Arduino IDE si es la primera vez que usa ESP8266.
- Conecte los componentes tal como se muestra en el diagrama.
- Conecte la placa ESP8266 a su ordenador usando un cable USB.
- Abra el Arduino IDE en su ordenador.
- Elija la placa ESP8266 correcta, como (p. ej. NodeMCU 1.0 (ESP-12E Module)), y su puerto COM correspondiente.
- Conecte un cable USB al ESP8266 y al PC.
- Abra el Arduino IDE, seleccione la placa y el puerto correctos.
- Haga clic en el icono de Bibliotecas en la barra izquierda del Arduino IDE.
- Busque «DHT», y luego localice la biblioteca de sensores DHT de Adafruit.
- Presione el botón Instalar para completar la instalación.

- Se le pedirá que instale algunas dependencias de bibliotecas adicionales.
- Para instalar todas estas bibliotecas, haga clic en el botón Instalar todo.

- Copia el código que corresponde al sensor que tienes y ábrelo con el IDE de Arduino.
- Haz clic en el botón Subir en el IDE de Arduino para compilar y subir el código al ESP8266.
- Cambia la temperatura del entorno alrededor del sensor.
- Consulta el resultado en el monitor serie.
Video Tutorial
Estamos considerando crear tutoriales en video. Si considera que los tutoriales en video son importantes, suscríbase a nuestro canal de YouTube para motivarnos a crear los videos.
Conocimientos Adicionales
Comparemos los sensores DHT11 y DHT22.
Los puntos en común entre DHT11 y DHT22
- Las asignaciones de pines permanecen iguales.
- El cableado hacia el ESP8266 no ha sido modificado.
- La programación, con el uso de una biblioteca, es comparable; solo se necesita modificar una línea de código.
Las diferencias entre el DHT11 y el DHT22
| DHT11 | DHT22 | |
|---|---|---|
| Price | ultra low cost | low cost |
| Temperature Range | 0°C to 50°C | -40°C to 80°C |
| Temperature Accuracy | ± 2°C | ± 0.5°C |
| Humidity Range | 20% to 80% | 0% to 100% |
| Humidity Accuracy | 5% | ± 2 to 5% |
| Reading Rate | 1Hz (once every second) | 0.5Hz (once every 2 seconds) |
| Body size | 15.5mm x 12mm x 5.5mm | 15.1mm x 25mm x 7.7mm |
Evidentemente, el DHT22 es más preciso que el DHT11, tiene un rango de mediciones más amplio y, sin embargo, cuesta más.