Bras#
Introduction#
Le bras robotique à 6 axes est un manipulateur robotisé utilisé dans la cellule de travail CTE. Dans VEXcode EXP, les blocs de bras permettent à un contrôleur EXP de déplacer le bras à 6 axes, de faire pivoter son effecteur terminal, de vérifier la faisabilité des mouvements et de contrôler les outils qui y sont attachés, tels que l’outil de ramassage magnétique ou le porte-stylo.
Cette page concerne les projets CTE Workcell où le bras à 6 axes est connecté à un module EXP Brain. Si vous utilisez le bras à 6 axes seul avec le module CTE Tile, veuillez consulter la page API du bras CTE.
Vous trouverez ci-dessous la liste des blocs disponibles :
Actions — Déplacer le bras à 6 axes vers des positions ou des orientations.
déplacer le bras en position — Déplace le bras à 6 axes vers une coordonnée x, y et z spécifiée.
incrémenter la position du bras — Déplace le bras à 6 axes d’une distance par rapport à sa position actuelle.
déplacer le bras vers l’orientation — Fait pivoter l’effecteur terminal vers une orientation spécifiée.
incrémenter l’orientation du bras — Fait pivoter l’effecteur terminal d’un nombre de degrés spécifié.
Paramètres — Configurez les paramètres de mouvement, d’outils et de contrôle.
régler la vitesse du bras — Définit la vitesse de déplacement du bras à 6 axes.
set arm end effector — Sélectionne l’outil attaché au bras à 6 axes.
set arm magnet mode — Enclenche ou désenclenche l’outil de ramassage magnétique.
set arm pen offset — Définit le décalage vertical de l’outil porte-stylo.
set arm to control stopped — Arrête le bras à 6 axes et empêche tout mouvement ultérieur du bras.
Valeurs — Vérifiez si un mouvement peut être exécuté, si un mouvement est terminé, si un plantage s’est produit, lisez la position ou l’orientation actuelle, ou exécutez des blocs lorsque des événements Arm se produisent.
arm move to position? — Renvoie si le bras à 6 axes peut se déplacer vers une position spécifiée.
position d’incrément du bras ? — Renvoie si le bras à 6 axes peut se déplacer d’une distance spécifiée.
arm move end effector? — Renvoie si l’effecteur terminal peut pivoter vers une orientation spécifiée.
orientation d’incrément du bras ? — Renvoie si l’effecteur terminal peut pivoter d’un nombre de degrés spécifié.
le bras a-t-il fini de bouger ? — Renvoie si le bras à 6 axes a fini de bouger.
bras est-il en panne ? — Renvoie si le bras à 6 axes s’est écrasé pendant son déplacement.
position du bras — Renvoie la position actuelle du bras à 6 axes le long d’un axe sélectionné.
orientation du bras — Renvoie l’orientation actuelle de l’effecteur terminal le long d’un axe sélectionné.
lorsque le contrôle de l’armement est arrêté — Exécute la pile attachée lorsque l’arrêt du contrôle est activé.
quand arm plante — Exécute la pile attachée lorsqu’un plantage est détecté.
Actes#
déplacer le bras en position#
Le bloc déplacer le bras vers la position déplace le bras à 6 axes vers une coordonnée x, y et z spécifiée.
Les coordonnées x, y et z décrivent la position de l’effecteur terminal dans l’espace tridimensionnel. Utilisez arm move to position? avant ce bloc si la position cible peut se trouver en dehors de l’espace de travail accessible du bras à 6 axes.
déplacer [Arm1 v] en position x :[120] y :[0] z :[100] [mm v] ▶
Paramètre |
Description |
|---|---|
appareil |
Le bras à 6 axes configuré à utiliser. |
x |
La coordonnée x de la position cible. |
y |
La coordonnée y de la position cible. |
z |
La coordonnée z de la position cible. |
unité |
L’unité utilisée pour les coordonnées x, y et z : mm (millimètres) ou pouces. |
flèche extensible |
Par défaut, le bras à 6 axes termine son déplacement avant le passage au bloc suivant. Développez le bloc sans attendre pour lancer le mouvement et passez immédiatement au bloc suivant. |
Exemple
au démarrage
[Move Arm1 to a standard position at the start of the project.]
déplacer [Arm1 v] en position x :(120) y :(120) z :(75) [mm v] ▶
position du bras d’incrément#
Le bloc incrémenter la position du bras déplace le bras à 6 axes d’une distance spécifiée par rapport à sa position actuelle le long des axes x, y et z.
Utilisez ce bloc pour vous déplacer par rapport à la position actuelle de l’effecteur. Utilisez position d’incrément du bras ? avant ce bloc si le déplacement risque de placer le bras à 6 axes hors de son espace de travail accessible.
incrémenter la position du [Arm1 v] de x :[0] y :[0] z :[0] [mm v] ▶
Paramètre |
Description |
|---|---|
appareil |
Le bras à 6 axes configuré à utiliser. |
x |
La distance à parcourir le long de l’axe des x. |
y |
La distance à parcourir le long de l’axe y. |
z |
La distance à parcourir le long de l’axe z. |
unité |
L’unité utilisée pour les distances x, y et z : mm (millimètres) ou pouces. |
flèche extensible |
Par défaut, le bras à 6 axes termine son déplacement avant le passage au bloc suivant. Développez le bloc sans attendre pour lancer le mouvement et passez immédiatement au bloc suivant. |
Exemple
au démarrage
[Move Arm1 100 millimeters along the x-axis.]
incrémenter la position du [Arm1 v] de x :[100] y :[0] z :[0] [mm v] ▶
déplacer le bras pour l’orienter#
Le bloc de pile déplacer le bras vers l’orientation fait pivoter l’effecteur terminal vers une orientation spécifiée.
L’orientation décrit la rotation de l’effecteur terminal. Le tangage incline l’effecteur terminal vers le haut ou vers le bas, le roulis le fait pivoter latéralement et le lacet le fait pivoter à gauche ou à droite.
déplacer [Arm1 v] en [tangage v] de [0] degrés ▶
Paramètre |
Description |
|---|---|
appareil |
Le bras à 6 axes configuré à utiliser. |
orientation |
Axe de rotation de l’effecteur terminal :
|
diplômes |
L’angle d’orientation de la cible, en degrés. |
flèche extensible |
Par défaut, le bras à 6 axes termine son déplacement avant le passage au bloc suivant. Développez le bloc sans attendre pour lancer le mouvement et passez immédiatement au bloc suivant. |
Exemple
au démarrage
[Rotate the end effector to 270 degrees of yaw.]
déplacer [Arm1 v] en [lacet v] de [270] degrés ▶
incrémenter l’orientation du bras#
Le bloc de pile orientation du bras d’incrémentation fait pivoter l’effecteur terminal d’un nombre de degrés spécifié par rapport à son orientation actuelle.
Utilisez ce bloc pour effectuer une rotation par rapport au tangage, au roulis ou au lacet actuel de l’effecteur terminal.
incrémenter l'orientation du [Arm1 v] en [tangage v] de [0] degrés ▶
Paramètre |
Description |
|---|---|
appareil |
Le bras à 6 axes configuré à utiliser. |
orientation |
Axe de rotation de l’effecteur terminal :
|
diplômes |
Le nombre de degrés de rotation de l’effecteur terminal. |
flèche extensible |
Par défaut, le bras à 6 axes termine son déplacement avant le passage au bloc suivant. Développez le bloc sans attendre pour lancer le mouvement et passez immédiatement au bloc suivant. |
Exemple
au démarrage
[Rotate the end effector 40 degrees in pitch.]
incrémenter l'orientation du [Arm1 v] en [tangage v] de [40] degrés ▶
Paramètres#
vitesse du bras réglée#
Le bloc régler la vitesse du bras permet de définir la vitesse de déplacement du bras à 6 axes.
La vitesse du bras à 6 axes est réglée à 50 % au début d’un projet.
définir la vitesse du [Arm1 v] à [50] %
Paramètre |
Description |
|---|---|
appareil |
Le bras à 6 axes configuré à utiliser. |
pour cent |
La vitesse de déplacement du bras à 6 axes, de 1 à 100 pour cent. |
Exemple
au démarrage
[Set Arm1's speed to 30%.]
définir la vitesse du [Arm1 v] à [30] %
déplacer [Arm1 v] en position x :[120] y :[120] z :[70] [mm v] ▶
effecteur terminal du bras de réglage#
Le bloc d’empilement set arm end effector sélectionne l’outil fixé au bras à 6 axes.
Lors du changement d’effecteur, le bras à 6 axes ajuste automatiquement son décalage Z en fonction de l’outil sélectionné. L’effecteur est configuré par défaut sur l’outil de préhension magnétique au début d’un projet.
définir l'Outil terminal du [Arm1 v] sur [aimant v]
Paramètre |
Description |
|---|---|
appareil |
Le bras à 6 axes configuré à utiliser. |
effecteur terminal |
L’outil fixé au bras à 6 axes : aimant (outil de ramassage magnétique) ou stylo (outil porte-stylo). |
Exemple
au démarrage
[Set Arm1 to use the Pen Holder Tool.]
définir l'Outil terminal du [Arm1 v] sur [stylo v]
mode aimant du bras réglé#
Le bloc d’empilage mode aimant de bras de réglage engage ou libère l’outil de ramassage magnétique.
Le mode magnétique reste actif jusqu’à ce qu’un autre bloc set arm magnet mode le modifie. Le mode magnétique est réinitialisé à released au début d’un projet.
définir l'aimant du [Arm1 v] sur [activé v]
Paramètre |
Description |
|---|---|
appareil |
Le bras à 6 axes configuré à utiliser. |
mode |
L’outil de ramassage magnétique peut être en position activée pour ramasser des objets ou relâchée pour déposer l’objet tenu et ne plus ramasser de nouveaux objets. |
Exemple
au démarrage
[Pick up objects, then drop them after 2 seconds.]
définir l'aimant du [Arm1 v] sur [activé v]
attendre [2] secondes
définir l'aimant du [Arm1 v] sur [relâché v]
Décalage du bras de réglage du stylo#
Le bloc d’empilement set arm pen offset définit le décalage vertical de l’outil porte-stylo.
Avant d’utiliser ce bloc, sélectionnez stylo comme effecteur. Si l’outil Porte-stylo n’est pas sélectionné, ce bloc est inactif.
Le décalage du stylo correspond à la distance entre le haut du porte-stylo et la pointe du marqueur effaçable à sec. Au début d’un projet, ce décalage est initialisé à 0. Une valeur de 0 place l’origine de l’axe Z du bras au point de connexion du porte-stylo au bras à 6 axes.
définir le décalage du Stylo du [Arm1 v] sur [0] [mm v]
Paramètre |
Description |
|---|---|
appareil |
Le bras à 6 axes configuré à utiliser. |
compenser |
La valeur de décalage du stylo. |
unité |
L’unité utilisée pour le décalage du stylo : mm (millimètres) ou pouces. |
Exemple
au démarrage
[Set the end effector to the Pen Holder Tool and set the pen offset to 1 inch.]
définir l'Outil terminal du [Arm1 v] sur [stylo v]
définir le décalage du Stylo du [Arm1 v] sur [1] [pouces v]
déplacer [Arm1 v] en position x :[120] y :[120] z :[0] [mm v] ▶
Le bras réglé sur la commande s’est arrêté.#
Le bloc d’empilement set arm to control stopped arrête immédiatement le bras à 6 axes et empêche tout autre bloc de bras de fonctionner.
Une fois ce bloc exécuté, le bras à 6 axes ne peut être réactivé qu’après le redémarrage du projet.
arrêter le contrôle du [Arm1 v]
Paramètre |
Description |
|---|---|
appareil |
Le bras à 6 axes configuré à utiliser. |
Exemple
au démarrage
[Control stop after a movement.]
déplacer [Arm1 v] en position x :[120] y :[120] z :[70] [mm v] ▶
arrêter le contrôle du [Arm1 v]
Valeurs#
Le bras se met-il en position ?#
Le bloc booléen déplacement du bras vers la position ? indique si le bras à 6 axes peut se déplacer vers une coordonnée x, y et z spécifiée.
Ce bloc vérifie la position cible avant le déplacement du bras à 6 axes. Il permet d’éviter que le projet ne tente de déplacer le bras hors de sa zone de travail accessible.
<[Arm1 v] est passé en position x :[0] y :[0] z :[0] [mm v] ?>
Paramètre |
Description |
|---|---|
appareil |
Le bras à 6 axes configuré à utiliser. |
x |
La coordonnée x de la position cible. |
y |
La coordonnée y de la position cible. |
z |
La coordonnée z de la position cible. |
unité |
L’unité utilisée pour les coordonnées x, y et z : mm (millimètres) ou pouces. |
Exemple
au démarrage
[Check if Arm1 can move to a position.]
si <pas <[Arm1 v] est passé en position x :[0] y :[0] z :[0] [mm v] ?>> alors
afficher [The 6-Axis Arm can't move to this position.] sur l'écran ▶
fin
position d’incrémentation du bras ?#
Le bloc booléen position d’incrémentation du bras ? indique si le bras à 6 axes peut se déplacer de la distance spécifiée à partir de sa position actuelle.
Ce bloc vérifie un mouvement incrémental avant que le bras à 6 axes ne se déplace.
<[Arm1 v] a incrémenté sa position de x :[0] y :[0] z :[0] [mm v] ?>
Paramètre |
Description |
|---|---|
appareil |
Le bras à 6 axes configuré à utiliser. |
x |
La distance à parcourir le long de l’axe des x. |
y |
La distance à parcourir le long de l’axe y. |
z |
La distance à parcourir le long de l’axe z. |
unité |
L’unité utilisée pour les distances x, y et z : mm (millimètres) ou pouces. |
Exemple
au démarrage
[Check if Arm1 can increment from its current position.]
si <pas <[Arm1 v] a incrémenté sa position de x :[0] y :[500] z :[0] [mm v] ?>> alors
afficher [The 6-Axis Arm can't move that distance.] sur l'écran ▶
fin
bras déplaçant l’effecteur terminal ?#
Le bloc booléen bras déplacer effecteur terminal ? indique si l’effecteur terminal peut pivoter vers une orientation spécifiée.
Utilisez ce bloc pour vérifier si une valeur cible de tangage, de roulis ou de lacet se situe dans la plage autorisée avant de faire pivoter l’effecteur terminal.
<déplacer l'Outil terminal du [Arm1 v] en [tangage v] de [0] degrés ?>
Paramètre |
Description |
|---|---|
appareil |
Le bras à 6 axes configuré à utiliser. |
orientation |
Axe de rotation de l’effecteur terminal :
|
diplômes |
L’angle d’orientation de la cible, en degrés. |
Exemple
au démarrage
[Check if Arm1 can roll its end effector to an orientation.]
si <déplacer l'Outil terminal du [Arm1 v] en [roulis v] de [40] degrés ?> alors
afficher [The end effector can roll to that orientation.] sur l'écran ▶
fin
Orientation de l’incrément du bras ?#
Le bloc booléen orientation d’incrément du bras ? indique si l’effecteur terminal peut pivoter d’un nombre de degrés spécifié par rapport à son orientation actuelle.
Utilisez ce bloc pour vérifier un mouvement incrémental de tangage, de roulis ou de lacet avant de faire pivoter l’effecteur terminal.
<incrémenter l'orientation du [Arm1 v] en [tangage v] de [0] degrés ?>
Paramètre |
Description |
|---|---|
appareil |
Le bras à 6 axes configuré à utiliser. |
orientation |
Axe de rotation de l’effecteur terminal :
|
diplômes |
Le nombre de degrés de rotation de l’effecteur terminal. |
Exemple
au démarrage
[Check if Arm1 can increment yaw.]
si <incrémenter l'orientation du [Arm1 v] en [lacet v] de [20] degrés ?> alors
afficher [The end effector can increment yaw by 20 degrees.] sur l'écran ▶
fin
Le bras a fini de bouger ?#
Le bloc booléen le bras a-t-il fini de bouger ? renvoie si le bras à 6 axes a terminé son mouvement.
Ce bloc est utile une fois qu’un bloc de mouvement a été étendu à et n’attendez pas.
<[Arm1 v] a-t-il terminé son mouvement ?>
Paramètre |
Description |
|---|---|
appareil |
Le bras à 6 axes configuré à utiliser. |
Exemple
au démarrage
[Display the current y-position while Arm1 moves.]
déplacer [Arm1 v] en position x :(-100) y :(200) z :(100) [mm v] ◀ et ne pas attendre
répéter jusqu'à <[Arm1 v] a-t-il terminé son mouvement ?>
afficher (position de [Arm1 v] selon l'axe [y v] en [mm v]) sur l'écran ◀ et placer le curseur sur la ligne suivante
attendre [0.25] secondes
fin
Le bras est cassé ?#
Le bloc booléen bras cassé ? indique si le bras à 6 axes a heurté un obstacle pendant son déplacement.
En cas de collision, le bras à 6 axes arrête le mouvement du moteur et peut sembler inerte. Cela réduit les contraintes et contribue à protéger les moteurs contre les dommages accidentels.
<[Arm1 v] est bloqué ?>
Paramètre |
Description |
|---|---|
appareil |
Le bras à 6 axes configuré à utiliser. |
Exemple
au démarrage
[Quickly move to the specified location.]
définir la vitesse du [Arm1 v] à [100] %
déplacer [Arm1 v] en position x :[-20] y :[240] z :[40] [mm v] ◀ et ne pas attendre
[While moving, check for a crash.]
indéfiniment
si <[Arm1 v] est bloqué ?> alors
[Indicate a crash with the Signal Tower and Brain screen.]
afficher [Crash Detected] sur l'écran ▶
définir [SignalTower2 v] sur [vert v] et [éteint v]
définir [SignalTower2 v] sur [rouge v] et [fixe v]
sortir
fin
fin
position du bras#
Le bloc de rapport position du bras renvoie la position actuelle du bras à 6 axes le long d’un axe sélectionné.
Utilisez ce bloc pour lire où se trouve actuellement l’effecteur terminal le long des axes x, y ou z.
(position de [Arm1 v] selon l'axe [x v] en [mm v])
Paramètre |
Description |
|---|---|
appareil |
Le bras à 6 axes configuré à utiliser. |
axe |
Axe de position à indiquer :
|
unité |
L’unité utilisée pour la valeur de position : mm (millimètres) ou pouces. |
Exemple
au démarrage
[Display the current y-position while Arm1 moves.]
déplacer [Arm1 v] en position x :(-100) y :(200) z :(100) [mm v] ◀ et ne pas attendre
répéter jusqu'à <[Arm1 v] a-t-il terminé son mouvement ?>
afficher (position de [Arm1 v] selon l'axe [y v] en [mm v]) sur l'écran ◀ et placer le curseur sur la ligne suivante
attendre [0.25] secondes
fin
orientation du bras#
Le bloc de rapport orientation du bras renvoie l’orientation actuelle de l’effecteur terminal autour d’un axe sélectionné en degrés.
Utilisez ce bloc pour lire le tangage, le roulis ou le lacet actuel de l’effecteur terminal.
(orientation du [Arm1 v] en [tangage v] en degrés)
Paramètre |
Description |
|---|---|
appareil |
Le bras à 6 axes configuré à utiliser. |
orientation |
Axes d’orientation à indiquer :
|
Exemple
au démarrage
[Display the current yaw after rotating the end effector.]
déplacer [Arm1 v] en [lacet v] de [90] degrés ◀ et ne pas attendre
répéter jusqu'à <[Arm1 v] a-t-il terminé son mouvement ?>
afficher (orientation du [Arm1 v] en [lacet v] en degrés) sur l'écran ◀ et placer le curseur sur la ligne suivante
attendre [0.25] secondes
fin
lorsque la commande du bras s’est arrêtée#
Le bloc chapeau lorsque le contrôle du bras est arrêté exécute la pile attachée lorsque l’arrêt de contrôle du bras à 6 axes a été activé.
quand le contrôle du [Arm1 v] est arrêté :: hat events
Paramètre |
Description |
|---|---|
appareil |
Le bras à 6 axes configuré à utiliser. |
lorsque le bras s’est écrasé#
Le bloc de chapeau lorsque le bras s’est écrasé exécute la pile attachée lorsque le bras à 6 axes s’est écrasé pendant son déplacement.
En cas de collision, le bras à 6 axes arrête le mouvement du moteur et peut sembler inerte. Cela réduit les contraintes et contribue à protéger les moteurs contre les dommages accidentels.
when [Arm1 v] crashed :: hat events
Paramètre |
Description |
|---|---|
appareil |
Le bras à 6 axes configuré à utiliser. |
Exemple
when [Arm1 v] crashed :: hat events
[Indicate a crash with the Signal Tower and Brain screen.]
afficher [Crash Detected] sur l'écran ▶
définir [SignalTower2 v] sur [rouge v] et [fixe v]