int Pin2 = 15;
// Incluimos librería, lo primero es importar la libreria DHT.h
#include <DHT.h>
// Definimos el pin digital donde se conecta el sensor, recordemos que el DHT11 convierte
//internamente la señal analogica a una de tipo diguital
#define DHTPIN 15
// Dependiendo del tipo de sensor, creamos otra constante para declarar el tipo de sensor que
//vamos a utilizar.
// Esta libreria tambien se usa para controlar el DHT22, el siguiente luego del DHT11
#define DHTTYPE DHT11
// Inicializamos el sensor DHT11, declaramos el objeto DHT con parametros pin y tipo de DHT
DHT dht(DHTPIN, DHTTYPE);
void setup() {
// Inicializamos comunicación serie, activamos monitor en serie para la visualizacion de los
//parametros
Serial.begin(9600);
// Comenzamos el sensor DHT, con la sentencia begin()
dht.begin();
}
void loop() {
// Esperamos 5 segundos entre medidas, esta es una recomendacion del fabricante
delay(5000);
// Leemos la humedad relativa
float h = dht.readHumidity();
// Leemos la temperatura en grados centígrados (valor por defecto)
float t = dht.readTemperature();
// Leemos la temperatura en grados Fahreheit en caso de que queramos ambas unidades de
//medida
float f = dht.readTemperature(true);
// Comprobamos si ha habido algún error en la lectura
if (isnan(h) || isnan(t) || isnan(f)) {
Serial.println("Error al obtener los datos del sensor DHT11");
return;
}
// Calcular el índice de calor en Fahreheit
float hif = dht.computeHeatIndex(f, h);
// Calcular el índice de calor en grados centígrados
float hic = dht.computeHeatIndex(t, h, false);
Serial.print("Humedad: ");
Serial.print(h);
Serial.print(" %\t");
Serial.print("Temperatura: ");
Serial.print(t);
Serial.print(" *C ");
Serial.print(f);
Serial.print(" *F\t");
Serial.print("Índice de calor: ");
Serial.print(hic);
Serial.print(" *C ");
Serial.print(hif);
Serial.println(" *F");
}