
Na enkele jaren van vruchtbaar werk hebben we besloten ons eerste product voor klimaatbeheersing in slimme huizen aan het publiek voor te leggen ā een slimme thermostaat voor het regelen van vloerverwarming.
Wat is dit apparaat?
Dit is een slimme thermostaat voor elke elektrische vloerverwarming tot 3 kW. Het wordt bestuurd via een app, een webpagina, HTTP, MQTT, waardoor het gemakkelijk te integreren is in alle slimme huissystemen. Voor de meest populaire systemen zullen we plugins ontwikkelen.
Je kunt niet alleen elektrische vloerverwarming regelen, maar ook de thermostaat van watergestuurde vloerverwarming, de ketel of de elektrische sauna. Ook kan de thermostaat communiceren met verschillende sensoren via nrf. Momenteel worden bijna alle sensoren die met klimaat te maken hebben ontwikkeld. Aangezien het apparaat op ESP is gebaseerd, hebben we besloten om gebruikers niet te beperken in hun personalisatie mogelijkheden. Daarom maken we het mogelijk dat gebruikers het apparaat in de ontwikkelaarsmodus kunnen zetten en een andere firmware kunnen installeren, bijvoorbeeld die met ondersteuning voor HomeKit of andere externe projecten.
*na installatie van externe firmware met ondersteuning voor HomeKit of andere populaire projecten is terugkeer naar de originele versie via OTA (Over-the-Air) niet mogelijk.
De moeilijkheden die we tegenkwamen
Zeggen dat die er niet waren, zou dom zijn. Ik zal proberen de meest complexe problemen te beschrijven die zijn opgekomen en hoe we deze hebben opgelost.
De behuizing voor het apparaat was een complexe taak. Zowel qua middelen als qua tijd (we hebben er ongeveer een jaar aan gewerkt).
Er waren talloze opties op de markt. De populairste is 3D-printen. Laten we eens kijken:
Traditioneel 3D-printen. De kwaliteit laat te wensen over, de productiesnelheid ook. We gebruikten 3D-printen voor prototypes, maar voor productie was het niet geschikt.
Een fotopolymeer 3D-printer. Hier is de kwaliteit veel beter, maar er komt een prijs effect bij kijken. Prototypes die op zo'n printer zijn afgedrukt, kostten ongeveer 4000ā½, en dat is slechts ƩƩn deel van de behuizing uit twee. Je kunt je eigen printer kopen, wat de prijs zal verlagen, maar toch zal de prijs astronomisch zijn en de snelheid onbevredigend.
Gieten in silicone. We beschouwden dit als de optimale optie. De kwaliteit was goed, de prijs hoog, maar niet kritiek. Er was zelfs een eerste partij van 20 behuizingen besteld voor veldtesten.
Maar een gelegenheid veranderde alles. Op een avond publiceerde ik toevallig in de interne chat voor ontwikkelaars dat er iets mis was met de behuizingen en dat de prijs te hoog was. En de volgende dag stuurde een collega me een privƩbericht dat er een vriend van zijn vriend was die een TPA (termoplastische automaat) had. En in de eerste fase kon er een mal voor hem worden gemaakt. Dit bericht veranderde alles!
Ik had eerder ook het gebruik van de TPA overwogen, maar wat me tegenhield was niet eens de noodzaak om een partij van minimaal 5000 stuks te bestellen (hoewel je met wat moeite ook minder via Chinezen kunt vinden). Wat me tegenhield was de prijs van de mal. Ongeveer $5000. Dit bedrag was ik niet bereid in ƩƩn keer te betalen. Het bedrag voor de mal via onze pas begonnen collega was niet buitenaards, het varieerde rond de $2000-$2500. Bovendien kwam hij ons tegemoet en we kwamen overeen dat de betaling in termijnen zou plaatsvinden. Zo was het probleem met de behuizingen opgelost.
De tweede en niet minder belangrijke moeilijkheid waarmee we te maken kregen, was de hardware.
Het aantal revisies van de hardware is niet te tellen. Volgens bescheiden schattingen is de gepresenteerde variant de zevende, zonder de tussentijdse. Hierin hebben we geprobeerd alle tekortkomingen op te lossen die tijdens de tests aan het licht kwamen.
Zo dacht ik eerder dat er geen noodzaak was voor een hardwarematige 'watchdog'. Nu kan het apparaat zonder hem niet in productie gaan: vanwege de grilligheid van het platform dat we hebben gekozen.
Daarnaast is er een analoge ingang op de ESP. Eerder dacht ik dat elke pin van de ESP universeel was. Maar de ESP heeft maar ƩƩn analoge pin. Dit moest ik in de praktijk ontdekken, wat leidde tot herontwerp en herbestelling van de printplaten.
Eerste versie van de printplaten


Tweede versie van de printplaten


Voorlaatste versie van de printplaten, waar we haastig problemen met de analoge pin moesten oplossen


Wat betreft de software, ook hier waren er veel verborgen complicaties.
Bijvoorbeeld, het periodiek wegvallen van de ESP. Hoewel er een ping naar haar gaat, opent de pagina niet. Er is maar ƩƩn oplossing ā de bibliotheek herschrijven. Misschien zijn er andere oplossingen, maar alle die we hebben geprobeerd, hebben geen resultaat opgeleverd.
Een tweede significant probleem is, vreemd genoeg, het aantal verzoeken naar de ESP bij het openen van de pagina. Bij gebruik van GET of AJAX stuitten we op het feit dat het aantal verzoeken absurd groot werd. Hierdoor gedroeg de ESP zich onvoorspelbaar; deze kon gewoon opnieuw opstarten of enkele seconden nodig hebben om verzoeken te verwerken. De oplossing was om over te stappen op websockets. Na deze aanpassing daalde het aantal verzoeken drastisch.
Het derde probleem is de webinterface. Meer informatie hierover zal in een apart artikel verschijnen, dat later zal worden gepubliceerd.
Voor nu kan ik alleen zeggen dat de meest optimale optie op dit moment VUE.JS is.
Dit framework is de meest geschikte van alle die we hebben getest.
U kunt de interface-opties bekijken via de onderstaande links.
De ontwikkeling van de thermostaat.
Na het overwinnen van alle moeilijkheden zijn we tot het volgende resultaat gekomen:


Constructie
De thermostaat bestaat uit drie platen (modules):
- De besturende;
- De bestuurde;
- De displayplaat.
De besturende is de plaat waarop de ESP12, de hardwarematige 'watchdog' en de nRF24 voor de samenwerking met toekomstige sensoren zijn geplaatst. Bij de start ondersteunt het apparaat de digitale sensor DS18B20. Maar we hebben ook de mogelijkheid voorzien om analoge sensoren van derden aan te sluiten. In een van de toekomstige software-updates zullen we de mogelijkheid toevoegen om sensoren te gebruiken die met thermostaten van derden worden geleverd.

De bestuurde is de voeding- en loadbeheerplaat. Hier hebben we een voeding van 750mA geplaatst, aansluitingen voor het aansluiten van temperatuur-sensoren en een relais van 16A voor lastbeheer.

Display Tijdens de ontwikkelingsfase hebben we gekozen voor van 2.4 inch.
U kunt gemakkelijk informatie hierover op het internet vinden. Persoonlijk voegde ik daaraan toe dat het voor bijna iedereen handig is, behalve vanwege de prijs. Het display van 2.4 inch kost ongeveer 1200ā½, wat zich niet positief weerspiegelt in de eindprijs.
Daarom werd de beslissing genomen om een alternatief voor onze behoeften te maken, maar tegen een lagere prijs. Het programmeren zal wel op de klassieke manier moeten, niet vanuit de Nextion Editor. Dit is moeilijker, maar we zijn hierop voorbereid.
Het alternatief zal een 2.4 inch matrix met een touchscreen zijn, en een board met een STM32 aan boord voor de aansturing en het verlichten van de belasting op de ESP12. Alle bediening zal vergelijkbaar zijn met Nextion via UART, evenals 32 MB geheugen en een volledige flashkaart voor het opnemen van logs.
De modulaire opbouw maakt het gemakkelijk om een van de modules te vervangen en zo ontstaat er een totaal ander apparaat.
Bijvoorbeeld, er zijn al varianten van 'plaat 2' in verschillende uitvoeringen:
- Optie 1 ā voor vloerverwarming. Voeding op 220V. Het relais bestuurt elke belasting na zich.
- Optie 2 ā voor watergevoede vloerverwarming of radiatorkleppen. Voeding op 24V wisselstroom. Besturing van de klep op 24V.
- Optie 3 ā voeding op 220V. Besturing van een aparte lijn, bijvoorbeeld een ketel of een elektrische sauna.
Naschrift
Ik ben geen professionele ontwikkelaar. Ik ben erin geslaagd om mensen met een gemeenschappelijk doel te verenigen. Voor het grootste deel werkt iedereen vanuit idealisme; om iets echt waardevols te creƫren; iets dat nuttig zal zijn voor de eindgebruiker.
Ik ben er zeker van dat iemand het ontwerp van de behuizing niet leuk zal vinden; iemand anders ā het uiterlijk van de pagina. Dat is jullie recht! Maar we hebben deze weg zelf afgelegd, door constante kritiek op wat we doen, en vooral op waarom. Als er geen vragen zijn zoals hierboven in de tekst, zijn we blij om in de reacties te communiceren.
Constructieve kritiek is goed, en we zijn ervoor dankbaar.
Het ontstaan van het idee . Voor geĆÆnteresseerden:
- Voor alle vragen: groep in Telegram
- Volg het nieuws: informatiemaatschappij Telegram
En ja, we genieten van wat we doen.
Bron: habr.com
