mallepalle83
Level-2
- Beiträge
- 21
- Reaktionspunkte
- 1
-> Hier kostenlos registrieren
Hallo zusammen,
ich habe einen Baustein geschrieben, der die Steuerung/Koordinierung eines Antriebes übernehmen soll. Er wird über die In/Out/InOut Variablen verschaltet und soll an Multiinstanz verwendet werden.
Gleichzeitig kann er über ein passendes Faceplate (Bedienbaustein) über ein HMI bedient werden. An sich erst einmal nichts schwieriges, sollte man meinen.
Jedoch vermute ich, dass ich durch einen schlechten Programmierstiel hohe Zykluszeiten der SPS verursache.
Dieser Baustein wird in meinem aktuellen Programm ca. 34 mal verwendet. Einen ähnlichen Baustein habe ich auch noch für die Steuerung von Ventilen. Dieser wird auch noch einmal ca. 24 mal verwendet.
Die Zykluszeit der aktuell Eingesetzten S7-1515F beträgt ca. 20-30 ms und schwankt auch relativ stark. Also immer Sprünge im >5 ms Bereich.
Ich würde mich freuen, wenn einer von euch sich diesen Baustein einmal ansehen könnte und einmal im groben sagt --> Das ist richtig schlecht, mach das so!
Zum Beispiel, greife ich jetzt für die Visualisierung auf eine InOut Variable zu. Sollte man hier lieber direkt auf den Instanz-DB durch das HMI zugreifen? So macht es zumindest Siemens bei ihren Faceplatebausteinen?! Dies spart dann zumindest schon einmal das erneute umkopieren von Zuständen auf die InOut Visu Variable! Allerdings finde ich den Zugriff auf Instanzdaten nicht gerade sauber programmiert und bin der Meinung, die Instanzdaten sollten immer nur dem jeweiligen Baustein gehören!
Im Anhang noch der Baustien als TIAV16 BIBLIOTHEK
Mit freundlichen Grüßen,
Mallepalle
ich habe einen Baustein geschrieben, der die Steuerung/Koordinierung eines Antriebes übernehmen soll. Er wird über die In/Out/InOut Variablen verschaltet und soll an Multiinstanz verwendet werden.
Gleichzeitig kann er über ein passendes Faceplate (Bedienbaustein) über ein HMI bedient werden. An sich erst einmal nichts schwieriges, sollte man meinen.
Jedoch vermute ich, dass ich durch einen schlechten Programmierstiel hohe Zykluszeiten der SPS verursache.
Dieser Baustein wird in meinem aktuellen Programm ca. 34 mal verwendet. Einen ähnlichen Baustein habe ich auch noch für die Steuerung von Ventilen. Dieser wird auch noch einmal ca. 24 mal verwendet.
Die Zykluszeit der aktuell Eingesetzten S7-1515F beträgt ca. 20-30 ms und schwankt auch relativ stark. Also immer Sprünge im >5 ms Bereich.
Ich würde mich freuen, wenn einer von euch sich diesen Baustein einmal ansehen könnte und einmal im groben sagt --> Das ist richtig schlecht, mach das so!
Zum Beispiel, greife ich jetzt für die Visualisierung auf eine InOut Variable zu. Sollte man hier lieber direkt auf den Instanz-DB durch das HMI zugreifen? So macht es zumindest Siemens bei ihren Faceplatebausteinen?! Dies spart dann zumindest schon einmal das erneute umkopieren von Zuständen auf die InOut Visu Variable! Allerdings finde ich den Zugriff auf Instanzdaten nicht gerade sauber programmiert und bin der Meinung, die Instanzdaten sollten immer nur dem jeweiligen Baustein gehören!
Im Anhang noch der Baustien als TIAV16 BIBLIOTHEK
Mit freundlichen Grüßen,
Mallepalle