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:

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