Jobabbruch

Zum gesteuerten Abbruch eines oder mehrerer Jobs dienen folgende Funktionsbausteine der SPS:

Wird einer der Funktionsbausteine auf einem auftraggebenden Kanal angewendet, so terminieren alle wartenden und aktiven Jobs im Kanal. Mit ihrem Abbruch werden alle bisher noch nicht beendeten Jobs an beauftragte – also unterlagerte - Kanäle ebenfalls abgebrochen. Der Status jedes abgebrochenen Jobs (nicht des Kanals!) wechselt in den Zustand MC_ABORTED.

Hinweis

notice

Ein selektiver Abbruch einzelner Auftraggeber-Jobs wird derzeit nicht unterstützt.

Grund für diese Einschränkung:

#SIGNAL / #WAIT- Ereignisse zwischen Kanälen können im Allgemeinen nicht koordiniert zurückgesetzt werden. Grund dafür ist die Kombinatorik der voneinander abhängigen Zustände aller beteiligten Kanäle, die sehr groß werden kann. Zudem kann im Falle eines Abbruchs meist nicht bestimmt werden, in welchem Zustand das System sich gerade konkret befindet.
Bei falschem Wiederaufsetzen könnten falsche Programmstarts oder falsche Programmabläufe die Folge sein.

Werden die Funktionsbausteine für einen Abbruch auf einen auftragnehmenden Kanal angewendet, dann terminieren dort alle wartenden und aktiven Jobs. Wurde einer der abgebrochenen Jobs von einem auftraggebenden Kanal kommandiert, so wird der auftraggebende Job im auftraggebenden Kanal ebenfalls in den Zustand MC_ABORTED gesetzt und blockiert. Alle durch den auftraggebenden Job zuvor kommandierte Jobs an andere beauftragten Kanäle werden nicht abgebrochen.

Wirkung von Jobbrüchen auf Auftraggeber und Auftragnehmer
Abb.: Wirkung von Jobbrüchen auf Auftraggeber und Auftragnehmer

MCV_GrpResetForced und MC_GrpStop unterscheiden sich darin, dass MCV_GrpResetForced alle Achsen der auftraggebenden und auftragnehmenden Kanäle zusätzlich in den Grundzustand zurücksetzt.

Hinweis

notice

Für MCV_GrpResetForced existiert wie für MC_MovePath und MCV_GrpReadJobAck ein CNC-Objekt.

#MCV_GroupResetForced kann auch aus einem auftraggebenden CNC-Programm gestartet werden. Wie bei MC_MovePath ist vom Anwender eine Job-ID zu vergeben, um über die beschriebene Synchronisierungsfunktion überwacht werden zu können. Das Abbruchverhalten entspricht dem durch die SPS ausgelösten #MCV_GroupResetForced auf einem auftragnehmenden Kanal.