MFreiberger
Level-3
- Beiträge
- 3.272
- Reaktionspunkte
- 913
-> Hier kostenlos registrieren
Moin Zusammen,
wir sind bei der Verwendung von Schleifen, die in SCL geschrieben sind, auf ein Phänomen gestossen:
Ein Kollege wollte bei einer IBN vor Ort eine FOR-Schleife mit 60 Durchgängen programmieren (das hat er auch getan!). In dieser Schleife werden, in Äbhängigkeit von zwei Arraybits, ein Bit eines anderen Array auf TRUE oder FALSE gesetzt.
Der Kollege hat die Schleife eingespielt und sofort sprang die mittlere Zykluszeit von ~20ms auf ~50ms!
Dann hat er die Schleife herausgenommen und 60 Einzelaufrufe (in AWL) programmiert. Nach dem Einspielen ist dabei die Zykluszeit nicht angestiegen.
Ich konnte die Situation nachstellen. Immer wenn ich die SCL-Schleife geladen habe, ist die Zykluszeit sprunghaft angestiegen (allerdings nur für wenige Sekunden). Danach hat sich die Zykluszeit wieder "bekrabbelt".
Kann es sein, dass bei der Schleife zunächst die Variablen referenziert werden müssen und sie erst danach performant läuft?
Ach ja: wir verwenden TIA 15.1 SP3
VG
MFreiberger
wir sind bei der Verwendung von Schleifen, die in SCL geschrieben sind, auf ein Phänomen gestossen:
Ein Kollege wollte bei einer IBN vor Ort eine FOR-Schleife mit 60 Durchgängen programmieren (das hat er auch getan!). In dieser Schleife werden, in Äbhängigkeit von zwei Arraybits, ein Bit eines anderen Array auf TRUE oder FALSE gesetzt.
Der Kollege hat die Schleife eingespielt und sofort sprang die mittlere Zykluszeit von ~20ms auf ~50ms!
Dann hat er die Schleife herausgenommen und 60 Einzelaufrufe (in AWL) programmiert. Nach dem Einspielen ist dabei die Zykluszeit nicht angestiegen.
Ich konnte die Situation nachstellen. Immer wenn ich die SCL-Schleife geladen habe, ist die Zykluszeit sprunghaft angestiegen (allerdings nur für wenige Sekunden). Danach hat sich die Zykluszeit wieder "bekrabbelt".
Kann es sein, dass bei der Schleife zunächst die Variablen referenziert werden müssen und sie erst danach performant läuft?
Ach ja: wir verwenden TIA 15.1 SP3
VG
MFreiberger