Funktion 8: Diagnose

Die Funktion 08 stellt eine Reihe von Tests, für die Überprüfung des Übertragungssystems zwischen dem Master und dem Slave oder für die Überprüfung der verschiedenen internen Fehlerzustände innerhalb des Slaves zur Verfügung. Ein Broadcast-Telegramm wird nicht unterstützt.
Die Funktion in der Abfrage benutzt ein Subfunktions-Code-Feld von zwei Byte, um die Art des durchzuführenden Tests zu definieren. Der Slave gibt den Funktions-Code und den Subfunktions-Code in einer Antwort aus.
Die Diagnose-Abfragen benutzen ein Datenfeld von zwei Byte, um Diagnosedaten oder Steuerinformationen zum Slave zu schicken.

Anfrage (Query)

Byte Name

Modbus RTU

Modbus ASCII

Start - Rahmen

":"

0x3A

Adresse

11

0x0B

"0B"

0x30, 0x42

Funktions-Code

8

0x08

"08"

0x30, 0x38

Subfunction high

0

0x00

"00"

0x30, 0x30

Subfunction low

0

0x00

"00"

0x30, 0x30

Data high

2

0x02

"02"

0x30, 0x32

Data low

3

0x03

"03"

0x30, 0x33

Error Check, LRC/CRC

 

0xA1, 0xC0 

"E8"

0x45, 0x38

Ende - Rahmen

 

t1-t2-t3

CRLF

0x0D, 0x0A

Antwort (Response)

Byte Name

Modbus RTU

Modbus ASCII

Start - Rahmen

":"

0x3A

Adresse

11

0x0B

"0B"

0x30, 0x42

Funktions-Code

8

0x08

"08"

0x30, 0x38

Subfunction high

0

0x00

"00"

0x30, 0x30

Subfunction low

0

0x00

"00"

0x30, 0x30

Data high

2

0x02

"02"

0x30, 0x32

Data low

3

0x03

"03"

0x30, 0x33

Error Check, LRC/CRC

 

0xA1, 0xC0 

"E8"

0x45, 0x38

Ende - Rahmen

 

t1-t2-t3

CRLF

0x0D, 0x0A

Spiegeln einer Anforderung (Subfunction 0)

Mit der Unterfunktion 0 werden die Daten, die der Master zum Slave schickt wieder zurückgeschickt.

Koppler Reset (Subfunction 1)

Der Buskoppler/Feldbus Box wird mit der Unterfunktion 1 neu initialisiert, Fehlerzähler werden zurückgesetzt und der Buskoppler/Feldbus Box führt einen Selbsttest durch. In der Zeit, in der der Buskoppler/Feldbus Box zurückgesetzt wird, werden keine Telegramme empfangen oder gesendet.

Hinweis

Bevor der Busklemmen-Controller neu startet schickt er noch eine Antwort mit der Subfunction 1.

Hinweis

Beim BC8150 ist die Unterfunktion 0 und 1 implementiert. Alle anderen Unterfunktionen liefern den Wert "0" zurück.

Unterfunktion

Daten Feld (Query)

Daten Feld (Response)

00 01

00 00

00 00

Löschen aller Zählerinhalte (Subfunction 10)

Beim Aufruf dieser Unterfunktion löscht der Buskoppler/Feldbus Box alle Fehler Zähler.

Unterfunktion

Daten Feld (Query)

Daten Feld (Response)

00 0B

00 00

Echo Query Daten

Buskommunikation Antwort Zähler (Subfunction 11)

Gibt die Anzahl der Kommunikationsantworten an.

Unterfunktion

Daten Feld (Query)

Daten Feld (Response)

00 0C

00 00

Zähler Wert

Fehlerantwort Zähler (Subfunction 13)

Dieser Zähler gibt die Anzahl der Fehlerantworttelegramme, die der Buskoppler/Feldbus Box gesendet hat, an.

Unterfunktion

Daten Feld (Query)

Daten Feld (Response)

00 0D

00 00

Zähler Wert

Die folgenden Funktionen beinhalten die Zählerstände für verschiedene Units. D.h. die Modbus-Telegramme können mit Units unterschieden werden, wenn es sich zum Beispiel um einen Zugriff auf den Buskoppler/Feldbus Box von verschiedenen Mastern aus handelt.

Antworten des Slaves (Subfunction 14)

Gibt die Anzahl der gesendeten Antworten des Slaves an.

Unterfunktion

Daten Feld (Query)

Daten Feld (Response)

00 0E

00 00

Zähler Wert

Anzahl der nicht geantworteten Telegramme (Subfunction 15)

Gibt die Anzahl der nicht gesendeten Antworten des Slaves an.

Unterfunktion

Daten Feld (Query)

Daten Feld (Response)

00 0F

00 00

Zähler Wert

Anzahl der Fehlerantworten (Subfunction 16)

Gibt die Anzahl der gesendeten Fehlerantworten des Slaves an.

Unterfunktion

Daten Feld (Query)

Daten Feld (Response)

00 10

00 00

Zähler Wert