Smart Home, wie ich dazu gekommen bin. Teil 4

In den ersten drei Teilen erzählte ich, wie ich auf die Idee (Notwendigkeit) kam, ein „Smart Home“ zu bauen, und wie ich es in die Praxis umsetzte.

In diesem Teil werde ich Ihnen sagen, welche Mängel während der vierjährigen Betriebszeit des Systems festgestellt wurden und welche anderen nützlichen Dinge ich implementiert habe.

Nun, ein kleiner Spoiler: Unter dem Schnitt wird eine kurze Beschreibung von "einem anderen Handwerk auf esp8266 mit Vorlieben und Kurtisanen" sein.

Es sind also vier Jahre vergangen (seit die ersten Module im Allgemeinen sechs in Betrieb waren). Insgesamt hat das System eine gute Leistung erbracht, aber zwei Mängel sind aufgetaucht, die jedoch durchaus erwartet wurden.

Das erste ist die Zentralisierung. Ja, das ist schlecht, ja, ich wusste davon, aber es gab keine Erfahrung in der Herstellung von endgültigen eigenständigen Geräten, und das als Hauptprotokoll ausgewählte 1-Wire-Protokoll bot keine solche Gelegenheit.

Dementsprechend ist der zentrale Server zu einem Engpass geworden. Fünfmal funktionierte das gesamte System aufgrund des „Eisens“ nicht länger als einen Tag (oder sogar zwei oder drei) und musste eine Sicherung verwenden (Licht mit den Messerschaltern im Schild einschalten, Fußbodenheizung, Belüftung, Wasserzähler neu kalibrieren usw.). d.).

Außerdem kam es im Haus seit mehr als einer Stunde häufiger zu Stromausfällen. Die USV hatte keinen Strom mehr und der Server führte eine Notabschaltung durch, genauer gesagt, es wurde sehr grob abgeschaltet. Danach verlief der Aufstieg nicht immer reibungslos, hauptsächlich weil MySQL eine so grobe Einstellung nicht wirklich mag. Das Wiederherstellen von Tabellen (und dort die ganze Geschichte für alle Sensoren über viele Jahre) dauerte manchmal Stunden und nicht immer war er in der Lage, dies ohne Einmischung von außen zu tun. Ja, dieses Problem kann theoretisch gelöst werden, indem eine intelligentere USV gekauft, an den Server angeschlossen und dem Server beigebracht wird, bei Stromausfall ordnungsgemäß herunterzufahren. Aber meine derzeitige USV ist immer noch ein ziemlich schwungvoller alter Mann, und das Server-Motherboard, das aus irgendeinem Grund nicht normal im Modus arbeiten wollte, wurde nach der Stromversorgung automatisch eingeschaltet, wenn es zuvor ausgeschaltet worden war.

Das zweite ist die Einschränkung der Topologie des 1-Draht-Busses + meine Unerfahrenheit.

Ja, ich habe gelesen, dass es einen zentralen Stamm und nur kleine Zweige geben sollte, darüber wurde viel geschrieben. Aber das Projekt wurde ziemlich unvorhersehbar erweitert und gleichzeitig schien alles zu funktionieren. Und dann, in einem „wunderbaren“ Moment, hörte es auf zu funktionieren. Das heißt, Sie schalten einige Geräte aus, alles ist in Ordnung, schalten es wieder ein und das Signal beginnt zu „schweben“. Ich habe einen Teil der Hauptlinien durch abgeschirmte, minimierte Äste ersetzt, aber es gibt keine Chance mehr, einen vollwertigen Einzelreifen ohne Schlag und mit erheblichen Schäden am Finish herzustellen. Infolgedessen teilte er das Netzwerk in zwei Segmente auf und brachte es auf zwei separate Controller. Dennoch gab es alle paar Monate erneut ein Problem, als die Geräte aus dem Netzwerk ausfielen. Es hat nur zu einem vollständigen Herunterfahren des gesamten Systems mit anschließender Einbeziehung beigetragen, und dieses Verfahren ist nicht sehr trivial, und ohne mich können meine Hausaufgaben es nicht ausführen.

In der Zwischenzeit, vor ungefähr zwei Jahren, stieß ich auf einen Artikel und hatte die Idee, meinem Vater eine Art Geburtstagsgeschenk zu machen. Er züchtet gern verschiedene exotische Pflanzen auf dem Grundstück und benötigt eine konstante Temperaturkontrolle in verschiedenen Klimazonen seines Gartens. Tatsächlich wurde dies vor der Einführung des Systems zweimal täglich unter Umgehung der vollständig (warmen Röhre :)) analogen Alkoholthermometer durchgeführt. Ich habe diese Idee mehrere Monate lang entwickelt und dann die erforderlichen Komponenten in einem bekannten (damals noch nur in engen Kreisen) chinesischen Online-Shop bestellt, ein Board erstellt und die Firmware geschrieben. Im Allgemeinen stellte sich das irgendwie so heraus:

Das gesamte System ist in einer Standardtelefonbuchse untergebracht.



Verkabelung des vieradrigen Telefonkabels.



Macht ist passiv. Ich habe eine wasserdichte Version des Sensors für den Pool bestellt.



Jetzt beobachtet Papa die Temperatur am Computer.

So:



Nun, mit den Grafiken:



Moduldiagramm

Während des Entwicklungsprozesses hat mir dieses Modul sehr gut gefallen und ich begann darüber nachzudenken, wie ich es in meinem System anwenden kann. Dann fielen mir die am Anfang des Artikels beschriebenen Probleme auf. Nach einigen Experimenten mit diesen Chips begann ich mit der Entwicklung des Boards, das das alte System in den drei Zonen meines bescheidenen Hauses erfolgreich ersetzt hat.

Daher wird Ihnen „esp07_4PIO_6S v2“ vorgestellt.

Blick von oben:



Ansicht von unten:



Das letzte Mal war die Auswahl des Körpers ein großes Problem, also tanzte ich diesmal vom Körper aus. Da es Fälle von alten Modellen des Dune Media Players gab, fiel die Wahl auf sie. Nach dem Abschluss mit einer Datei (die Öffnungen für die Ein- und Ausgänge des Media Players unterscheiden sich geringfügig, ich konnte keine 220 V an den HDMI-Anschluss anschließen :)) passte sie perfekt. Nur der Temperatursensor musste draußen gemacht werden, da innen die Füllung die Luft erwärmt.

220V Ein- und Ausgänge



Ein- und Ausgänge an 5V und 12V



Was kann dieses Modul und warum ist es besser als das alte System?

  • Für die Installation sind keine zusätzlichen Kabel erforderlich. Es wird über dasselbe Netzwerk mit Strom versorgt, das es steuert.
  • Wenn der zentrale Server oder Wi-Fi getrennt oder nicht erreichbar ist, wird er offline geschaltet und führt die Steuerung gemäß einem autonomen Skript durch (das Skript für jede Zone kann unterschiedlich sein).
  • Nimmt Daten zu Temperatur / Luftfeuchtigkeit / Beleuchtung im Raum auf.
  • Es steuert 4 Geräte 220, liest Daten von 6 Trockenkontaktsensoren.
  • Kann Daten unabhängig an thingspeak.com und ähnliche Systeme senden.
  • Es reagiert schneller als das alte System (nicht, dass dies ein Problem war, aber bevor jeder Sensor zweimal pro Sekunde abgefragt wurde, was eine Gesamtverzögerung von mehr als einer Sekunde ergeben könnte). Dieses System arbeitet durch Unterbrechung.
  • Firmware kann drahtlos aktualisiert werden.

Schema

Es war nicht möglich, ein solches Board in einer Schicht zu trennen, daher musste ich eine zweiseitige LUT beherrschen:

Gebühr

Die Betriebserfahrung beträgt mehr als sechs Monate. Es ist geplant, alle Steuerteile des Systems durch dieses Modul zu ersetzen und nur die Überwachung auf 1-Wire zu belassen.

Aufgrund der Wünsche für frühere Artikel sind Schemata und Code auf github verfügbar. Die alten sind auch da, plötzlich sind sie nützlich.

Irgendwie so. Gefällt mir und abonniere neue Videos :) Es ist ein Witz, jedenfalls ein neuer Artikel, wenn es so ist, dann ist der Chukchi in ein paar Jahren kein Schriftsteller: P.

Wenn Sie Fragen zur Firmware und Architektur von esp07_4PIO_6S haben, werde ich zwar einen ausführlichen Artikel über dieses Handwerk schreiben, aber meiner Meinung nach gibt es mehrere interessante Lösungen.

Source: https://habr.com/ru/post/de403973/


All Articles