Smart Meter Toolkit
Gemäss Stromversorgungsverordnung muss der Netzbetreiber dem Endkunden ermöglichen, Echtzeitmessdaten des Smart Meter zu erhalten. Das Smart Meter Toolkit ist eine schlanke Open Source Lösung.
-
Ausgangslage
Smart Meter laden typischerweise einmal pro Tag die Messwerte an den Netzbetreiber hoch. Für den Einsatz von Heimautomationsanwendungen oder die genaue Analyse des Stromverbrauchs ist dies meist unzureichend. Gemäss Stromversorgungsverordnung muss der Netzbetreiber dem Endkunden aber ermöglichen, die Echtzeitmessdaten des Smart Meter auszulesen.
-
Lösung SCS
SCS entwickelte für EKZ eine schlanke und einfach erweiterbare Open Source Lösung in Python, die auf einem Raspberry Pi betrieben werden kann. Über eine Kundenschnittstelle am Zähler gelangen die Messdaten zum Toolkit, welches diese in das verbreitete MQTT-Protokoll konvertiert und weitergeleitet.
-
Mehrwert
Durch den Open Source Aspekt wird die Weiterentwicklung der Software durch die Community ermöglicht. SCS pflegt den Kontakt zu Interessenten und Mitwirkenden und verwaltet das Projekt auf Github.
Projekteinblicke
Bis 2027 sind die Verteilnetzbetreiber verpflichtet, 80% der Haushalte in der Schweiz mit Smart Meter auszurüsten. Dieser lädt die Messdaten automatisch an den Netzbetreiber hoch – typischerweise einmal pro Tag. Die Endkunden können diese Daten über eine Weboberfläche rückwirkend einsehen. Für eine detailliertere Analyse oder gar Einbindung der Messdaten in die Heimautomation ist dies jedoch unzureichend. Endverbraucher können die Messdaten aber lokal über eine Kundenschnittstelle am Smart Meter auslesen. So lässt sich der aktuelle Stromverbrauch in Echtzeit und in der Auflösung von 5-30 Sekunden erfassen.
Lokale Schnittstelle
Das «Consumer Information Interface» (kurz CII) setzt für die Datenübertragung leider kein Protokoll ein, das die Messwerte in einer einfach verständlichen Form zeigt. Die Zähler verwenden meist den Standard DLMS/COSEM, der über dem High-Level Data Link Control (HDLC) Netzwerkprotokoll eingesetzt wird. Für den Physical Layer werden je nach Zählermodell der M-Bus oder DSMR-P1 Standard verwendet. Zudem sind die Messsamples aus Datenschutzgründen oft verschlüsselt und werden fragmentiert übermittelt. Somit werden seitens Smart Meter Hersteller zwar internationale Standards eingehalten, für Netzbetreiber bleibt allerdings die Frage, wie die Kunden gemäss Verordnung die Messdaten «in verständlich dargestellter Form» empfangen können.
Über Raspberry Pi auslesen
SCS entwickelte eine schlanke Lösung mit einem Raspberry Pi und einer Open Source Software, womit die Daten ausgelesen und verständlich aufbereitet werden. Die geparsten Zählerdaten werden über MQTT weitergeleitet – ein einfaches, leichtgewichtiges, publish-subscribe basiertes Netzwerkprotokoll, das häufig im Heimautomatisierungsbereich eingesetzt wird. Es bietet die Flexibilität, die Daten sowohl im Netzwerk als auch lokal auf dem Gerät, wo die Zählerdaten empfangen werden, weiterzuverwenden.
Mehrere Datenquellen und -senken
In der Kernapplikation, dem Data-Collector, können ein oder mehrere Smart Meter Reader als Datenquellen und eine oder mehrere Datensenken instanziiert werden. Um die Messdaten innerhalb der Applikation weiterleiten zu können, ohne die Datenquellen und -senken zu stark miteinander zu koppeln, wurde auf das Observer Pattern zurückgegriffen. Dies passt gut zum asynchronen Ansatz, auf das die Applikation aufbaut. So wird die CPU-Last tief gehalten.
Veröffentlicht über Github
Die Data-Collector Software wird auf Github gehostet: Als Python-Package-Index (PyPi) oder als fertiges Raspberry Pi Demo Image, das direkt auf eine SD-Karte geflasht werden kann (https://github.com/scs/smartmeter-datacollector). Mit wenigen Konfigurationsschritten über ein lokales Webinterface des Raspberry Pis ist damit die Visualisierung der Messdaten über Grafana möglich. Weiter werden in dieser Demo die Daten per InfluxDB aufgezeichnet, damit sie rückwirkend über ein paar Monate angezeigt werden können. All dies findet lokal auf dem Raspberry Pi statt – keine Verbraucherdaten werden in die Cloud geschickt.
In die Heimautomation integrieren
Ambitionierte Endbenutzer:innen, die ihre Smart Meter Messdaten in die Heimautomation einbinden möchten, haben die Option, die Data-Collector Software direkt mit einem externen MQTT-Broker zu verknüpfen. Da in Python entwickelt, ist es auch möglich, die Software auf einer anderen Linux-Plattform anstatt eines Raspberry Pis laufen zu lassen. Somit ist die Software sehr flexibel einsetzbar.
Weitere Infos sind im ausführlichen Fachartikel zum Smart Meter Toolkit im Bulletin 1/2024 von Electrosuisse.