luni, 25 noiembrie 2019

Termostat MQTT cu ESP8266 (2)

    Acum un an si ceva, am publicat articolul Termostat MQTT cu ESP8266 pe care l-am testat in gol cca 3-4 luni. El nu a controlat o centrala termica sau un sistem de aer conditionat, ci doar a aprins un led rosu cand ar fi trebuit sa actioneze in gol.
   Zilele trecute am reluat testele, pornind o placa Raspberry Pi Zero W cu cardul SD de la o alta placa, ce avea instalat serverul broker Mosquitto dupa cum am prezentat in articolul Sonerie cu comandă locală sau prin protocol MQTT prin server Mosquitto (2)
    Am adaptat ultimul sketch prezentat in primul articol (MQTT_ESP8266_termostat_base.ino) sa aprinda afisajul doar cand apas butonul sau daca dau comenzi de pe telefon. La sketck-ul din link, afisajul OLED sta aprins mereu, dar nu se recomanda, deoarece textele raman imprimate... asa ca incarcati versiunea MQTT_ESP8266_termostat_ok.ino dupa ce finalizati testele.
   Deci, in mod normal, afisajul este stins, dar functioneaza termostatul:
- temperatura ambianta mai mare decat temperatura dorita
- temperatura ambianta mai scazuta decat temperatura dorita
   Daca se apasa butonul de pe cablaj sau se dau comenzi de pe telefon:
- temperatura ambianta mai mare decat temperatura dorita
- temperatura ambianta mai scazuta decat temperatura dorita
    Schema de conectare este eceeasi, bineinteles:
   Aplicatia folosita este aceeasi, IoT MQTT Panel.
unde am creat un un canal numit termostat
care e configurat astfel:
eu am completat doar numele, adresa IP a serverului (gasite de aplicatia Advanced IP scanner) si portul 1883 si conexiune TCP (ID-ul canalului este geberat automat de aplicatie).
   Dupa ce am creat butoane, indicatoarele si graficul, pe telefon apare asa:
   Pentru a creea un buton, grafic sau indicator, se apasa butonul + din partea de jos a ecranului

si se alege ce sa creez.

   Pentru cele 3 butoane, configuratiile sunt in stanga, iar in dreapta corespondenta din program (sketch):
- crestere temepratura

- scadere temperatura

- aprindere afisaj
unde "topic" este cel din linia 137

   Pentru cele indicatoare, configurarile sunt:
- temperatura reala
- umiditatea relativa a aerului
- temperatura dorita
- stare releu / led
unde in program, comenzile sunt:
   Pentru grafic, vom avea configurarile in aplicatie;
   De data aceasta nu am mai facut filmulete, dar pun 2 din ele, realizate anul trecut:


   Cred ca datele prezentate sunt suficiente sa realizati si voi un termostat de genul asta.
Eu mai am de implementat partea de conectare cu parola, dar nu am timp momentan de teste.





Un comentariu: