FB_PcWatchdog

FB_PcWatchdog 1:

Diese Funktionalität ist nur verfügbar auf den IPCs mit den Mainboards IP-4GVI63, CB1050, CB2050, CB3050, CB1051, CB2051, CB3051.

FB_PcWatchdog 2:

Der Funktionsbaustein FB_PcWatchdog aktiviert einen Hardware-Watchdog auf dem PC. Der Watchdog wird über bEnable = TRUE und die Timeout-Zeit aktiviert. Die Timeoutzeit kann minimal 1 s und maximal 255 s sein. Aktiviert wird der Watchdog über bEnable = TRUE und tTimeOut >=1 s.

Wenn der Watchdog einmal aktiviert wurde, muss der Funktionsbaustein zyklisch in kürzeren Abständen aufgerufen werden als tTimeOut, da bei Ablauf der tTimeOut-Zeit der PC automatisch einen Neustart durchführt. Der Watchdog kann daher dafür eingesetzt werden um Systeme automatisch neu zu booten, die in eine Endlosschleife gelaufen sind bzw. bei denen die PLC steht.

Der Watchdog kann über bEnable = FALSE bzw. die tTimeOut-Zeit = 0 deaktiviert werden.

Hinweis

Reboot des PCs

Der Watchdog muss vor der Verwendung von Breakpoints, einem SPS-Reset bzw. Urlöschen und vor einem TwinCAT-Stopp, einem Wechsel in den Konfig-Modus oder dem Aktivieren der Konfiguration deaktiviert werden, da es sonst unmittelbar zum Reboot des PCs nach Ablauf der Timeout-Zeit kommt.

FB_PcWatchdog 3: Eingänge

VAR_INPUT
    tTimeOut : TIME;
    bEnable  : BOOL;
END_VAR

Name

Typ

Beschreibung

tTimeOut

TIME

Watchdog-Zeit, nach deren Ablauf ein Neustart durchgeführt wird.

bEnable

BOOL

Aktivieren bzw. Deaktivieren des Watchdogs.

FB_PcWatchdog 4: Ausgänge

VAR_OUTPUT
    bEnabled : BOOL;
    bBusy    : BOOL;
    bError   : BOOL;
    nErrId   : UDINT;
END_VAR

Name

Typ

Beschreibung

bEnabled

BOOL

TRUE = Watchdog aktiviert, FALSE = Watchdog deaktiviert

bBusy

BOOL

Dieser Ausgang bleibt so lange auf TRUE, bis der Baustein eine Befehlsanforderung ausführt.

bError

BOOL

Dieser Ausgang wird auf TRUE geschaltet, wenn bei der Ausführung eines Befehls ein Fehler aufgetreten ist. Der befehlsspezifische Fehlercode ist in nErrId enthalten. Wird durch das Ausführen eines Befehls an den Eingängen auf FALSE zurückgesetzt.

nErrId

UDINT

ADS-Fehlercode oder befehlsspezifischer Fehlercode des zuletzt ausgeführten Befehls. Wird durch das Ausführen eines Befehls an den Eingängen auf 0 zurückgesetzt.

Beispiel für den Aufruf des Bausteins in ST:

PROGRAM MAIN
VAR
    fbPcWatchDog  : FB_PcWatchdog;
    tWDTime       : TIME := T#10s;
    bEnableWD     : BOOL;
    bWDActive     : BOOL;
END_VAR

IF bEnableWD OR bWDActive THEN
    fbPcWatchDog(tTimeOut := tWDTime, bEnable := bEnableWD);
    bWDActive := fbPcWatchDog.bEnabled;
END_IF

Voraussetzungen

Entwicklungsumgebung

Zielplattform

Einzubindende SPS-Bibliotheken (Kategoriegruppe)

TwinCAT v3.1.0

IPCs mit den Mainboards IP‑4GVI63, CB1050, CB2050, CB3050, CB1051, CB2051, CB3051

PLC Lib Tc2_System