Herunterladen Inhalt Inhalt Diese Seite drucken

Modbus Rtu-Telegrammaufbau; Start-/Stoppfeld; Adressfeld; Funktionsfeld - Siemens AF-650 GP Projektierungshandbuch Und Installationsanleitung

Mehrzweck-frequenzumrichter
Inhaltsverzeichnis

Werbung

RS485 Installation und Konf...

9.2.3 Modbus RTU-Telegrammaufbau

Ein Modbus RTU-Telegramm wird vom sendenden Gerät in
einen Block gepackt, der einen bekannten Anfangs- und
Endpunkt besitzt. Dadurch ist es dem empfangenden Gerät
möglich, am Anfang des Telegramms zu beginnen, den
Adressenabschnitt zu lesen, festzustellen, welches Gerät
adressiert ist (oder alle Geräte, im Fall eines Broadcast-
Telegramms) und festzustellen, wann das Telegramm
beendet ist. Unvollständige Telegramme werden ermittelt
und als Konsequenz Fehler gesetzt. Die für alle Felder
zulässigen Zeichen sind im Hexadezimalformat 00 bis FF.
Der Frequenzumrichter überwacht kontinuierlich den
Netzwerkbus, auch während des „Silent"-Intervalls. Wenn
das erste Feld (das Adressfeld) empfangen wird, wird es
von jedem Frequenzumrichter oder jedem einzelnen Gerät
entschlüsselt, um zu ermitteln, welches Gerät adressiert ist.
Modbus RTU-Telegramme mit Adresse 0 sind Broadcast-
Telegramme. Auf Broadcast-Telegramme ist keine Antwort
erlaubt. Ein typischer Telegrammblock wird in Tabelle 9.4
gezeigt.
Start
Adresse
Funktion
T1-T2-T3-
8 Bit
8 Bit
T4
Tabelle 9.4 Typischer Modbus RTU-Telegrammaufbau

9.2.3.1 Start-/Stoppfeld

Telegramme beginnen mit einer Sendepause von
mindestens 3,5 Zeichen pro Zeiteinheit. Dies entspricht
einem Vielfachen der Baudrate, mit der im Netzwerk die
Datenübertragung stattfindet (in der Abbildung als Start
T1-T2-T3-T4 angegeben). Das erste übertragene Feld ist die
Geräteadresse. Nach dem letzten übertragenen Intervall
markiert ein identisches Intervall von mindestens 3,5
Zeichen pro Zeiteinheit das Ende des Telegramms. Nach
diesem Intervall kann ein neues Telegramm beginnen. Der
gesamte Telegrammblock muss als kontinuierlicher
Datenstrom übertragen werden. Falls eine Sendepause von
mehr als 1,5 Zeichen pro Zeiteinheit vor dem Abschluss
des Blocks auftritt, löscht das empfangende Gerät die
Daten und nimmt an, dass es sich beim nächsten Byte um
das Adressfeld eines neuen Telegramms 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.
TM
AF-650 GP
Projektierungshandbuch und Installationsanleitung
Daten
CRC-
Ende
Prüfung
N x 8 Bit
16 Bit
T1-T2-T3-
T4
DET-767/D

9.2.3.2 Adressfeld

Das Adressfeld eines Telegrammblocks enthält acht Bits.
Gültige Adressen von Slave-Geräten liegen im Bereich von
0-247 dezimal. Die einzelnen Slave-Geräte entsprechen
zugewiesenen Adressen im Bereich von 1-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
Adresse in das Adressfeld der Antwort ein, um den Master
zu informieren, welches der Slave-Geräte antwortet.

9.2.3.3 Funktionsfeld

Das Feld für den Funktionscode eines Telegrammblocks
enthält acht Bits. Gültige Codes liegen im Bereich von 1 bis
FF. Funktionsfelder dienen zum Senden von Telegrammen
zwischen Master und Slave. Wenn ein Telegramm vom
Master zu einem Slave-Gerät übertragen wird, teilt das
Funktionscodefeld dem Slave mit, welche Aktion durchzu-
führen ist. Wenn der Slave dem Master antwortet, nutzt er
das Funktionscodefeld, um entweder eine normale
(fehlerfreie) Antwort anzuzeigen oder um anzuzeigen, dass
ein Fehler aufgetreten ist (Ausnahmeantwort). Im Fall einer
normalen Antwort wiederholt der Slave den ursprün-
glichen Funktionscode. Im Fall einer Ausnahmeantwort
sendet der Slave einen Code, der dem ursprünglichen
Funktionscode entspricht, dessen wichtigstes Bit allerdings
auf eine logische 1 gesetzt wurde. Neben der Modifi-
zierung des Funktionscodes zur Erzeugung einer
Ausnahmeantwort stellt der Slave einen individuellen Code
in das Datenfeld des Antworttelegramms. Dadurch wird
der Master über die Art des Fehlers oder den Grund der
Ausnahme informiert.
Funktion
Spulen lesen (Read coils)
Halteregister lesen (Read holding
registers)
Einzelspule schreiben (Write single
coil)
Einzelregister schreiben (Write single
register)
Mehrere Spulen schreiben (Write
multiple coils)
Mehrere Register schreiben (Write
multiple registers)
Komm.-Ereigniszähler abrufen (Get
comm. event counter)
Slave-ID melden (Report slave ID)
Tabelle 9.5
9
Funktionscode
1 Hex
3 Hex
5 Hex
6 Hex
F Hex
10 Hex
B Hex
11 Hex
99
9

Werbung

Inhaltsverzeichnis
loading

Inhaltsverzeichnis