Job-ID und Jobverfolgung
Die PLCopen Spezifikation trifft keine Vorgaben, wie die Fertigmeldung – also der Jobstatus - mehrerer, nacheinander über MC_MovePath kommandierter Aufträge an den Pins „Done“, „Busy“ oder „Active“ identifiziert werden kann. Sie schreibt nur vor, dass die Fertig-Nachricht am Pin „Done“ des MC_MovePath erst dann aktiv werden darf, wenn kein Auftrag mehr aktiv ist - somit das System „leer“ ist.
Bei maximaler Maschinenauslastung und dem „Dauerbetrieb“ des auftraggebenden Kanals wird der Status „Done“ nie aktiv werden. Um trotzdem für jeden der kommandierten Jobs und jeden der Statuswechsel dieser Jobs eine Rückmeldung erhalten zu können, kann vom Anwender eine Job-ID (Nummer) vergeben werden.
Drei Bausteine dienen der Beauftragung bzw. der Abfrage von Jobs:
Baustein MCV_GrpPathMode
Dieser Baustein ist optional und beeinflusst den „Mode“ (Betriebsart) des zu startenden Jobs (=CNC-Programms) (siehe auch Kanalbetriebsart).
Baustein MCV_GrpPathPrepare
Der Baustein MCV_GrpPathPrepare übernimmt diesen Mode und belegt weitere vom Anwender festlegbare Jobattribute wie z.B. die Job-ID, die über den Pin JobID vorgegeben werden kann. Alle Attribute werden über den „PathData“ Pin an den Baustein MC_MovePath zum Start des Jobs übergeben.
Baustein MCV_GrpReadJobAck
Der Baustein MCV_GrpReadJobAck wird vom Pin „Fb“ des Bausteins MC_MovePath versorgt. Er signalisiert mit steigender Flanke auf dem Ausgang „Valid“, dass ein neuer Status angezeigt wird. Angezeigt wird für jeden über MC_MovePath gestarteten Job jeder Jobstatus-Wechsel nach MC_BUSY, MC_STARTED, MC_ABORTED, MC_DONE und MC_ERROR. Gleichzeitig wird die jeweilige, vom Anwender beim Start des Jobs vergebene, Job-ID angezeigt.
Nachfolgende Abbildung zeigt beispielhaft einen Job mit der Job-ID „1“, der ursprünglich über MCV_GrpPathPrepare gestartet wurde und gerade fertig wurde.
Im Baustein MCV_GrpReadJobAck stand zuletzt der Status MC_DONE dieses Jobs mit der Job-ID „1“ an.
Zuvor wurden über diesen Baustein direkt nach dem Kommandieren in MC_MovePath zuerst der Status MC_BUSY signalisiert, nach dem Start im Dekoder dann der Status MC_STARTED.
Nach dem Start des Jobs mit Job-ID „2“ lässt sich in MCV_GrpReadJobAck der Status MC_BUSY für die Job-ID „2“ auslesen. Später werden die Stati MC_STARTED, MC_DONE oder im Fehlerfall MC_ABORTED bzw. MC_ERROR folgen.
Hinweis

Wird MC_MovePath in Verbindung mit MCV_GrpPathPrepare ausgeführt, muss permanent MCV_GrpReadJobAck für das Auslesen der Jobstati aufgerufen werden.
Erfolgt dies nicht, laufen interne Puffer voll und blockieren neu kommandierte Jobs.
Alternativ zu den SPS Bausteinen MCV_GrpPathPrepare, MC_MovePath und MCV_GrpReadJobAck existieren CNC-Objekte, die es erlauben, Jobs zu aktivieren und Statusmeldungen auszulesen. Siehe CNC-Objekte
Hinweis

Wird die MC_MovePath Funktion über CNC-Objekte ausgelöst so müssen Quittungen über die entsprechenden CNC-Objekte des MCV_GrpReadJobAck zurückgelesen werden.
Erfolgt dies nicht, laufen Jobmanager-interne Puffer voll und blockieren neu kommandierte Jobs.
Hinweis

Wird MC_MovePath aus einem CNC Programm heraus gestartet, so kann der Status des beauftragten Jobs wie in Synchronisierung mit Auftragnehmer-Jobs überwacht werden. Benötigt wird zum Aufruf seine Job-ID.