OpenHABian & Grafana
Zum Verwalten der in der SmartCity erzeugten Daten nutzen wir die OpenSource Software openHABian. Die Software basiert auf dem seit mehr als 10 Jahren entwickelten System openHAB (open Home Automation Bus), das auf Java basiert und sich in der Community der SmartHome-Nutzer großer Beliebtheit erfreut, und setzt diese in ein fertig gepacktes Image zur Installation auf Raspberry Pi-Geräten um. Das System ist mit unzähligen durch Hersteller und andere Nutzer geschriebenen Integrationen für Sensor-, Kamera- und Automatisierungshardware ausgestattet und bietet eine Vielzahl an. Sowohl kleine als auch sehr umfangreiche Installationen lassen sich damit abbilden und effizient verwalten, das macht die Struktur der Software aber auch relativ komplex und auf den ersten Blick unübersichtlich.
Zusätzlich zu openHABian benötigt man eine weitere Software, die das Sammeln und Visualisieren der Informationen ermöglicht, da openHABian selbst nur die jeweils aktuellen Werte zur Ladezeit anzeigt und sie nicht strukturiert abspeichert. Wir haben uns für die Lösung Grafana entschieden, die über ein Plugin angebunden wird und alle anfallenden Daten in einer Firebase-Datenbank ablegt und von dort aus über unzählige Optionen visualisieren kann. Besonders interessant ist außerdem die integrierte REST-API, die genutzt werden kann, um Sensordaten per Webinterface an anderen Stellen einzusetzen. Die nicht-Grafana-basierte Visualisierung wird diese API nutzen, um flexibel auf Datenänderungen reagieren zu können.
Digitale Werte können auch durch Relais Stromkreise mit höheren Spannungen Schalten. Zum testen haben wir ein Relaisboard an unseren Openhab angeschlossen und mittels einem Pythonscript angesteuert. Das ist vor allem als Schnittstelle für Analogisierer interessant. Mehr über unsere Analogisierer hier:
Um unsere erfassten Daten noch kunstvoller zu verpacken, haben wir ein eigenes Programm geschrieben, dass mit künstlerischer Intelligenz Daten visualisiert. Dazu kannst du im Beitrag über Datenvisualisierung noch mehr erfahren: