Verbindungsparameter
| Parameter | Wert |
|---|---|
| TCP-Port | 502 |
| Geräteadresse (Slave-ID) | die «Modbus TCP Server Gerätenummer» des Zählers im M-Center |
| Byte-Reihenfolge | Big Endian |
| Wort-Reihenfolge | MSB → LSB |
| Registerzählung | ab 1 |
Jeder Zähler im M-Center bekommt eine eigene Geräteadresse. Das Zielsystem fragt also nicht einen grossen Registerblock ab, sondern spricht jeden Zähler über seine Adresse an, wie bei einem Modbus-Strang mit vielen Teilnehmern.
Die Registernummern im Handbuch zählen ab 1. Manche Programme erwarten die Adresse ab 0, also 1029 statt 1030. Prüfen Sie die Zählweise einmal mit einem bekannten Zählerstand.
Zwei Wege zum Messwert
Nach Registernummer des Zählers
Das n-te Register eines Zählers liegt bei 12000 + 30 × n (float32) und 12002 + 30 × n (uint64). Register 0 liegt also bei 12000, Register 3 bei 12090. Das funktioniert ohne weitere Einstellung, die Lage hängt aber vom Zählermodell ab.
Nach OBIS-Code
Hinterlegen Sie im M-Center bei den Registern den OBIS-Code. Dann liegt jeder Messwert an einer festen Adresse, egal welcher Zähler ihn liefert. Ein Auszug aus der Tabelle:
| OBIS-Code | Messwert | float32 | uint64 |
|---|---|---|---|
| 1-0:1.8.0 | Wirkenergie Bezug, total | 1000 | 1002 |
| 1-0:1.8.1 | Wirkenergie Bezug, Tarif 1 | 1030 | 1032 |
| 1-0:1.8.2 | Wirkenergie Bezug, Tarif 2 | 1060 | 1062 |
| 1-0:2.8.0 | Wirkenergie Lieferung, total | 1150 | 1152 |
| 1-0:3.8.0 | Blindenergie Bezug, total | 1300 | 1302 |
| 1-0:4.8.0 | Blindenergie Lieferung, total | 1450 | 1452 |
| 1-0:1.7.0 | Wirkleistung Bezug, total | 1750 | 1752 |
| 1-0:2.7.0 | Wirkleistung Lieferung, total | 1870 | 1872 |
| 1-0:11.7.0 | Strom, total | 2350 | 2352 |
| 1-0:32.7.0 | Spannung Phase 1 | 2470 | 2472 |
| 1-0:14.7.0 | Frequenz | 2650 | 2652 |
| 8-0:1.0.0 | Volumen Kaltwasser | 3000 | 3002 |
| 9-0:1.0.0 | Volumen Warmwasser | 3030 | 3032 |
| 7-0:3.0.0 | Volumen Gas | 3060 | 3062 |
| 5-0:1.0.0 | Energie Kältezähler | 4000 | 4002 |
| 4-0:1.0.0 | Zählerstand Wärmezähler | 4060 | 4062 |
Die Einheit entspricht der Einheit, die im M-Center für das Register eingestellt ist. Ein dort hinterlegter Divisor ist bereits eingerechnet.
Statusregister: hat die Auslesung geklappt?
| Information | float32 | uint64 |
|---|---|---|
| Ausleseintervall | 11880 | 11882 |
| Statuscode | 11910 | 11912 |
| Zeitstempel des letzten Ausleseversuchs | 11940 | 11942 |
| Zeitstempel der letzten erfolgreichen Auslesung | 11970 | 11972 |
Diese Register lesen Sie als uint64, weil float32 grosse Zahlen nur angenähert darstellt. Statuscode 1 heisst: letzte Auslesung erfolgreich. 2: letzte Auslesung nicht erfolgreich. 3: Auslesung erfolgreich, aber der Zähler meldet selbst eine Störung. Wer diese Register mitliest, merkt sofort, wenn ein Zähler nicht mehr antwortet.
Beispiel mit modpoll
Ein EMU Professional II hat im M-Center die Geräteadresse 9. Sein Register 3 trägt den OBIS-Code 1-0:1.8.1. Beide Abfragen liefern den Zählerstand Bezug Tarif 1 als Fliesskommazahl:
modpoll -1 -m tcp -t 4:float -i -f -r 1030 -a 9 -c 1 -p 502 <M-Center-IP>
modpoll -1 -m tcp -t 4:float -i -f -r 12090 -a 9 -c 1 -p 502 <M-Center-IP>
Nicht verwechseln: Modbus-TCP-Client
Die Lizenz 210.300.04 macht das M-Center zum Modbus-TCP-Server: Andere Systeme lesen Werte aus dem M-Center. Die Lizenz 210.200.03 ist die umgekehrte Richtung. Damit liest das M-Center selbst bis zu 20 Geräte über Modbus TCP aus, zum Beispiel Ladestationen oder Wechselrichter.
Bestellnummern
| Artikel | Artikelnummer | Im Shop |
|---|---|---|
| M-Center für 20 M-Bus-Geräte | 210.000.00 | Im Shop: EMU M-Center 210.000.00 → |
| M-Bus-Lizenz 20 → 250 Geräte | 210.020.03 | Im Shop: M-Center M-Bus-Lizenz 20 → 250 Geräte 210.020.03 → |
| Modbus-TCP-Lizenz (M-Bus zu Modbus TCP) | 210.300.04 | Im Shop: M-Center Modbus-TCP-Server-Lizenz 210.300.04 → |
| Modbus-TCP-Lizenz 20 Geräte (Client) | 210.200.03 | Im Shop: M-Center Modbus-TCP-Lizenz 20 Geräte 210.200.03 → |
Bestellen im B2B-Shop kwh-meter.com. Preise sehen Sie dort nach der Anmeldung.

