Lesegerät für die NetzOÖ Smartmeter Kundenschnittstelle

Der AMIS Lesekopf ist ein kostengünstiger, autonomer, Cloud-free Lesekopf auf ESP8266 Basis, um den NetzOÖ Smartmeter Siemens TD-3511/TD-3512 per WLan auszulesen. (Zählwerke, aktueller Verbrauch/Einspeisung)
Dies ist für Hausautomatisierungen oder PV geregelte Verbrauchssteuerungen (Eigenverbrauchsoptimierung; E-Auto laden; Nulleinspeisung) sehr hilfreich, oder auch nur, um den aktuellen Leistungsbezug in Echtzeit abzufragen.

Es steht ein Webinterface mit allen wichtigen Werten und zur Parametereinstellung zur Verfügung, per REST API können die aktuellen Zähler- und Verbrauchsdaten im JSON-Format abgerufen werden, per MQTT an einen Broker weitergegeben, per Modbus/TCP abgerufen werden oder an ThingSpeak hochgeladen werden. Die grafische Ansicht der historischen ThingSpeak Daten ist über einen Menüpunkt im Webinterface möglich.
Der NetzOÖ Smartmeter gibt Daten im Sekundentakt aus, somit stehen jede Sekunde neue Daten (Zählerstände Verbrauch und Einspeisung, aktueller Bezug/Einspeisung, Saldo aus Bezug-Einspeisung) zur Verfügung.

Der Amis Reader benötigt eine 5V Spannungsversorgung (max. 0,13A, typ. 0,075A; Leistungsaufnahme < 1W) durch ein Micro-USB Netzteil und wird magnetisch durch 3 Magnete, die an der Platinenunterseite  angeklebt sind, an der optischen Kundenschnittstelle des Siemens Smartmeter gehalten.

Für die Integration in IOBroker, Loxone, HomeAssistent, OpenHAB3, FHEM und Domoticz können Vorlagen verwendet werden, die mir freundlicherweise von Amis Benutzern zur Verfügung gestellt wurden. 
Ab Firmware 1.2.7 emuliert der AMIS Reader auch einen Fronius Smartmeter (nur Einspeisepunkt Adresse 1) per Modbus/TCP für einen Fronius Symo (ab Datamanager Version 3.28.1-3) oder Gen24 Wechselrichter. (Anleitung)

Für die Hardwareversion V1 ist kein Gehäuse verfügbar.
Hinweis zu Opt-Out: Wurde bei NetzOÖ die Option Opt-Out gewählt, kommen keine Daten über die IR-Kundenschnittstelle des Siemens TD3511 Smartmeter.
Beim Stromlieferantenwechsel wird fallweise ein neuer MBUS Key ausgestellt, den man neu im Amis Reader hinterlegen muss.
Hardwareversion V1 (ab 2019):

(Rückansicht V1)

Eine neue Hardwarevariante (V2; ab 2023) ist einfacher automatisiert zu fertigen, es sind nur die optoelektronischen Bauteile und drei Magnete auf der Leiterplattenunterseite. Der Stromversorgungsstecker ist nun schräg unten rechts, die Oben-Position ist mit einem Pfeil gekennzeichnet:


Webinterface:
Zur Anzeige der aktuellen Daten und um Einstellungen (zB Wifi, IP-Adresse, MBUS Key, MQTT,...) vorzunehmen.

Rest-API-Schnittstelle:

Der Entwickler Herr Gottfried Prandstetter (vielen Dank an dieser Stelle) möchte den Schaltplan und Quellcode als Open Source zur Verfügung stellen. Ich übernehme diese Aufgabe gerne. Der Reader kann somit von euch nachgebaut werden, fallweise verkaufe auch ich gebrauchte Hardware.

Bei Fragen stehe ich gerne per E-Mail zur Verfügung.

FAQ Smartmeter

Auf der FAQ Seite der NetzOÖ werden bereits sehr viele Fragen geklärt, bitte schaut auch dort vorbei.
Auch der NetzOÖ Smartmeter saldiert, d.h. die Summe des Bezugs (1.7.0) minus der Summe der Einspeisung (2.7.0) zählt das entsprechende Zählwerk (1.8.0 oder 2.8.0) hoch. Die Leistung eines Balkonkraftwerks muss nicht an der gleichen Phase verbraucht werden.

Folgende Daten gibt der NetzOÖ Smartmeter sekündlich aus:
Datum/Uhrzeit, 1.8.0 (Energie A+ Zählwerk), 2.8.0 (Energie A- Zählwerk), 3.8.1 (Energie R+ Zählwerk), 4.8.1 (Energie R- Zählwerk), 1.7.0 (Wirkleistung P+), 2.7.0 (Wirkleistung P-),   3.7.0 (Blindleistung Q+), 4.7.0 (Blindleistung Q-), 1.128.0 (Inkassozählwerk).

Der AMIS Reader ist nur als Auslesegerät gedacht. Er bietet zwar ein Webinterface der aktuellen Daten, es erfolgt keine Datenaufzeichnung. Für eine Aufzeichnung kann der Clouddienst thingspeak.com verwendet werden. Zur Steuerung bzw Regelung von Verbrauchern ist weitere Hardware notwendig, oftmals wird HomeAssistent, IoBroker, Loxone oder ein ähnliches System verwendet. Meist wird das MQTT Protokoll für die Datenübertragung zwischen AMIS Reader und Automatisierungssystem verwendet. Ich selbst nutze aber die Rest API und die Modbus/TCP Schnittstelle.

Addon #1: 3D-Druck Gehäuse

Für die Hardwareversion V2 hat uns Florian seine 3D Druckgehäusedatei und auch ein Muster-Gehäuse mit Fake-Jumper zur Verfügung gestellt. Die Leds sind durchs Gehäuse sichtbar. Das Gehäuse muss an der Leiterplatte angeklebt werden. 
Dieses Gehäuse eignet sich nicht, wenn der Amis Reader in heißen Umgebungen eingesetzt wird, z.B. von der Sonne erhitzten Außenverteilern. Florian hat mir eine höhere 3D Druckgehäusedatei (sende auf Wunsch die stl Datei zu; ASA Filament empfohlen) zur Verfügung gestellt. Damit ist es möglich auf dem ESP einen 15x9x5mm Kühlkörper aufzukleben und dann das Case auf der Leiterplatte anzukleben.

Addon #2: Externe Antenne

In seltenen Fällen ist es notwendig, die Wlan Antenne außerhalb des Verteilerschrankes zu platzieren um den Wlan AP zu erreichen. 
Robert hat uns Infos und Fotos seines Umbaus zur Verfügung gestellt. Es müssen zwei Leiterbahnen (rote Markierung siehe erstes Foto) großzügig durchtrennt werden und dann an der äußeren Leiterbahn der Schirm und an der inneren Leiterbahn der Antenneninnenleiter angelötet werden. Robert hat diese Antenne verwendet und gute Erfahrungen gemacht. Er hat das Maximum von 25dBm bei RF-Power eingestellt.
Eine Alternative wäre einen Wlan Range Extender zwischen Schaltschrank und AP zu installieren.

Use case #1: Energiemonitoring und -steuerung

Sehr weit verbreitet sind die Systeme von ioBroker, Home Assistant und Solaranzeige.de. Per MQTT Schnittstelle werden Amis Reader Daten zyklisch an das HomeAutomation System gesendet und könnten dort für umfangreiche Auswertungen bzw Regelsysteme verwendet werden.

Ich selbst nutze so ein System (mit Domoticz) um Verbraucher per Wifi Steckdosen (Gosund SP111 mit Tasmota und Delock 11826) und das dynamische E-Auto Überschussladen zu steuern.

mein Raspberry Pi 3; Raspberry Pi OS und Domoticz laufen auf einer SSD 

Use case #2: PV Speicherbatterie (ESS)

Wenn du schon eine PV Anlage hast, kannst du mit dem Amis Reader und ein paar weiterer Komponenten (einem Victron Multiplus II 48/3000, einer oder mehrerer Pylontech US2000/3000/5000 Batterien, einem Raspberry Pi mit Lan und zwei freien USB Ports, einem Victron MK3, einem Waveshare USB auf RS485 Konverter) und dem Projekt von Martin eine hochwertige und kostengünstige PV Speicherbatterie aufbauen.
Dieses technisch anspruchsvolle DIY Projekt habe ich mit zwei Pylontech US5000 Batterien (Summenkapazität 9kWh Netto) um ca 4600€ mit einem gebrauchten Multiplus II umgesetzt. Du solltest für Anpassungen ein wenig Python programmieren können. Das Projekt von Martin setzt US2000/3000 ein, für die US5000 Batterie sind Anpassungen beim BMS auslesen notwendig. Mein Aufbau hat zwei notstromfähige Steckdosen.
Mehr dazu in meinem Blogeintrag vom Mai 2023.

Use case #3: Wallbox Ansteuerung zum Überschussladen

Christian Kaiser hat in seiner preiswerten Android App "e-Car Charger Control / Wallbox-Steuerung" die Abfrage des AMIS Lesers eingebunden. Nähere Infos auf seiner Website.

Ich selbst nutze eine Wallbox mit PhoenixContact EM-CP-PP-ETH Controller und steuere diese von meiner Hausautomation (Domoticz auf Raspi3) an. 

Use case #4: Ersetzt den Fronius Smartmeter für Symo und Symo Gen24 Wechselrichter

Benutze den AMIS Reader mit der Einstellung "Smartmeter Emulation aktiv" um per Modbus/TCP Daten für Fronius Wechselrichter bereitzustellen. Hier gibt es die Anleitung dazu.
Volle Solarweb Integration ohne Fronius Smartmeter.

Use case #5: Heizstabansteuerung

Mit einem ESP32 4 Kanal-Relaisboard, einem Dallas DS18B20 1wire Temperatursensor und einem 20x4Zeichen I2C LCD habe ich auf Basis ESPHome eine einfache 3-phasige Heizstabansteuerung (zB für 3x1kW) realisiert. Bis zum Erreichen einer eingestellten Puffertemperatur (zB 60°C) werden die drei Heizstäbe je nach PV Überschuss einzeln angesteuert. Der Amis Lesekopf wird jede drei Sekunden abgefragt, um den Smartmeter Saldo zu erhalten.

Zu einer fix eingestellten Zeit (zB ab 18Uhr) wird der Puffer bis zu einer einstellbaren Mindesttemperatur (zB 45°C) geheizt, wenn der PV Ertrag nicht ausreichend war. Das Projekt hat ein Webinterface zur Übersicht und zum Einstellen von diversen Schwellwerten, am LCD ist der Saldo, die Puffertemperatur und die Stati der vier Relais sichtbar.
Für ca 50€ inkl Gehäuse ist somit eine einfache Warmwasseraufbereitung mit PV Strom möglich.
Meine Demo/Use_at_your_own_risk/no_support - yaml Datei ist als Download verfügbar.

Use case #6: Energieübersicht innerhalb einer Energiegemeinschaft (EEG)

Bereits mehrere Energiegemeinschaften (EEG) in Oberösterreich setzen auf AMIS Reader - zum Teil mit abgeänderter Firmware.
Zyklisch wird der Saldowert eines jeden Teilnehmers auf einen Webservice übertragen, damit ist für jeden Teilnehmer der aktuelle Summensaldo der EEG einsehbar. 

Inbetriebnahme

Der Amis-ESP8266 läuft normalerweise im Station-Mode, d.h. der ESP8266 verbindet sich als Client mit einem Wlan Router/AP. Dazu muss er aber erst einmal die SSID und das Wlan Passwort kennen. Daher wird der ESP8266 zur Einrichtung in den AP-Mode (Access-Point) versetzt. Das geschieht, indem man mit gesetztem Jumper (Steckbrücke) bootet. 
Mit einem Handy, Tablett oder Notebook kann man das WiFi-Netz "ESP8266_AMIS" verbinden. Nach dem Verbinden einen Web-Browser starten und als Adresse http://192.168.4.1 eingeben. Menü / Wifi wählen und Netzwerkeinstellungen vornehmen, wir empfehlen dem AMIS Reader eine fixe IP zu geben, damit ist er immer mit der gleichen IP in deinem Netzwerk erreichbar. Gateway- und Namenserver-IP Adresse sind u.a. für Thingspeak notwendig.
Ev. auch gleich den AMIS/MBUS-Schlüssel vom NetzOÖ Portal eingeben, auf Allgemein "ThingSpeak/Highcharts aktiv" vorläufig nicht aktivieren. Jumper/Steckbrücke nun öffnen/abziehen und rebooten, nun sollte der Amis Leser über die gewählte IP erreichbar sein. Erzeugt er wieder das Wlan Netz "ESP8266_AMIS", obige Schritte wiederholen, vielleicht wurden Daten falsch eingegeben.
Der Amis Leser muss mit dem USB Port nach oben bzw schräg rechts unten (je nach Version) an den richtigen (AMIS/MBUS Key) Siemens TD3511 magnetisch angeheftet werden. 
RFPower ermöglicht die Kontrolle über die Sendeleistung, wobei weniger Sendeleistung anzuraten ist. 0dBm ist 1mW, was für kleinere Entfernungen genügt. Maximal 20dBm.
Sind die Einstellungen (vor allem der MBUS Key aus dem NetzOÖ Portal) korrekt, dann sollten unter Zähler Werte angezeigt werden. Wenn die Entschlüsselung der Daten unplausible Daten erzeugt, wird dies durch eine Meldung "falscher MBUS Key" angezeigt. Es dauert 1-2 Minuten bis Zähler und ESP synchron sind. Die Leds für TxD (nur Hardware V1) und RxD blinken dann im Sekundentakt.
Diese Anleitung gibts auch als PDF.

Einbindung in Hausautomationen / Steuerungen
Abfrage der Daten von http://[IP-AdresseAmisLeser]/rest
MQTT
oder
Modbus/TCP Port 502, Modbus Adresse egal, Abfrage der Register 40071, Länge 58, auf Register 40098 aktuelle Leistung/Saldo. Die Zählerstände mit Register 40129, Länge 32 abfragen: Register 40130 Einspeisezähler, 40138 Bezugszähler. Per Modbus/TCP kann ein Fronius Smartmeter emuliert werden.

ThingSpeak/Highcharts
In https://thingspeak.com kann ein kostenloser Account erstellt werden. Erstellen Sie einen Channel, zB „AMIS“. Definieren Sie Field1 als Energie A+, Field2 als Energie A-, Field3 als Energie R+, Field4 als Energie R-, Field5 als Mom.Wirk. P+, Field6 als Mom.Wirk. P- , Field7 als Blind. Q+ und Field8 als Blind. Q-.
Die Daten ChannelID, Write API Key und Read API Key tragen Sie bei Allgemein im Amis Reader ein. Intervall 30sec.
Unter Grafik können Sie nun grafische Datendiagramme einsehen. Daten bis 14 Tage zurück sind anzeigbar.

Check Hardware

Wenn es Probleme mit Hardware, Darstellung des Webinterface oder der Verbindung gibt, prüfe bitte:

  • Verwende testweise ein anderes Micro-USB-Netzteil
  • Starte den Wlan Access Point neu; öffne die Schaltschranktüre, um Wlan Verbindungsabbrüche zu verringern.
  • Browsercache löschen
  • Jumper anstecken, mit dem Wlan ESP8266_AMIS verbinden und die Seite http://192.168.4.1 öffnen, Einstellungen prüfen
  • Test IR Sendediode auf der Platinenunterseite: 
    Mit einem Browser die AMIS Seite öffnen und die Konsole öffnen (F12) : mit dem Befehl websock.send('{"command":"test"}') werden Daten über die IR Sendediode ausgegeben. Bei Hardware V1 leuchtet nun die rote TX Led. Mit einer Kamera, die IR-Wellenlängensignale nicht rausfiltert, ist die Funktion der IR Sendediode überprüfbar.
  • Test IR Empfangsdiode auf der Platinenunterseite:
    Mit angestecker Stomversorgung. Mit einer TV-IR Fernbedienung auf die Platinenunterseite mit ca 1-2cm Abstand IR Signale schicken, indem man irgendeine Taste der Fernbedienung dauerhaft drückt. Die grüne RX Led auf der Oberseite muss jetzt flackern.

Schaltplan/Leiterplatte

Hier könnt ihr den Schaltplan als PDF oder Eagle SCH-Datei, Leiterplatte BRD-Datei (Platine/PCB) und die Stückliste/BOM herunterladen.
Hier gibts eine Anleitung zum Flashen des AMIS Reader mittels USB/TTL Programmer.

Firmware/Quellcode

Diese Firmware funktioniert nur bei NetzOÖ Smartmeter TD3511/TD3512 - auch baugleiche Siemens TD3511 anderer Netzbetreiber geben die Daten in einem anderen Format aus.

Hinweis zum Update:
In seltenen Fällen kann es vorkommen, das der Amis Reader nach einem Software Update nicht mehr erreichbar ist bzw nicht mehr funktioniert. In so einem Fall kann der AMIS Reader mit einem USB/TTL Programmer neu geflashed werden - hier gibt es die Anleitung dazu.

Download der Firmware 1.2.7 (Stand November 2023) ist hier möglich, hier die Versionsinfo.
(Neu: Emulation von Fronius Smartmeter für Symo/Gen24; Modbus TCP über Port 502; Export/Import der Einstellungen, Wochen- und Monatswerte)
(Update von 1.2.6: Einstellungen per Screenshot sichern; nach dem Update der Firmware.bin neu starten, dann alle weiteren Dateien (nicht aber littlfs.bin) einzeln hochladen und nochmals neu starten. Einstellungen sollten wie vor dem Update sein. Nun können auch Einstellungen exportiert werden.)

Download der Firmware 1.2.6 (Stand Jänner 2023) ist hier möglich, hier die Versionsinfo.
(Update von 1.2.x: Einstellungen per Screenshot sichern; nach dem Update der Firmware.bin neu starten, dann die weiteren Dateien index.html, chart.js, custom.css, jquery351.js und cust.js hochladen und nochmals neu starten. Einstellungen sollten wie vor dem Update sein.)

Download der Firmware 1.2.3 (Stand Juli 2022) ist hier möglich.
(Update von 1.2.0: Einstellungen per Screenshot sichern; nach dem Update der Firmware.bin neu starten, dann die weiteren Dateien index.html, cust.js und chart.js hochladen und nochmals neu starten)

Download der Firmware 1.2.0 (Stand April 2021) ist hier möglich.
(Einstellungen per Screenshot sichern; nach dem Update der Firmware.bin meldet sich der Reader mit der ursprünglichen IP oder 192.168.4.1 je nach Ausgangsversion, es wird aufgefordert die Datei littlefs.bin hochzuladen und dann neu zu starten, dann die weiteren Dateien hochladen und nochmals neu starten; Gesicherte Einstellungen wieder herstellen.)

Download des aktuellen Quellcodes 1.2.7 ist hier als zip bzw von Github möglich. (PlatformIO)

Sale

Ich biete folgende voll funktionsfähige, gebrauchte, mit der aktuellen Firmware programmierte Amis Reader Hardware als Privatverkauf an:

1 Stk Hardware V2 wie am Foto für 24€
 (5V Stromversorgung per Micro USB Stecker erforderlich, zB altes Handyladekabe + Hutschinensteckdose im Schaltschrank)

Anfragen per Email an gerhard<at>mitterbaur.at