Wiesemann & Theis GmbH

Netzwerk-, Sensor- & Schnittstellentechnik für Industrie, Office & IT

Themenseite

Serielle Kommunikation in Modbus-Umgebungen

Integration serieller Teilnehmer mit dem W&T Com-Server

W&T Com-Server in Wortwolke

Modbus ist ein gegen Ende der 1970er Jahre von Modicon eingeführtes Kommunikationsprotokoll für den Austausch von Daten zwischen Steuerungen, SCADA-Systemen, Datenloggern usw. Bis heute ist es ein in der Industrie breit akzeptierter Standard und erfreut sich auch in der Vernetzung von PV- und Windkraft-Komponenten (Wechselrichter, Datenlogger, Speicher, Energiezähler etc.) großer Beliebtheit.

Detaillierte Beschreibungen und Artikel zu Modbus sowie die Spezifikation selbst sind in großer Anzahl frei im Internet verfügbar. An dieser Stelle gibt es hier daher nur eine kurze Übersicht der wichtigsten Eigenschaften, um die Einsatzmöglichkeiten der Com-Server in verschiedenen Umgebungen zu zeigen. Verschiedene Anwendungsmöglichkeiten der Com-Server in Modbus-Umgebungen finden Sie weiter unten auf der Seite.

Modbus im Allgemeinen

Modbus ist ein striktes Master/Slave-Verfahren. Das bedeutet: Modbus-Slaves dürfen ausschließlich auf an sie adressierte Anfragen, die sog. Requests, einen Modbus-Masters reagieren. Die Kommunikation basiert auf dem Lesen bzw. Schreiben von Registern durch den Master. Jeder Request enthält:

Länge Name Beschreibung
1 Byte Address Adresse des Slaves
1 Byte Function Code Art bzw. Breite des Registers und Zugriff lesend oder schreibend
2 Byte Start Address Startadresse des Zugriffs (High-Byte first)
2 Byte Register Count Anzahl der zu lesenden/schreibenden Register

Ein adressierter Slave darf mit einer sog. Response antworten. Eine erfolgreiche Response enthält:

Länge Name Beschreibung
1 Byte Address Adresse des Slaves
1 Byte Function Code Identisch zum Request
1 Byte Length Anzahl folgender Bytes mit dem Inhalt der angeforderten Register

Dabei können zwei Fehlerfälle auftreten:

  1. Der Slave versteht syntaktisch den Request, kennt aber die angeforderten Register nicht und antwortet mit einer Exception (Function Code Response = Function Code Request + 0x80)
  2. Der Slave reagiert gar nicht.

Modbus/RTU

Modbus/RTU ist der gängige Standard für die Modbus-Kommunikation über serielle Schnittstellen (RS232/422/485). Dabei wird den Modbus-Requests und -Responses eine Checksumme über 2 Bytes angehängt. Das Datagramm-Ende wird von Master und Slave anhand einer Übertragungspause von mindestens 3,5 Zeichenlängen erkannt.

Modbus/TCP

Modbus/TCP wird für die Kommunikation in TCP/IP-Netzwerken genutzt. Dabei wird den Requests und Responses ein Modbus/TCP-Header vorangestellt. Durch die bereits in den Netzwerkprotokollen enthaltenen Checksummen kann auf die zusätzlichen Checksummen des Modbus-Datagramms verzichtet werden.

Länge Name Beschreibung
2 Byte Transaction-ID Fortlaufende Nummer
1 Byte Function Code Identisch zum Request
1 Byte Length Anzahl folgender Bytes mit dem Inhalt der angeforderten Register

On the wire: Modbus/RTU vs. Modbus/TCP

Protokollaufbau

Modbus/ASCII und Modbus/TCP Secure Protocol

Beide sind weitere Modbus-Protokoll-Varianten, die in der Praxis allerdings nur geringe Verbreitung genießen. Weder Modbus/ASCII noch Modbus/TCP Secure Protocol werden von W&T-Geräten unterstützt.

Anwendungsbeispiele

  • Anwendung

    Schematische Darstellung der Anwendung
    Box-to-Box:

    Anbindung entfernter RTU-Slaves an einen RTU-Master per Netzwerk

  • Anwendung

    Schematische Darstellung der Anwendung
    Modbus/TCP-Gateway:

    Anbindung serieller Moodbus/RTU-Slaves an einen Modbus/TCP-Master

  • Anwendung

    Schematische Darstellung der Anwendung
    Windows COM-Umlenkung:

    Betrieb eines Modbus/RTU-Masters in virtuellen Umgebungen

Produkte

  • #58665

    Produktfoto Com-Server PoE 3x Isolated
    Com-Server ++

    1x RS232/422/485

  • #58662

    Produktfoto Com-Server ++
    Com-Server ++

    1x RS232/422/485

  • Support

    Person mit Headset
    Beratung gewünscht?
    Wir sind für Sie da!

    Sie erreichen unsere Techniker unter 0202/2680-110

^