-> Hier kostenlos registrieren
Hallo,
ich programmiere momentan an einer Gebäudesteuerung inkl. Lichtsteuerung mit eCockpit auf einem PFC200 (750-8212).
Mit einer Projektgröße von rund 9MB und 20 angesteckten I/O-Modulen würde ich es als "mittelmäßig umfangreich" beschreiben.
Leider habe ich in letzter Zeit immer mehr Probleme mit der Performance bei Anwendungen, die über das Netzwerk kommunizieren.
Mein Projekt beinhaltet u.A.:
- 112x DI, 96x DO, 4x AO
- 8 Visu-Seiten mit jeweils ca. 10 Buttons
- Visu i.d.R. nur von einem Client bedient
- Leistungsmessung über 750-494 Klemme
- MODBUS-Kommunikation mit 3 Slaves
- Senden von Lichtsteuersignalen über DMX-Protokoll mit 750-652 Klemme
- Empfang und Senden von Lichtsteuersignalen im Netzwerk über UDP-Befehle (sog. "Streaming-ACN")
Grundsätzlich läuft alles, was die Hardware Ein-/Ausgänge angeht erwartungsgemäß flüssig und schnell. Dennoch bin ich mit der Performance der Netzwerkkommunikation
momentan ziemlich unzufrieden. Ein Wechsel der Visu-Seite im Browser dauert beispielsweise nach dem Klicken mindestens 1,5 Sekunden, wenn man vor dem Bildschirm steht also eine halbe Ewigkeit
Auch die Verarbeitung der UDP-Signale für die Lichtsteuerung ist verhältnismäßig träge (mehrere Sekunden bis ein Wert wirklich angekommen ist).
Alle Komponenten sind in ein Gigabit-Netzwerk eingebunden.
Ich bin ziemlich momentan am Rätseln, ob und wie ich die Reaktionszeiten der Programme, die mit dem Netzwerk interagieren, verbessern kann.
Besonders die Zykluszeit scheint hier entscheidend zu sein, allerdings habe ich hier zu wenig Ahnung, welche Werte man da wählen sollte.
Im Run beobachte ich tatsächliche durchschnittliche Zykluszeiten von 1-3ms laut eCockpit. Meine Tasks (5 Stück) sind auf Werte zwischen 10 und 30ms eingestellt. Jedoch bekomme ich einen FB sogar so "aggressiv programmiert", dass es die Steuerung zum STOP bringt, weil der KBUS-Watchdogtimer ausläuft, dann hilft nur noch ein Powercycle...
Da die SPS offensichtlich ja alles andere als ausgelastet zu sein scheint, frage ich mich, an welchen Stellschrauben ich am besten drehen kann.
Vielleicht hat hier jemand eine Idee?
Freundliche Grüße,
Sven R.
ich programmiere momentan an einer Gebäudesteuerung inkl. Lichtsteuerung mit eCockpit auf einem PFC200 (750-8212).
Mit einer Projektgröße von rund 9MB und 20 angesteckten I/O-Modulen würde ich es als "mittelmäßig umfangreich" beschreiben.
Leider habe ich in letzter Zeit immer mehr Probleme mit der Performance bei Anwendungen, die über das Netzwerk kommunizieren.
Mein Projekt beinhaltet u.A.:
- 112x DI, 96x DO, 4x AO
- 8 Visu-Seiten mit jeweils ca. 10 Buttons
- Visu i.d.R. nur von einem Client bedient
- Leistungsmessung über 750-494 Klemme
- MODBUS-Kommunikation mit 3 Slaves
- Senden von Lichtsteuersignalen über DMX-Protokoll mit 750-652 Klemme
- Empfang und Senden von Lichtsteuersignalen im Netzwerk über UDP-Befehle (sog. "Streaming-ACN")
Grundsätzlich läuft alles, was die Hardware Ein-/Ausgänge angeht erwartungsgemäß flüssig und schnell. Dennoch bin ich mit der Performance der Netzwerkkommunikation
momentan ziemlich unzufrieden. Ein Wechsel der Visu-Seite im Browser dauert beispielsweise nach dem Klicken mindestens 1,5 Sekunden, wenn man vor dem Bildschirm steht also eine halbe Ewigkeit

Auch die Verarbeitung der UDP-Signale für die Lichtsteuerung ist verhältnismäßig träge (mehrere Sekunden bis ein Wert wirklich angekommen ist).
Alle Komponenten sind in ein Gigabit-Netzwerk eingebunden.
Ich bin ziemlich momentan am Rätseln, ob und wie ich die Reaktionszeiten der Programme, die mit dem Netzwerk interagieren, verbessern kann.
Besonders die Zykluszeit scheint hier entscheidend zu sein, allerdings habe ich hier zu wenig Ahnung, welche Werte man da wählen sollte.
Im Run beobachte ich tatsächliche durchschnittliche Zykluszeiten von 1-3ms laut eCockpit. Meine Tasks (5 Stück) sind auf Werte zwischen 10 und 30ms eingestellt. Jedoch bekomme ich einen FB sogar so "aggressiv programmiert", dass es die Steuerung zum STOP bringt, weil der KBUS-Watchdogtimer ausläuft, dann hilft nur noch ein Powercycle...
Da die SPS offensichtlich ja alles andere als ausgelastet zu sein scheint, frage ich mich, an welchen Stellschrauben ich am besten drehen kann.
Vielleicht hat hier jemand eine Idee?
Freundliche Grüße,
Sven R.