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.
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 |