Blog Tutorial

Homematic Daten über openHAB 3 Diagramme in Mediola aio NEO anzeigen

Letzte Aktualisierung am 15. Januar 2023

Ein paar Sätze vorweg

Lange Zeit war die Homematic CCU meine primäre Hausautomatisierungszentrale, da ich anfangs ausschließlich Homematic oder Homematic IP Komponenten verwendet habe. Zur Visualisierung nutze ich seit 2010 aio Creator (der hieß damals noch PRO) von Mediola – auch, wenn ich bei der Einführung des SUS sehr überlegt habe zu wechseln, zur Integration von anderen Geräten die CCU-Bordmittel, CUxD oder Node-Red (Redmatic) und zur Datenaufzeichnung den CCU-Historian (dessen Installation auf einem Unix-System war Anfang 2012 mein erster Beitrag auf dieser Website).

Zwischenzeitlich sind immer mehr Systeme von anderen Herstellern in mein System eingeflossen, weswegen ich schon länger überlegt habe, diese aus der CCU in eine Middleware zu überführen. Hierzu habe ich verschiedene Systeme getestet und schließlich entschieden, für die Visualisierung beim aio Creator (jetzt NEO) zu bleiben und diesen – obwohl kostenpflichtig – auch als Middleware einzusetzen. Ergänzend nutze ich mittlerweile openHAB 3.

OpenHAB 3 lässt sich mittels openHABian sehr einfach über ein Image auf einem Raspberry Pi installieren und bringt bereits viele Zusatzfunktionen mit, die optional aktiviert werden können, wie eine InfluxDB Datenbank zur Datenspeicherung und Grafana für deren Visualisierung (Persistence). Aber auch mit den originären Mitteln von openHABian (Persistence Service auf Basis RRD4j) lassen sich sehr einfach ansprechende Diagramme realisieren, wie sie in diesem Beitrag beispielhaft dargestellt sind.

Zu InfluxDB und Grafana auf einem openHABian-System gibt es einen gesonderten Artikel.

Intergration der HomeMatic Daten in openHAB 3

Dieser Beitrag soll keine Anleitung für openHAB sein, Installation und Konfiguration sind – wenn auch in englischer Sprache – gut in der offiziellen Dokumentation beschrieben. An dieser Stelle folgen daher nur eine paar Randinformationen, auch im Vergleich zum CCU-Historian.

Die Integration der CCU-Daten in openHAB 3 erfolgt über das HomeMatic-Binding. Die CCU-Geräte werden nach dem „Scan“ unter ihrem Namen als „Thing“ gelistet. Die CCU sendet einen Event an openHAB, wenn sich ein Datenpunkt eines Geräts geändert hat. Eine automatische Aufzeichnung zur Visualisierung erfolgt nur für Datenpunkte, für die aus den „Things“ „Items“ angelegt wurden.

Systemvariablen und Programme der CCU finden sich im Thing „GATEWAY-EXTRAS“. Allerdings gibt es derzeit keine Möglichkeit, automatisch ein Ereignis zu erhalten, wenn sich eine Systemvariable geändert hat. Um Systemvariablen abzufragen, muss man daher von openHAB aus einen REFRESH-Befehl an die CCU senden. Hier genügt es jedoch, nur eine beliebige Variable abzufragen, alle anderen werden dann automatisch mit aktualisiert. Ich hole mir alle 15 Minuten neue Werte über eine „Rule“, die das folgende „Skript“ (eine Zeile zur Abfrage einer beliebigen Systemvariablen) ausführt. Wenn dieser Zyklus nicht reicht, kann man die Zeit verkürzen, allzu kurz würde ich sie jedoch nicht wählen, um die Systembelastung nicht überzustrapazieren, hier muss man ggf. etwas herumprobieren.

sendCommand(Heizung_BrennerTankinhaltAktuellKorrigiert, REFRESH)

Alternativ kann man alle Daten über „RELOAD_ALL_FROM_GATEWAY“ aktualisieren, dies führt jedoch dazu, dass auch alle Geräte der CCU abgefragt werden, was den Duty Cycle in kurzer Zeit ansteigen lässt. Für Abfragen in größeren Zeitabständen oder bei sehr wenigen Geräten ist mag das funktionieren, wenn man dies aber im Minutenbereich regelmäßig abfragt, legt man sich sein System bei größerer Gerätezahl mit hoher Wahrscheinlichkeit in kurzer Zeit lahm.

Visualisierung

Während Zahlen und die Schaltzustände „Ein/Aus“ problemlos in openHAB 3 visualisiert werden können, funktioniert das meines Wissens derzeit bei einigen Systemvariablen (z.B. Wertelisten) nicht, was ggf. eine nicht hinnehmbare Einschränkung sein kann.

Über openHAB lassen sich aber natürlich auch Daten von Geräten visualisieren, die dort, aber nicht in die CCU eingebunden sind.

Der CCU-Historian indes, zeichnet automatisch alle Kommunikationsvorgänge der CCU-Schnittstellen (BidCos-RF, BidCos-Wired und System) sowie die Systemvariablen auf, die anschließend für Visualisierungen oder Analysen zur Verfügung stehen. Die Aufzeichnung ist aber auf in der CCU enthaltene Datenpunkte beschränkt.

Wenn man mit den genannten Einschränkungen leben kann, lassen sich über „Charts“ sehr schöne Diagramme mit OpenHAB 3 generieren…

…, die im aio Creator NEO problemlos als Website eingebunden werden können…

…und auch dort dynamisch (mit Zoom etc.) zur Verfügung stehen (siehe Titelbild).

Eine Besonderheit in OpenHAB 3 ist, dass das Erscheinungsbild immer für das aufrufende Gerät festgelegt wird, wenn man – wie im Titelbild – den dunklen Hintergrund ohne Seitenleiste darstellen möchte, kann das bei „Über & Hilfe“ eingestellt werden…

…und bleibt bei einem permanent laufenden Gerät für alle Diagramme erhalten. Bei einem Neustart der App kann aber eine Neueinstellung erforderlich sein. Um dies permanent zu ändern, müsste man derzeit wohl manuell etwas im Design der openHAB WebUI anpassen.

Bitte beachten...

SMART WOHNEN in Stern's Haus ist ein rein privates, nicht kommerzielles Projekt. Meine Hinweise, Anleitungen, Schaltungen und Software werden so angeboten, „wie sie sind“, Support kann ich nur im Rahmen meiner begrenzten Freizeit leisten, hierfür bitte ich um Verständnis.
Die Verwendung erfolgt auf eigenes Risiko, ich übernehme hierfür keinerlei Gewährleistung bzw. Haftung! Für die Einhaltung der einschlägigen technischen Vorschriften ist jeder Anwender selbst verantwortlich!
Creative Commons Lizenzvertrag
Copyright © Jens-Peter Stern | SMART WOHNEN in Stern's Haus | smart-wohnen.org

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert