Intervall im Task

JüKo

Level-1
Beiträge
75
Reaktionspunkte
0
Zuviel Werbung?
-> Hier kostenlos registrieren
Hallo an Alle,
wechen Wert stelle ich in Codesys für den jeweiligen Task ein? Derzeit sind es bei mir 4ms für das Programm und 100ms für den Visutask. Hab dafür kein Gefühl. Kann eine Zykluszeit ermittelt werden, denn danach richtet sich das doch? Und wie vergeb ich Prioritäten? Nach Gefühl???
Danke und noch einen schönen Sonntag,
Jürgen
 
Die Standardeinstellungen sind für die meisten Anwendungen im unteren Bereich ausreichend.

Wenn die Auslastung hoch geht (>70%) oder eine super schnelle Reaktion erforderlich ist, kommt der Moment, wo man über die Task's entscheiden muss.
Auslstung zu hoch, aber Reaktion völlig ausreichend = Zykluszeit erhöhen
Auslastung sehr niedrig, aber Reaktion zu träge = Zykluszeit veringern
Auslastung sehr niedrig, Reaktion ausreichend = Nichts tun
Auslastung sehr hoch, Reaktion zu niedrig = Multitasking einführen, Tasks priorisieren (Kurze und schnelle Tasks bekommen die höhere Priorität) oder einfach schnellere Hardware kaufen.

Den Visu-Task würde ich so lassen, wenn die Visu zu träge wirkt, die Taskzeit erhöhen - auch wenn das erst mal widersprüchlich klingt.
 
Zuletzt bearbeitet:
Zuviel Werbung?
-> Hier kostenlos registrieren
Die Zykluszeit muss auf jeden Fall kürzer sein als das kürzeste Eingangssignal, damit Dir kein Signal durch die Lappen geht. Aber das ist nicht das einzige Kriterium. Angenommen, Du hast einen endlagengesteuerten Funktionsablauf für eine Handlingeinheit mit 10 Funktionsschritten. Bei einer Zykluszeit von 10 ms vergehen dann bei jedem Schrittwechsel 10 ms zwischen der Erfassung der Endlagenmeldung für den aktuellen Schritt und der Stellbefehlsausgabe für den nächsten Schritt. Für den gesamten Ablauf musst Du also noch 100 ms zu den Verfahrzeiten der Antriebe addieren. Bei einer Zykluszeit von 1 ms wären es nur 10 ms, und Du hättest zusätzliche 90 ms für die Bewegungen. Das kann schon entscheidend sein.

Bei den Prioritäten gibt es kein Gefühl, sondern nur eine einfache Regel, die asci25 schon genannt hat: Eine Task mit hoher Prio unterbricht eine Task mit niedriger Prio, deshalb muss die schnellste Task die höchste Prio haben. Wenn nicht, kann es vorkommen, dass eine schnelle Task durch eine langsame blockiert wird (nämlich dann, wenn die langsame Task länger braucht als die Zykluszeit der schnellen Task).
 
Zurück
Oben