Definició de valors al programa:
int R = 10; // pin de connexió vermell led int G = 11 ; // pin de connexió verd led int B = 12; // pin de connexió llau led int sensor_temperatura = A1; // pin de connexió sensor int llindar_fret = 670; // valor sensor per sota del qual fa fret int llindar_calor = 710; // valor sensor per sobre del qual fa calor
Comprobem el funcionament dels LEDs:
Fem un blink encenent un color cada cop per comprobar que els pins són correctes i/o les connexions:
void setup() { pinMode(R,OUTPUT); pinMode(G,OUTPUT); pinMode(B,OUTPUT); }Comprobem els valors del sensor de temperatura per decidir els llindars:
void setup() { Serial.begin (9600); //comunicació sèrie } void loop() { int temperatura = analogRead(sensor_temperatura); Serial.println(temperatura); delay(100); }Idea de programació:
Si la temperatura està per sota del llindar_fret s'ha d'encendre la calefacció (led vermell), si està per sobre del llindar_calor s'ha d'encendre la refrigeració (led blau), si no s'ha d'encendre el led verd:
void loop() { int temperatura = analogRead(sensor_temperatura); //Serial.println(temperatura); if (temperatura < llindar_fret) { digitalWrite(R, HIGH); //led vermell encés (calefacció) digitalWrite(G, LOW); digitalWrite(B, LOW); } else { if (temperatura > llindar_calor) { digitalWrite(R, LOW); digitalWrite(G, LOW); digitalWrite(B, HIGH); // led blau encés (refrigeració) } else { digitalWrite(R, LOW); digitalWrite(G, HIGH); // led verd encés (standby) digitalWrite(B, LOW); } //delay(100); } }
Cap comentari:
Publica un comentari a l'entrada