Bedienung
42
5.5.2
MODBUS Telegramm
Allgemein
Für den Datenaustausch wird das Master-Slave Verfahren verwendet, wobei nur der Master eine
Übertragung initiieren kann. Der Slave sendet dem Master nach Aufforderung die gewünschten
Daten als Antworttelegramm oder führt den vom Master geforderten Befehl aus.
Telegrammaufbau
Der Datentransfer zwischen Master und Slave erfolgt über ein Telegramm.
Ein Anforderungstelegramm vom Master beinhaltet die folgenden Telegrammfelder:
Telegrammaufbau:
Slave-Adresse
• Slave-Adresse
Die Slave Adresse kann in einem Adressebereich von 1...247 liegen.
Über die Slave Adresse 0 (Broadcast Message) werden alle Slaves gleichzeitig angesprochen.
• Funktionscode
Mit dem Funktionscode wird bestimmt, welche Lese-, Schreib- oder Testaktion über das
MODBUS Protokoll ausgeführt werden soll.
Vom Messgerät unterstützte Funktionscodes → Seite 42
• Daten
In diesem Datenfeld werden, abhängig vom Funktionscode, u.a. folgende Werte übertragen:
– Register-Startadresse (ab der die Daten übertragen werden)
– Anzahl Register
– Schreib-/Lesedaten
– Datenlänge
– etc.
• Prüfsumme (CRC bzw. LRC-Check)
Die Telegrammprüfsumme bildet den Abschluss des Telegramms.
Der Master kann ein weiteres Telegramm an den Slave senden, sobald er Antwort auf das vor-
angegangene Telegramm erhalten hat oder nachdem die am Master eingestellte Time Out Zeit
abgelaufen ist. Diese Time Out Zeit kann vom Anwender vorgegeben bzw. verändert werden und
ist von der Antwortzeit des Slaves abhängig.
Tritt bei der Datenübertragung ein Fehler auf oder kann der Slave den vom Master geforderten
Befehl nicht ausführen, sendet der Slave ein Fehlertelegramm (Exception Response) an den Master.
Das Antworttelegramm des Slave besteht aus Telegrammfeldern, welche die angeforderten Daten
beinhalten bzw. die Ausführung der vom Master gewünschten Aktion bestätigen, sowie ebenfalls
einer Prüfsumme.
5.5.3
MODBUS Funktionscodes
Mit dem Funktionscode wird bestimmt, welche Lese-, Schreib- oder Testaktion über das MODBUS
Protokoll ausgeführt werden soll. Das Messgerät unterstützt folgende Funktionscodes:
Funktions-
Name gemäß
code
MODBUS Spezifikation
03
READ HOLDING
REGISTER
Funktionscode
Daten
Beschreibung
Lesen eines oder mehrerer Register des MODBUS-Slave.
Es können 1 bis maximal 125 aufeinanderfolgende Register
(1 Register = 2 Byte) mit einem Telegramm gelesen werden.
Anwendung:
Lesen von Messgeräteparametern mit Lese- und Schreibzugriff, wie z.B.
Lesen der Abfüllmenge.
Proline Promass 83 MODBUS RS485
Prüfsumme
Endress+Hauser