sâmbătă, 11 aprilie 2020

Indicare timp pana la un eveniment

 
  Acest sistem de indicare a timpului ramas pentru un anumit eveniment are o utilitate clara pentru moment, aceea de a indica tampul ramas pana la iesirea puilor de gaina puse la "clocitoare", cum este cea prezentata in articolul Sistem de automatizare incubator oua. Trebuie sa implementez functionarea numaratorii inverse si in cazul caderi alimentarii.
   Schema de test pentru a vedea cum se afiseaza de corect numarele zilelor, orelor minutelor si secundelor ramase.
   Programul scris de mine este timeremaining_test.ino si pe ecranul de monitorizare seriala vedem daca apasam butonul de START
iar daca se apasa STOP:
    Am facut 2 filmulete, din care s vede cum apare timpul ramas in ecranul de monitorizare seriala:
- cu comentariu in romana

- cu comentariu in engleza

   Am adaptat programul pentru a putea prezenta datele pe un display 1602 cu interfata i2c cum e folosit si la incubator acesta devenind timeremaining_test1.ino iar schema se modifica un pic:

   Dupa ce am vazut in mare cum ar trebui sa afisez, am adaugat un modul de timp real (RTC) cu DS3231 dar merge fara nici o modificare cu DS1307, schema devenind
  Prima versiune a programului arata informatia ca mai sus, aceasta versiune este timeremaining1.ino.
  Am facut 2 filmulete, in care se vede cum se afiseaza informatia:
- in romana:

- in engleza:

   Deoarece contorizarea secundelor necesita variabile mari, pentru ca o zi in secunde inseamna 86.400 secunde, iar 21 zile are 1.814.400 secunde, am schimbat sa contorizez din minut in minut, o zi are 1.440 minute, iar 21 zile au 30.240 minute. Programul rescris este timeremaining1a.ino.
   Pentru a nu fi statica imaginea am o mica animatie, dupa cum se vede si in filmuletele:
- cu comentariu in romana
- cu comentariu in engleza

duminică, 5 aprilie 2020

Alta versiune de ceas animat cu date meteo (3)

   Dupa ce am testat un Ceas animat complex cu date de pe net, caruia ii pot regla, printre multe altele,  intensitatea luminoasa de pe o pagina web locala, am realizat ca trebuie sa implementez reglajul automat al intenstatii luminoase si ceasului simplu de-l testasem, cel care preia ora de pe un server NTP si datele meteo de pe pe serverul openweathermap.
   Dearece i-am printat si lui o carcasa, ca a ceasului complez (printata in oglinda), am constatat ca noaptea e bine sa am intensitate redusa, dar pe timpul zilei nu am se vad bine informatiile.
   Am ales varianta cu divizor rezistiv format dintr-o fotorezistenta si o rezistenta de 10k, cum pusem la alt ceas, dupa modelul prezentat in articolul NodeMCU With LDR
   Placa WeMos D1 Mini era conectata pe cablajul universal, asa ca au fost usor de montat rezistenta de 10k si fotorezistenta.
    Schema de conectare este simpla,
dupa indicatiile din program:
iar partea adaugata pentru reglajul intensitatii in 5 trepte (0 - minim, 1, 2, 3 si 4 - maxim) este
iar in serial putem vedea:
   Programul cu reglaj automat al intensitatii luminoase este LEDMatrixV2ro4, care este compus din mai multe fisiere:
   Versiunile anterioare ale acestui ces sunt prezentate in articolele:
- Alta versiune de ceas animat cu date meteo (2)
- Alta versiune de ceas animat cu date meteo

14.01.2021
    Am facut o mica corectie pentru a se schimba mai lent intensitatea luminoasa a ecranului, facand modificari in fisierul LEDMatrixV2ro4.ino din LEDMatrixV2ro4.
    Am implementat apoi programarea prin reteaua wi-fi, cum prezentasem in articolul Programare de la distanta (OTA) placa de dezvoltare cu ESP8266 acum trebuie folosite fisierele din LEDMatrixV2ro5


Ceas animat complex cu date de pe net

   Am testat o varianta foarte interesanta de ceas cu text deplasabil, care are si posibilitate de configurare de o pagina web locala, dar are si fisiere pentru a putea realiza o carcasa la imprimanta 3D, dupa realizarea acesteia.
   Proiectul de care ziceam se gaseste la adresa https://www.thingiverse.com/thing:2867294, iar partea de program, destul de stufos, este la https://github.com/Qrome/marquee-scroller.
   Eu am facut mici modificari, in sensul de a adauga simbolul de grad, am lasat viteza vantului in km/h, iar presiunea in mmHg (milimetri coloana de mercur), nu am activat partea de stiri, de curs Bitcoin.
   Programul modificat de mine este marquee1 (el are mai mute fisiere), iar detalii cu ce librarii sunt necesare se gasesc pe canalul Github original.
   Schema este foarte simpla:
   Programul are implementata metoda de configurare a retelei Wi-Fi cu libraria <WiFiManager.h> --> https://github.com/tzapu/WiFiManager, pe care am prezentat-o in articolul Configurare usoara conectare la retea Wi-Fi pentru microcontrolerele ESP8266/ESP32.
   Dupa ce placa se conecteaza la retea, vedem IP-ul alocat de router asa ca intr-oduce adresa intr-un browser, ca in cazul meu 192.168.1.108 si vedem:
care au ditamai meniul
   Putem aprinde sau stinge afisajul:
    Din meniul de configurare, putem seta
   Eu nu am folosit partile urmatoare, de exemplu, la stiri se poate selecta APikey-ul si canalul de stiri:
   Se poate configura legatura cu OctoPrint (aplicatie pentru imprimanta 3D):
   Se poate afla cursul BitCoin:

si alte facilitati: sa reimprospatezi manual datele, sa stergi setarile, sa stergi setarile retelei wifi si sa reincarci un alt program (banuiesc ca pe wifi) un fisier bin la "Firmware Update".
    Am testat incarcarea prin wi-fi (OTA - detalii se gasesc in articolul de la https://randomnerdtutorials.com/esp8266-ota-updates-with-arduino-ide-over-the-air/) , deoarece am observat ca apare ca "PORT" adresa alocata ceasului 192.168.1.108:

06.04.2021
    Am facut si 2 filmulete, deoarece e mult mai usor sa intelegeti cat de complex ceasul:
- cu comentarii in limba romana

- cu comentarii in limba engleza
    Pentru filmuletele de mai sus am folosit programul marquee1b, care este compus din mai multe fisiere, ce trebuie descarcate pe hard-ul local ...