Verwendung der Systemvariablen SYSTEM_b1LoopCyclicTask (Beseitigung)

Betrifft welche Produkte?
EVS93xx-EI (Servo PLC Version 6.3 DSMC Steuerkarte)
EVS93xx-ET (Servo PLC Version 6.3 DSMC Steuerkarte)
EPL-10200-EI (Drive PLC Version 6.3)

Behobene Funktionseinschränkung:
Die Systemvariable SYSTEM_b1LoopCyclicTask wird im ersten Zyklus der zyklischen Task (PLC_PRG) auf TRUE gesetzt.
 
Betrifft welche Produkte?
EVS93xx-EI (Servo PLC Version 2.4)
EVS93xx-ET (Servo PLC Version 2.4)
EVS93xx-EI (Servo PLC Version 6.2 DSMC Steuerkarte)
EVS93xx-ET (Servo PLC Version 6.2 DSMC Steuerkarte)
EPL 10200 (Drive PLC Version 6.2)

Wie sieht die Reaktion aus?
Die Systemvariable SYSTEM_b1LoopCyclicTask wird nicht auf TRUE gesetzt. Diese Systemvariable wird im ersten Zyklus der zyklischen Task (PLC_PRG) auf den Zustand TRUE gesetzt. Diese Variable kann für Initialisierungen genutzt werden.

Wann tritt das Problem auf?
Bei Verwendung der Systemvariablen SYSTEM_b1LoopCyclicTask in der zyklischen Task (PLC_PRG) oder in einer anderen Task (zeitgesteuerten Task).

Diagnosemöglichkeiten?
Bei Verwendung der Systemvariablen SYSTEM_b1LoopCyclicTask und der oben aufgeführten Betriebssystemversion ist eine weitergehende Diagnose nicht erforderlich.

Kurzfristige Maßnahmen/Empfehlungen?
Es gibt drei mögliche Abhilfemaßnahmen:
  1. Um Variablen mit einem bestimmten Wert zu initialisieren, kann die Variablendeklaration genutzt werden.
  2. Um Initialisierungen durchzuführen, kann die System-POE PLC_ColdStart verwendet werden. Sie wird gestartet, wenn nach einem Programmdownload oder einem Reset die PLC gestartet wird.
  3. Die gleiche Eigenschaft wie die Systemvariable SYSTEM_b1LoopCyclicTask erfüllt folgendes Programm (in ST):
Variable g_bSYSTEM_b1LoopCyclicTask wird global deklariert.

(*Deklaration*)
g_bSYSTEM_b1LoopCyclicTask:BOOL:=TRUE; (*eigener FirstLoop-Merker*)


(*Programmteil am Ende der PLC PRG einfügen:*)
IF g_bSYSTEM_b1LoopCyclicTask THEN
g_bSYSTEM_b1LoopCyclicTask:=FALSE;
END_IF

(*g_bSYSTEM_b1LoopCyclicTask anstelle SYSTEM_b1LoopCyclicTask abfragen*)

Bewertung:
Bei Verwendung der Systemvariablen SYSTEM_b1LoopCyclicTask, gibt es zwei Fälle zu unterscheiden:
  1. Programmerstellung / Inbetriebnahme: In diesem Fall können die beschriebenen Maßnahmen/Empfehlungen angewendet werden, so dass die Initialisierung des Systems korrekt durchgeführt wird.
  2. Gerätetausch: Verwendung eines aktuellen Betriebssystems (z.B. 2.5 oder 6.3). 
Wird im DDS-Projekt die Systemvariable SYSTEM_b1LoopCyclicTask nicht verwendet, ist eine Aktualisierung des Betriebssystems bzw. eine Änderung des DDS-Projektes nicht notwendig.  

URL zur Verlinkung dieses AKB-Artikels: https://www.lenze.com/de-de/go/akb/20034019/0/
Kontaktformular