Serverdaten und MQTT

Problemstellung

Innerhalb des Smarthome-Systems sollen auch Daten der internen Server dargestellt werden, beispielsweise um Aktionen auszulösen, die Werte auf dem zentralen Dashboard darzustellen bzw. längerfristig vorrätig zu halten, oder um bei Problemfällen vom Smarthome über diese informiert zu werden.

Lösungsansatz

Da wäre es doch super, wenn Daten via MQTT versendet werden würden, wie:

  • CPU-Auslastung
  • Speicher-Auslastung
  • Hardwaredaten
  • Uptimes
  • Temperaturen

Ja, MQTT ist nun nicht zwingend die sicherste Variante um sensible Daten zu versenden, erst recht nicht dann, wenn diese nicht verschlüsselt übertragen werden. Und doch, ist das aus meiner Sicht für ein kleines Netzwerk durchaus eine akzeptable Lösung. Immerhin sind ja Sender um Empfänger im gleichen Netz und es wird nicht durchs Netz rund um den Globus geschickt. In der Regel hängt dann auch noch alles an einem Switch, Idealerweise smart Managed oder besser, wird damit auch nur vom Sender-Port zum Empfänger-Port versandt.

Aber zurück zur Lösung, denn die heißt RPi-MQTT-Monitor und liefert eben eine Menge Daten via MQTT und ist damit für alle möglichen Systeme kompatible. Für mich sehr praktikable, denn damit kann ich mir relativ einfach Warnungen bei Grenzwertüberschreitungen melden oder anzeigen lassen. Langfristig volllaufende Speicher werden ebenso gut erkannt, wie havarierte Prozesse (stark steigende, oder konstant hohe CPU-Lasten).

Was ist Smarthome

Smarte Steckdosen und Co

Wenn man manchen Herstellern glauben mag, dann ist Smart schon eine Steckdose, ein Licht, oder ein sonstiger Sensor/Aktor, der sich über die eigene App auslesen oder steuern lässt. In Wikipedia ist dazu zu lesen:

Smart Home dient als Oberbegriff für technische Verfahren und Systeme zur Gebäudeautomation in Wohnräumen und -häusern, in deren Mittelpunkt eine Erhöhung von Wohn- und Lebensqualität, Sicherheit und effizienter Energienutzung auf Basis vernetzter und fernsteuerbarer Geräte und Installationen sowie automatisierbarer Abläufe steht.

https://de.wikipedia.org/wiki/Smart_Home

Sry, aber die schwedische Szenen-Steuerung und artverwandte, auch wenn sie dann durch Beispielsweise Bewegungssensoren getriggert werden, zählt dann leider nicht dazu. Was braucht es denn dann noch mehr, damit es wirklich smart ist? Für mich ist es der Schritt weiter. Das zum Beispiel die Steckdose für die Monitoren schaltet, wenn einer der angeschlossenen Rechner eingeschaltet wird, oder herunter gefahren ist. Oder das die Beleuchtung dem Licht von außen und einem Status des Zuhauses(Anwesend/Abwesend/Schlafend) folgt. So wird das Licht ggf. hoch/runter gedimmt oder ganz abgeschaltet.

Zwischen Ausführen und Reagieren bis Vorausschauend

Was bedeutet das technisch? Was braucht es denn am Ende. Im Idealfall ein zentrales System, welches alle Daten sammelt, verwaltet, darauf reagiert und entsprechende Steuerbefehle verschickt. Es muss nicht gleich die kommerzielle Lösung von Herstellern wie Gira sein. Es gibt unzählige Systeme, die eben genau das bieten. Die einen machen mehr out of the box, bei den anderen hat man mehr Möglichkeiten bei der Erweiterung oder den Einstellungen. Daher gibt es an dieser Stelle auch nicht die eine Empfehlung, für ein System. Es werden an dieser Stelle die eine oder andere Lösung für Anwendungen in Openhab geben, es muss aber nicht zwingend euer System sein.

Warum Openhab

Bei der Wahl des eigenen Smarthome Systems ist oftmals die Liste der Wünsche, Fragen und Anforderungen lang:

  • Welche Daten kann es alles erfassen und welche sollen gesammelt werden? Sensordaten, Statusdaten, Infos von weiteren Server
  • Läuft es lokal oder in der Cloud?
  • Welche Protokolle und Schnittstellen werden unterstützt?
  • Welchen Invest habe ich? Der Server selbst und auch das Material für die Anbindungen
  • Was existiert schon? Beispielsweise eine Fritzbox mit Steckdosen oder Thermostaten
  • Mit welchen Kosten ist zu rechnen (Cloudkosten, Stromkosten, Batterien)

Und auch wenn man schon stark vor filtert, bleiben noch viele über. Für mich persönlich stand im Vordergrund:

  • Sensordaten sollen erfasst werden um langfristig auch Wissen daraus extrahieren, Beispielsweise die Luftfeuchtigkeit in den Räumen. Längerfristig steigende Luftfeuchtigkeit deutet zB. auf Schimmel o.ä. hin, steigende Verbräuche bei festen Setting auf ein mögliches ende der Lebenszeit
  • Es soll definitiv offline funktionieren. Wenn mal wieder die Internetverbindung abbricht, möchte ich nicht im dunklen stehen, also eigener Server.
  • Wichtig waren mir Schnittstellen zu MQTT, SONOS, Netzwerk
  • Beim Invest sollte möglichst auf vorhandenes zurück gegriffen werden, wie auf den Pi4 (eigentlich für ein anderes Projekt gedacht) und seitens Software kam nichts anderes als Opensource in frage
  • Zu den Sensoren und Aktoren: Es existierten aus einer längeren Phase mit FHEM einige WLAN-Steckdosen mit Tasmota, IKEA Geräte und Sensoren mit Zigbee.
  • Der Server als auch die Endgeräte sollten möglichst sparsam sein
  • Die Oberfläche sollte über die Konfigurationsseiten angepasst werden können und nicht über HTML-Dateien wie in FHEM
Weiterlesen

Semantic Model in Openhab

Hintergrund und Nutzen

Am Semantic Model kommt man in Openhab kaum vorbei und wenn man sich einmal damit beschäftigt hat, wird auch schnell der Nutzen klar. Mit dem Semantic Model wird das eigene Haus als Struktur abgebildet, samt aller Ebenen, Räume, Geräte und deren Funktionen. Damit ist von einer kleinen 3-Zimmer Wohnung bis zur mehrgeschossigen Stadtvilla oder zu mehreren Standorten alles möglich.

Wird das Modell sauber aufgebaut, könnte mit Scripten und Regeln durch das ganze Haus navigiert werden. Das kann für komplexere Funktonen interessant sein, zum Beispiel beim generieren von Seiten.
Apropos Seiten: Auf diesen sollen die jeweiligen Steckdosen/Lampen/Sensoren/Lautsprecher etc. des Raumes dargestellt werden. Mit Widgets lassen sich dann Gruppen von Lampen oder Steckdosen dynamisch darstellen.

Tipps zum Aufbau

Wie schon beschrieben, wird das Modell immer von der größten Einheit zur kleinsten aufgebaut, hier mal als Beispiel für ein kleines Eigenheim:

Weiterlesen