Ir al contenido

2.11 Temperatura y humedad DHT

En este tutorial vamos a aprender cómo usar un sensor de temperatura y humedad DHT11 con el ESP32. Es lo suficientemente preciso para la mayoría de los proyectos que necesitan hacer un seguimiento de estas lecturas de forma sencilla. De nue…

En este tutorial vamos a aprender cómo usar un sensor de temperatura y humedad DHT11 con el ESP32. Es lo suficientemente preciso para la mayoría de los proyectos que necesitan hacer un seguimiento de estas lecturas de forma sencilla.

De nuevo vamos a usar una librería diseñada específicamente para estos sensores, lo que va a hacer que nuestro código sea corto y muy fácil de escribir.

Componentes necesarios:

(1) x Elegoo ESP32
(1) x Módulo de temperatura y humedad DHT11
(2) x Protoboard de 400 puntos
(4) x Cables Hembra-Macho (cables DuPont)

Introducción del componente

El sensor digital de temperatura y humedad DHT11 es un sensor compuesto que entrega una salida de señal digital calibrada. Utiliza una tecnología de recolección de módulos digitales dedicados y tecnología de detección de temperatura y humedad para garantizar una alta confiabilidad y una excelente estabilidad a largo plazo. El sensor incluye un componente resistivo para medir la humedad y un dispositivo NTC para la temperatura, conectados a un microcontrolador de 8 bits de alto rendimiento.

Aplicaciones: HVAC, deshumidificadores, equipos de prueba e inspección, bienes de consumo, automotriz, control automático, registradores de datos, estaciones meteorológicas, electrodomésticos, reguladores de humedad, equipos médicos y otros controles de medición.

Parámetros del producto

Parámetros de humedad:
Resolución: 8 bits
Repetibilidad: ±1% RH
Precisión: A 25°C ±5% RH
Estabilidad a largo plazo: < ±0.5% RH / año
Tiempo de respuesta: 1 / e (63%) a 25°C en 6s

Parámetros de temperatura:
Tiempo de respuesta: 1 / e (63%) en 10s
Resolución: 8 bits
Repetibilidad: ±0.2°C
Rango: 0°C a 50°C
Alimentación: DC 3.5~5.5V
Corriente de suministro: medición 0.3mA, espera 60μA
Período de muestreo: más de 2 segundos

Descripción de pines:

VDD: Fuente de alimentación 3.5~5.5V DC.
DATA: Datos seriales, bus único.
GND: Tierra, polo negativo de la alimentación.

Esquema de conexión y diagrama de cableado

Seguí el esquema para realizar las conexiones correctamente usando los cables DuPont. Asegurate de que los pines coincidan con la configuración del código para evitar errores en la lectura.

Código

Podés hacer clic en el enlace de texto azul para descargar el archivo del programa a tu equipo y hacer doble clic en el archivo para abrirlo. Tené en cuenta: antes de abrirlo, asegurate de tener instalado el Arduino IDE y los paquetes de soporte para la placa ESP32 junto con su driver. Si tenés dudas sobre este proceso, fijate en la "Parte 1" del documento para una guía detallada.

📥 DESCARGAR dht11_example.zip

Antes de correr el programa, asegurate de tener instalada la librería <dht_nonblocking>. Si no la tenés, el código no va a funcionar.

Con este código, el ESP32 va a leer los datos del sensor cada 3 segundos y los va a mostrar en el monitor serial del software Arduino. Hacé clic en el botón del Monitor Serial para activarlo; los detalles sobre su uso están en el tutorial 4 de la parte 2.

#include <dht_nonblocking.h>
#define DHT_SENSOR_TYPE DHT_TYPE_11
static const int DHT_SENSOR_PIN = 18;
DHT_nonblocking dht_sensor( DHT_SENSOR_PIN, DHT_SENSOR_TYPE );

Configuración de la librería y el sensor:
#include <dht_nonblocking.h>: Incluye la librería para manejo no bloqueante del sensor.
#define DHT_SENSOR_TYPE DHT_TYPE_11: Define que estamos usando un DHT11.
static const int DHT_SENSOR_PIN = 18: Define el pin GPIO (18) donde conectamos el sensor.
DHT_nonblocking dht_sensor: Crea el objeto del sensor con los parámetros definidos.

void setup( )
{
Serial.begin( 9600);
}

Función setup(): Inicializa la comunicación serial a 9600 baudios para que podamos ver los datos en la compu.

static bool measure_environment( float *temperature, float *humidity )
{
static unsigned long measurement_timestamp = millis( );

if( millis( ) - measurement_timestamp > 3000ul )
{
if( dht_sensor.measure( temperature, humidity ) == true )
{
measurement_timestamp = millis( );
return( true );
}
}
return( false );
}

Función measure_environment(): Es una función auxiliar que mide la temperatura y humedad sin bloquear el resto del código.
measurement_timestamp: Registra el tiempo de la última medición.
millis() - measurement_timestamp > 3000ul: Chequea si ya pasaron 3 segundos desde la última vez.
dht_sensor.measure: Intenta leer los datos y devuelve true si la medición fue exitosa.

Fuente: Adaptado al español desde el wiki oficial Elegoo (licencia CC BY-SA). Revisión técnica por equipo Breva.

Fuente: Adaptado al español desde el wiki oficial (licencia CC BY-SA). Revisión técnica por equipo Breva.
25%
Tecnología real, elegida con criterio técnico Probás, aprendés y te llevás lo correcto Showroom abierto en Rosario Impresión 3D · Electrónica · Software Desde 2012 en impresión 3D FilAr — Argentina, extruido por nosotros Probá antes de llevarte Combos pensados, no pegados No te vendemos una caja. Entendemos lo que hay adentro. Repuestos críticos en stock Soporte por WhatsApp 9-19 Bambu Lab en showroom Filamentos para tocar Arduino, ESP32 y sensores Robótica educativa para tu aula Equipamos escuelas y empresas Producción 3D con criterio PLA y PETG fabricados en Argentina Trazabilidad por lote — FilAr Perfiles calibrados para tu impresora Cursos y demos en Breva Academy Sábados con demo abierta Garantía explicada en términos humanos No desaparecemos después del checkout Asesoramiento técnico sin compromiso Retiro en el día en Rosario Envío a todo el país Factura A para empresas Catálogo curado, no inflado Si lo vendemos, lo probamos antes De RepRap a la nueva generación Más de 13 años imprimiendo Criterio técnico transversal Tres mundos, una misma cabeza Impresoras 3D en Rosario Notebooks, monitores y periféricos Domótica con ESP32 Cámaras, sensores y trazabilidad Para makers, técnicos y emprendedores Para escuelas y empresas Soluciones, no SKUs Cotización formal para B2B Plan de mantenimiento para empresas Capacitación docente incluida Combo Bambu + FilAr Combo arranque sin renegar Combo ESP32 IoT La tecnología se entiende usándola No te vendemos lo que no probamos Sabemos por qué falla un purgado Sabemos por qué un PETG burbujea Sabemos por qué una pieza no se pega No vendemos por catálogo Curaduría con criterio Showroom · Asesoramiento · Soporte Probá en vivo antes de decidir FilAr — el filamento que sabemos Hardware + software, mismo equipo Automatización, datos y producción Tecnología tangible Probada antes de venderla Soporte que responde La compra no termina en el checkout Comprá una vez. Te ayudamos siempre. Modo experiencia activado Modo showroom: encendido Real hardware. Real support. Touch it. Try it. Take it home. Build. Print. Automate. Repeat. Tres mundos. Una tienda. Tecnología para construir Tecnología para producir Tecnología para enseñar Productos seleccionados, no inflados Lo que recomendamos, lo probamos Si va a fallar, lo sabemos Soporte técnico sin guion Vení a tocar el showroom Impresoras imprimiendo en mostrador Filamentos al tacto Notebooks encendidas Electrónica armada Demos los sábados Cursos presenciales Guías técnicas gratis Repuestos para Bambu Lab Repuestos para Creality Hot-ends, boquillas y plates Sensores, motores y módulos Componentes PC y mejoras Comprá con criterio Probá con calma Aprendé con quien sabe Llevate lo correcto Hacé proyectos reales Rosario · Centro · Showroom abierto Tecnología argentina cuando se puede Tecnología importada cuando hace falta Curaduría > Catálogo Hechos > Promesas Servicio > Discurso Stack: Bambu · Creality · FilAr · Arduino · ESP32 No somos marketplace Somos gente que la usa Y la fabricamos cuando se puede Breva · Rosario Tecnología real, elegida con criterio técnico Probás, aprendés y te llevás lo correcto Showroom abierto en Rosario Impresión 3D · Electrónica · Software Desde 2012 en impresión 3D FilAr — Argentina, extruido por nosotros Probá antes de llevarte Combos pensados, no pegados No te vendemos una caja. Entendemos lo que hay adentro. Repuestos críticos en stock Soporte por WhatsApp 9-19 Bambu Lab en showroom Filamentos para tocar Arduino, ESP32 y sensores Robótica educativa para tu aula Equipamos escuelas y empresas Producción 3D con criterio PLA y PETG fabricados en Argentina Trazabilidad por lote — FilAr Perfiles calibrados para tu impresora Cursos y demos en Breva Academy Sábados con demo abierta Garantía explicada en términos humanos No desaparecemos después del checkout Asesoramiento técnico sin compromiso Retiro en el día en Rosario Envío a todo el país Factura A para empresas Catálogo curado, no inflado Si lo vendemos, lo probamos antes De RepRap a la nueva generación Más de 13 años imprimiendo Criterio técnico transversal Tres mundos, una misma cabeza Impresoras 3D en Rosario Notebooks, monitores y periféricos Domótica con ESP32 Cámaras, sensores y trazabilidad Para makers, técnicos y emprendedores Para escuelas y empresas Soluciones, no SKUs Cotización formal para B2B Plan de mantenimiento para empresas Capacitación docente incluida Combo Bambu + FilAr Combo arranque sin renegar Combo ESP32 IoT La tecnología se entiende usándola No te vendemos lo que no probamos Sabemos por qué falla un purgado Sabemos por qué un PETG burbujea Sabemos por qué una pieza no se pega No vendemos por catálogo Curaduría con criterio Showroom · Asesoramiento · Soporte Probá en vivo antes de decidir FilAr — el filamento que sabemos Hardware + software, mismo equipo Automatización, datos y producción Tecnología tangible Probada antes de venderla Soporte que responde La compra no termina en el checkout Comprá una vez. Te ayudamos siempre. Modo experiencia activado Modo showroom: encendido Real hardware. Real support. Touch it. Try it. Take it home. Build. Print. Automate. Repeat. Tres mundos. Una tienda. Tecnología para construir Tecnología para producir Tecnología para enseñar Productos seleccionados, no inflados Lo que recomendamos, lo probamos Si va a fallar, lo sabemos Soporte técnico sin guion Vení a tocar el showroom Impresoras imprimiendo en mostrador Filamentos al tacto Notebooks encendidas Electrónica armada Demos los sábados Cursos presenciales Guías técnicas gratis Repuestos para Bambu Lab Repuestos para Creality Hot-ends, boquillas y plates Sensores, motores y módulos Componentes PC y mejoras Comprá con criterio Probá con calma Aprendé con quien sabe Llevate lo correcto Hacé proyectos reales Rosario · Centro · Showroom abierto Tecnología argentina cuando se puede Tecnología importada cuando hace falta Curaduría > Catálogo Hechos > Promesas Servicio > Discurso Stack: Bambu · Creality · FilAr · Arduino · ESP32 No somos marketplace Somos gente que la usa Y la fabricamos cuando se puede Breva · Rosario