Master

Diagnose Variablen

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

Master 1:


CdlInfo:

Variable

Beschreibung

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.

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 die Variable BoxState der Slaves überprüft werden.

actualCycleTime

Zeigt die aktuelle Zykluszeit in 4/25 µs an. Diese Variable wird nur aktualisiert, wenn sich alle Slaves im Datenaustausch befinden (also CdlInfo.error gleich 0 ist).

actualModulo

Zeigt das aktuelle Modulo an. Diese Variable spielt nur eine Rolle, wenn die Slaves priorisiert sind.

 

Counter: Diese Variablen werden nur für den Redundanz-Modus benutzt.

Variable

Beschreibung

Counter[0-1]

Diese Variablen sind reserviert für Erweiterungen.

Counter[2]

Diese Variable zählt erhaltene Telegramme. Der Zähler wird jedes Mal um 1 inkrementiert, wenn ein fehlerfreies PROFIBUS-Telegramm erhalten wird.

Counter[3]

Diese Variable zählt die erhaltenen Telegramme vom Primary-Master. Der Zähler wird jedes Mal um 1 inkrementiert, wenn ein fehlerfreies Telegramm vom Primary-Master erhalten wird (Der Primary Master hat die gleiche Adresse wie der Redundanz-Master).

Counter[4]

Diese Variable ist ein Timeout-Zähler. Der Zähler wird jedes Mal um 1 inkrementiert, wenn ein Timeout auf dem PROFIBUS auftritt.

Counter[5-7]

Diese Variablen sind reserviert für Erweiterungen.

 

DiagFlag:

Variable

Beschreibung

DiagFlag

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

0 = Diagnosedaten unverändert.

1 = Diagnosedaten haben sich geändert. Benutzen Sie ADS-Read, um die Daten auszulesen.

 

GlobalState:

Variable

Beschreibung

GlobalState[0]

Gibt den Zustand des Masters an.
0 = RUN
1 = RESET
2 = OFFLINE
3 = STOP

GlobalState[1]

Gibt die Anzahl der festgestellten Bus-Fehler an.

GlobalState[2]

Ist reserviert für Erweiterungen.

GlobalState[3]

Ist reserviert für Erweiterungen.

 

CycleFailedCounter:

Variable

Beschreibung

CycleFailedCounter

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

 

StartRedundantMasterFlag: wird für den Redundanz-Modus benutzt.

Variable

Beschreibung

StartRedundantMasterFlag

Wird der Wert auf 1 (True) gesetzt, wird der Redundanz-Master auf dem PROFIBUS aktiv. Bei dem Wert 0 (False) ist der Redundanz-Master offline.