Leider unterstützt Ihr Browser kein JavaScript!
Anmelden

IAMMETER unterstützt jetzt SunSpec Modbus/TCP: Modellzuordnung und Integrationsanleitung

Die IAMMETER-Firmware i.91.065.18 ergänzt den bestehenden Modbus/TCP-Dienst um eine schreibgeschützte SunSpec-Zuordnung für ganzzahlige Zählermodelle. Software, die SunSpec-Modelle versteht, erhält damit eine standardisierte Möglichkeit, einen IAMMETER-Zähler zu erkennen und ausgewählte elektrische Werte über das lokale Netzwerk zu lesen.

Dies ist eine zusätzliche Schnittstelle, kein Ersatz für das bestehende Messsystem. Der Zähler erfasst die Daten weiterhin auf dieselbe Weise. Die vorhandenen IAMMETER-Modbus-Register, die HTTP-API, die MQTT-Nutzlasten und die NEM-Einstellungen bleiben unverändert.

SunSpec definiert standardisierte Geräteinformationsmodelle, die auf Modbus-Holding-Register abgebildet werden können. Die Zuordnung beginnt mit einer Kennung SunS, gefolgt von Common- und gerätespezifischen Modellen, die ein Client durch sequenzielles Lesen der jeweiligen Modell-ID und Länge ermitteln kann. Das SunSpec-Modbus-Spezifikationspaket dokumentiert das Muster der Modellerkennung, einschließlich der 0-basierten Positionen in der Modbus-Zuordnung und der Regeln für nicht implementierte Werte. SunSpec Modbus wird in zahlreichen Integrationen im Bereich der verteilten Energieerzeugung eingesetzt, darunter Zähler, Wechselrichter und Speichergeräte.

IAMMETER implementiert eine fokussierte, schreibgeschützte Teilmenge für Zählerdaten. Diese Firmware wurde nicht für eine SunSpec-Zertifizierung eingereicht. Betrachten Sie diese Funktion nicht als Zertifizierung, als vollständige SunSpec-Konformität oder als Garantie dafür, dass jeder SunSpec-Client von Drittanbietern ohne Konfiguration funktioniert.

Unterstützte IAMMETER-Modelle und Zählerzuordnungen

IAMMETER-Zähler SunSpec-Zählermodell (integer) Elektrische Interpretation
WEM3080 201 Einphasig
WEM2067 202 Zwei Phasen (Split Phase)
WEM3050T 203 Dreiphasig, Sternschaltung (Wye)
WEM3080T 203 Dreiphasig, Sternschaltung (Wye)
WEM3046T 203 Dreiphasig, Sternschaltung (Wye)
WEM3063T 203 Dreiphasig, Sternschaltung (Wye)

Bei WEM2067 steht Modell 202 für eine echte Split-Phase-Installation. Es beschreibt nicht zwei unabhängige einphasige Stromkreise als dieselbe elektrische Anordnung.

Der Code für Modell 204 ist durch Host-Tests abgedeckt, die Firmware erkennt und wählt es für den WEM3080TD jedoch noch nicht automatisch aus. Dieser Artikel erhebt daher keinen Anspruch auf die Verfügbarkeit von Modell 204. Auch der WEM3046TE hat noch keine eigene Verifizierung der Modellidentifikation erhalten. Die erste Version liefert ausschließlich ganzzahlige Modelle: Die Float-Modelle 211 bis 214 sind nicht verfügbar.

Was ein Client lesen kann

Die ganzzahligen Zählermodelle stellen Phasenspannung, Phasenstrom, Phasenwirkleistung, gesamte Wirkleistung, Frequenz, Phasenleistungsfaktor sowie Wirkenergiezähler für Import/Export je Phase und insgesamt bereit. Das Common-Modell liefert Geräteidentifikationsdaten wie Modell, Firmware-Version und Seriennummer.

Energie wird in der SunSpec-Zuordnung in Wh dargestellt; der Leistungsfaktor wird als Prozentsatz dargestellt. Die Gesamtenergie-Punkte verwenden die vorhandenen Gesamtfelder des Zählers und die NEM-Semantik. IAMMETER berechnet in dieser Zuordnung keine dreiphasige Gesamtsumme durch Addition der Phasenzähler. Da die NEM-Einstellung die Bedeutung dieser Zähler beeinflusst, darf ein Client nicht davon ausgehen, dass die Gesamtenergie stets der Summe der Phasenenergie entspricht.

Einige Felder fehlen in dieser ersten Version bewusst: Blindleistung und Blindenergie, Scheinleistung und Scheinenergie, mehrphasiger Gesamtleistungsfaktor sowie Ereignis-Flags. Ihre Standardpositionen bleiben im Modell erhalten und geben die entsprechende Kennung für „nicht verfügbar“ zurück. Ein SunSpec-Client muss nicht verfügbare Werte erkennen, statt sie als Messwerte zu interpretieren.

Die Spannungsinterpretation ist entscheidend

Die Phasenwerte stammen direkt vom Zähler. Einige Außenleiterspannungs-Punkte werden für die Modellzuordnung abgeleitet:

  • Die Außenleiterspannung von Modell 202 ist UA + UB.
  • Die Außenleiterspannung von Modell 203 ist eine Näherung der Phasenspannung multipliziert mit √3; sie ist keine direkte Messung zwischen zwei Außenleitern. Ein unsymmetrisches System oder eine Abweichung des Phasenwinkels kann Fehler verursachen.

Diese Unterscheidung ist wichtig für Anwendungen, die eine direkt gemessene Außenleiterspannung benötigen. Prüfen Sie die Punktdefinition des Modells und die Anschlusskonfiguration, bevor Sie einen abgeleiteten Wert für Steuerungs- oder Konformitätsentscheidungen verwenden.

Verbindung über Modbus/TCP

Aktivieren Sie den vorhandenen Modbus/TCP-Dienst des Zählers und stellen Sie eine Verbindung zu seiner LAN-Adresse her:

Element Einstellung
Host LAN-IP-Adresse des Zählers
TCP-Port 502
Lesefunktion 03 — Read Holding Registers
SunSpec-Startadresse 40000
Schreibzugriff Von der IAMMETER-SunSpec-Zuordnung nicht unterstützt

Die Adressen in dieser Anleitung sind 0-basierte Modbus-Anfrageadressen. Manche Anwendungen zeigen 1-basierte Registernummern an; prüfen Sie daher deren Konvention, bevor Sie einen Lesevorgang konfigurieren. Eine um eins verschobene Adresse liefert nicht die erwartete Kennung.

Verwenden Sie die folgende Erkennungssequenz:

  1. Lesen Sie zwei Register an der Adresse 40000. Erwartete Wörter sind 0x5375 und 0x6E53, die ASCII-Kennung SunS.
  2. Lesen Sie das Common-Modell 1 ab 40002.
  3. Lesen Sie das Zählermodell ab 40070. Das Lesen von 107 Registern liefert dessen Modell-ID, Länge und den vollständigen Datenbereich.
  4. Lesen Sie die Endkennung an 40177.

Eine einzelne Modbus-Anfrage kann nicht mehr als 125 Register lesen; lesen Sie das Common-Modell und das Zählermodell daher getrennt. Clients sollten Modell-IDs und Längen ermitteln, statt eine Annahme über jede künftige Modellsequenz fest zu codieren.

Ganzzahlige Werte und Skalierungsfaktoren

SunSpec-Integer-Punkte verwenden Skalierungsfaktoren. Rechnen Sie einen Rohwert wie folgt um:

tatsächlicher Wert = Register-Ganzzahl × 10^Skalierungsfaktor

Zum Beispiel:

W = 12345
W_SF = 1
tatsächliche Wirkleistung = 123450 W

Skalierungsfaktoren können sich mit dem Bereich ändern. Lesen Sie in jedem Abfragezyklus ein vollständiges Zählermodell, damit ein Wert und sein Skalierungsfaktor aus derselben Antwort stammen. Skalierungsfaktoren dürfen nicht dauerhaft zwischengespeichert werden.

Validierung und aktuelle Einschränkungen

Host-Tests decken das Modell-Layout, die Umrechnung, Überläufe, das schreibgeschützte Verhalten und Regressionstests für bestehende Register ab. Ein WEM3080T-Testzähler hat die Erkennung von Modell 203 und kontinuierliche Lesevorgänge bestätigt, wobei Spannung und Leistung gegen die bestehenden HTTP- und Modbus-Schnittstellen geprüft wurden.

Andere Zählermodelle und einzelne Clients von Drittanbietern benötigen weiterhin physische Tests. Die Firmware i.91.065.18 wurde erstellt, hochgeladen und zur Dateiverifizierung erneut heruntergeladen; diese Release-Datei selbst wurde in diesem Validierungszyklus nicht geflasht.

Die Firmware enthält nicht die noch ausstehende Verbesserung des TCP-Framings. Sie erwartet derzeit eine vollständige Anfrage in einem Empfangsvorgang. Geteilte oder kombinierte TCP-Anfragen können die Verbindung schließen. Senden Sie eine Anfrage und warten Sie auf die Antwort, bevor Sie die nächste senden; beachten Sie dabei, dass dies nicht jedes Risiko einer TCP-Segmentierung ausschließt.

Wo dies in eine IAMMETER-Installation passt

Verwenden Sie die SunSpec-Zuordnung, wenn ein lokaler Client darauf ausgelegt ist, SunSpec-Zählermodelle zu erkennen und zu lesen. Verwenden Sie die vorhandene IAMMETER-Modbus/TCP-Registerzuordnung, wenn eine Anwendung IAMMETER-spezifische Register benötigt. Der bestehende lokale Modbus-Pfad bleibt für die Home-Assistant-Integration von Energiezählern nützlich, während HTTP, MQTT und IAMMETER Cloud unabhängige Optionen bleiben.

Laden Sie die Firmware herunter: i.91.065.18.bin.

Prüfen Sie vor dem Update Ihr Zählermodell, die Verbindungsmethode und den lokalen Netzwerkzugriff. Dies ist eine schreibgeschützte Datenschnittstelle; sie bietet keine Wechselrichtersteuerung, keine Schreibvorgänge und keinen Anspruch auf vollständige Interoperabilität mit SunSpec-Clients von Drittanbietern.

Nach oben