Diese Seite kann übersprungen werden, wenn nur die MQTT-Anbindung interessiert oder das Gateway die Messwerte bereits liefert – dann direkt weiter zur MQTT-Konfiguration.
Überblick
Das Gateway ist Modbus-Master (Client) und liest die Register des Messgeräts zyklisch aus; das Messgerät ist Modbus-Slave (Server). Die gelesenen Werte werden anschließend als MQTT-Nachrichten publiziert. Für den Erfolg der Anbindung sind vor allem drei Dinge entscheidend: die richtigen Register, die richtigen Datentypen und eine passende Konfiguration am Messgerät.
Registerliste als Grundlage
Die Registerliste ist die eine Quelle, aus der Gateway-Konfiguration, Variablennamen im MQTT-Payload und später die Datenpunkte in niotix abgeleitet werden. Je Register enthält sie mindestens: Messgruppe, Variablenname, Adresse, Anzahl Register, Format, Einheit. Für Janitza-Geräte (UMG 801, UMG 96-PQ-L) stellt Digimondo eine kuratierte Liste inklusive Hinweisen bereit; die vollständigen Adressenlisten liefert Janitza mit dem Gerät.
Auswahlprinzip: Für Netzzustandsdaten werden die Minuten-Mittelwerte des Geräts gelesen (beim UMG 801 der Adressblock ab 5000), nicht die Momentanwerte. Je Messort wenige Größen: Spannungen am Basisgerät, Ströme und Summenleistungen je Abgang (Messgruppe).
Modbus-Parameter (Janitza UMG 801)
Parameter |
Wert |
|---|---|
| Verbindung | Modbus/TCP, Port 502 (alternativ Modbus RTU über RS485) |
| Unit-ID (Slave-Adresse) | 1 (Werkseinstellung) |
| Function Code | 3 – Read Holding Registers |
| Adressierung | wie in der Janitza-Adressenliste (1-basiert); ob das Gateway die Zahl direkt übernimmt oder um 1 versetzt erwartet, zeigt der Test mit der Seriennummer |
| Byte-Reihenfolge | Big-Endian, kein Word-Swap |
| Datentypen | Messwerte Float = 2 Register; Seriennummer UInt64 = 4 Register (Register 4174); Status UInt16 = 1 Register |
| Skalierung | keine – Float-Register liefern physikalische Einheiten inklusive Wandlerverhältnis |
| Lesetakt | 1 Minute, gleich dem Mittelungsintervall |
| Mehrere Master | Modbus/TCP ist mehrbenutzerfähig; die IP-Whitelist des Messgeräts (Netzwerk → Whitelist Modbus Port 502) muss leer sein oder das Gateway enthalten |
Ein zu schmaler Datentyp erzeugt keinen Fehler, sondern falsche Werte: Wird die 64-Bit-Seriennummer als 32-Bit-Wert gelesen, liefert das Gerät fehlerfrei 0. Deshalb immer die Anzahl Register aus der Registerliste übernehmen.
Nur Register verbauter Messgruppen abfragen – Register nicht bestückter Strommessmodule können Lesefehler erzeugen, die den gesamten Abfragezyklus stören.
Konfiguration am Messgerät
Einstellung |
Wert | Wo |
|---|---|---|
| Mittelungsintervall | 60 s (Werkseinstellung 10 min) | GridVis, Allgemein → Mittelwert – nicht am Display, nicht per Modbus |
| Art der Mittelwertbestimmung | Arithmetisch Diskret (gerastert): alle Geräte liefern Werte für dasselbe Minutenintervall | GridVis |
| Uhrzeit | NTP aktivieren (bis zu 6 Server) | Geräte-Homepage |
| Stromwandler | Wandlerverhältnisse je Messgruppe | Display oder Geräte-Homepage |
Den Zeitstempel eines Mittelwerts liefert das Gerät nicht per Modbus; er wird vom Gateway zum Zeitpunkt der Abfrage gesetzt (UTC, NTP-synchron).
Minimal-Testset
Für den ersten Durchstich genügen wenige Register:
| Messgruppe | Variable | Register | Format, Einheit |
|---|---|---|---|
basic_device |
serialNumber |
4174 | UInt64 (4 Reg.) |
basic_device |
phaseVoltageL1Avg |
5000 | Float (2 Reg.), V |
basic_device_meas_group_01 |
currentL1Avg |
5012 | Float (2 Reg.), A |
basic_device_meas_group_01 |
totalActivePowerAvg |
5030 | Float (2 Reg.), W |
Zweck der vier Register: serialNumber prüft Adressbasis, Byte-Reihenfolge und Typbreite und liefert das Topic-Segment; phaseVoltageL1Avg dient der Plausibilität (~230 V); currentL1Avg und totalActivePowerAvg (Summe L1–L3) stehen für den ersten Abgang.
Erst wenn diese Werte im Gateway plausibel angezeigt werden und in niotix ankommen, die vollständige Registerliste aktivieren.
Verifikation
- Seriennummer aus Register
4174stimmt mit dem Typenschild überein. Falls0: Datentyp zu schmal; Zufallszahl: Byte-Reihenfolge; Wert eines Nachbarregisters: Adressversatz um 1. - Spannung L1-N liegt bei etwa 230 V, Ströme eines belasteten Abgangs sind ungleich 0.
- Werte mit der Geräte-Homepage oder GridVis zum selben Zeitpunkt vergleichen.