Fabrication industrielle
Internet des objets industriel | Matériaux industriels | Entretien et réparation d'équipement | Programmation industrielle |
home  MfgRobots >> Fabrication industrielle >  >> Manufacturing Equipment >> Robot industriel

Robot Euler Angles :l'introduction essentielle

Il est difficile de comprendre les rotations des robots, n'est-ce pas ? Les angles d'Euler sont une douleur dans le cou. Voici l'amorce essentielle pour enlever la douleur.

Orientations ! Ils me donnent juste envie de m'arracher les cheveux. Si vous avez déjà dû programmer la pose finale d'un robot à l'aide de coordonnées et de rotations, vous saurez de quoi je parle.

À première vue, définir la pose de l'effecteur final de votre robot semble simple, n'est-ce pas ?

Vous dites simplement "Je veux déplacer l'outil du robot vers ceci emplacement et je veux qu'il pointe vers ceci sens."

Intuitivement, vous savez exactement quelle orientation vous voulez que l'outil ait. Cependant, lorsqu'il s'agit de décrire l'orientation à l'aide de chiffres précis, cette simple tâche devient soudainement un gâchis de confusion.

Pourquoi les orientations du robot sont difficiles à comprendre

Il est facile de décrire les coordonnées X, Y, Z (de translation) de l'outil d'un robot.

Pour décrire une traduction, il vous suffit d'entrer les coordonnées — par ex. Point[X, Y, Z] =[100, 1000, 1500] mm - et il n'y a qu'un seul emplacement auquel cela pourrait se référer, en supposant que vous utilisez la même référence de base. Cela ne peut signifier que 100 mm le long de l'axe X, 1 mètre le long de l'axe Y et 1,5 mètre le long de l'axe Z.

Mais, comment décrivez-vous l'orientation de l'outil ?

Vous pourriez dire :
Rotation[XYZ] =[5, 45, 15]°
cependant, vous pourriez également dire (arrondir les chiffres)
Rot[XY'Z”] =[-7.9, 44.7, 16.2]°
ou
Rot[ZY'Z”] =[7.9, 45.2, 5.0]°
ou pair
Quaternion[q1-q4] =[0.9, -0.1, 0.4, 0.1]

 Tous ces éléments se réfèrent exactement à la même orientation !
Ce qui le rend encore plus hallucinant, c'est que différents fabricants de robots utilisent des conventions différentes. Tout cela peut devenir un peu un casse-tête, même si vous êtes familier avec la géométrie 3D.

Le problème :nous ne pensons tout simplement pas aux rotations

Le vrai problème est que nous ne pensons tout simplement pas naturellement en termes de rotations.

Nous comprenons intuitivement les coordonnées de traduction parce que nous les utilisons dans notre vie de tous les jours (par exemple, "C'est sur la deuxième étagère en bas, quatre livres à partir de la gauche." ). Cependant, lorsque nous devons décrire une orientation, nous avons recours à pointer du doigt et à dire « C'est dans cette direction ».

Malheureusement, les robots ont besoin d'informations plus précises qu'un vague « c'est là-bas ».

Ce dont nous avons besoin, c'est d'une solide compréhension des angles d'Euler.

Que sont les angles d'Euler ?

Revenons un peu en arrière et commençons par les bases.

La méthode la plus courante pour décrire les orientations du robot sont les angles d'Euler. Les angles d'Euler se composent de trois nombres qui décrivent chacun une rotation autour d'un axe. Il existe différentes conventions d'angle d'Euler en fonction de l'ordre des rotations.

Tout d'abord, simplifions cela en un exemple à un axe.

Imaginez une boussole.

Souvent, l'axe Z du monde fait référence à l'axe qui s'étend du ciel au sol. Ainsi, vous pouvez penser que l'aiguille d'une boussole est une rotation autour de l'axe Z (nommée Rot[Z]). Lorsque vous tenez la boussole à plat devant vous et que la flèche pointe vers 135°, cela signifie que le nord est au-dessus de votre épaule gauche, vous êtes donc actuellement face au sud-est. Peu importe où vous placez la boussole (sur le sol, sur votre tête, etc.) si elle a la même orientation, l'angle sera toujours de 135°.

Jusqu'à présent, c'est si simple.

Notre boussole n'a qu'une seule valeur de rotation (c'est-à-dire Rot[Z]) mais pour décrire toute orientation 3D, nous avons besoin de trois valeurs. C'est là que ça commence à devenir un peu plus compliqué.

D'autres méthodes pour décrire les orientations du robot sont les quaternions ou les poses (matrices 4 × 4).

Allons-y

A partir de maintenant, il vous sera utile d'avoir une aide visuelle interactive.

Je vous suggère de télécharger une copie gratuite de RoboDK sur ce lien, ce qui permet de visualiser très facilement les cadres de référence et de voir les coordonnées résultantes.

Lancez RoboDK et créez un cadre de référence à l'aide du bouton "Ajouter un cadre de référence" ou en sélectionnant l'option dans le menu Programme. Vous devriez voir un cadre rouge, vert et bleu apparaître au milieu de l'écran.

Vous pouvez faire pivoter le cadre comme ceci :maintenez la touche Alt enfoncée, puis cliquez et faites glisser l'une des flèches courbes qui apparaissent.

Comment piloter un avion

Prenons l'analogie d'un avion, comme décrit très clairement sur robot-forum.

Imaginez que le cadre de référence est un plan. La pointe de la flèche droite rouge (l'axe X) est la pointe de son cône de nez et la flèche droite verte (l'axe Y) est son aile gauche.

Dans ce cas, le déplacement des flèches courbes remplit les fonctions suivantes :

Si le pilote voulait que l'avion tourne à gauche et vers le bas, progressivement, l'avion ne se contenterait pas de tourner sur l'axe Z - ce n'est pas comme ça que les avions fonctionnent.

Au lieu de cela, l'avion :

  1. Inclinez son nez vers le bas :Rot[Y]
  2. Rouler l'avion vers la gauche :-Rot[X]
  3. Lacet vers la gauche :Rot[Z]

Tout ce mouvement serait représenté par Rot[XYZ]. Essayez de déplacer un peu le cadre vous-même dans RoboDK jusqu'à ce que vous soyez à l'aise avec ces concepts.

Ensuite, double-cliquez sur le nom du cadre en haut à gauche de la fenêtre principale pour afficher le panneau "Détails du cadre".

Une orientation, plusieurs rotations possibles

À l'aide de RoboDK, essayez les tâches suivantes.

Avant chaque tâche, réinitialisez le cadre en ouvrant l'icône de menu "hamburger" (trois lignes horizontales) dans le panneau Détails du cadre et en sélectionnant "Réinitialiser (définir l'identité)".

  1. Sélectionnez le menu déroulant en haut des coordonnées et choisissez la rotation Stäubli (X->Y'->Z") au lieu de Générique.
  2. Faites pivoter le cadre de manière à ce que le bleu (Z) pointe vers le bas et le rouge (X) pointe vers l'arrière (c'est-à-dire qu'ils sont tous deux inversés par rapport à leur position de départ et que le vert (Y) est identique à sa position de départ), mais ne faites que donc en tournant autour de l'axe Y.
  3. Réinitialisez le cadre, puis déplacez-le à nouveau dans la même rotation. Cependant, cette fois, n'utilisez qu'une rotation Z, puis une rotation X.
  4. Réinitialisez le cadre, puis déplacez-le à nouveau dans la même rotation. Cependant, cette fois, n'utilisez qu'une rotation X, puis une rotation Z.

Comme vous pouvez le voir, il peut y avoir plus d'une façon d'obtenir la même orientation.

La première méthode pourrait être appelée Rot[Y], car elle n'inclut qu'une rotation autour de l'axe Y. La deuxième méthode, nous pourrions l'appeler Rot[Z, X'], car elle comprend une rotation autour de l'axe Z et une rotation autour du nouvel axe X. Le troisième, nous l'appellerions Rot[X, Z']. Le symbole premier signifie que la rotation se produit par rapport au dernier mouvement au lieu des axes statiques.

C'est le concept fondamental derrière les angles d'Euler. Vous pouvez faire pivoter un cadre dans la même orientation de plusieurs manières en modifiant la séquence des axes et des rotations.

Différents fabricants de robots ont choisi différentes combinaisons de rotations. Par exemple, Stäubli utilise une convention XY'Z", Adept utilise une convention ZY'Z", KUKA utilise une convention ZY'X" et Fanuc &Motoman utilisent la convention XYZ. D'autre part, ABB utilise Quaternion et Universal Robots utilise un vecteur d'orientation. Mais toutes les conventions peuvent être utilisées pour représenter n'importe quelle orientation dans l'espace.

Vous trouverez plus d'informations dans la documentation de RoboDK.

Testez différentes conventions de robot

J'espère que cela commence à avoir un sens. Cependant, ce n'est que le début. Pour vraiment maîtriser les conventions d'angles d'Euler dans RoboDK, je trouve utile de jouer avec le logiciel suivant ce guide.

Vous pouvez voir l'effet de vos rotations en chiffres dans les cases bleu clair, violet et jaune du panneau "Détails du cadre".

Par défaut, la convention XYZ générique est choisie pour les nouveaux cadres de référence. Essayez de sélectionner différents fabricants de robots dans le menu déroulant au-dessus des cases colorées. Essayez d'entrer des valeurs numériques dans les cases pour voir leurs effets sur le cadre de référence.

Pour un tutoriel approfondi sur les angles d'Euler, je peux également recommander cette page sur Mecademic.


Robot industriel

  1. Quelle est la réalité de la vision robotique ?
  2. Qu'est-ce qu'un robot à programmation automatique ?
  3. Archimedes :The AI ​​Robot Owl
  4. L'importance d'une bonne formation des opérateurs de robot
  5. L'histoire de la robotique dans la fabrication
  6. Le moyen simple d'obtenir un soudage robotisé sans faille
  7. La bonne façon de simuler un robot convoyeur
  8. L'avantage de l'automatisation robotisée dans l'industrie du papier
  9. Calcul des angles d'Euler sur un robot 6 axes