Pe ecran, pe primul rand apare data si in dreapta ora de aprindere, pe randul doi ora curenta si ora de stingere, intre ele apare semnul * daca lumina e aprinsa.
Schema e, relativ, simpla, in care am desenat Arduino Uno, dar se poate folosi cam orice placa de dezvoltare Arduino (Mega, Leonardo, Nano, Mini Pro, etc), pe langa un encoder rotativ KY-040, un afisaj lcd alfanumeric 1602 cu interfata i2c, un modul de ceas RTC cu DS3231 (sau DS1307, dar precizia e mai mica) + partea de actionare (ori modul de reelu ci optocuplor, ori tranzistor cu releu, de 5V in schema de fata).
Reglajul este inspirat din ceasul lui Andy in sensul ca la o apasare scurta a butonului de pe encoder se afiseaza o informatie, iar o apasare lunga se intra in meniul de reglaj, prima data la reglaj an (de la 2018 la 2040)apoi se regleaza minutele dupa ce se apasa butonul (0..59)
Dupa ce se apasara butonul encoderului se poate regla ziua
daca se apasa iar butonul se trece la reglajul orelor, apoi minutelor ceasului
Urmeaza reglajul orei si minutului de aprindere
respectiv stingere
iar la reapasare se intra in modul de ceas, dupa cum se vede in filmuletul realizat de Stefan
29.11.2018
Dupa ce am primit un mail de la Giani, din care am aflat ca in cazul intreruperii alimentarii, sistemul nu mai stie starea releului, am facut modificari pentru a memora in EEPROM si starea acestuia si am corectat si modul de afisare al minutelor de la timpii de pornire si oprire lumina, pentru cazul cand sunt mai mici de 10, ca valoare...
Sketch-ul care face corecturile este light_aquarium_1.ino !!!
Niciun comentariu:
Trimiteți un comentariu