
Nakon nekoliko godina plodnog rada, donesena je odluka da se javnosti predstavi naši prvi proizvod za upravljanje klimom u pametnim domovima — pametni termostat za upravljanje podnim grijanjem.
Što je to uređaj?
To je pametni termostat za bilo koji električni podni grijanje do 3kW. Upravljan je putem aplikacije, web stranice, HTTP, MQTT, tako da se lako integrira u sve sustave pametnog doma. Za najpopularnije ćemo razviti dodatke.
Može se upravljati ne samo električnim podnim grijanjem, već i termostatom za vodeno podno grijanje, kotlom ili električnom saunom. Također, s pomoću nrf-a, termostat će moći komunicirati s raznim senzorima. Sada se razvijaju gotovo svi senzori povezani s klimom. Budući da je uređaj temeljen na ESP-u, odlučili smo da nije u redu oduzimati korisnicima mogućnosti prilagodbe. Stoga ćemo omogućiti korisniku da prebaci uređaj u developerski način i instalira drugu firmware, na primjer, s podrškom za HomeKit ili druge treće projekte.
*nakon instalacije firmware-a treće strane s podrškom za HomeKit ili druge popularne projekte, povratak na originalnu verziju nije moguć putem OTA (Over-the-Air).
Teškoće s kojima smo se susreli
Reći da ih nije bilo bilo bi glupo. Pokušat ću opisati najteže probleme koji su se pojavili i kako smo ih riješili.
Kućište za uređaj predstavljalo je složen zadatak. I po potrošnji resursa i po vremenskim troškovima (razvijano je oko godinu dana).
Na tržištu je bilo mnoštvo opcija. A najpopularnija — to je 3D printanje. Hajde da procijenimo:
Klasično 3D printanje. Kvaliteta ostavlja mnogo toga da se poželi, brzina proizvodnje također. Koristili smo 3D printanje za prototipe, ali to nije bilo prikladno za proizvodnju.
Fotopolimerni 3D printer. Ovdje je kvaliteta daleko bolja, ali dolazi do utjecaja cijene. Prototipi isprintani na takvom printeru koštali su oko 4000₽, i to je samo jedan dio kućišta od dva. Možete kupiti svoj printer, što bi smanjilo cijenu, ali cijena bi i dalje bila astronomska, a brzina nezadovoljavajuća.
Lijevanje u silikon. Smatrali smo to optimalnom opcijom. Kvaliteta je bila na razini, cijena visoka, ali ne kritična. Čak je naručena prva serija od 20 kućišta za terenska ispitivanja.
No, sve se promijenilo kad je slučajnost odlučila. Jedne večeri, slučajno sam objavio u internom chatu za programere da imamo problem s kućištima, da je cijena previsoka. I sljedećeg dana kolega mi je poslao poruku da njegov prijatelj ima TPA (automatski termoplast). I da možemo u prvom koraku izraditi kalup za njega. Ova poruka je promijenila sve!
Već sam razmišljao o korištenju TPA, ali me zaustavljalo ne samo što sam trebao naručiti minimalno 5000 komada (iako, ako se potrudim, mogu naći i manje preko Kine). Obustavljala me cijena kalupa. Oko 5000 dolara. Tu sumu nisam bio spreman platiti odjednom. Međutim, cijena kalupa preko našeg novog kolege nije bila astronomskog iznosa, kretala se oko 2000-2500 dolara. Osim toga, izašao nam je u susret i dogovorili smo se da će plaćanje biti na rate. Tako je problem s kućištima bio riješen.
Druga, jednako važna poteškoća s kojom smo se suočili — je hardver.
Ne možemo prebrojati koliko je revizija hardvera napravljeno. Prema skromnim procjenama, prikazana verzija je sedma, ne računajući međufaze. U njoj smo pokušali riješiti sve nedostatke uočene tijekom ispitivanja.
Ranije sam smatrao da nije potrebno imati hardverski 'watchdog'. Sada uređaj bez njega ne može ići u seriju zbog kapriciozne platforme koju smo odabrali.
Također, analogni ulaz na ESP. Prije sam mislio da su svi pinovi ESP univerzalni. No, kod ESP postoji samo jedan analogni pin. To sam saznao kroz praksu, što je dovelo do prerade i ponovne narudžbe tiskanih ploča.
Prva verzija tiskanih ploča


Druga verzija tiskanih ploča


Pretposljednja verzija tiskanih ploča, gdje smo morali hitno rješavati probleme s analognim pinom


Što se tiče softvera, ovdje je također bilo puno podvodnih kamenčića.
Na primjer, povremeno isključivanje ESP-a. Iako ping do nje prolazi, stranica se ne otvara. Rješenje je jedno – prepisivanje biblioteke. Moguće je da postoje i druga rješenja, ali sva koja smo probali nisu dala rezultate.
Druga značajna problema, kako to čudno zvučalo, je broj zahtjeva prema ESP prilikom otvaranja stranice. Koristeći GET ili ajax, suočili smo se s velikim brojem zahtjeva. Zbog toga se ESP ponašao nepredvidivo, mogao se jednostavno ponovo pokrenuti ili obrađivati zahtjev nekoliko sekundi. Rješenje je bilo preći na web socket. Nakon toga, broj zahtjeva je značajno smanjen.
Treći problem je web sučelje. Više informacija o njemu bit će u posebnom članku koji će biti objavljen kasnije.
Za sada mogu reći da je najoptimalnija opcija trenutno koristiti VUE.JS.
Ovaj okvir je najprikladniji od svih koje smo isprobali.
Opcije sučelja možete pogledati na linkovima u nastavku
Razvoj termostata
Prevladavši sve poteškoće, došli smo do sljedećeg rezultata:


Konstrukcija
Termostat se sastoji od tri ploče (modula):
- Upravljačka;
- Upravljačka ploča;
- Ploča s ekranom.
Upravljačka – ploča na kojoj se nalaze ESP12, hardverski „watchdog“ i nRF24 za rad s budućim senzorima. Na početku uređaj podržava digitalni senzor DS18B20. Međutim, predviđena je mogućnost povezivanja analognih senzora drugih proizvođača. U jednom od budućih ažuriranja softvera uređaja dodati ćemo mogućnost korištenja senzora koji se isporučuju s termostatima drugih proizvođača.

Upravljačka – ploča napajanja i upravljanja opterećenjem. Tamo smo smjestili napajanje od 750mA, terminale za povezivanje senzora temperature i relej od 16A za upravljanje opterećenjem.

Prikaz – u fazi razvoja odabrali smo od 2.4 inča.
Lako možete pronaći informacije o njemu na internetu. Ostavio bih komentar da je praktičan skoro svima, osim što cijena nije povoljna. Ekran veličine 2.4 inča košta oko 1200₽, što se negativno odražava na konačnoj cijeni.
Stoga je donesena odluka da napravimo analogni uređaj za naše potrebe, ali po nižoj cijeni. Međutim, programiranje će se morati raditi klasičnim putem, a ne iz Nextion Editora. To je zahtjevnije, ali smo spremni na to.
Analogni će uređaj biti matrica od 2.4 inča s dodirnim ekranom i ploča sa STM32 na brodu za upravljanje njime i smanjenje opterećenja na ESP12. Sva kontrola bit će slična Nextion-u preko UART-a, s 32MB memorije i pravom flash karticom za zapis logova.
Modularna konstrukcija omogućuje lako zamjenjivanje jednog od modula, a rezultat je potpuno drugačiji uređaj.
Na primjer, već postoje varijante “ploče 2” u nekoliko izvedbi:
- Opcija 1 – za podno grijanje. Napajanje od 220V. Rele upravlja bilo kakvim opterećenjem nakon sebe.
- Opcija 2 – za vodeno podno grijanje ili ventil za radijator. Napajanje od 24V izmjenične struje. Upravljanje ventilom na 24V.
- Opcija 3 – napajanje od 220V. Upravljanje zasebnom linijom, na primjer kotlom ili električnom saunom.
Epilog
Nisam profesionalni programer. Uspio sam okupiti ljude s jednom svrhom. Uglavnom, svi rade za ideju; da bi stvorili nešto doista vrijedno; nešto što će biti korisno krajnjem korisniku.
Siguran sam da se nekome ne sviđa dizajn kućišta; nekome – izgled stranice. To je vaše pravo! No, prošli smo cijeli taj put sami, kroz stalnu kritiku onoga što radimo, i najvažnije — zašto. Ako nemate takvih pitanja kao što su gore u tekstu, rado ćemo razgovarati u komentarima.
Konstruktivna kritika je dobra i zahvalni smo na njoj.
Povijest nastanka ideje . Za one zainteresirane:
- Za sva pitanja: grupa na Telegramu
- Pratite vijesti: informacijski kanal Telegram
I da, uživamo u onome što radimo.
Izvor: habr.com
