Herunterladen Inhalt Inhalt Diese Seite drucken

Protokoll; Adressdarstellung; Telegrammaufbau - BONFIGLIOLI Agile Kommunikationshandbuch

Vorschau ausblenden Andere Handbücher für Agile:
Inhaltsverzeichnis

Werbung

7

Protokoll

Das serielle Übertragungsprotokoll MODBUS ist ein Master/Slave-Protokoll. Mit dem Bus ist nur ein
Master (gleichzeitig) verbunden. Ein oder mehrere (maximal 247) Slave-Knoten sind über denselben
Bus miteinander verbunden. Eine MODBUS Kommunikation wird immer vom Master initiiert. Die Slave-
Knoten kommunizieren nicht miteinander. Der Master initiiert nur eine MODBUS Übertragung gleich-
zeitig.
Der Master sendet eine MODBUS Anforderung an die Slave-Knoten in zwei verschiedenen Betriebsar-
ten:
− In der Unicast Betriebsart adressiert der Master einen einzelnen Slave-Knoten. Nach dem Emp-
fangen und Verarbeiten der Anforderung sendet der Slave-Knoten eine Nachricht (eine Antwort) an
den Master. In dieser Betriebsart besteht eine MODBUS Übertragung aus 2 Nachrichten: eine An-
forderung vom Master und eine Antwort vom Slave-Knoten. Jeder Slave-Knoten muss eine eindeu-
tige Adresse (von 1 bis 247) haben, so dass die Slave-Knoten unabhängig voneinander Anforde-
rungen erhalten können.
− In der Broadcast Betriebsart kann der Master eine Anforderung an alle Slave-Knoten senden. Die
Slave-Knoten senden keine Antwort auf die Anforderung. Die Anforderung besteht nur aus
Schreibbefehlen. Alle Teilnehmer müssen die Schreibbefehle akzeptieren. Die Adresse 0 ist zur Er-
kennung einer Broadcast-Übermittlung reserviert.
7.1

Adressdarstellung

Bis zu 247 Frequenzumrichter können am MODBUS betrieben werden. Diese erhalten die Adressen
1 ... 247. Über die Adresse 0 können alle angeschlossenen Teilnehmer am Bus gleichzeitig angespro-
chen werden. Die Adresse 0 wird auch als Broadcast-Adresse bezeichnet.
7.2

Telegrammaufbau

Ein MODBUS Telegramm besteht aus den folgenden Feldern:
Adresse
Funktionscode Daten
Das Adressfeld enthält im Modbus Telegramm nur die Slave-Adresse.
Gültige Werte für die für Adressen der Slave-Knoten liegen im Bereich von 0 ... 247 dezimal. Die ein-
zelnen Slave-Geräte haben Adressen von 1 ... 247. Ein Master adressiert einen Slave, indem die Slave-
Adresse im Adressfeld des Telegramms eingetragen wird. Der Slave sendet die Antwort mit der Anga-
be der eigenen Adresse im Adressfeld des Telegramms, so dass der Master zuordnen kann, welcher
Slave geantwortet hat.
Der Funktionscode teilt dem Frequenzumrichter mit, welche Aktion ausgeführt werden soll. Dem
Funktionscode kann ein Datenfeld folgen, welches Parameter für eine Anforderung oder für die Ant-
wort eines Frequenzumrichters enthält.
Falls beim Empfang einer Anforderung über den Modbus keine Fehler auftreten, enthält das Datenfeld
die angeforderten Daten. Falls ein Fehler auftritt, enthält das Feld einen Ausnahmebedingungscode,
um dem Master mitzuteilen, dass die Anforderung nicht erfolgreich abgearbeitet wurde. Die Behand-
lung von Ausnahmebedingungen und die Ausnahmebedingungscodes sind im Kapitel 7.3.8
„Ausnahmebedingungscodes" beschrieben.
Falls eine Anforderung nicht erfolgreich empfangen wurde (Kommunikationsfehler, Prüfsummenfeh-
ler), wird keine Antwort gesendet. Der Frequenzumrichter wartet auf die nächste Anforderung.
Das Fehlerprüffeld enthält das Ergebnis der Redundanzprüfung (CRC) von Telegrammdaten. Ab-
hängig von der genutzten Betriebsart der Übertragung (RTU oder ASCII) werden verschiedene Be-
rechnungsverfahren genutzt. Siehe Kapitel 7.3.9 „Modbus-Übertragung".
24
Agile
Modbus
Modbus Agile
02/2011
CRC (oder LRC)
24
Protokoll
02/2011

Werbung

Inhaltsverzeichnis
loading

Inhaltsverzeichnis