IF_RobotMotion - Execute (Methode)
Typ: |
Methode |
Verfügbar ab: |
V2.11.1.0 |
Dieses Kapitel enthält Informationen zu folgenden Aspekten:
Blockieren oder Freigeben der Ausführung gesendeter Befehle, z. B. von Fahrbefehlen wie IF_RobotMotion.MoveL(…) oder IF_RobotMotion.MoveS(…).
Wenn die Methode Execute(…) mit i_xValue gleich FALSE aufgerufen wird, wird die Ausführung der darauffolgenden Fahrbefehle blockiert. Jeder Fahrbefehl, der vor einem Aufruf bzw. mit der Freigabe von Execeute(…) mit i_xValue gleich TRUE gesendet wurde, wird ausgeführt.
Beispielsequenz:
MoveL(i_udiSegmentId := 10, i_lrMaxZone := 10.0);
Execute(i_xValue = FALSE);
MoveL(i_udiSegmentId := 20, i_lrMaxZone := 0.0);
MoveL(i_udiSegmentId := 30, i_lrMaxZone := 10.0);
…
Execute(i_xValue := TRUE);
MoveL(i_udiSegmentId := 40, i_lrMaxZone := 0.0);
MoveL(…) mit SegmentId = 10 wird sofort gestartet. Das Segment mit ID 20 wird der verbundenen Bahn des ersten Segments hinzugefügt. Eine Ausführung erfolgt erst beim zweiten Aufruf der Methode Execute(…).
Da Execute(…) mit i_xValue gleich TRUE nach dem zweiten Aufruf aufgerufen wird, wird MoveL(…) mit Segment-ID 40 der verbundenen Bahn angehängt und sofort ausgeführt.
Die Parametrierung einer angeforderten Änderung des Koordinatensystems, ausgegeben durch einen Aufruf der Methode ChangeCoordinateSystem2(…), wird während des Aufrufs von Execute(…) mit i_xValue auf TRUE gesetzt validiert.
Ein Kaltstart des Roboters setzt den Wert von Execute auf TRUE.
Siehe auch:
oInteraktion zwischen der Methode „Execute“ und weiteren Robotic-Funktionen.
oVerhalten von IF_RobotFeedback.rstLastTarget
Eingang |
Datentyp |
Beschreibung |
---|---|---|
i_xValue |
BOOL |
FALSE: Die Ausführung von Befehlen, gefolgt von diesem Aufruf, wird blockiert. FALSE: Die Ausführung von gesendeten Befehlen wird freigegeben. |
Ausgang |
Datentyp |
Beschreibung |
---|---|---|
q_etDiag |
Allgemeingültige, bibliotheksunabhängige Aussage zur Diagnose. Ein Wert ungleich GD.ET_Diag.Ok entspricht einer Diagnosemeldung. |
|
q_etDiagExt |
Bausteinspezifischer Ausgang zur Diagnose. q_etDiag = GD.ET_Diag.Ok -> Statusmeldung q_etDiag <> GD.ET_Diag.Ok -> Diagnosemeldung |
|
q_sMsg |
STRING[80] |
Ereignisabhängige Meldung, die zusätzliche Informationen über den Diagnosezustand gibt. |
q_etDiag |
q_etDiagExt |
Enumerationswert |
Beschreibung |
---|---|---|---|
OK |
0 |
Ok |
|
ExecutionAborted |
10 |
Der Befehl wurde abgewiesen. |
|
ExecutionAborted |
205 |
Die externe Positionsquelle wurde konfiguriert. |
Enumerationsname: |
CommandRefused |
Enumerationswert: |
10 |
Beschreibung: |
Der Befehl wurde abgewiesen. |
Problem |
Ursache |
Lösung |
---|---|---|
Das Blockieren oder Freigeben der Ausführung von Befehlen war nicht erfolgreich. |
Es wird bereits ein Befehl verarbeitet. Ein Befehl, z. B. MoveL(...), MoveC(...), MoveS(...) oder MoveSync(...) wird gleichzeitig mit dem Aufruf von Execute(…) aufgerufen. |
Darauf achten, dass Befehle nacheinander und nicht gleichzeitig aufgerufen werden. |
ExternalPositionSourceConfigured
Enumerationsname: |
ExternalPositionSourceConfigured |
Enumerationswert: |
205 |
Beschreibung: |
Die externe Positionsquelle wurde konfiguriert. |
Problem |
Ursache |
Lösung |
---|---|---|
Das Blockieren oder Freigeben der Ausführung von Befehlen war nicht erfolgreich. |
Für die Roboterkomponenten Kartesisch, Orientierung und Hilfsachsen wurde eine externe Positionsquelle konfiguriert. |
Die Sperrung bzw. Freigabe der Befehlsausführung ist nicht möglich, wenn für die Roboterkomponenten eine externe Positionsquelle konfiguriert wurde. Die Befehlsausführung nicht sperren bzw. freigeben. |
Enumerationsname: |
Ok |
Enumerationswert: |
0 |
Beschreibung: |
Ok |
Das Blockieren oder Freigeben der Ausführung von Befehlen war erfolgreich.