Este es un primer acercamiento al sistema de control de la huerta inteligente, (procedemos primero con la maqueta). Se compone:
- Dectector de humedad del suelo
- Sensor DHT11 para medir la temperatura y humedad relativa del ambiente
- Una fotocelda con un potenciometro de 10K ohmios para sensar día o noche
- Dos relés, uno para controlar el sistema de riego y otro para controlar la iluminación en la noche si se requiere
- Un Shield Ethernet para poder controlar y monitorear desde la intranet el sistema
- Un router para generar la intranet
- Una placa arduino uno
Por el momento se tienen las conexiones mostradas en la imagen, el sensor de humedad a A0, al fotoresistencia a A1, esta se conecta a tierra, el punto donde va conectado el potenciometro es el que va a A1, en un protoboard se extiende el GND y los 5V para poder alimentar los diferentes elementos del circuito.
Con respecto a los pines digitales, al pin 9 se conecta el DHT11, los pines 6 y 7 se configuraron de salida para poder conectar los reles.
El primer programa para verificar que los sensores funcionen se vislumbra desde el monitor serie y es el siguiente:
#include <DFRobot_DHT11.h>
DFRobot_DHT11 DHT;
#define DHT11_PIN 9
int SensorPin = A0;
int FotoCelda = A1;
int valSonda;//Valor en porcentaje de la sonda
int foto;//Valor en porcentaje de la luz
int iluminacion=7;
int riego=6;
void setup() {
Serial.begin(9600);
//configuro los pines 6 y 7 de salida y el 9 como entrada
pinMode(SensorPin,INPUT);
pinMode(FotoCelda,INPUT);
pinMode(9,INPUT);
pinMode(7,OUTPUT);
pinMode(6,OUTPUT);
}
void loop() {
int humedad = analogRead(SensorPin);
int luz = analogRead(FotoCelda);
valSonda=map(humedad,0,1023,100,0);//pasamos a porcentajes
//PARA ESTA PRIMERA PRUEBA ESTAMOS USANDO SÓLO EL
//MONITOR SERIE PARA HACER SEGUIMIENTO DE LAS MEDICIONES
Serial.println("");
Serial.print("Luz: ");
Serial.println(luz);
//estos shield de rele se activan con 0, igual hay que revisar
//PRENDO LA ILUMINACIÓN CUANDO SEA DE NOCHE
//AQUI SE PREGUNTA: ¿HAY SUFICIENTE LUZ?
//ENTRE MÁS INTENSIDAD DE LUMÉNES O LUZ MÁS
//PEQUEÑO SERÁ EL VALOR MOSTRADO
//POR ESO SEGÚN LO VISTO DE LA FOTOCELDA EMPLEADA
//CON UN VALOR POR ENCIMA DE 700 SIGNIFICA QUE ESTA OSCURO
//Y REQUIERE ENCENDER LA ILUMINACIÓN
if(luz < 700)
{
digitalWrite(iluminacion,HIGH);//OFF
}
else
{
digitalWrite(iluminacion,LOW);//ON
}
Serial.print("Humedad en el suelo: ");
Serial.print(valSonda);
Serial.println("%");
//ACTIVO LA MOTOBOMBA
if(valSonda < 80)
{
digitalWrite(riego,LOW);//ON
}
else
{
digitalWrite(riego,HIGH);//OFF
}
//leemos la temperatura del DHT11 conectado al pin 9
DHT.read(DHT11_PIN);
Serial.print("Temperatura: ");
Serial.print(DHT.temperature);
Serial.println("°C");
Serial.print("Humedad relativa: ");
Serial.print(DHT.humidity);
Serial.println("%");
//esperamos un segundo
delay(1000);
}
En la próxima entrada hablaremos del ethernet shield para poder verlo desde la intranet, recordar que el router a sido configurado con un rango de ip de 192.168.1.100 a 192.168.1.199 dentro de ese rango de ip se le asignará al shield, que será el 192,168.1.101 y este sera el servidor al cual ingresar para controlar el sistema, para la wifi se dejó el SSID "HuertaInteligente" con la clave 0123456789 esperamos más adelante poder darle más seguridad a la página para que sólo el administrador pueda hacer el control del sistema.
No hay comentarios:
Publicar un comentario