{{tag>Arduino temperatura humedad }} ===== 1. Temperatura y Humedad con Sensor DHT 11 ===== === Materiales === * Sensor DHT11 * Resistencia de 10K * Protoboard * Cables de conexión para protoboard * Cable usb para conexión con Arduino * Arduino. En mi caso he usado un arduino nano === Conexiones === * Se conecta el arduino nano en el centro de la protoboard. * Sensor DHT11 * Pin 1: +5V en Arduino * Pin 2: Digital 2 en Arduino * Pin 3: No se utiliza * Pin 4: Gnd en Arduino * Se utiliza una resistencia pull up de 10K entre el Pin 2 del sensor y +5V de Arduino. {{:electronica:arduino:sensot_humedad_temperatura.png?600| }} === Programación === Antes que nada debemos cargar la siguiente librería creada por Adafruit para el sensor de temperatura (https://github.com/adafruit/DHT-sensor-library). Nos descargamos el fichero zip de la librería y ejecutamos el programa Arduino IDE. Vamos al menú Sketch -> Importar Libreria -> Add Library y seleccionamos el fichero con la extensión zip que nos hemos descargado. Copiamos el siguiente programa creado en la página [[http://www.internetdelascosas.cl|Internet de las Cosas]] // Internet de las Cosas // www.internetdelascosas.cl // Sketch de prueba para sensores DHT humedad / temperatura // Escrito por @joniuz basado en el sketch de Ladyada // Libreria para Sensores DHT #include "DHT.h" #define DHTPIN 2 // Pin del Arduino al cual esta conectado el pin 2 del sensor // Descomentar segun el tipo de sensor DHT usado #define DHTTYPE DHT11 // DHT 11 //#define DHTTYPE DHT22 // DHT 22 (AM2302) //#define DHTTYPE DHT21 // DHT 21 (AM2301) // Diagrama // Pin 1 Sensor a +5V de Arduino // Pin 2 Sensor a HDTPIN (en este sketch es el pin 2) // Pin 4 Sensor a GROUND de Arduino // Resistencia de 10K desde Pin 2 de sensor a Pin 1 de Sensor o +5V // Inicializa el sensor DHT dht(DHTPIN, DHTTYPE); // Configura Arduino void setup() { Serial.begin(9600); Serial.println("InternetdelasCosas.cl\n\nPrueba de sensor DHTxx!"); dht.begin(); } void loop() { // Espera dos segundos para realizar la primera medición. delay(2000); // Lee los datos entregados por el sensor, cada lectura demora 250 milisegundos // El sensor muestrea la temperatura cada 2 segundos} // Obtiene la Humedad float h = dht.readHumidity(); // Obtiene la Temperatura en Celsius float t = dht.readTemperature(); // Control de errores, valida que se obtuvieron valores para los datos medidos if (isnan(h) || isnan(t)) { Serial.println("Falla al leer el sensor DHT!"); return; } Serial.print("Humedad: "); Serial.print(h); Serial.print(" %\t"); Serial.print("Temperatura: "); Serial.print(t); Serial.println(" *C "); } Una vez verificado y cargado en nuestro arduino podemos ver en la salida como van apareciendo cada dos segundos los valores de temperatura y humedad. no necesita alimentación externa ya que se puede alimentar del propio cable USB de conexión al ordenador ==== Referencias ==== * https://tallerarduino.com/2012/12/24/sensor-dht11-humedad-y-temperatura-con-arduino/ * http://www.internetdelascosas.cl/2014/07/08/midiendo-temperatura-y-humedad-con-arduino-y-el-sensor-dht11/ * http://www.prometec.net/sensores-dht11/