Warnung

Sie lesen eine alte Version dieser Dokumentation. Wenn Sie aktuelle Informationen wünschen, schauen Sie bitte unter 5.0 .

get_part

Parameter

  • Keine

Rückgabe

  • 200 x=<x> y=<y> rz=<rz>, wobei <x>, <y>, <rz> Koordinaten und Orientierung des Teils sind, sonst siehe Fehlercodes.

Bemerkung

Die Koordinaten haben 5 Dezimalstellen (z.B. x = 10.00000) und der Winkel 2 (z.B. rz = 1.00).

Beschreibung

Fordert ein oder mehrere Teile an.

Die Anzahl der zurückgegebenen Teile kann mit dem Parameter part_quantity geändert werden (siehe Tab. 27). Dieser Parameter ist standardmässig auf 1 gesetzt.

Bemerkung

Beachten Sie, dass eine Änderung von part_quantity, während get_part im Gange ist, diesen nicht beeinflusst. Erst der nachfolgende get_part berücksichtigt den neu gesetzten part_quantity.

Bemerkung

Dieser Befehl blockiert, bis part_quantity Teile gefunden werden und zurückgegeben werden können. Standardmässig ist eine Frist von 30 Sekunden eingestellt. Der Befehl gibt einen Fehler zurück, wenn die angeforderte Anzahl Teile nach Ablauf der Frist nicht gefunden werden konnten. Die Frist kann vor dem Ausführen von get_part angepasst werden (siehe set_parameter).

Standard-Funktionsprinzip: part_quantity = 1

Der Befehl get_part gibt die Koordinaten eines guten Kandidaten zurück. Dieser Befehl kann in verschiedener Weise eingesetzt werden:

  • Erste Befehlsausführung: Handelt es sich um die erste Befehlsausführung der gesamten Produktion, führt get_part Folgendes aus:

    • Wenn der Befehl ausgeführt wird, wird ein Bild aufgenommen und analysiert. Wenn kein gutes Teil gefunden wird, wird die Vibrationssequenz gestartet, gefolgt von einer Bildanalyse. Diese beiden Aktionen werden wiederholt, bis mindestens ein gutes Teil gefunden wird.

    • Wenn mindestens ein gutes Teil gefunden wird, werden die Koordinaten aller gefundenen Teile in einer Liste guter Teile gespeichert. Dann werden die Koordinaten des ersten Teils in der Liste an den Client gesendet und aus der Liste gelöscht.

  • Normaler Betrieb: Wenn die Liste guter Kandidaten bereits mindestens ein Teil enthält, sendet der Befehl get_part die Koordinaten des ersten Teils an den Client und löscht es dann aus der Liste. Es wird kein Bild aufgenommen und es wird keine Vibrationssequenz durchgeführt.

  • Keine weiteren Teile: Wenn sich keine weiteren Teile in der Liste befinden, führt der Befehl get_part die folgenden Schritte aus:

    • Wenn der Befehl ausgeführt wird, wird eine Vibrationssequenz gestartet, gefolgt von einer Bildanalyse. Diese beiden Aktionen werden wiederholt, bis mindestens ein gutes Teil gefunden wird.

    • Wenn mindestens ein gutes Teil gefunden wird, werden die Koordinaten aller gefundenen Teile in einer Liste guter Teile gespeichert. Dann werden die Koordinaten des ersten Teils in der Liste an den Client gesendet und aus der Liste gelöscht.

Funktionsprinzip mit part_quantity = n

Dies ändert die Mindestanzahl der guten Kandidaten, die beim Ausführen des Befehls get_part gefunden werden müssen. Die Anzahl der Teile kann mit dem Befehl set_parameter geändert werden.

Der Befehl get_part hört erst auf, wenn mindestens n gute Kandidaten auf dem Asycube gefunden wurden oder das timeout erreicht wurde.

Warnung

Sobald EYE+ die n Koordinaten an den Client sendet, wird davon ausgegangen, dass im nächsten Schritt alle diese Teile entnommen werden. Dies bedeutet, dass die Koordinaten der Teile dann aus der Liste der guten Kandidaten gelöscht werden.

Anwendungsbeispiel

get_part
200 x=0.12345 y=0.11111 rz=0.99

set_parameter part_quantity 3
get_part
200 x=0.12345 y=0.11111 rz=0.99 x=3.67890 y=200.45612 rz=1.54 x=120.37000 y=-20.48484 rz=0.00