CCU-Historian

Version 4.0.0

Der CCU-Historian erfasst die Betriebsdaten des Hausautomations-Systems HomeMatic der Firma eQ-3.

In dem Langzeitarchiv werden Kommunikationsvorgänge der CCU-Schnittstellen (BidCos-RF, BidCos-Wired und System) aufgezeichnet. Darunter befinden sich z.B. die Messwerte aller Sensoren und alle ausgeführten Schaltvorgänge. Aus der Logikschicht der CCU werden zusätzlich die Systemvariablen archiviert. Die gesammelten Daten werden strukturiert in einer Datenbank abgelegt und stehen daraufhin für Visualisierungen oder Analysen zur Verfügung. Für einen ersten Überblick werden Web-Seiten mit Trend-Diagrammen durch einen eingebetteten Web-Server generiert.

Der CCU-Historian erfreut sich bei den HomeMatic Anwendern einer großen Beliebtheit und verfügt über eine breite Installationsbasis. Er ist zurzeit die Lösung zur Betriebsdatenerfassung im HomeMatic-Umfeld.

Zielsetzungen

Folgende Zielsetzungen waren und sind bei der Entwicklung des CCU-Historians maßgebend:

  • Keine Software-Installation oder Konfiguration auf der CCU.
  • Verwendung von offiziellen bzw. gut dokumentierten Schnittstellen.
  • Möglichst geringe Belastung der CCU.
  • Selbstkonfiguration des Langzeitarchivs.
  • Verwendung einer Datenbank mit offenen Schnittstellen.
  • Einfacher Export der Daten über eine Web-Schnittstelle.

Umsetzung

Im Folgenden wird die Umsetzung der einzelnen Ziele näher erläutert:

  • Auf der CCU sind für den CCU-Historian keine zusätzlichen Software-Pakete nötig. Der CCU-Historian kann direkt mit einer neu ausgelieferten CCU verwendet werden. Des Weiteren müssen auch keine gesonderten Programme oder Systemvariablen auf der CCU angelegt werden.
  • Der CCU-Historian verwendet die HomeMatic XML-RPC bzw. BIN-RPC API und die Remote HomeMatic-Script API. Bei der Script API wird auf die Verwendung des nicht dokumentierten Befehls system.Exec verzichtet.
  • Die Kommunikationsvorgänge des CCU-Historians mit der CCU werden auf das Notwendige beschränkt. Datenbankabfragen sind völlig von der CCU entkoppelt, und belasten nur den Rechner auf dem der CCU-Historian läuft.
  • Nach der ersten Konfiguration des CCU-Historians für die Inbetriebnahme, ist keine weitere Konfigurationspflege mehr nötig. Insbesondere wenn Geräte an der CCU angelernt oder entfernt werden, aktualisiert der CCU-Historian selbstständig die Verwaltungsstrukturen in der Datenbank. Von neu angelernten Geräten werden automatisch alle Kanäle und die zugehörigen Parameter erkundet.
  • Auf Grund der zu erwartenden Datenmengen und den vielfältigen Abfragemöglichkeiten wird eine Datenbank mit SQL-Unterstützung und den Schnittstellen JDBC und ODBC verwendet. Dadurch können auch mächtige Report-Werkzeuge wie z.B. BIRT auf die Daten zugreifen.
  • In dem CCU-Historian ist ein Web-Server eingebettet, der für das einfache Exportieren von Zeitreihen und die Generierung von Trend-Diagrammen zuständig ist. Über eine URL mit zusätzlichen Parametern, die im einfachsten Fall über einen Web-Browser eingegeben wird, wird die Abfrage angestoßen.

Der CCU-Historian ist in der Programmiersprache Groovy implementiert und benötigt für die Ausführung Java in der Version 6. Er ist damit plattformunabhängig und kann somit auch z.B. unter Linux eingesetzt werden.

Um die zusätzliche Installation einer Datenbank zu vermeiden, wurde die H2 Database Engine in den CCU-Historian eingebettet. Diese stellt zusätzlich eine Web-Bedienschnittstelle zur Verfügung. Dadurch kann die Datenbank leicht über einen Web-Browser verwaltet werden.

Über eine Web-Schnittstelle kann der CCU-Historian Daten exportieren oder darstellen. Dazu ist der Web-Server Jetty ebenfalls im CCU-Historian eingebettet. Zusätzlich zu den HTML-Seiten des CCU-Historians kann der Anwender eigene HTML-Seiten über den Web-Server anbieten. Dadurch kann der Anwender beliebige Übersichtsseiten mit aktuellen Messwerten und/oder Trend-Diagrammen erstellen.

Für die Generierung von Trend-Diagrammen wurde die Bibliothek JFreeChart verwendet.

https://www.youtube-nocookie.com/embed/bbfIQSsbpgU

Spezifikationen
Typ: Multi-Platform
Autor/en: Mathias Dzionsko, Jens Maus (CCU/RaspberryMatic-Distribution), Yannick Rocks, Thomas Zahari (Synology-Distribution), wak (Erweiterung H2-Highcharts)
Zielgruppe: Fortgeschrittene, Bastler
Alle Angaben ohne Gewähr!
Vielleicht auch interessant:
- Code scannen, um zur Orginalseite zu gelangen -