Arm#

Einführung#

Der 6-Achs-Roboterarm ist ein Robotermanipulator, der in der CTE-Arbeitszelle verwendet wird. In VEXcode EXP ermöglichen Armblöcke einem EXP Brain, den 6-Achs-Arm zu bewegen, seinen Endeffektor zu drehen, die Machbarkeit von Bewegungen zu prüfen und angebrachte Werkzeuge wie das Magnetaufnahmewerkzeug oder das Stifthalterwerkzeug zu steuern.

Diese Seite ist für CTE-Workcell-Projekte gedacht, bei denen der 6-Achsen-Arm mit einem EXP Brain verbunden ist. Wenn Sie den 6-Achsen-Arm allein mit der CTE Tile verwenden, nutzen Sie stattdessen die Seite CTE Arm API.

Nachfolgend finden Sie eine Liste der verfügbaren Blöcke:

Aktionen – Den 6-Achsen-Arm in Positionen oder Ausrichtungen bewegen.

Einstellungen – Bewegungs-, Werkzeug- und Steuerungseinstellungen konfigurieren.

Werte – Prüfen, ob eine Bewegung ausgeführt werden kann, ob eine Bewegung abgeschlossen ist, ob ein Absturz aufgetreten ist, die aktuelle Position oder Ausrichtung ablesen oder Blöcke ausführen, wenn Arm-Ereignisse auftreten.

Aktionen#

Arm in Position bringen#

Der Verschiebearm in Position-Stapelblock bewegt den 6-Achsen-Arm zu einer festgelegten x-, y- und z-Koordinate.

Die x-, y- und z-Koordinaten beschreiben die Position des Endeffektors im dreidimensionalen Raum. Verwenden Sie Arm bewegt sich zu Position? vor diesem Block, falls die Zielposition außerhalb des erreichbaren Arbeitsbereichs des 6-Achs-Arms liegen könnte.

Arm in Position bringen, um Stapelblock zu positionieren#
bewege [Arm1 v] zu Position x:[120] y:[0] z:[100] [mm v] ▶

Parameter

Beschreibung

Gerät

Der konfigurierte 6-Achsen-Arm zur Verwendung.

X

Die x-Koordinate der Zielposition.

y

Die y-Koordinate der Zielposition.

z

Die z-Koordinate der Zielposition.

Einheit

Die Einheit für die x-, y- und z-Koordinaten ist mm (Millimeter) oder Zoll.

sich ausdehnender Pfeil

Standardmäßig ist die Bewegung des 6-Achsen-Arms abgeschlossen, bevor der nächste Block ausgeführt wird. Erweitere den Block, und warte nicht, um die Bewegung zu starten und sofort mit dem nächsten Block fortzufahren.

Beispiel

Beim Start fährt der 6-Achsen-Arm in eine Standardposition.#
wenn gestartet
[Move Arm1 to a standard position at the start of the project.]
bewege [Arm1 v] zu Position x:(120) y:(120) z:(75) [mm v] ▶

Schrittweite Armposition#

Der Inkrement-Armposition-Stapelblock bewegt den 6-Achsen-Arm um eine festgelegte Distanz von seiner aktuellen Position entlang der x-, y- und z-Achse.

Verwenden Sie diesen Block, um sich relativ zur aktuellen Position des Endeffektors zu bewegen. Verwenden Sie Armposition inkrementieren? vor diesem Block, falls die Bewegung den 6-Achsen-Arm außerhalb seines erreichbaren Arbeitsbereichs positionieren könnte.

Inkrement Armposition Stapelblock#
erhöhe [Arm1 v] Position um x:[0] y:[0] z:[0] [mm v] ▶

Parameter

Beschreibung

Gerät

Der konfigurierte 6-Achsen-Arm zur Verwendung.

X

Die Strecke, die entlang der x-Achse zurückgelegt werden muss.

y

Die Strecke, die entlang der y-Achse zurückgelegt werden muss.

z

Die Strecke, die entlang der z-Achse zurückgelegt werden muss.

Einheit

Die Einheit für die x-, y- und z-Abstände ist mm (Millimeter) oder Zoll.

sich ausdehnender Pfeil

Standardmäßig ist die Bewegung des 6-Achsen-Arms abgeschlossen, bevor der nächste Block ausgeführt wird. Erweitere den Block, und warte nicht, um die Bewegung zu starten und sofort mit dem nächsten Block fortzufahren.

Beispiel

Beim Start wird die Position von Arm1 um 100 Millimeter entlang der x-Achse erhöht.#
wenn gestartet
[Move Arm1 100 millimeters along the x-axis.]
erhöhe [Arm1 v] Position um x:[100] y:[0] z:[0] [mm v] ▶

Arm in die richtige Position bewegen#

Der Bewegungsarm in Ausrichtung-Stapelblock dreht den Endeffektor in eine bestimmte Ausrichtung.

Die Orientierung beschreibt die Drehung des Endeffektors. Neigung neigt den Endeffektor nach oben oder unten, Rollen dreht ihn seitlich und Gieren dreht ihn nach links oder rechts.

Arm in die Orientierungsposition bringen, Stapelblock#
bewege [Arm1 v] zu Ausrichtung [Nick v] [0] Grad ▶

Parameter

Beschreibung

Gerät

Der konfigurierte 6-Achsen-Arm zur Verwendung.

Orientierung

Die Achsen, um die der Endeffektor gedreht wird:

  • Neigung
  • Rollen
  • Gieren

Abschlüsse

Der Zielorientierungswinkel in Grad.

sich ausdehnender Pfeil

Standardmäßig ist die Bewegung des 6-Achsen-Arms abgeschlossen, bevor der nächste Block ausgeführt wird. Erweitere den Block, und warte nicht, um die Bewegung zu starten und sofort mit dem nächsten Block fortzufahren.

Beispiel

Beim Start dreht sich der Endeffektor um 270 Grad.#
wenn gestartet
[Rotate the end effector to 270 degrees of yaw.]
bewege [Arm1 v] zu Ausrichtung [Gier v] [270] Grad ▶

Ausrichtung des Inkrementarms#

Der Inkrement-Armorientierungsblock dreht den Endeffektor um eine bestimmte Anzahl von Grad aus seiner aktuellen Ausrichtung.

Mit diesem Block können Sie relativ zur aktuellen Nick-, Roll- oder Gierachse des Endeffektors rotieren.

Inkrement Armorientierungsstapelblock#
erhöhe [Arm1 v] Ausrichtung um [Nick v] [0] Grad ▶

Parameter

Beschreibung

Gerät

Der konfigurierte 6-Achsen-Arm zur Verwendung.

Orientierung

Die Achsen, um die der Endeffektor gedreht wird:

  • Neigung
  • Rollen
  • Gieren

Abschlüsse

Die Gradzahl, um die der Endeffektor gedreht werden soll.

sich ausdehnender Pfeil

Standardmäßig ist die Bewegung des 6-Achsen-Arms abgeschlossen, bevor der nächste Block ausgeführt wird. Erweitere den Block, und warte nicht, um die Bewegung zu starten und sofort mit dem nächsten Block fortzufahren.

Beispiel

Beim Start dreht sich der Endeffektor um 40 Grad in der Neigung.#
wenn gestartet
[Rotate the end effector 40 degrees in pitch.]
erhöhe [Arm1 v] Ausrichtung um [Nick v] [40] Grad ▶

Einstellungen#

Armgeschwindigkeit einstellen#

Der Set-Arm-Speed-Block legt die Bewegungsgeschwindigkeit des 6-Achsen-Arms fest.

Die Geschwindigkeit des 6-Achsen-Arms ist zu Beginn eines Projekts auf 50 % eingestellt.

Set Arm Speed ​​Stack Block#
[Arm1 v] Geschwindigkeit auf [50] % setzen

Parameter

Beschreibung

Gerät

Der konfigurierte 6-Achsen-Arm zur Verwendung.

Prozent

Die Bewegungsgeschwindigkeit des 6-Achsen-Arms, von 1 bis 100 Prozent.

Beispiel

Beim Start wird die Geschwindigkeit des 6-Achsen-Arms eingestellt, anschließend fährt das Programm in eine Position.#
wenn gestartet
[Set Arm1's speed to 30%.]
[Arm1 v] Geschwindigkeit auf [30] % setzen
bewege [Arm1 v] zu Position x:[120] y:[120] z:[70] [mm v] ▶

Set-Arm-Endeffektor#

Der Set-Arm-Endeffektor-Stapelblock wählt das am 6-Achs-Arm befestigte Werkzeug aus.

Beim Wechsel des Endeffektors passt der 6-Achsen-Arm seinen Z-Offset automatisch an das ausgewählte Werkzeug an. Der Endeffektor ist zu Projektbeginn auf das Magnet-Aufnahmewerkzeug eingestellt.

Set-Arm-Endeffektor-Stapelblock#
setze [Arm1 v] Endeffektor auf [Magnet v]

Parameter

Beschreibung

Gerät

Der konfigurierte 6-Achsen-Arm zur Verwendung.

Endeffektor

Das am 6-Achsen-Arm befestigte Werkzeug: Magnet (Magnet-Aufnahmewerkzeug) oder Stift (Stifthalterwerkzeug).

Beispiel

Beim Start wird der 6-Achsen-Arm so eingestellt, dass er das Stifthalter-Werkzeug verwendet.#
wenn gestartet
[Set Arm1 to use the Pen Holder Tool.]
setze [Arm1 v] Endeffektor auf [Stift v]

Armmagnetmodus einstellen#

Der Magnetmodus des Einstellarms-Stapelblock aktiviert oder deaktiviert das Magnetaufnahmewerkzeug.

Der Magnetmodus bleibt aktiv, bis er durch einen anderen Magnetmodus-Set-Block geändert wird. Zu Beginn eines Projekts wird der Magnetmodus auf freigegeben zurückgesetzt.

Armmagnetmodus-Stapelblock einstellen#
setze [Arm1 v] Magnet auf [aktiviert v]

Parameter

Beschreibung

Gerät

Der konfigurierte 6-Achsen-Arm zur Verwendung.

Modus

Der Status des Magnet-Aufnahmewerkzeugs: aktiviert, um Objekte aufzuheben, oder losgelassen, um alle gehaltenen Objekte fallen zu lassen und keine neuen Objekte aufzuheben.

Beispiel

Beim Start wird der Magnet aktiviert, es wird gewartet und dann wieder freigegeben.#
wenn gestartet
[Pick up objects, then drop them after 2 seconds.]
setze [Arm1 v] Magnet auf [aktiviert v]
warte [2] Sekunden
setze [Arm1 v] Magnet auf [losgelassen v]

Set Arm Stift Offset#

Der Stapelblock set arm pen offset legt den vertikalen Versatz für das Stifthalterwerkzeug fest.

Stellen Sie den Endeffektor auf Stift ein, bevor Sie diesen Block verwenden. Wenn das Stifthalter-Werkzeug nicht ausgewählt ist, hat dieser Block keine Wirkung.

Der Stiftversatz ist der Abstand von der Oberkante des Stifthalters bis zur Spitze des Whiteboardmarkers. Zu Beginn eines Projekts wird der Stiftversatz auf 0 gesetzt. Ein Stiftversatz von 0 platziert den Ursprung der Z-Achse des Arms an dem Punkt, an dem der Stifthalter mit dem 6-Achsen-Arm verbunden ist.

Set Arm Stift Offset Stapelblock#
setze [Arm1 v] Stiftversatz auf [0] [mm v]

Parameter

Beschreibung

Gerät

Der konfigurierte 6-Achsen-Arm zur Verwendung.

Versatz

Der Stiftversatzwert.

Einheit

Die Einheit für den Stiftversatz: mm (Millimeter) oder Zoll.

Beispiel

Beim Start wird der Stiftversatz eingestellt und anschließend der 6-Achsen-Arm bewegt.#
wenn gestartet
[Set the end effector to the Pen Holder Tool and set the pen offset to 1 inch.]
setze [Arm1 v] Endeffektor auf [Stift v]
setze [Arm1 v] Stiftversatz auf [1] [Zoll v]
bewege [Arm1 v] zu Position x:[120] y:[120] z:[0] [mm v] ▶

Arm zur Steuerung angehalten#

Der Set-Arm-zu-Steuerung-angehalten-Stapelblock stoppt sofort den 6-Achsen-Arm und verhindert, dass weitere Armblöcke ausgeführt werden.

Sobald dieser Block ausgeführt wurde, kann der 6-Achsen-Arm erst nach einem Neustart des Projekts wieder aktiviert werden.

Hebel zur Steuerung des angehaltenen Stapelblocks einstellen#
setze [Arm1 v] Steuerung auf gestoppt

Parameter

Beschreibung

Gerät

Der konfigurierte 6-Achsen-Arm zur Verwendung.

Beispiel

Beim Start bewegt sich der 6-Achsen-Arm; durch die Steuerung wird er gestoppt.#
wenn gestartet
[Control stop after a movement.]
bewege [Arm1 v] zu Position x:[120] y:[120] z:[70] [mm v] ▶
setze [Arm1 v] Steuerung auf gestoppt

Werte#

Arm in Position bringen?#

Der boolesche Block Armbewegung zu Position? gibt zurück, ob der 6-Achsen-Arm zu einer bestimmten x-, y- und z-Koordinate bewegt werden kann.

Dieser Block prüft die Zielposition, bevor sich der 6-Achs-Arm bewegt. Dadurch kann verhindert werden, dass der Arm außerhalb seines erreichbaren Arbeitsbereichs bewegt wird.

Arm in Position bewegen? Boolescher Block#
<[Arm1 v] Bewegung zu Position x:[0] y:[0] z:[0] [mm v] möglich?>

Parameter

Beschreibung

Gerät

Der konfigurierte 6-Achsen-Arm zur Verwendung.

X

Die x-Koordinate der Zielposition.

y

Die y-Koordinate der Zielposition.

z

Die z-Koordinate der Zielposition.

Einheit

Die Einheit für die x-, y- und z-Koordinaten ist mm (Millimeter) oder Zoll.

Beispiel

Beim Start wird geprüft, ob sich der 6-Achsen-Arm in eine Position bewegen kann.#
wenn gestartet
[Check if Arm1 can move to a position.]
wenn <nicht <[Arm1 v] Bewegung zu Position x:[0] y:[0] z:[0] [mm v] möglich?>> dann
drucke [The 6-Axis Arm can't move to this position.] auf Bildschirm ▶
Ende

Armschrittposition?#

Der boolesche Block Arm-Inkrementposition? gibt zurück, ob der 6-Achsen-Arm die angegebene Distanz von seiner aktuellen Position aus bewegen kann.

Dieser Block prüft eine schrittweise Bewegung, bevor sich der 6-Achsen-Arm bewegt.

Armpositionsinkrement? Boolescher Block#
<[Arm1 v] Position um x:[0] y:[0] z:[0] [mm v] erhöhen?>

Parameter

Beschreibung

Gerät

Der konfigurierte 6-Achsen-Arm zur Verwendung.

X

Die Strecke, die entlang der x-Achse zurückgelegt werden muss.

y

Die Strecke, die entlang der y-Achse zurückgelegt werden muss.

z

Die Strecke, die entlang der z-Achse zurückgelegt werden muss.

Einheit

Die Einheit für die x-, y- und z-Abstände ist mm (Millimeter) oder Zoll.

Beispiel

Beim Start wird geprüft, ob der 6-Achsen-Arm seine Position inkrementieren kann.#
wenn gestartet
[Check if Arm1 can increment from its current position.]
wenn <nicht <[Arm1 v] Position um x:[0] y:[500] z:[0] [mm v] erhöhen?>> dann
drucke [The 6-Axis Arm can't move that distance.] auf Bildschirm ▶
Ende

Armbewegungs-Endeffektor?#

Der boolesche Block Armbewegungs-Endeffektor? gibt zurück, ob sich der Endeffektor in eine bestimmte Ausrichtung drehen kann.

Mit diesem Block können Sie überprüfen, ob ein Zielwert für Nick-, Roll- oder Gierwinkel innerhalb des zulässigen Bereichs liegt, bevor Sie den Endeffektor drehen.

Armbewegungs-Endeffektor? Boolescher Block#
<[Arm1 v] Endeffektor zu [Nick v] [0] Grad bewegbar?>

Parameter

Beschreibung

Gerät

Der konfigurierte 6-Achsen-Arm zur Verwendung.

Orientierung

Die Achsen, um die der Endeffektor gedreht wird:

  • Neigung
  • Rollen
  • Gieren

Abschlüsse

Der Zielorientierungswinkel in Grad.

Beispiel

Beim Start wird geprüft, ob sich der Endeffektor in eine bestimmte Ausrichtung drehen kann.#
wenn gestartet
[Check if Arm1 can roll its end effector to an orientation.]
wenn <[Arm1 v] Endeffektor zu [Roll v] [40] Grad bewegbar?> dann
drucke [The end effector can roll to that orientation.] auf Bildschirm ▶
Ende

Ausrichtung der Arminkrementierung?#

Der boolesche Block Arm-Inkrementorientierung? gibt zurück, ob der Endeffektor um eine bestimmte Anzahl von Grad von seiner aktuellen Orientierung aus gedreht werden kann.

Verwenden Sie diesen Block, um eine schrittweise Nick-, Roll- oder Gierbewegung zu überprüfen, bevor Sie den Endeffektor drehen.

Arminkrementorientierung? Boolescher Block#
<[Arm1 v] Ausrichtung um [Nick v] [0] Grad erhöhbar?>

Parameter

Beschreibung

Gerät

Der konfigurierte 6-Achsen-Arm zur Verwendung.

Orientierung

Die Achsen, um die der Endeffektor gedreht wird:

  • Neigung
  • Rollen
  • Gieren

Abschlüsse

Die Gradzahl, um die der Endeffektor gedreht werden soll.

Beispiel

Beim Start wird geprüft, ob der Endeffektor den Gierwinkel um 20 Grad erhöhen kann.#
wenn gestartet
[Check if Arm1 can increment yaw.]
wenn <[Arm1 v] Ausrichtung um [Gier v] [20] Grad erhöhbar?> dann
drucke [The end effector can increment yaw by 20 degrees.] auf Bildschirm ▶
Ende

Der Arm hat seine Bewegung beendet?#

Der Arm ist mit der Bewegung fertig? Boolesche Block gibt zurück, ob der 6-Achsen-Arm seine Bewegung beendet hat.

Dieser Block ist nützlich, nachdem ein Bewegungsblock erweitert wurde zu und warte nicht.

Der Arm hat seine Bewegung beendet? Boolescher Block#
<[Arm1 v] fertig mit Bewegen?>

Parameter

Beschreibung

Gerät

Der konfigurierte 6-Achsen-Arm zur Verwendung.

Beispiel

Beim Start wird die aktuelle y-Position ausgegeben, während sich der 6-Achsen-Arm bewegt.#
wenn gestartet
[Display the current y-position while Arm1 moves.]
bewege [Arm1 v] zu Position x:(-100) y:(200) z:(100) [mm v] ◀ und nicht warten
wiederhole bis <[Arm1 v] fertig mit Bewegen?>
drucke ([Arm1 v] Position [y v] in [mm v]) auf Bildschirm ◀ und Cursor in nächste Zeile
warte [0.25] Sekunden
Ende

Arm abgestürzt?#

Der Arm ist abgestürzt? Boolesche Block gibt zurück, ob der 6-Achsen-Arm während der Bewegung abgestürzt ist.

Wird ein Aufprall erkannt, stoppt der 6-Achs-Arm die Motorbewegung und kann schlaff wirken. Dies reduziert die Belastung und schützt die Motoren vor versehentlichen Beschädigungen.

ARM ist abgestürzt? Boolescher Block#
<[Arm1 v] abgestürzt?>

Parameter

Beschreibung

Gerät

Der konfigurierte 6-Achsen-Arm zur Verwendung.

Beispiel

Beim Start wird geprüft, ob es während der Bewegung von Arm1 zu einem Absturz kommt.#
wenn gestartet
[Quickly move to the specified location.]
[Arm1 v] Geschwindigkeit auf [100] % setzen
bewege [Arm1 v] zu Position x:[-20] y:[240] z:[40] [mm v] ◀ und nicht warten
[While moving, check for a crash.]
für immer
wenn <[Arm1 v] abgestürzt?> dann
[Indicate a crash with the Signal Tower and Brain screen.]
drucke [Crash Detected] auf Bildschirm ▶
setze [SignalTower2 v] auf [grün v] und [aus v]
setze [SignalTower2 v] auf [rot v] und [durchgehend v]
Abbruch
Ende
Ende

Armposition#

Der Armpositions-Reporterblock gibt die aktuelle Position des 6-Achsen-Arms entlang einer ausgewählten Achse zurück.

Mit diesem Block können Sie ablesen, wo sich der Endeffektor aktuell entlang der x-, y- oder z-Achse befindet.

Armposition Reporterblock#
([Arm1 v] Position [x v] in [mm v])

Parameter

Beschreibung

Gerät

Der konfigurierte 6-Achsen-Arm zur Verwendung.

Achse

Die anzugebenden Positionsachsen:

  • x
  • y
  • z

Einheit

Die Einheit für den Positionswert: mm (Millimeter) oder Zoll.

Beispiel

Beim Start wird die aktuelle y-Position ausgegeben, während sich der 6-Achsen-Arm bewegt.#
wenn gestartet
[Display the current y-position while Arm1 moves.]
bewege [Arm1 v] zu Position x:(-100) y:(200) z:(100) [mm v] ◀ und nicht warten
wiederhole bis <[Arm1 v] fertig mit Bewegen?>
drucke ([Arm1 v] Position [y v] in [mm v]) auf Bildschirm ◀ und Cursor in nächste Zeile
warte [0.25] Sekunden
Ende

Armausrichtung#

Der Armorientierungs-Reporterblock gibt die aktuelle Orientierung des Endeffektors um eine ausgewählte Achse in Grad zurück.

Mit diesem Block können Sie die aktuelle Nick-, Roll- oder Gierachse des Endeffektors auslesen.

Armorientierungs-Reporterblock#
([Arm1 v] Ausrichtung [Nick v] in Grad)

Parameter

Beschreibung

Gerät

Der konfigurierte 6-Achsen-Arm zur Verwendung.

Orientierung

Die zu meldenden Orientierungsachsen:

  • Neigung
  • Rollen
  • Gieren

Beispiel

Beim Start wird der aktuelle Gierwinkel während der Bewegung des 6-Achsen-Arms ausgegeben.#
wenn gestartet
[Display the current yaw after rotating the end effector.]
bewege [Arm1 v] zu Ausrichtung [Gier v] [90] Grad ◀ und nicht warten
wiederhole bis <[Arm1 v] fertig mit Bewegen?>
drucke ([Arm1 v] Ausrichtung [Gier v] in Grad) auf Bildschirm ◀ und Cursor in nächste Zeile
warte [0.25] Sekunden
Ende

als die Armsteuerung aufhörte#

Der wenn die Armsteuerung gestoppt ist Hutblock führt den angeschlossenen Stapel aus, wenn der Steuerungsstopp des 6-Achsen-Arms aktiviert wurde.

als die Armsteuerung aufhörte, Hutblock#
wenn [Arm1 v] Steuerung gestoppt  :: hat events

Parameter

Beschreibung

Gerät

Der konfigurierte 6-Achsen-Arm zur Verwendung.

als der Arm abstürzte#

Der wenn der Arm abstürzt Hutblock führt den angeschlossenen Stapel aus, wenn der 6-Achsen-Arm während der Bewegung abstürzt.

Wird ein Aufprall erkannt, stoppt der 6-Achs-Arm die Motorbewegung und kann schlaff wirken. Dies reduziert die Belastung und schützt die Motoren vor versehentlichen Beschädigungen.

als der Arm gegen den Hutblock prallte#
when [Arm1 v] crashed  :: hat events

Parameter

Beschreibung

Gerät

Der konfigurierte 6-Achsen-Arm zur Verwendung.

Beispiel

Wenn Arm1 abstürzt, färbt sich der Signalturm rot.#
when [Arm1 v] crashed  :: hat events
[Indicate a crash with the Signal Tower and Brain screen.]
drucke [Crash Detected] auf Bildschirm ▶
setze [SignalTower2 v] auf [rot v] und [durchgehend v]