ESP32 - DHT22

Este tutorial explica cómo usar ESP32 para leer la temperatura y la humedad del sensor DHT22 y mostrarla en el Monitor Serial. El tutorial proporciona instrucciones tanto para el sensor DHT22 como para el módulo DHT22.

Acerca del sensor de temperatura y humedad DHT22

DHT22
Operating Voltage3 to 5V
The humidity range 0% to 100%
The humidity accuracy ± 2% to 5%
The temperature range -40°C to 80°C
The temperature accuracy ± 0.5°C
The reading rate 0.5Hz (one time per 2 seconds)

Pinout del DHT22

DHT22 tiene dos formas: sensor sin procesar y módulo:

Pinout del módulo de sensor DHT22

El sensor DHT22 incluye 4 pines:

  • Pin GND: conecte este pin a GND (0V)
  • Pin VCC: conecte este pin a VCC (3.3V o 5V)
  • Pin DATA: el pin se utiliza para comunicar entre el sensor y el ESP32
  • Pin NC: No conectado

Recomendamos encarecidamente utilizar el módulo DHT22. Los módulos tienen una resistencia integrada y solo tienen tres pines: VCC, GND y DATA (o, alternativamente: +, -, y OUT).

Diagrama de cableado entre DHT22 y ESP32

ESP32 - Cableado del sensor DHT22

Conecte una resistencia de entre 5 kΩ y 10 kΩ entre el sensor DHT22 y el ESP32 para mantener la línea de datos en alto y habilitar la comunicación. Necesitamos usar una placa de pruebas.

Diagrama de cableado del sensor de temperatura y humedad DHT22 para ESP32

This image is created using Fritzing. Click to enlarge image

Si no sabe c\u00f3mo alimentar ESP32 y otros componentes, encuentre instrucciones en el siguiente tutorial: C\u00f3mo alimentar ESP32.

Cableado del módulo ESP32-DHT22

La mayoría de los módulos de sensores DHT22 incluyen una resistencia integrada, por lo que no es necesario añadir otra. Esto facilita el cableado o el proceso de soldadura.

  • Cómo conectar ESP32 y el módulo de temperatura y humedad DHT22 usando placa de pruebas
Diagrama de cableado del módulo ESP32 DHT22 de temperatura y humedad

This image is created using Fritzing. Click to enlarge image

Cómo conectar el ESP32 y el módulo DHT22 de temperatura y humedad

Código ESP32 - DHT22

/* * Este código de ESP32 fue desarrollado por es.newbiely.com * Este código de ESP32 se proporciona al público sin ninguna restricción. * Para tutoriales completos y diagramas de cableado, visite: * https://es.newbiely.com/tutorials/esp32/esp32-dht22 */ #include <DHT.h> #define DHT22_PIN 21 // ESP32 pin GPIO21 connected to DHT22 sensor DHT dht22(DHT22_PIN, DHT22); void setup() { Serial.begin(9600); dht22.begin(); // initialize the DHT22 sensor } void loop() { // read humidity float humi = dht22.readHumidity(); // read temperature in Celsius float tempC = dht22.readTemperature(); // read temperature in Fahrenheit float tempF = dht22.readTemperature(true); // check whether the reading is successful or not if ( isnan(tempC) || isnan(tempF) || isnan(humi)) { Serial.println("Failed to read from DHT22 sensor!"); } else { Serial.print("Humidity: "); Serial.print(humi); Serial.print("%"); Serial.print(" | "); Serial.print("Temperature: "); Serial.print(tempC); Serial.print("°C ~ "); Serial.print(tempF); Serial.println("°F"); } // wait a 2 seconds between readings delay(2000); }

Pasos R\u00e1pidos

  • Si es la primera vez que usas ESP32, consulta cómo configurar el entorno para ESP32 en Arduino IDE.
  • Haz el cableado como en la imagen anterior.
  • Conecta la placa ESP32 a tu PC mediante un cable USB micro
  • Abre Arduino IDE en tu PC.
  • Selecciona la placa ESP32 correcta (por ejemplo ESP32 Dev Module) y el puerto COM.
  • Haz clic en el icono Bibliotecas en la barra izquierda del Arduino IDE.
  • Escribe “DHT” en el cuadro de búsqueda, luego busca la biblioteca de sensores DHT de Adafruit
  • Instala la biblioteca haciendo clic en el botón Instalar.
Biblioteca de sensores DHT para ESP32
  • Una ventana aparece pidiéndole que instale las dependencias de la biblioteca
  • Instale todas las dependencias de la biblioteca haciendo clic en el botón Instalar todo.
Biblioteca de sensores unificados de Adafruit para ESP32
  • Copia uno de los códigos anteriores y ábrelo con Arduino IDE
  • Compila y sube el código a la placa ESP32 haciendo clic en el botón Subir en Arduino IDE
  • Haz que el sensor esté más frío o más caliente. Por ejemplo, coloca el sensor cerca de una taza de café caliente
  • Consulta el resultado en el Monitor Serial. Se ve como lo siguiente:
COM6
Send
Humidity: 31.00% | Temperature: 27.00°C ~ 80.60°F Humidity: 31.00% | Temperature: 27.00°C ~ 80.60°F Humidity: 31.00% | Temperature: 27.00°C ~ 80.60°F Humidity: 31.00% | Temperature: 27.00°C ~ 80.60°F Humidity: 31.00% | Temperature: 28.00°C ~ 82.40°F Humidity: 31.00% | Temperature: 28.00°C ~ 82.40°F Humidity: 31.00% | Temperature: 28.00°C ~ 82.40°F Humidity: 31.00% | Temperature: 28.00°C ~ 82.40°F Humidity: 32.00% | Temperature: 28.00°C ~ 82.40°F Humidity: 31.00% | Temperature: 29.00°C ~ 84.20°F Humidity: 32.00% | Temperature: 29.00°C ~ 84.20°F Humidity: 31.00% | Temperature: 29.00°C ~ 84.20°F
Autoscroll Show timestamp
Clear output
9600 baud  
Newline  

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.

※ NUESTROS MENSAJES

  • No dude en compartir el enlace de este tutorial. Sin embargo, por favor no use nuestro contenido en otros sitios web. Hemos invertido mucho esfuerzo y tiempo en crear el contenido, ¡por favor respete nuestro trabajo!