Open cesarunahur opened 7 years ago
Acá les dejo un ejemplo de librería para leer la temperatura y humedad con un sensor digital.
Encontre este video tutorial de un sensor de temperatura https://youtu.be/lA2_1KGBOpI
Hay muchos tutoriales pero para tener una idea esta bueno!!
Genial, gracias por compartir.
Compañeros como usaremos el DHT 22 modifique este código,habria que probarlo!!!!
DHT dht(DHTPIN, DHTTYPE);
void setup() { Serial.begin(9600); Serial.println("Iniciando..."); dht.begin(); } void loop() { delay(2000); float h = dht.readHumidity(); //Leemos la Humedad float t = dht.readTemperature(); //Leemos la temperatura en grados Celsius float f = dht.readTemperature(true); //Leemos la temperatura en grados Fahrenheit //--------Enviamos las lecturas por el puerto serial------------- Serial.print("Humedad "); Serial.print(h); Serial.print(" %t"); Serial.print("Temperatura: "); Serial.print(t); Serial.print(" C "); Serial.print(f); Serial.println(" F"); }
Hola chicos!!!encontrè la librería para el sensor de temperatura.Es un ejemplo con constantes y variables ya definidas. // Sketch de ejemplo para testear el sensor DHT de temperatura
// Descomenta el tipo de sensor que vas a emplear. En este caso usamos el DHT11
//#define DHTTYPE DHT22 // DHT 22 (AM2302)
//#define DHTTYPE DHT21 // DHT 21 (AM2301)
// Conecta el pin 1 (el de la izquierda) del sensor a +5V
// Conecta el pin 2 del sensor al pin que has elegido para DHTPIN
// Conecta el pin 4 (el de la derecha) del sensor a GROUND
// Conecta una resistencia de 10K del pin 2 (data) al pin 1 (+5V) del sensor
DHT dht(DHTPIN, DHTTYPE); //Indica el pin con el que trabajamos y el tipo de sensor
int maxh=0, minh=100, maxt=0, mint=100; //Variables para ir comprobando maximos y minimos
void setup()
{
//Inicio comunicacion serie para ver los datos en el ordenador
Serial.begin(9600);
//Mensaje de inicio
Serial.println("Comprobacion sensor DHTxx:");
//Iniciamos el sensor
dht.begin();
}
void loop()
{
// La lectura de la temperatura o de la humedad lleva sobre 250 milisegundos
// La lectura del sensor tambien puede estar sobre los 2 segundos (es un sensor muy lento)
int h = dht.readHumidity(); //Guarda la lectura de la humedad en la variable float h
int t = dht.readTemperature(); //Guarda la lectura de la temperatura en la variable float t
// Comprobamos si lo que devuelve el sensor es valido, si no son numeros algo esta fallando
if (isnan(t) || isnan(h)) // funcion que comprueba si son numeros las variables indicadas
{
Serial.println("Fallo al leer del sensor DHT"); //Mostramos mensaje de fallo si no son numeros
} else {
//Mostramos mensaje con valores actuales de humedad y temperatura, asi como maximos y minimos de cada uno de ellos
Serial.print("Humedad relativa: ");
Serial.print(h);
Serial.print(" %\t");
Serial.print("Temperatura: ");
Serial.print(t);
Serial.println(" *C");
//Comprobacion de maximos y minimos de humedad y temperatura
if (maxh<h)
maxh=h;
if (h<minh)
minh=h;
if (maxt<t)
maxt=t;
if (t<mint)
mint=t;
Serial.print("Max: ");
Serial.print(maxh);
Serial.print(" % ");
Serial.print("Min: ");
Serial.print(minh);
Serial.print(" %\t");
Serial.print("Max: ");
Serial.print(maxt);
Serial.print(" *C ");
Serial.print("Min: ");
Serial.print(mint);
Serial.println(" *C\n");
}
delay(1000);
}
descripcion del sensor DHT11.docx