Wissen/Schnittstellen erklärt/Modbus TCP

Schnittstellen erklärtModbus TCP

Was ist Modbus TCP? Modbus über das Netzwerk erklärt

Modbus TCP überträgt das bewährte Modbus-Protokoll über Ethernet statt über eine serielle Leitung. Register und Funktionscodes bleiben gleich, aber jedes Gerät hat eine IP-Adresse, und mehrere Systeme können gleichzeitig darauf zugreifen.

Das Wichtigste in Kürze

  • Modbus TCP nutzt TCP/IP und standardmässig den Port 502.
  • Ein Client fragt, der Server antwortet. In der Modbus-RTU-Welt hiessen sie Master und Slave.
  • Statt der CRC-Prüfsumme trägt jedes Telegramm einen MBAP-Kopf mit Transaktionsnummer und Unit-ID.
  • Register und Funktionscodes sind dieselben wie bei Modbus RTU.
  • Modbus TCP hat keine eingebaute Anmeldung: Messgeräte gehören in ein eigenes Netzsegment.

Auf dieser Seite

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):

FeldLängeInhalt
Transaktionsnummer2 Byteordnet die Antwort der Anfrage zu
Protokollkennung2 Byteimmer 0 für Modbus
Länge2 ByteZahl der folgenden Bytes
Unit-ID1 ByteAdresse des Geräts hinter einem Gateway; beim EMU Professional II immer 1

Was ist der Unterschied zwischen Modbus TCP und Modbus RTU?

MerkmalModbus RTUModbus TCP
ÜbertragungRS485, zwei AdernEthernet
AdressierungSlave-Adresse 1–247IP-Adresse, dazu die Unit-ID
AbsicherungCRC16-PrüfsummeTCP, MBAP-Kopf
Abfragenein Mastermehrere Clients gleichzeitig
TopologieLinie mit AbschlusswiderständenNetzwerk mit Switches
Geschwindigkeittypisch 9600 bis 19200 Baud10 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.

Häufige Fragen


Welchen Port nutzt Modbus TCP?

Standardmässig den TCP-Port 502. Die verschlüsselte Variante Modbus/TCP Security nutzt Port 802.

Läuft Modbus TCP über Ethernet?

Ja. Modbus TCP nutzt TCP/IP und damit das normale Ethernet-Netzwerk, mit Switches, VLANs und Routern. Eine eigene Busleitung braucht es nicht.

Brauche ich bei Modbus TCP eine Slave-Adresse?

Das Gerät wird über seine IP-Adresse angesprochen. Die Unit-ID im MBAP-Kopf ist vor allem hinter Gateways wichtig, wo sie das Gerät am RS485-Bus auswählt. Beim EMU Professional II ist sie immer 1.

Können mehrere Systeme denselben Zähler abfragen?

Ja, das ist einer der Vorteile gegenüber Modbus RTU. Wie viele Verbindungen ein Gerät gleichzeitig zulässt, steht im Handbuch.

Was ist der Unterschied zwischen Modbus TCP und MQTT?

Bei Modbus TCP holt ein Client die Werte ab, bei MQTT schickt der Zähler sie von sich aus an einen Broker. Der Vergleich steht auf der Seite TCP/IP am EMU Professional II.

Weiterlesen


SEITEStromzähler mit Modbus TCPEMU Professional II, Register und Beispiele SEITEM-Bus zu Modbus TCPGateway mit dem EMU M-Center SEITEModbus TCP oder RTU?Entscheidungshilfe für Zählerprojekte SEITESchnittstellen erklärtAlle fünf Schnittstellen im Vergleich

Zähler ins Netzwerk bringen?


Schicken Sie uns die Zahl der Messpunkte und das Zielsystem. Wir sagen Ihnen, ob Zähler mit Modbus TCP oder ein M-Center besser passen.

Telefon
+41 (0)41 545 03 00

Technischer Support
helpdesk [at] emuag.ch
Supportformular →