Wie funktioniert Modbus TCP?
Der Client baut eine TCP-Verbindung zum Gerät auf, meist auf Port 502, und schickt seine Anfrage. Das Gerät antwortet über dieselbe Verbindung. Anders als bei Modbus RTU muss niemand warten, bis der Bus frei ist: Mehrere Clients können gleichzeitig verbunden sein, etwa die Gebäudeleittechnik und ein Energiemanagementsystem.
Die Prüfsumme der seriellen Variante fällt weg, weil TCP die Übertragung selbst absichert. Dafür steht vor jedem Telegramm der MBAP-Kopf (Modbus Application Protocol Header):
| Feld | Länge | Inhalt |
|---|---|---|
| Transaktionsnummer | 2 Byte | ordnet die Antwort der Anfrage zu |
| Protokollkennung | 2 Byte | immer 0 für Modbus |
| Länge | 2 Byte | Zahl der folgenden Bytes |
| Unit-ID | 1 Byte | Adresse des Geräts hinter einem Gateway; beim EMU Professional II immer 1 |
Was ist der Unterschied zwischen Modbus TCP und Modbus RTU?
| Merkmal | Modbus RTU | Modbus TCP |
|---|---|---|
| Übertragung | RS485, zwei Adern | Ethernet |
| Adressierung | Slave-Adresse 1–247 | IP-Adresse, dazu die Unit-ID |
| Absicherung | CRC16-Prüfsumme | TCP, MBAP-Kopf |
| Abfragen | ein Master | mehrere Clients gleichzeitig |
| Topologie | Linie mit Abschlusswiderständen | Netzwerk mit Switches |
| Geschwindigkeit | typisch 9600 bis 19200 Baud | 10 oder 100 Mbit/s |
Ausführlich verglichen werden beide Varianten im Beitrag Modbus TCP oder Modbus RTU?.
Wie kommen Geräte mit Modbus RTU ins Netzwerk?
Mit einem Gateway. Ein einfaches Gateway nimmt Modbus-TCP-Anfragen entgegen und gibt sie auf den RS485-Bus weiter; die Unit-ID im MBAP-Kopf bestimmt, welches Gerät am Bus gemeint ist.
Ein Datenlogger wie das EMU M-Center geht weiter: Er liest die Geräte selbst aus, speichert die Werte und stellt sie als Modbus-TCP-Server in einer eigenen Registertabelle bereit. Die Leittechnik fragt dann nicht jeden Zähler einzeln über den Bus ab, sondern das M-Center im Netzwerk.
Was braucht die IT für Modbus TCP?
- eine feste IP-Adresse oder eine DHCP-Reservierung pro Gerät
- ein eigenes VLAN oder Netzsegment für die Messgeräte
- eine Firewall-Regel, die nur dem abfragenden System Zugriff auf Port 502 erlaubt
- die Registerliste mit Datentypen und Wortreihenfolge aus dem Handbuch
Modbus TCP selbst kennt weder Passwort noch Verschlüsselung. Wer das Gerät im Netz erreicht, kann seine Register lesen. Die Erweiterung Modbus/TCP Security mit TLS auf Port 802 funktioniert nur mit Geräten, die sie ausdrücklich unterstützen.
Modbus TCP mit Geräten von EMU
Den Stromzähler EMU Professional II mit Modbus TCP gibt es als EMU Professional II 3/100 für Direktanschluss bis 100 A und als 3/5 für Wandleranschluss. Die Registertabelle steht auf der Produktseite. Wie sich Modbus TCP und MQTT am selben Zähler unterscheiden, zeigt die Seite TCP/IP am EMU Professional II.
Das EMU M-Center stellt M-Bus- und Modbus-RTU-Zähler als Modbus-TCP-Server bereit, siehe M-Bus zu Modbus TCP. Für Loxone gibt es Vorlagen für den EMU Professional II, siehe EMU-Zähler in Loxone.