Pentru versiunea cu reglaj manual, am adaugat 3 butoane fara retinere, schema devenind:
In filmuletul ceas si termometru cu Arduino Due pe afisaj de 3.95" (10cm) - 3 se observa cum se prezinta datele pe afisaj si cum se face reglajul la ceas (ora si minute) si data (an, luna, zi inluna, zi in saptamana), care sunt memorate apoi in memoria integratului de ceas DS3231.
In articolul precedent, am "pornit" un afisaj de 3,95" (10cm) pentru Raspberry Pi cu ajutorul unei placi de dezvoltare Arduino Due care permite conectarea directa deoarece lucreaza cu nivel logic de 3,3V, acum va prezint un termostat dual (doua zone), despre care am precizat si anterior.
Schema de conectare este acceasi:
Initial am conceput sketch-ul (programul) pentru se folosi o schema existenta cu 2 cronotermostate montate deja la o centrala, contactul pentru circuitul de apa calda al centralei, la care am adaugat un modul de ceas cu DS3231 ;i 3 senzori digitali de temperatura DS18B20 (unul afara pentru indicare temperatura exteriaora, unul pentru a citi temepratura dintr-o zona - parter si unul pentru a citi temepratura din cealalta zona - etaj), conform solicitarii lui Romica:
Pe ecran apare ora, temperaturile din cele 3 zone, o icoana cu un robinet cand se foloseste circuitul de apa menajera, 2 icoane (triunghi-uri) pentru pornirea pompelor de circulatie aferente circuitului respectiv, care indica si faptul ca centrala functioneaza.
Ulterior, am discutat cu Romica sa facem un termostat adevarat, in sensul de comanda placa Arduino centrala, asa ca am modificat schema, pentru a avea si 3 butoane (MENIU, + si -) din care sa pot regla ceasul, data, limba (romana sau engleza), temperatura dorita din prina zona (parter), temperatura dorita din zona 2 (etaj) si histerezistul (diferenta de temperatura admisa).
Valorile temperaturilor, cea a histerezisului si a limbii folosite sunt stocate in memoria EEPROM care se gaseste pe modulul de ceas cu DS3231, pentru ca microcontorlerul de pe Arduino Due nu are memorie EEPROM. Sketch-ul care face asta este thermostat_07.ino, iar modul de prezentare al datelor, modul de reglaj se vede din filmulete:
Dupa teste pe afisaje de 1,8-2,4" (4,5-6,1cm) am trecut la un afisaj cu diagonala de 3,95" (10cm), dupa ce am aflat de la Vlad Gheorghe ca e relativ usor de folosit cel pentru Paspberry Pi. El a folosit un Arduino Nano cu CD4050 ca interfata logica, deoarece Arduino lucreaza cu logica de 5V, iar afisajul cu una de 3,3V fiind pentru Raspberry Pi, daca se foloseste versiunea pentru Arduino, atunci nu mai e cazul sa se foloseasca acele integrate pentru interfatare.
Modelul meu pentru Raspberry Pi arata asa:
iar cel pentru Arduino este asa:
Dupa ce am primit destule informatii de la Vlad am conectat si eu un afisajul de Raspberry Pi la un Arduino Due, din 2 motive: unu, ca e mult mai rapid decat Uno, Nano sau Mega si doi ca lucreaga cu logica de 3,3V ca si afisajul.
Schema de conectare este:
Dupa ce m-am mai documentat pe net, folsindu-ma de discutiile de pe forumul Arduino, dar folosindu-ma de cele ale lui Vlad, am folosit libraria MCUFRIEND_kbv din care nu merge decat un sketch-ul graphictest_kbv.ino:
Testele, le-am facut initial cu versiunea Arduino 1.6.0 si acum si cu 1.80 si sunt ok...
Fiind sarbatorile de iarna, inainte de Craciun efectuand rimele teste, am facut un sketch cu urari in mai multe limbi, alternand afisarea "portrait" cu "landscape":
Ulterior am realizat interfata unui termostat cu 3 senzori DS18B20 cu 2 zone supravegheate (etaj si parter), temperatura exterioara si informatii daca a pornit circuitul de apa calda sau pompele de recirculare de la etaj si parter, la solicitarea lui Romica
Am facut mai multe filmulete, din care va prezint doua: