59 lines
1.3 KiB
Arduino
59 lines
1.3 KiB
Arduino
|
#include <DHT.h>
|
||
|
|
||
|
// Pin digital donde se conecta el sensor
|
||
|
#define DHTPIN 4
|
||
|
|
||
|
// Tipo de sensor
|
||
|
#define DHTTYPE DHT11
|
||
|
|
||
|
// Inicializar DHT11
|
||
|
DHT dht(DHTPIN, DHTTYPE);
|
||
|
|
||
|
void setup() {
|
||
|
// Inicio comunicación serie
|
||
|
Serial.begin(9600);
|
||
|
|
||
|
// Iniciar el sensor DHT
|
||
|
dht.begin();
|
||
|
}
|
||
|
|
||
|
void loop() {
|
||
|
// Espera 3 segundos entre medidas
|
||
|
delay(3000);
|
||
|
|
||
|
// Lectura de humedad relativa
|
||
|
float h = dht.readHumidity();
|
||
|
|
||
|
// Lectura de temperatura en grados centígrados (por defecto)
|
||
|
float t = dht.readTemperature();
|
||
|
|
||
|
// Lectura de temperatura en grados Fahrenheit
|
||
|
float f = dht.readTemperature(true);
|
||
|
|
||
|
// Comprobar error en la lectura
|
||
|
if (isnan(h) || isnan(t) || isnan(f)) {
|
||
|
Serial.println("Error obteniendo los datos del sensor DHT11");
|
||
|
return;
|
||
|
}
|
||
|
|
||
|
// Calcular el índice de calor en Fahrenheit
|
||
|
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.println(" %");
|
||
|
Serial.print("Temperatura: ");
|
||
|
Serial.print(t);
|
||
|
Serial.print(" *C ");
|
||
|
Serial.print(f);
|
||
|
Serial.println(" *F");
|
||
|
Serial.print("Indice de calor: ");
|
||
|
Serial.print(hic);
|
||
|
Serial.print(" *C ");
|
||
|
Serial.print(hif);
|
||
|
Serial.println(" *F\n");
|
||
|
}
|