Diagnose (Funktion 8)

Die Funktion Diagnose 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 benutzt in der Anfrage zwei Byte, um mit einem Unterfunktions-Code die Art des durchzuführenden Tests zu definieren. Der Slave gibt in der Antwort den Funktions-Code und den Unterfunktions-Code zurück.

Die Diagnose-Anfragen benutzen ein Datenfeld von zwei Byte, um Diagnosedaten oder Steuerinformationen zum Slave zu schicken.

Anfrage (Query)

Byte Name

Beispiel

Funktions-Code

8

Unterfunktion high

0

Unterfunktion low

0

Data high

2

Data low

3

Antwort (Response)

Byte Name

Beispiel

Funktions-Code

8

Unterfunktion high

0

Unterfunktion low

0

Data high

2

Data low

3

Spiegeln einer Anforderung (Unterfunktion 0)

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

Koppler Reset (Unterfunktion 1)

Der Koppler wird mit der Unterfunktion 1 neu initialisiert, Fehlerzähler werden zurückgesetzt und der Controller führt einen Selbsttest durch. In der Zeit, in der der Controller zurückgesetzt wird, werden keine Telegramme empfangen oder gesendet. Der IP-Socket wird geschlossen.

Diagnose (Funktion 8) 1:

Letzte Antwort mit der Unterfunktion 1

Bevor der Controller neu startet schickt er noch eine Antwort mit der Unterfunktion 1 dann wird der IP-Socket geschlossen.

Unterfunktion

Daten Feld (Query)

Daten Feld (Response)

0x0001

0x0000

0x0000

Löschen aller Zählerinhalte (Unterfunktion 10)

Beim Aufruf dieser Unterfunktion löscht der Controller alle Fehler Zähler.

Unterfunktion

Daten Feld (Query)

Daten Feld (Response)

0x000A

0x0000

Echo Query Daten

Buskommunikation Antwort Zähler (Unterfunktion 11)

Gibt die Anzahl der Kommunikationsantworten an.

Unterfunktion

Daten Feld (Query)

Daten Feld (Response)

0x000B

0x0000

Wert des Zählers

Fehlerantwort Zähler (Unterfunktion 13)

Dieser Zähler gibt die Anzahl der Fehlerantworttelegramme, die der Koppler gesendet hat, an.

Unterfunktion

Daten Feld (Query)

Daten Feld (Response)

0x000D

0x0000

Wert des Zählers

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 Koppler von verschiedenen Mastern aus handelt.

Antworten des Slaves (Unterfunktion 14)

Gibt die Anzahl der gesendeten Antworten des Slaves an.

Unterfunktion

Daten Feld (Query)

Daten Feld (Response)

0x000E

0x0000

Wert des Zählers

Anzahl der nicht geantworteten Telegramme (Unterfunktion 15)

Gibt die Anzahl der nicht gesendeten Antworten des Slaves an.

Unterfunktion

Daten Feld (Query)

Daten Feld (Response)

0x000F

0x0000

Wert des Zählers

Anzahl der Fehlerantworten (Unterfunktion 16)

Gibt die Anzahl der gesendeten Fehlerantworten des Slaves an.

Unterfunktion

Daten Feld (Query)

Daten Feld (Response)

0x0010

0x0000

Wert des Zählers