Der folgende Abschnitt enthält eine Beschreibung der verschiedenen für Ihr Programm verfügbaren Tasktypen sowie deren Merkmale.
Einer zyklischen Task wird über die Einstellung „Intervall“ im Bereich „Typ“ auf der Unterregisterkarte „Konfiguration“ eine feste Zykluszeit zugewiesen. Die Ausführung einer zyklischen Task verläuft wie folgt:
1. |
Eingänge lesen: Die physischen Eingangszustände werden an die Eingangsspeichervariablen |
2. |
Taskverarbeitung: Der in der Task definierte Benutzercode (POU usw.) wird verarbeitet. Die Ausgangsspeichervariablen |
3. |
Ausgänge schreiben: Die Ausgangsspeichervariablen Weitere Informationen zum Definieren der Buszyklus-Task finden Sie unter EcoStruxure Machine Expert Programmierhandbuch sowie unter SPS-Einstellungen. Weitere Informationen zum E/A-Verhalten finden Sie unter Beschreibung der Steuerungszustände. |
4. |
Verbleibende Intervalldauer: Die Firmware der Steuerung führt die Systemverarbeitung und andere Tasks mit geringer Priorität aus. |
Eine freilaufende Task hat keine feste Dauer. Im freilaufenden Modus startet der Taskzyklus nach Beendigung des vorherigen Zyklus und einer kurzen Zeit für Systemverarbeitungsfunktionen. Die Ausführung einer freilaufenden Task verläuft wie folgt:
1. |
Eingänge lesen: Die physischen Eingangszustände werden an die Eingangsspeichervariablen |
2. |
Taskverarbeitung: Der in der Task definierte Benutzercode (POU usw.) wird verarbeitet. Die Ausgangsspeichervariablen |
3. |
Ausgänge schreiben: Die Ausgangsspeichervariablen Weitere Informationen zum Definieren der Buszyklus-Task finden Sie unter EcoStruxure Machine Expert Programmierhandbuch sowie unter SPS-Einstellungen. Weitere Informationen zum E/A-Verhalten finden Sie unter Beschreibung der Steuerungszustände. |
4. |
Systemverarbeitung: Die Firmware der Steuerung führt Systemverarbeitung und andere Tasks mit geringerer Priorität aus (z. B.: HTTP-Verwaltung, Ethernet-Verwaltung, Parameterverwaltung). |
Diese Art von Task ist ereignisgesteuert und wird durch eine Programmvariable eingeleitet. Die Task startet an der steigenden Flanke der booleschen Variable, die mit dem Trigger-Ereignis verknüpft ist, es sei denn, eine Task mit einer höheren Priorität kommt ihr zuvor. In diesem Fall wird die Ereignistask entsprechend den Vorgaben durch die Taskprioritätszuweisungen gestartet.
Wenn Sie z. B. eine Variable namens my_Var
definiert haben und diese einem Ereignis zuweisen möchten, gehen Sie wie folgt vor:
Schritt |
Aktion |
---|---|
1 |
Doppelklicken Sie in der auf die . |
2 |
Wählen Sie auf der Registerkarte in der Liste das Element aus. |
3 |
Klicken Sie rechts neben dem Feld Ergebnis: Das Fenster wird angezeigt. |
4 |
Navigieren Sie in der Baumstruktur des Dialogs |
Dieser Tasktyp ist ereignisgesteuert und wird durch die Erkennung eines Hardware- oder hardwarebezogenen Funktionsereignisses initiiert. Er beginnt, wenn das Ereignis eintritt, außer wenn eine Task mit höherer Priorität vorrangig ausgeführt wird. In diesem Fall wird die Ereignistask entsprechend den Vorgaben durch die Taskprioritätszuweisungen gestartet.
Zum Beispiel könnte eine externe Ereignistask einem HSC-Stop-Ereignis zugeordnet werden. Um das Ereignis
mit einer externen Ereignistask zu verknüpfen, wählen Sie es in der Dropdownliste auf der Registerkarte aus.Je nach Steuerung gibt es bis zu 4 Ereignistypen, die einer externen Ereignistask zugewiesen werden können:
Steigende Flanke an einem erweiterten Eingang (DI0
bis DI15
)
HSC-Schwellenwerte
HSC Stop
CAN Sync