FC310x - Master-Diagnose

Diagnose Eingänge

Der Master verfügt über verschiedene Diagnosevariablen, die den Zustand der Karte sowie des Profibusses beschreiben und die in der SPS verknüpft werden können:

FC310x - Master-Diagnose 1:

  CdlInfo

CdlInfo.error: Zeigt die Anzahl der Slaves an, mit denen kein Datenaustausch im letzten Zyklus durchgeführt werden konnte, nur wenn dieser Wert ungleich 0 ist, muss der BoxState der Slaves überprüft werden

CdlInfo.cycleCounter: wird am Ende jedes PROFIBUS-Zyklusses inkrementiert, so dass man mit dieser Variable feststellen kann, ob der letzte Zyklus beendet war, bevor die Task gestartet wurde

CdlInfo.actualCycleTime: zeigt die aktuelle Zykluszeit in 4/25 µs an, diese Variable wird nur aktualisiert, falls alle Slaves im Datenaustausch sind (also CdlInfo.error gleich 0 ist)

CdlInfo.actualModulo: zeigt das aktuelle Modulo an, diese Variable spielt nur eine Rolle, wenn die Slaves priorisiert sind (s. Kapitel Slave-Priorisierung/mehrere DP-Zyklen)

Counter: werden für den Redundanz-Mode benutzt

DiagFlag: Zeigt an, ob sich die Master-Diagnoseinformationen der Karte geändert haben, die dann per ADS vom Steuerungsprogramm ausgelesen werden, woraufhin die Variable "DiagFlag" wieder zurückgesetzt wird.

GlobalState: GlobalState[0] gibt den Zustand der FC310x an, GlobalState[1-2] zeigen globale Bus-Stati an, GlobalState[3] ist reserviert für Erweiterungen:

RESET (1): Router der Karte wurde nicht gestartet (nach dem Hochlauf des PCs)

INIT (2): Router gestartet, Karte aber nicht am PROFIBUS aktiv

STOP (3): Karte am PROFIBUS aktiv, aber kein zyklischer Datenaustausch

STOPPING (4): Karte beendet den zyklischen Datenaustausch

RUN (0): Karte im zyklischen Datenaustausch

GlobalState[1] zählt die festgestellten Bus-Errors (ab FC310x, Version 1)

GlobalState[2]: Bit 0 ist gesetzt, wenn keine 11 Bit-Ruhezeit auf dem PROFIBUS erkannt wird (-> Verkablung prüfen), Bit 1 enthält die Betriebsart CLEAR (Bit 1 = 1) oder OPERATE (Bit 1 = 0), die anderen Bits (2..7) sind reserviert für Erweiterungen (ab FC310x, Version 1)

GlobalState[3] ist reserviert für Erweiterungen

CycleFailedCounter: Dieser Zähler zeigt an, wie oft beim Start der TwinCAT-Task der PROFIBUS-Zyklus der FC310x noch nicht fertig war.

StartRedundantMasterFlag: wird für den Redundanz-Mode benutzt

Master-Diagnosedaten

Die Master-Diagnosedaten können per ADS ausgelesen werden:

ADS-Read-Parameter  

Bedeutung  

Net-ID

Net-ID des Masters (s. Karteireiter ADS des Devices)

Port

200

IndexGroup

0x0000F100

IndexOffset 

Offset innerhalb der Diagnosedaten

Length

Länge der auszulesenden Diagnosedaten

Data

Diagnosedaten

Die Master-Diagnosedaten sind wie folgt aufgebaut:

Offset

Beschreibung

0 -125

BusStatus-Liste, je Stationsadresse 0-125 ein Byte, das den Status der Station enthält (s. BoxState bei den PROFIBUS-Boxen, zusätzlich für nicht projektierte Stationen: 0x80 - nicht vorhanden, 0x81 - Slave, 0x82 - Master nicht bereit für Token-Ring, 0x83 - Master bereit für Token-Ring, 0x84 - Master im Token-Ring)

126 - 127

reserviert

128 - 135

Zustand der FC310x (->GlobalState)

136 - 137

Sende-Fehler-Zähler über alle gesendeten Telegramme

138 - 139

Empfangs-Fehler-Zähler über alle empfangenen Telegramme

140 - 255

reserviert für Erweiterungen

256 - 257

Sync-Failed-Counter (s. Karteireiter EquiDiag (TwinCAT 2.8) bzw. MC-Diag (TwinCAT 2.9))

258 - 259

Zyklus-Start-Fehler-Zähler, zählt hoch, wenn der PROFIBUS-Zyklus erneut gestartet wird bevor der alte Zyklus beendet wurde (wird vom TwinCAT-IO-Treiber abgefangen, nur bei kundenspezifischen Treibern möglich)

260 - 261

Time-Control-Failed-Counter (s. Karteireiter EquiDiag (TwinCAT 2.8) bzw. MC-Diag (TwinCAT 2.9))

262 - 263

reserviert für Erweiterungen

264 - 265

minimaler Nachladewert des Echtzeittimers

266 - 267

maximaler Nachladewert des Echtzeittimers (max. FCxxxx-Jitter (s. Karteireiter EquiDiag (TwinCAT 2.8) bzw. MC-Diag (TwinCAT 2.9)) = max. Nachladewert - min. Nachladewert)

268 - 269

PLL-Overflow-Counter (s. Karteireiter EquiDiag (TwinCAT 2.8) bzw. MC-Diag (TwinCAT 2.9))

270 - 271

PLL-Underflow-Counter (s. Karteireiter EquiDiag (TwinCAT 2.8) bzw. MC-Diag (TwinCAT 2.9))

TcIo-Diagnosedaten

Der TcIo-Treiber generiert ebenfalls Diagnosedaten, die per ADS ausgelesen, aktiviert, deaktiviert und zurückgesetzt werden können, aber defaultmäßig deaktiviert sind. Sie werden aktiviert, wenn der Karteireiter EquiDiag oder GeneralDiag (TwinCAT 2.8) MC-Diag bzw. DP-Diag oder des Devices angewählt wird und deaktiviert, wenn der Karteireiter abgewählt wird.

Aktivieren, Deaktivieren und Zurücksetzen der TcIo-Diagnosedaten

ADS-Write-Parameter  

Bedeutung  

Net-ID

Net-ID des PCs

Port

300

IndexGroup

0x00005000 + Device-Id (Karteireiter Allgemein des Devices)

IndexOffset 

0xFFFFF100

Length

2

Data

0: Deaktivieren der TcIo-Diagnosedaten

1: Aktivieren der TcIo-Diagnosedaten

2: Zurücksetzen der TcIo-Diagnosedaten

Auslesen der TcIo-Diagnosedaten

ADS-Read-Parameter  

Bedeutung  

Net-ID

Net-ID des PCs

Port

300

IndexGroup

0x00005000 + Device-Id (Karteireiter Allgemein des Devices)

IndexOffset 

0xFFFFF100

Length

Länge der TcIo-Diagnosedaten

Data

TcIo-Diagnosedaten

Die TcIo-Diagnosedaten sind wie folgt aufgebaut:

Voraussetzungen

Offset

Beschreibung

0 -3

Max. TwinCAT-Jitter (in 100 ns, s. Karteireiter EquiDiag (TwinCAT 2.8) bzw. MC-Diag (TwinCAT 2.9))

4 - 7

Min. Mapping-Time (in 100 ns, s. Karteireiter EquiDiag (TwinCAT 2.8) bzw. MC-Diag (TwinCAT 2.9))

8 - 11

Max. Mapping-Time (in 100 ns, s. Karteireiter EquiDiag (TwinCAT 2.8) bzw. MC-Diag (TwinCAT 2.9))

12 - 15

max. FC310x-Jitter (in FC310x-Ticks, s. Karteireiter EquiDiag (TwinCAT 2.8) bzw. MC-Diag (TwinCAT 2.9))

16 - 19

CycleWithNoDxch-Counter (s. Karteireiter GeneralDiag (TwinCAT 2.8) bzw. DP-Diag (TwinCAT 2.9))

20 - 23

CycleWithRepeat-Counter (s. Karteireiter GeneralDiag (TwinCAT 2.8) bzw. DP-Diag (TwinCAT 2.9))

24 - 27

Max. Repeat/Cycle (s. Karteireiter GeneralDiag (TwinCAT 2.8) bzw. DP-Diag (TwinCAT 2.9))

28 - 31

Actual Cycle-Time (in 4/25 µs, s. Karteireiter GeneralDiag (TwinCAT 2.8) bzw. DP-Diag (TwinCAT 2.9))

32 - 35

Max. Cycle-Time (in 4/25 µs, s. Karteireiter GeneralDiag (TwinCAT 2.8) bzw. DP-Diag (TwinCAT 2.9))

36 - 39

Min. Cycle-Time (in 4/25 µs, s. Karteireiter GeneralDiag (TwinCAT 2.8) bzw. DP-Diag (TwinCAT 2.9))

40 - 43

RealFailedCycle-Counter (s. Karteireiter GeneralDiag (TwinCAT 2.8) bzw. DP-Diag (TwinCAT 2.9))

44 - 47

EquiCycleNoDxch-Counter (s. Karteireiter EquiDiag (TwinCAT 2.8) bzw. MC-Diag (TwinCAT 2.9))

48 - 51

EquiCycleRepeat-Counter (s. Karteireiter EquiDiag (TwinCAT 2.8) bzw. MC-Diag (TwinCAT 2.9))

52 - 55

Max. Repeats/Equi-Cycle (s. Karteireiter EquiDiag (TwinCAT 2.8) bzw. MC-Diag (TwinCAT 2.9))

56 - 59

Actual Equi-Cycle-Time (in 4/25 µs, s. Karteireiter EquiDiag (TwinCAT 2.8) bzw. MC-Diag (TwinCAT 2.9))

60 - 63

Max. Equi-Cycle-Time (in 4/25 µs, s. Karteireiter EquiDiag (TwinCAT 2.8) bzw. MC-Diag (TwinCAT 2.9))

64 - 67

Min. Equi-Cycle-Time (in 4/25 µs, s. Karteireiter EquiDiag (TwinCAT 2.8) bzw. MC-Diag (TwinCAT 2.9))