Basler Electric DECS-250 Benutzerhandbuch

Seite 234

Advertising
background image

218

9440375990 Rev H

Über TCP/IP wird eine dedizierte Kopfzeile verwendet, um die Modbus Anwendungsdateneinheit zu
identifizieren. Sie wird als MBAP Kopfzeile (Modbus Application Protocol Header) bezeichnet.

Diese Kopfzeile weist einige Unterschiede im Vergleich zur RTU Anwendungsdateneinheit auf, die für
eine serielle Leitung verwendet wird:

Das Feld 'Slave Adresse' des Modbus, das normalerweise auf einer seriellen Modbus Leitung
verwendet wird, wird durch eine 1-Byte 'Gerätekennung' (Unit Identifier) in der MBAP Kopfzeile
ersetzt. Die 'Gerätekennung' wird dazu verwendet, über Geräte wie Brücken, Router und
Gateways zu kommunizieren, die eine einzelne IP Adresse verwenden, um mehrere
unabhängige Modbus Endgeräte zu unterstützen.

Alle Modbus Anforderungen und Antworten wurden so entworfen, dass der Empfänger
verifizieren kann, dass die Nachricht abgeschlossen ist. Für Funktionscodes, bei denen die
Modbus PDU eine feste Länge hat, reicht der Funktionscode alleine aus. Für Funktionscodes, die
in Anforderung und Antwort eine variable Menge an Daten transportieren, beinhaltet das
Datenfeld eine Byte-Zählung.

Wird Modbus über TCP übertragen, werden von der MBAP Kopfzeile zusätzliche
Längeninformationen transportiert, die es dem Empfänger ermöglichen, die Grenzen der
Nachricht zu erkennen, auch wenn die Nachricht für den Transport in mehrere Pakete aufgeteilt
wurde. Die Existenz von expliziten und implizierten Längenregeln und die Verwendung einer
CRC-32 Fehlerprüfung (im Ethernet) führt zu einer infinitesimalen Chance einer unerkannten
Datenkorruption an einer Anforderungs- oder Antwortnachricht.

Beschreibung der MBAP Kopfzeile

Die MBAP Kopfzeile beinhaltet die in Tabelle 19 aufgelisteten Felder.

Tabelle 19. MBAP Kopfzeilenfelder

Felder

Länge

Beschreibung

Client

Server

Transaktionskennung 2 Bytes

Identifikation einer
Modbus
Anforderung/Antwort
Transaktion.

Initiiert vom
Client.

Vom Server
wieder aus
der erhaltenen
Anforderung
kopiert.

Protokollkennung

2 Bytes

0 = Modbus-Protokoll.

Initiiert vom
Client.

Vom Server
wieder aus
der erhaltenen
Anforderung
kopiert.

Länge

2 Bytes

Anzahl der folgenden
Bytes.

Initiiert vom
Client
(Anforderung).

Initialisiert
vom Server
(Antwort).

Gerätekennung

1 Byte

Identifizierung eines
entfernten Slave,
angeschlossen über eine
serielle Verbindung oder
andere Busse.

Initiiert vom
Client.

Vom Server
wieder aus
der erhaltenen
Anforderung
kopiert.

Die Kopfzeile hat eine Länge von 7 Byte:

Transaktionskennung – Verwendet für die Bildung von Transaktionspaaren; der Modbus Server
kopiert die Transaktionskennung der Anforderung in die Antwort.

Protokollkennung - Verwendet für Multiplexing innerhalb des Systems. Das Modbus-Protokoll
wird durch den Wert 0 identifiziert.

Länge – Eine Byte-Zählung der folgenden Felder, einschließlich der Gerätekennung und der
Datenfelder.

Modbus™ Kommunikation

DECS-250

Advertising
Dieses Handbuch ist für die folgenden Produkte bezogen werden: