Vor einigen Wochen hat unser Netzbetreiber einen 'intelligenten' Stromzähler, auch SMART Meter genannt, von Landis Gyr bei uns installiert. Laut Herstellerangaben verfügt er über ein optisches Interface, das Nachrichten in der Smart Message Language (SML) ausgeben kann. Dieses Kommunikationsprotokoll wurde für Firmwareupgrades oder dem Austausch von Messdaten entwickelt. Zum Auslesen der Daten genügt eigentlich ein IR Phototransitor, ich habe mich jedoch für den Kauf eines fertigen Lesekopfs mit UART Schnittstelle entschieden. Die Signale Rx und Tx werden mit TTL Pegel von 3 bis 5 Volt übertragen, so dass der Lesekopf direkt an einen Rasperry Pi Zero 2W angeschlossen werden kann.
Um sich in einem ersten Schritt die Daten anzuschauen, die vom Lesekopf geliefert werden, kann man z.B. das Terminal Programm minicom installieren. Das geht mit 'sudo apt-get install minicom'. Anschließend kann der port mit 'minicom -s' konfiguriert werden. Laut Landis Gyr Benutzhandbuch werden folgenden Einstellungen benötigt.
Alternativ können zur Darstellung der vom Messkopf empfangenen Daten auch die Programme picocom oder xxd verwenden werden. Mit xxd gelingt die Darstellung besonders einfach.
Um die SML Daten interpretieren zu können, müssen wir die 'Volkszähler' Software bemühen. Zunächst müssen wir den Datenlogger vzlogger konfigurieren. Dazu kann der vzlogger.conf-Editor benutzt werden. Der screenshot unten zeigt eine so erzeugte Konfigurationsdatei namens 'vzlogger.conf'. Achtung, der log Pfad muss z.B. mit dem nano Editor händisch auf '/var/log/vzlogger/vzlogger.log' geändert werden, sonst startet vzlogger nicht richtig.
Nach 'sudo reboot' oder 'sudo systemctl restart vzlogger', kann mit 'systemctl status vzlogger' überprüft werden, ob der Datenlogger sauber läuft.
Wenn Alles passt, finden sich in 'vzlogger.log' 'readings' mit OBIS code '1.8.0' für den Bezug von Strom in Wh, und mit '2.8.0.' für die Einspeisung in Wh. Im Auslieferungszustand des SMART Meters erfolgt die Änderung der Werte allerdings nur in kW Sprüngen.
Laut Landis Gyr Benutzhandbuch lässt sich neben der bezogenen oder eingespeisten Energie auch die aktuell verbrauchte Leistung auslesen. Dies ist allerdings nur nach Eingabe einer PIN möglich, die vom Netzbetreiber erfragt werden kann. Zur dauerhaften Ausgabe muss der PIN des Zählers deaktiviert werden.
Mit Hilfe einer modifizierten Taschenlampe, deren Beleuchtungsstärke mindesten 400 Lux betragen muss, kann man durch das Menü des Zählers navigieren.
Für die Eingaben muss die optische Schnittstelle entweder mit kurzen Pulsen weniger als 2 Sekunden , oder mit langen Pulsen mehr als 2 Sekunden beleuchtet werden.
Obwohl in den ersten beiden Kanälen ein Energiemeter gewählt wurde, werden praktischerweise nicht die Zählerstände sondern eine errechnete Leistung angezeigt.
Im letzten Schritt habe ich mir ein Gehäuse aus dem Thingiverse ausgedruckt, und zum besseren Halt am metallischen Verteilerkasten einen Magneten aufgeklebt.