MODBUS-Kommunikationsprotokoll für verschiedene Geräte

Aktualisiert: 7. Nov.

Was genau ist MODBUS und wofür braucht man es? Wir erklären Ihnen was MODBUS ist und wie es funktioniert.


Was ist MODBUS?


Bei MODBUS handelt es sich genauer gesagt um das MODBUS-Protokoll und ist ein Kommunikationsprotokoll, das auf einer Master/Slave- bzw. Client/Server-Architektur basiert. Das Protokoll soll in erster Linie eine einfache, zuverlässige und schnelle Kommunikation zwischen Automatisierungs- und Feldgeräten ermöglichen.


MODBUS / Marv-IT / Softwareentwicklung
MODBUS

Durch diese Kommunikation ist es möglich gewisse Daten aus den Automatisierungs- und Feldgeräten, jeder Hersteller legt selbst fest, welche Daten in einem sogenannten "MODBUS-Register" bereitgestellt haben. Dabei wird unterschieden zwischen unterschiedlichen MODBUS Arten:


MODBUS ASCII

Dieser Modus zeichnet sich vor allem dadurch aus, dass er anstatt im Binär-Code zu übertragen, seine Daten in ASCII sendet, so dass sie von Menschen gelesen werden können.

Dies ist bei dem Senden von binär verschlüsselten Codes wesentlich schwieriger zu bewerkstelligen. Der Aufbau des Codes ist immer gleich: Die Nachricht beginnt mit einem Doppelpunkt, gefolgt von der Adresse des Empfängers (in ASCII). Danach wird der auszuführende Befehl dargestellt, woraufhin die eigentliche Nachricht folgt. Diese kann in der Länge variieren. Zur Fehlerprüfung wird ein sogenannter LRC-Befehl angehängt. Jede ASCII-Nachricht endet mit den Zeichen CRLF.



Modbus RTU

Bei dem Modbus Remote Terminal Unit werden die Daten auch binär übertragen, welche für Menschen nicht einfach lesbar sind.

Im Gegensatz zu Modbus TCP wird dafür aber nicht Ethernet verwendet, sondern eine serielle Schnittstelle (RS-485 oder RS-232)

MODBUS RTU / Marv-IT / Softwareentwicklung

Jeder Modbus RTU Code beginnt mit einer mindestens 3,5 Zeichen langen Pause, welche von der Übertragungsgeschwindigkeit abhängt. Adresse des Empfängers und Funktionscode bestehen aus 8 Bit. Bei einer korrekten Übertragung werden die Felder unverändert von dem Slave-Gerät an den Master zurückgesendet. In dem Datenfeld sind die gemessenen Daten des Slave enthalten. Eine zyklische Redundanzprüfung (CR-Check) vermeidet Fehler bei den Prüfwerten. Am Ende steht wieder eine Wartezeit von mindestens 3,5 Zeichen. Der Informationsverlauf sollte bei dem RTU-Modus nicht unterbrochen werden.



MODBUS TCP

Dieser Modus ist speziell für das Ethernet gedacht. Er ist dem MODBUS RTU sehr ähnlich, da auch er in binären Codes sendet, allerdings müssen bei TCP-Modbus keine Kontrollbytes berechnet werden, so dass die Handhabung und Implementierung von TCP-Treibern einfacher zu bewerkstelligen sind.

MODBUS TCP / Marv-IT / Softwareentwicklung

Der Aufbau des Protokolls unterscheidet sich allerdings ein wenig vom Aufbau der RTU-Codes. Am Start jeder TCP-Nachricht steht die Transaktionsnummer, welche 2 Byte groß ist. Darauf folgt das Protokollzeichen. Dieses hat immer den gleichen Aufbau: 0x0000. Danach kommen die Zahl der noch folgenden Bytes sowie die Adresse und das Funktionsfeld. Am Ende der Nachricht stehen dann die Daten, welche immer unterschiedlich groß sind, je nach Länge der Nachricht. Generell ist der TCP-Port 502 für den Modbus TCP reserviert.


38 Ansichten0 Kommentare

Aktuelle Beiträge

Alle ansehen