IotLo + vistoMakersTechTendencias

Temperatura y humedad con ESP32

Introducción

Vamos a realizar un simple ejemplo de la lectura de un sensor de temperatura y humedad, en este caso el DHT11 y un ESP32 WROOM 32D y mostrarlo en el monitor serial.

Materiales necesarios

  • ESP32 WROOM 32D
  • DHT11
  • cables Dupoint
  • protoboard

Esp32

Placa ESP32 WROOM32D

En la siguiente imagen tenemos un resumen de las caracteristicas y pines de nuestro esp32

DHT11

Sensor de temperatura y humedad de bajo costo y rápida respuesta de medición, cuenta con un microcontrolador de 8 bits para asegurar su fiablidad a lo largo del tiempo, puede medir la humedad desde 20% a 95% y la temperatura desde 0º a 50º. Su protocolo de comunicación es a través de un solo cable. lo que nos hace muy facíl la integración.

Especificaciones del sensor:

CaracteristicaRango
Voltaje3,5 v a 5v
Medición humedad20% a 95%
Medición temperatura0ºc a 50ºc
Precisión humedad+/- 4% HR
Precisión temperatura+/- 2ºc
Periodo de medición2 segundos
Dimensiones23 x17x20 mm
Peso2,2 gramos
Sensor DTH 11

La trama de datos es de 40 bits corrrespondeientes a l a información de humedad y temperatura del DHT11

Para poder interpretar la informacion deberemos instalar la libreria Dht sensor library que dependiendo de nuestra version del IDE arduino, para ello buscamos en el gestor de librerias y la instalamos

o podemos descargarla del siguiente enlace y descomprimimos su contenido en:

Documentos-> Arduino-> Libraries

https://github.com/adafruit/DHT-sensor-library

Conexionado

Una vez que sabemos mas información de nuestros dispositivos, vamos a realizar la conexiones para que pongamos en funcionamiento nuestro sensor de temperatura en primer lugar debemos conectar el positivo y el negativo de nuestra protoboard

En nuestro caso tenemos un Sensor KY-015-dht11 con la siguiente configuración de pines:

Visto de frente segun la imagen de conexionado:

  • VCC : Lo podemos conectar a 3.3v o 5v
  • DATA: Lo conectamos a una entrada digital del esp32 en nuestro caso la 4
  • GND: al pin gnd del esp32

Una vez conectado y verificado que las conexiones estén bien, vamos con la programación del ESP32, para ello abrimos nuestro IDE Arduino en el ordenador y creamos el software para leer los datos del sensor

/* 
  This code reads the temperature and humidity values from 
  a DTH11 sensor conected to pin 4 and prints them to the serial 
  monitor.
  It also calculates and prints the heat index value in both 
  Celsius and Fahrenheit

  Board: ESP32 Development Board
  Component: Temperature and humidiy module ( DHT11)
  Library: https: // github.com/adafruit/DHT-sensor-library ()
*/
#include <DHT.h>

#define DHTPIN 4 // Define the pin used to connect the sensor DTH11

#define DHTTYPE DHT11 // Define the sendor type

DHT dht(DHTPIN, DHTTYPE); // Create a DHT object

void setup() {
  // initialize the serial comunication
  Serial.begin(9600);
  Serial.println("DHT11 test¡");

  dht.begin(); // Initialize the DHT sensor

}

void loop() {;

  // Wait a few seconds between measuremets
  delay(2000);
  
  // Reading temperature or humidity takes about 250 milliseconds!
  // Sensor readings may also be up to 2 seconds 'old' ( its a very sensor)
  float h = dht.readHumidity();
  // Read temperature as Celsius ( the default)
  float t = dht.readTemperature();
  //Read temperature as Fahrenheit ( isFahrenheit = true)
  float f = dht.readTemperature(true);

  // Check if any reads failed and exit early ( to try again)
  if(isnan(h) || isnan(t) || isnan(f)) {
  Serial.print("Failed to read from DHT sensor!");
  }

  // compute heat index in Fahrenheit ( the default)
  float hif = dht.computeHeatIndex(f, h);
  // compute heat index in Celsius( isFahrenheit = false)
  float hic = dht.computeHeatIndex(t, h, false);

  // Print the humidity, temperature, and heat index values to the serial monitor
  Serial.print("Humidity: ");
  Serial.print(h);
  Serial.println("%");
  Serial.print("Temperature: ");
  Serial.print(t);
  Serial.print("ºC ");

}

como resultado de la lectura del sensor obtendremos la temperatura y la humedad que tenemos en lugar donde instalemos nuestro diseño

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *