Aurduino, Ethernet Shield y modulo DHT11

Este mini proyecto se baso sobre un «arduino uno», un ethernet shield y un sensor dht11.
En este post comparto el código para todos aquellos que se inician en el maravilloso mundo de posibilidades que brinda arduino.
Con este simple código podrán visualizar los valores que arroja el modulo dht11 en una pagina web.
¡¡Espero que les sea de ayuda!!

Antes de empezar deben descargar y agregar la librería del dht11 a el software de arduino.
Para esto descargamos de este link la libreria:
https://codeload.github.com/adafruit/DHT-sensor-library/zip/master

Agregar la librería de la siguiente manera:

Diagrama de conexión

Código:

// Incluimos librerías
#include <SPI.h>
#include <Ethernet.h>
#include «DHT.h»
#define DHTPIN 7
#define DHTTYPE DHT11
DHT dht(DHTPIN, DHTTYPE);

//Declaración de la direcciones MAC e IP. También del puerto 80
byte mac[]={0xDE,0xAD,0xBE,0xEF,0xFE,0xED}; //MAC
IPAddress ip(192,168,10,177); //IP
EthernetServer servidor(80);
String readString=String(30);

void setup() {
Ethernet.begin(mac, ip); //Inicializamos con las direcciones asignadas
servidor.begin();
Serial.begin(9600);
dht.begin();

}

void loop() {

EthernetClient cliente= servidor.available();
if(cliente) {
boolean lineaenblanco=true;
while(cliente.connected()) {

if(cliente.available()) {
char c=cliente.read();

if(readString.length()<30) {
readString.concat(c);
//Cliente conectado
//Leemos petición HTTP caracter a caracter
//Almacenar los caracteres en la variable readString
}
if(c==’n’ && lineaenblanco) //Si la petición HTTP ha finalizado
{

int h = dht.readHumidity();// Lee la humedad
int t= dht.readTemperature();//Lee la temperatura

//Humedad
cliente.print(«Humedad Relativa: «);
cliente.print(h);//Escribe la humedad
cliente.println(» %»);
delay (500);

//Temperatura    
cliente.print(«Temperatura: «);
cliente.print(t);//Escribe la temperatura
cliente.println(» C'»);
delay (500);

cliente.stop();
//Cierro conexión con el cliente
readString=»»;
}
}
}
}
}

3 comentarios

Añade el tuyo →

Deja una respuesta