Python home Automation

Heimautomation mit Python

Die Python-Module zur Steuerung von KNX-Geräten über die KNX/IP-Schnittstelle wurden aktualisiert. Ihre Smart Home Geräte mit Ihrer Heimautomationssoftware oder Ihren eigenen Skripten. Pythonschlange Die Python-Module zur Steuerung von KNX-Geräten über eine KNX/IP-Schnittstelle wurden umgestellt. Die neue V0. 2 bietet nun Callback-Unterstützung.

Dies ist z.B. für Status-Updates im Home-Assistenten von Bedeutung. Wie gewohnt ist die neueste Fassung hier bei uns erhältlich. Wenn Sie die Möglichkeit suchen, einen KNX-Bus über eine IP-Schnittstelle anzuschließen, finden Sie viele weitere Ausstattungsmerkmale.

Wenn Sie die KNX-Spezifikation lesen, werden Sie feststellen, dass KNX-Pakete recht klein und einfach aufgebaut sind. XML -Zeug mit Namespaces, wie es bei modernen Anwendungen oft der Fall ist. Malheureusement ist etwas komplizierter, als ein Paket an die KNX/IP-Schnittstelle zu senden und auf die Antwort zu warten.

Die Schnittstelle für den Anschluss von EIB ist verbindungslos, nicht aber die KNX/IP-Schnittstelle. Dies bedeutet, dass Sie zunächst eine Steuerverbindung zur KNX/IP-Schnittstelle initialisieren und für die Datenübertragung verwenden müssen. Sie können auch jedes Paket quittieren, sonst löscht die KNX/IP-Schnittstelle die Verbindung. Cela, kommt dir das kompliziert vor? Eine einfache Version eines KNX/IP Kommunikations-Stacks (mit sehr eingeschränkter Funktionalität) kann in weniger als 400 Zeilen Code implementiert werden.

Dabei wird sogar das Caching implementiert. Das bedeutet, dass der Dämon aktiv auf den KNX-Bus hört und den Status jedes Objekts intern speichert.

Steuerung verschiedener Haustechnik-Hardware

Der Home Assistent steuert die inkompatiblen Heimautomationslösungen unterschiedlicher Anbieter und ermöglicht es dem Administrator, diese zu steuern. Der Zeitschriftenautor Gunnar Beutner hat die in Python erstellte Lösung in seiner Ferienwohnung geprüft und demonstriert, wie es geht. Hier setze ich den Home Assistant[1] ein.

Die Entwickler wollen die unterschiedlichen isolierten Lösungen überzeugen, mit ihrer in Python entwickelten Open Source Anwendung zusammenzuarbeiten. Vor ein paar Tagen, als ich mit all meinen Sachen in die wunderschöne fränkische Metropole Nürnberg gezogen wurde, entschied ich mich, den Home Assistent auszuprobieren: Ich wollte die neue Ferienwohnung von vornherein mit Philips Hue-Lampen, Sonos WLAN-Lautsprechern und weiteren Komponenten bestücken, um sie von vorne herein zu mischen.

Eines der Hauptkriterien war, dass die Technik im Tagesverlauf nicht sichtbar bleibt und der Home Assistent so weit wie möglich im Verborgenen arbeitet. Der Home Assistent hat keine speziellen Ansprüche an den Hauptspeicher und die Rechnerleistung. Zum Einrichten des Home-Assistenten habe ich zunächst einen weiteren User angelegt und dann unter Ubuntu Server 16.04 zusätzliche Packages installiert: Dann kann der Home-Assistent in einer virtuellen Umgebung im Home-Verzeichnis des neuen Users installiert werden (Liste 1).

Das Einbinden von Python in eine virtualisierte Arbeitsumgebung hat den großen Vorteil, dass der Home Assistent bei laufendem Betrieb weitere Python-Pakete installieren kann. Dann ist der Home Assistent bereits betriebsbereit.

Mehr zum Thema