L-INX/L-GATE Benutzerhandbuch
Bitte seien Sie vorsichtig, wenn Sie Namen für neue Tasks definieren. Die Namen, die in der
Projektansicht angezeigt werden, sind symbolische Namen, die nicht mit den Namen aus der
Zuweisung für die Zykluszeit korrespondieren. Dies ist selbst dann nicht der Fall, wenn das
L-INX Template-Projekt die Zykluszeit als Task-Namen verwendet.
8.4.5 CPU-Überlast
Die CPU-Auslastung durch das IEC61131-Programm wird durch mehrere Faktoren
beeinflusst. Daher ist es in der Regel nicht möglich, die Systemauslastung, die durch das
IEC61131-Programm hervorgerufen wird, vorauszusagen. Die folgenden Parameter dienen
als Beispiele von besonderer Wichtigkeit, die zu beachten sind, wenn ein IEC61131-
Programm entworfen wird:
Der Entwickler eines IEC61131-Programms kann die momentane Systemauslastung über das
Web-Interface überprüfen. Um eine ungefähre Abschätzung der CPU-Auslastung zu
bekommen beobachten Sie die PLC-LED. Jedes Mal, wenn die Systemlast über 80% über
ein bestimmtes Zeitintervall steigt, wird die PLC-LED rot, bis die Last wieder unter 80%
fällt.
Im Fall einer CPU-Überlast kann das IEC61131-Programm seine Aufgaben eventuell nicht
innerhalb der definierten Zykluszeit abarbeiten. Adaptieren Sie das Programm, um die ge-
samte Systemlast auf unter 80% zu reduzieren. Hier sind ein paar Hinweise, wie die CPU-
Last niedrig gehalten werden kann:
Version 8.2
Die Anzahl an Ein- und Ausgängen, die der I/O-Treiber verarbeitet.
Die Komplexität der Logik im laufenden IEC61131-Programm.
Die Anzahl der gleichzeitig laufenden Programm-Instanzen auf dem L-INX.
Die Zykluszeit des IEC61131-Programms.
logiCAD Breakpoint-Unterstützung und ob Forceable Code ein- oder ausgeschaltet
ist.
Erhöhen Sie die Zykluszeit, so dass der Task fertig wird, bevor die Ausführung des
nächsten Zyklus geplant ist. Der SPS-Kern wird den nächsten Ablauf immer für
einen absoluten Zeitpunkt planen, egal wie lange der letzte Ablauf gebraucht hat.
Das soll ungleiche Ausführungszeiten kompensieren und den Zyklus konstant
halten.
Reduzieren Sie die Anzahl der I/O-Variablen, um die Last zu senken, die durch den
Austausch von Werten zwischen SPS und Datenpunkten des Automation Servers
entsteht.
Reduzieren Sie die Anzahl der unabhängigen Tasks und versuchen Sie, soviel
Funktionalität wie möglich in einen Task zu packen. Jeder laufende Task wird selbst
den I/O-Treiber für neue Ein- und Ausgangswerte aufrufen. Daher erzeugen zwei
Tasks mit einer Zykluszeit von 1s doppelt soviel I/O-Last als ein Task mit 1s.
Achten Sie besonders auf die Komplexität von Funktionsblöcken, die oft verwendet
werden. Eine schlechte Performance eines einzigen solchen Blocks kann die CPU-
Last dramatisch erhöhen, weil er einige Hundert Male in einem Zyklus berechnet
werden muss.
Versuchen Sie, die Breakpoint-Unterstützung sowie Forceable Code abzuschalten,
wenn Code für das Target generiert wird, um möglichst effizienten SPS-Code aus
der Logik zu erzeugen.
101
LOYTEC electronics GmbH
LOYTEC