En esta ocasión se tratara el tema de un termohigrómetro realizado con Arduino y el sensor DHT11, este sensor se puede encontrar en diferentes presentaciones como las que se muestran a continuación:
tomada de: http://www.google.com.co/imgres?imgurl=&imgrefurl=http%3A%2F%2Fwww.geeetech.com%2Fwiki%2Findex.php%2FElectric_thermometer_by_using_DHT11_sensor_module&h=0&w=0&tbnid=NR6fgFq5ibt4nM&zoom=1&tbnh=225&tbnw=225&docid=w18NBeAYKlgFGM&tbm=isch&ei=UZiXU77aJ6Xn8AHZh4DwDw&ved=0CAgQsCUoAg
tomada de: http://www.proyectosarduino.com.ar/wp-content/uploads/2012/11/DHT11Sensor1.jpg
Un poco de teoría:
El sensor DHT11 provee las medidas de temperatura y humedad relativa, en su salida se presenta una señal calibrada digitalmente, el sensor incluye un sensor resistivo para el componente de humedad y un NTC para realizar la medida de temperatura, conectándose todo a un microcontrolador interno de 8 bits.
Algunas consideraciones técnicas:
Se debe tener en cuenta que solo mide hasta 50 °C, de tal manera que en aplicaciones industriales, superiores a este límite se hace necesario el uso de otro tipo de sensor.
Un aporte importante:
Puede seguir este tutorial para conocer como instalar una librería nueva a su compilador de arduino en el siguiente link:
La librería se consigue en el link de dropbox:
Circuito a implementar:
No olvide hacer las conexiones de alimentación de su LCD y del backlight, por cuestiones de simulación se omiten algunas conexiones.
A continuación se muestra el fucionamiento:
el código:
//basado en el ejemplo de la libreria MASTER DHT
#include "DHT.h" // Se incluye la librería
#include <LiquidCrystal.h> // libreria para LCD
LiquidCrystal lcd(3,4,5,6,7,8);//(RS,E,D4,D5,D6,D7)
#define DHTPIN 2 // pin de comunicación con el sensor
#define DHTTYPE DHT11// se selecciona el sensor, existen más opciones
DHT dht(DHTPIN, DHTTYPE); // se creael objeto dht con el pin y el tipo
void setup()
{
lcd.begin(16, 2); // se inicia una lcd de 2x16.
lcd.setCursor(0,0);//cursor en posición 0 de la línea 0
}
void loop()
{
float h = dht.readHumidity();// se guarda el valor de humedad en H
float t = dht.readTemperature();// se guarda el valor de temperatura en t
lcd.setCursor(0,0);// cursor en posición 0,0
lcd.print("TEMP: ");
lcd.print(t);
lcd.setCursor(0,1);//posición columna 0, fila 1
lcd.print("HUM; ");
lcd.print(h);
delay(200);
lcd.clear();// limpieza de la pantalla.
}
Fin del proyecto
No hay comentarios:
Publicar un comentario