DESCRIPCIÓN DE CLASE:
Como primera clase del Segundo Quimestre los maestros nos enseñaron como programar un sensor de humedad para posteriormente agregarlo al sistema de climatización de nuestra casa domótica. Entramos a la plataforma moodle, donde habían algunos archivos, de los cuales debíamos descargar dos: DHT11.ino y DHT.zip . El primero era un archivo del programa Arduino, que poseía parte la programación, y el segundo archivo era la biblioteca que teníamos que agregar al programa, ya que sin este, el programa señalaba error. Luego de haber agregado la librería, seleccionamos la opción "Administrar Librería" en donde buscamos la librería "Adafruit Unified Sensor". Después, agregamos algunas variables al código (parte subrayada)
CÓDIGO:
#include "DHT.h"
// Uncomment whatever type you're using!
#define DHTTYPE DHT11 // DHT 11
//#define DHTTYPE DHT22 // DHT 22 (AM2302), AM2321
//#define DHTTYPE DHT21 // DHT 21 (AM2301)
// Connect pin 1 (on the left) of the sensor to +5V
// NOTE: If using a board with 3.3V logic like an Arduino Due connect pin 1
// to 3.3V instead of 5V!
// Connect pin 2 of the sensor to whatever your DHTPIN is
// Connect pin 4 (on the right) of the sensor to GROUND
// Connect a 10K resistor from pin 2 (data) to pin 1 (power) of the sensor
int DHTPin = 5; // what digital pin we're connected to
DHT dht(DHTPin, DHTTYPE);
void setup() {
Serial.begin(9600);
Serial.println("Moniteroando valores");
dht.begin();
}
void loop() {
// Wait a few seconds between measurements.
delay(2000);
// Reading temperature or humidity takes about 250 milliseconds!
float h = dht.readHumidity();
float t = dht.readTemperature();
if (isnan(h) || isnan(t)) {
Serial.println("Failed to read from DHT sensor!");
return;
}
Serial.print("Humidity: ");
Serial.print(h);
Serial.print(" %\t");
Serial.print("Temperature: ");
Serial.print(t);
Serial.print(" *C ");
if (t>26)
{
digitalWrite(9,HIGH);//encender motor
}
else
{
digitalWrite(9,LOW);//apagar motor
}
}
SIMULACIÓN (TINKERCAD):