Está en la página 1de 5

La segunda parte del laboratorio, consiste en la adición del dispositivo DHT11, el cual es un sensor de

humedad relativa y temperatura de bajo costo y de media precisión a un bajo precio. La salida
suministrada es de tipo digital utilizando solamente 1 pin de datos.

Además, debido a que la salida es de tipo digital, es necesario implementar una lectura del mismo tipo
para la apreciación de los datos que este recopila.

Primeramente debe conectarse el DHT11 a la tarjeta arduino, el cual estará conectado al pin 8, como se
ve en la siguiente imagen:

De forma consecuente ahora se realiza la creación del código para poder dar la orden al arduino de leer
e imprimir los datos recopilados por el sensor en la pantalla LCD.

Sin embargo como se desea mantener además la recopilación e impresión de datos de la lectura
analógica realizada en la primera parte de este laboratorio solo basta con la inclusión de la librería del
DHT y algunas declaraciones, como el pin en que se conectara, o la orden de lectura, de esta forma, el
código necesario para el funcionamiento del DHT es el siguiente:

include <"DHT.h> // se carga la librería del DHT

#define DHTPIN 8 // se selecciona el pin en el que se conectará el sensor

#define DHTTYPE DHT11 // dado que existen varios tipos de DHT es necesario detallar el que se utiliza

DHT dht(DHTPIN, DHTTYPE); //Se inicia una variable que será usada por Arduino para comunicarse con
el sensor

En el void setup solo se anexara la siguiente operación:

dht.begin(); //Se inicia el sensor

en el void loop corresponde añadir estas operaciones:

float h = dht.readHumidity(); //Se lee la humedad

float t = dht.readTemperature(); //Se lee la temperatura


//Se imprimen las variables

lcd.setCursor(0, 0);

lcd.println("H= ");

lcd.setCursor(3, 0);

lcd.println(h);

lcd.setCursor(0, 1);

lcd.println("Temp= ");

lcd.setCursor(6, 1);

lcd.println(t);

delay(2000); //Se espera 2 segundos para seguir leyendo //datos

en conjunto con el código utilizado en la primera práctica, el código final tanto para la lectura analógica
como digital es el siguiente:

#include <LiquidCrystal.h>

#include <DHT.h>

#define DHTPIN 8

#define DHTTYPE DHT11

DHT dht(DHTPIN, DHTTYPE);

// initialize the library with the numbers of the interface pins

LiquidCrystal lcd(12, 11, 5, 4, 3, 2);

float a=0;

float v=0;

float p=0;

float i=0;

void setup() {

lcd.begin(20, 4);

dht.begin();

lcd.print(" Buenos dias!");

delay(3000);
lcd.clear();

void loop() {

float h = dht.readHumidity(); //Se lee la humedad

float t = dht.readTemperature(); //Se lee la temperatura

lcd.setCursor(0,0);

lcd.print("Buenos dias");

a=analogRead(0);

v=(5*a)/1023;

lcd.setCursor(4, 1);

lcd.print("V=");

lcd.print(v);

lcd.print("v " );

i=((5-v)/10000)*1000;

lcd.print("I=");

lcd.print(i);

lcd.print("mA");

lcd.setCursor(0, 3);

lcd.println("H=");

lcd.setCursor(2, 3);

lcd.println(h);

lcd.println("T=");

lcd.println(t);

lcd.setCursor(18, 3);

lcd.print((char)223);

lcd.print("C");

delay(100);

}
En el software de arduino se aprecia de la siguiente manera:
Ahora se procede a correr la simulación para comprobar que efectivamente la lectura se realiza y se
imprime en la pantalla LCD.

En conclusión se ha comprobado que el arduino es una versátil herramienta, ya que esta puede ser
utilizada tanto con entradas analógicas como digitales, y puede tener una variedad de usos, en este caso
se ha empleado tanto como un multímetro, ya que ha leído los valores de corriente y de voltaje de un
circuito simple, y de forma análoga esta midiendo tanto la humedad como temperatura del ambiente en
que se encuentra, esto puede ser útil por ejemplo en un sistema de regado automatico, para determinar
cuanto consume, y en que condiciones se encuentra, si es necesario humedecer el local, o regular la
temperatura.

También podría gustarte