RS485 – Installation und Ko...
des Blocks auftritt, löscht das empfangende Gerät die
Daten und nimmt an, dass es sich beim nächsten Byte um
das Adressfeld einer neuen Nachricht handelt. Beginnt ein
neues Telegramm früher als 3,5 Zeichen pro Zeiteinheit
nach einem vorangegangenen Telegramm, interpretiert es
das empfangende Gerät als Fortsetzung des vorange-
gangenen Telegramms. Dies führt zu einem Timeout (einer
Zeitüberschreitung und damit keiner Antwort vom Slave),
da der Wert im letzten CRC-Feld für die kombinierten
Telegramme nicht gültig ist.
8.8.4 Adressfeld
Das Adressfeld eines Telegrammblocks enthält acht Bits.
Gültige Adressen von Slave-Geräten liegen im Bereich von
0 bis 247 dezimal. Die einzelnen Slave-Geräte entsprechen
zugewiesenen Adressen im Bereich von 1 bis 247. (0 ist für
den Broadcast-Modus reserviert, den alle Slaves erkennen.)
Ein Master adressiert ein Slave-Gerät, indem er die Slave-
Adresse in das Adressfeld des Telegramms einträgt. Wenn
das Slave-Gerät seine Antwort sendet, trägt es seine eigene
8
8
Adresse in das Adressfeld der Antwort ein, um den Master
zu informieren, welches der Slave-Geräte antwortet.
8.8.5 Funktionsfeld
Das Funktionsfeld eines Telegrammrahmens enthält 8 Bits.
Gültige Codes liegen im Bereich von 1-FF. Funktionsfelder
werden zur Übermittlung von Telegrammen zwischen
Master und Slave verwendet. Wird ein Telegramm von
einem Master zu einem Slave gesendet, weist das Funkti-
onscodefeld den Slave an, welche Aktion er auszuführen
hat. Antwortet der Slave dem Master, verwendet er
ebenfalls das Funktionscodefeld, um eine normale
(fehlerfreie) Antwort anzugeben, oder ob es zu einem
Fehler gekommen ist (auch Ausnahmeantwort genannt).
Bei einer normalen Antwort wird lediglich der Originalfunk-
tionscode zurückgegeben. Bei einer Ausnahmeantwort gibt
der Slave einen Code zurück, der dem Originalfunkti-
onscode gleicht, bei dem das höchstwertigste Bit auf Logik
1 gesetzt wird. Darüber hinaus platziert er Slave einen
eindeutigen Code in das Datenfeld des Antworttele-
gramms. Dies sagt dem Master, welcher Fehler aufgetreten
ist oder warum es zur Ausnahme gekommen ist. Siehe
auch die Abschnitte 8.8.10 Durch Modbus RTU unterstützte
Funktionscodes und 8.8.11 Modbus-Ausnahmecodes.
8.8.6 Datenfeld
Das Datenfeld setzt sich aus Sätzen von je zwei hexade-
zimalen Zeichen im Bereich von 00 bis FF (hexadezimal)
zusammen. Diese bestehen aus einem RTU-Zeichen. Das
Datenfeld der von einem Master-Slave-Gerät gesendeten
Meldung enthält weitere Informationen, die der Slave zur
Durchführung der vom Funktionscode festgelegten Aktion
verwenden muss. Dazu gehören z. B. Spulen- oder Registe-
76
VLT Micro Drive Projektierungshandbuch
radressen, die Anzahl der zu bearbeitenden Punkte oder
die Zählung der Istwert-Datenbytes im Feld.
8.8.7 CRC-Prüffeld
Meldungen enthalten ein Fehlerprüfungsfeld, das auf der
Methode der zyklischen Redundanzprüfung (CRC) basiert.
Das CRC-Feld überprüft die Inhalte der gesamten Meldung.
Es wird unabhängig von allen Paritätsprüfungsmethoden
angewandt, die für die individuellen Zeichen der Meldung
verwendet werden. Der CRC-Wert wird durch das Übertra-
gungsgerät berechnet, das den CRC als letztes Feld in der
Meldung ergänzt. Das empfangende Gerät berechnet einen
CRC während des Empfangs einer Meldung neu und
vergleicht den berechneten Wert mit dem tatsächlich im
CRC-Feld empfangenen Wert. Wenn die beiden Werte
ungleich sind, ist ein Bus-Timeout die Folge. Das fehler-
überprüfende Feld enthält einen 16-Bit-Binärwert, der als
zwei Byte mit je 8 Bit umgesetzt wird. Danach wird
zunächst das geringwertige Byte des Felds angehängt,
gefolgt vom hochwertigen Byte. Das hochwertige CRC-Byte
ist das in der Meldung zuletzt gesendete Byte.
8.8.8 Spulenregisteradressierung
In Modbus werden alle Daten in Spulen und Halteregistern
organisiert. Spulen halten ein einzelnes Bit, während
Halteregister ein 2-Byte-Wort halten (d. h. 16 Bits). Alle
Datenadressen in Modbus-Telegrammen werden auf Null
bezogen. Das erste Auftreten eines Datenelements wird als
Element Nummer Null adressiert. Zum Beispiel: Die in
einem programmierbaren Regler als „Spule 1" bekannte
Spule wird im Datenadressfeld eines Modbus-Telegramms
als Spule 0000 adressiert. Spule 127 (dezimal) wird als
Spule 007EHEX adressiert (126 dezimal).
Halteregister 40001 wird im Datenadressfeld des
Telegramms als Register 0000 adressiert. Das Funktionsco-
defeld legt bereits den Betrieb eines „Halteregisters" fest.
Deshalb ist der „4XXXX"-Sollwert inbegriffen. Das Haltere-
gister 40108 wird als Register 006BHEX adressiert (107
dezimal).
®
MG02K103 – VLT
ist eine eingetragene Marke von Danfoss.