Programmieren - Kommunikation über Anweisungen
5.4 Anweisungen
5.4.2.5
Telegrammaufbau
Extended_Addressing
Auf die Extended_Addressing-Variable wird in ähnlicher Weise zugegriffen wie auf die
HR_Start_Offset-Referenz, außer dass es sich bei der Extended_Addressing-Variable um
einen Booleschen Wert handelt.
Für die Modbus-Slave-Adressierung kann, mit Extended_Adressing = FALSE, ein einzelnes
Byte (dies ist der Modbus-Standard) oder zwei Bytes konfiguriert werden
(Extended_Adressing = TRUE). Die erweiterte Adressierung dient zur Adressierung von
mehr als 247 Geräten in einem einzigen Netzwerk. Mit Extended_Adressing = TRUE können
Sie maximal 65535 Adressen ansprechen. Im Folgenden wird ein Modbus-Telegramm als
Beispiel gezeigt.
Tabelle 5- 23 Slave-Adresse mit einem Byte (Byte 0)
Byte 0
Anforderung
Slave-
Adresse
Gültige Antwort
Slave-
Adresse
Fehlermeldung
Slave-
Adresse
Tabelle 5- 24 Slave-Adresse mit zwei Bytes (Byte 0 und Byte 1)
Byte 0
Anforderung
Slave-Adresse
Gültige Antwort
Slave-Adresse
Fehlermeldung
Slave-Adresse
Beschreibung der Telegramme
Der Datenverkehr zwischen Master und Slave bzw. zwischen Slave und Master beginnt mit
der Slave-Adresse, gefolgt vom Funktionscode. Dann werden die Daten übertragen. Der
Aufbau des Datenfeldes ist abhängig vom verwendeten Funktionscode. Am Ende des
Telegramms wird die Prüfsumme (CRC) übertragen.
150
Byte 1
Byte 2
Funktions-
Anfangsadresse
code
Funktions-
Länge
code
0xxx
Exception-
code
Byte 1
Byte 2
Funktions-
code
Funktions-
code
0xxx
Byte 3
Byte 4
Byte 3
Byte 4
Anfangsadresse
Länge
Exception-
code
CM PtP - Konfigurationen für Punkt-zu-Punkt-Kopplungen
Funktionshandbuch, 12/2017, A5E37509393-AC
Byte 5
Daten
Daten...
Byte 5
Byte 6
Daten
Daten...