Ciao a tutti
non essendo un esperto di scrittura di programmi su arduino spero che possiate darmi una mano su questo sketch
la serra ha un sensore di temperatura , umidita terreno , una fotoresistenza
mentre per gli output ha : una elettrovalvola per irrigazione(rinominato ACQUA),ventole per "cambio d'aria"(VENTOLE)
e uso della fotoresistenza(LUCE) per attivare l'elettrovalvola se la temperatura si alza
l' unico problema è che non sapendo come va fatto il codice per ' lcd ho provato a copiarlo da altri
progetti trovati sul web..
sull ' lcd dovrei far visualizzare i dati della temperatura umidità e luminosità
questo è lo sketch:
include <LiquidCrystal.h>
LiquidCrystal lcd(12, 11, 5, 4, 3, 2);
int umidita=A0;
int luce=A2;
int temperatura=A3;
const int ACQUA=6;
const int VENTOLE=7;
const int LUCE=8;
const int LCD= (12, 11, 5, 4, 3, 2);
int val_Adc = 0;
float temp = 0;
void setup(){
Serial.begin(9600);
pinMode(umidita, INPUT);
pinMode(ACQUA, OUTPUT);
pinMode(VENTOLE, OUTPUT);
pinMode(LUCE,OUTPUT);
lcd.begin(16, 2);
lcd.setCursor(0, 0);
lcd.print("Temperatura:");
}
void loop(){
Serial.print("valore:");
Serial.println( umidita );
Serial.println("Valore Soglia: ");
Serial.println( umidita ) ;
lcd.setCursor(0, 1);
lcd.println("Temp");
lcd.println("");
lcd.println (analogRead(A3));
lcd.println("");
lcd.println("umidita");
lcd.println("");
lcd.println(analogRead(A0));
lcd.println("");
lcd.println("Luce");
lcd.println("");
lcd.println(analogRead(A2));
lcd.println("");
delay(0);
if (analogRead(A0)>100) {
digitalWrite (ACQUA, LOW);
if (analogRead(A0)<700)
digitalWrite(ACQUA, HIGH);
if (analogRead(A3)<1100){
digitalWrite (VENTOLE, HIGH);
if (analogRead(A3)<600)
digitalWrite(VENTOLE, LOW);
if (analogRead(A2)<300) {
digitalWrite (LUCE, HIGH);
if (analogRead(A2)<30)
digitalWrite(LUCE, LOW);
}
}
}
}
grazie per eventuali correzioni