Ciao a tutti
Premetto che mi sono avvicinato al mondo di Arduino da poco quindi vi prego non uccidetemi
Allora vi spiego il mio problema, ho realizzato un circuito che mi permette di rilevare la temperatura tramite un LM35 e semplicemente accendere 3 LED in base alla temperatura rilevata, e fin qui nessun problema, il problema è arrivato quando ho modificato lo sketch per aggiungere la rilevazione della luminosità tramite una fotoresistenza. Praticamente quando ho aggiunto il "pezzo" di programma per la luminosità la rilevazione della temperatura è completamente sballata, oscilla a random tra i 10°C e i 40°C, mentre la rilevazione della luminosità funziona perfettamente. So per certo che il problema risiede nello sketch ma non riesco a trovare l'errore!
Vi posto lo sketch:
float tempC;
int LM35 = A0;
int G_LED = 12;
int Y_LED = 9;
int R_LED= 11;
int Fotoresistore = A1;
int LDRValue;
int LUCE = 6;
void setup()
{
Serial.begin(9600);
pinMode(G_LED, OUTPUT);
pinMode(Y_LED, OUTPUT);
pinMode(R_LED, OUTPUT);
pinMode(LUCE, OUTPUT);
pinMode(LM35, INPUT);
pinMode(Fotoresistore, INPUT);
}
void loop()
{
//TEMPERATURA
tempC = analogRead(LM35);
tempC = (5.0 * tempC * 100.0)/1024.0;
Serial.print(" Temperatura C = ");
Serial.println(tempC);
//LUMINOSITà
LDRValue = analogRead(Fotoresistore);
Serial.print(" Luminosita = " );
Serial.println(LDRValue);
if(tempC>29) {
digitalWrite(G_LED, LOW);
digitalWrite(Y_LED, LOW);
digitalWrite(R_LED, HIGH);}
else if(tempC<23) {
digitalWrite(G_LED, HIGH);
digitalWrite(Y_LED, LOW);
digitalWrite(R_LED, LOW);}
else {
digitalWrite(G_LED, LOW);
digitalWrite(Y_LED, HIGH);
digitalWrite(R_LED, LOW);}
//LUMINOSITà
if(LDRValue<350){
digitalWrite(LUCE,HIGH);}
else{
digitalWrite(LUCE,LOW);}
delay(900);
}
Aiutatemi :~
Grazie!
Stefano