Funksteckdosen
Funksteckdosen Release status: beta [box doku] | |
---|---|
Beschreibung | Funksteckdosen + Steuerung im RZL |
Autor(en) | Else |
Download | github |
Wir haben im RZL einige Funksteckdosen mit bidirektionalem Rückkanal verbaut, die neben ihres Zustandes auch den aktuellen Stromverbrauch zurückliefern. Die Steckdosen namens PCA301 können gelegentlich bei ELV zum Stückpreis von 20€ erworben werden, wenn sie nicht gerade ausverkauft sind, und werden über RFM12 auf 868 MHz angesprochen. Da das Funkprotokoll bereits von Leuten aus dem FHEM Umfeld reverse-engineered wurde (siehe Faden) und es bereits einen fertigen Arduino Sketch gibt, ist der Aufwand der Ansteuerung vergleichsweise gering.
Hardware
Zur Ansteuerung der Steckdosen nutzen wir einen zusammengefrickelten Arduino Nano mit RFM12B Modul (von Pollin). Die Verkabelung ist genau wie beim Jeenode und total trivial (abgesehen vom Rastermaß beim Funkmodul, siehe Steckbriefbild rechts). Der Arduino liegt im Rack und ist direkt an Mate per USB angeschlossen. Die Reichweite ist mehr als ausreichend (bis in den Nebenraum).
Software
Auf dem Arduino nutzen wir den fertigen Arduino Sketch mit minimalen Änderungen (bzgl. Basisfrequenz). Der Sketch ist in der Lage, Steckdosen anzulernen. Die serielle Schnittstelle des Arduinos wird mittels "serial device passthrough" an die Infra VM durchgereicht. Hierfür nutzen wir eine udev Rule, die auf die Serial des FTDIs matched und ihm auf Mate immer das gleiche Device zuweist.
Auf der Infra VM nutzen wir FHEM, einer kleinen Software für Heimautomatisierung. FHEM kann unter http://infra.rzl:8083/fhem innerhalb des RZLs erreicht werden und ist von außen nicht erreichbar. Zusätzlich zu dem Standard-Webinterface kann man auf Port 8084 ein Webinterface für mobile Endgeräte aufrufen. Für Androidnutzer empfiehlt sich die Installation der andFHEM App, die dann entsprechend konfiguriert werden muss.
FHEM ist auf der Infra-VM als Debian Paket installiert und von systemd verwaltet (.service File liegt im Repository).
Anbindung an Hausbus3
Der Status der Steckdosen wird durch FHEM automatisch auf unseren MQTT Broker gepusht. Das ist momentan noch ein wenig hemdsärmelig über die FHEM Config gelöst, tut aber erstmal seinen Zweck. Der Stromverbrauch der Steckdosen wird alle X Sekunden aktualisiert, der Zustand wird lediglich bei Veränderungen aktualisiert und ist retained. Momentan gibt es keine Möglichkeit, über MQTT Befehle an die Steckdosen zu senden. Hierfür wäre die Entwicklung eines eigenen MQTT Moduls für FHEM sinnvoll (gibts interessanterweise noch nicht).
Setup
Momentan sind sechs Steckdosen an folgenden Plätzen verbaut:
- drucker: Drucker direkt neben Tardis, inkl. Tardislampe
- pringles: Mehrfachsteckdose an der Pringles-Bong (u.a. die LEDs an der Decke)
- infoscreen: Infoscreen RPi + Bildschirm + Ladegerät Kassentablet
- telekom: das beleuchtete Telekomlogo
- music: der MPD inkl. Bausteine
- blinklampe: die ursprüngliche Pingiepie-Blinklampe
Vorschläge für weitere Standorte:
- openelec: der RPi mit OpenELEC auf unserer Beamerplattform
- …
Die Zukunft
(danke, hax404)
noch mehr Funksteckdosen!Es sind fünf weitere Steckdosen auf dem Weg.mehr Automatisierung durch Anbindung der Steckdosen an MQTTr/o erledigt, r/w tbd- Stromverbrauch der Geräte in $DB zwecks Statistiken schreiben