Show/Hide Toolbars

PROFIBUS Handbuch

Wenn das Bit Ext_Diag gesetzt ist, folgen ab dem Byte 7 weitere Diagnoseblöcke. Jeder Block beginnt mit einem Headerbyte. Dieses Headerbyte bestimmt den Typ und Länge des Diagnoseblockes.

Es sind drei Formate definiert:

a)Gerätebezogene Diagnose

b)Kennungsbezogene Diagnose

c)Kanalbezogene Diagnose

Kennungsbezogene Diagnose:

Die kennungsbezogene Diagnose bezieht sich auf die Position des Moduls im Konfigurationstelegramm. Ereignisse auf dem entsprechenden Modul werden durch ein gesetztes Bit signalisiert.

7

6

5

4

3

2

1

0


0

1

 

 

 

 

 

 

Header Kennungsbezogene Diagnose

 

 

0 – 63

Anzahl der Bytes in der Kennungsbezogenen Diagnose (inkl. dieses Byte)

Erstes Byte der kennungsbezogenen Diagnose:

7

6

5

4

3

2

1

0

 

 

 

 

 

 

 

 

X

Modul Nr. 1 hat eine Diagnose

 

 

 

 

 

 

X

 

Modul Nr. 2 hat eine Diagnose

 

 

 

 

 

 

 

 

....

X

 

 

 

 

 

 

 

Modul Nr. 8 hat eine Diagnose

Zweites Byte der kennungsbezogenen Diagnose:

7

6

5

4

3

2

1

0

 

 

 

 

 

 

 

 

X

Modul Nr. 9 hat eine Diagnose

 

 

 

 

 

 

X

 

Modul Nr. 10 hat eine Diagnose

 

 

 

 

 

 

 

 

....

X

 

 

 

 

 

 

 

Modul Nr. 16 hat eine Diagnose

Beispiel für Kennungsbezogene Diagnose

Addr

Msg type

Req Res

SAPS

Len

Data

1->14

Slave Diagnosis

Req

62 -> 60

 

 

1<-14

Slave Diagnosis

Res

62 <- 60

10

08 04 00 00 00 85 44 00 01 00

In diesem Beispiel hat das Modul mit der 9. Kennung ein Problem signalisiert.

Wenn in einem Modul mehrere Kennungen signalisiert sind, bezieht sich die Diagnose auf die Kennung und nicht auf das Modul.

Kanalbezogene Diagnose:

Die kanalbezogene Diagnose gibt Auskunft über Kanalfehler von Modulen und stellt eine Detaillierung der kennungsbezogenen Diagnose dar. Die kanalbezogene Diagnose hat immer eine feste Länge von 3 Byte

7

6

5

4

3

2

1

0

Kanalbezogene Diagnose Header (1. Byte)

1

0

 

 

 

 

 

 

Header Kanalbezogene Diagnose

 

 

0 – 63

Betroffenes Modul Nr. 1 - 64

 

7

6

5

4

3

2

1

0

Kanalbezogene Diagnose 2. Byte:

 

 

0 – 63

Nummer des betroffenen Kanals im Modul

0

1

 

 

 

 

 

 

Eingang (Input)

1

0

 

 

 

 

 

 

Ausgang (Output)

1

1

 

 

 

 

 

 

Ein- und Ausgang (Input& Output)

 

7

6

5

4

3

2

1

0

Kanalbezogene Diagnose 3. Byte

0

0

1

 

 

 

 

 

Bit

0

1

0

 

 

 

 

 

2 Bit

0

1

1

 

 

 

 

 

4 Bit

1

0

0

 

 

 

 

 

Byte

1

0

1

 

 

 

 

 

Wort

1

1

0

 

 

 

 

 

2 Worte

 

 

 

1

2

3

4

5

6

7

8

9

10-15

16-31

Kurzschluss

Unterspannung

Überspannung

Überlast

Übertemperatur

Leitungsbruch

Obere Grenze überschritten

Untere Grenze unterschritten

Fehler

Reserviert

Herstellerspezifisch

 

Beispiel für eine kanalbezogene Diagnose

Addr

Msg type

Req Res

SAPS

Len

Data

1->14

Slave Diagnosis

Req

62 -> 60

 

 

1<-14

Slave Diagnosis

Res

62 <- 60

9

08 04 00 00 00 85 88 41 21

In diesem Beispiel hat das Modul mit der 9. Kennung einen Kurzschluss auf dem 2. binären Eingang.

Selbstverständlich können auch mehrere Diagnoseblöcke in einem Telegramm auftreten:

Addr

Msg type

Req Res

SAPS

Len

Data

1->14

Slave Diagnosis

Req

62 -> 60

 

 

1<-14

Slave Diagnosis

Res

62 <- 60

10

08 04 00 00 00 85 44 00 01 00 88 41 21

 

Gerätebezogene Diagnose:

In DP-V0 ist die gerätebezogene Diagnose nicht weiter spezifiziert. Die Bedeutung der einzelnen Bits muss vom Hersteller in der GSD  Datei festgelegt werden.

Header für Gerätebezogene Diagnose:

7

6

5

4

3

2

1

0

 

0

0

 

 

 

 

 

 

Header Gerätebezogene Diagnose

 

 

0 - 63

Anzahl der Bytes in der gerätebezogenen Diagnose (inkl. Dieses Byte)

 

Unit_Diag_Bit(0x12)="Kurzschluss auf Kanal 3"

mit diesem Beispiel aus einer GSD wird mit dem 18. Bit in der gerätebezogenen Diagnose ein Kurzschluss auf dem Kanal 3 signalisiert.

Im DP-V1 werden die gerätebezogenen Diagnosen zu Alarmblöcken und/oder Statusmeldungen aufgebaut. Zur Aktivierung dieser Syntax muss im Parametertelegramm das Bit DPV1_Enable auf 1 gesetzt und der entsprechende Alarm freigegeben sein. Der ganze Block wird in einem festen Format aufgebaut.

Alarm-Block

Status-Block