luni, 12 noiembrie 2018

Lumina ambientala pentru acvariu

   Pentru Stefan Arnautu, un vechi coleg de grupa si de "suferinta" in ale imprimatelor 3D de tip Anet A8, am adaptat un program (sketch) pentru un sistem, care sa indice ora si data, dar sa si aprinda si sa sitnga lumina la un acvariu.
   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
   Programul (sketch-ul) folosit este light_aquarium_0.ino !!!

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