Quel est l’espace de travail d’un bras robotique industriel à six axes typique ?

Share

Par Ilian Bonev, Ph.D., Eng.

 

 

Si vous avez l’intention d’utiliser un bras robotique à six axes, tel que le Meca500 de Mecademic utilisé dans ce tutoriel à titre d’exemple, vous serez très probablement intéressé par le positionnement et l’orientation de l’outil du robot (effecteur final) à différents endroits (poses). Par conséquent, vous voudrez certainement connaître l’ensemble des emplacements que vous pouvez atteindre avec un effecteur final spécifique monté sur un bras robotique à six axes spécifique. Vous demanderez probablement une sorte de diagramme montrant la « zone de travail », le « volume de travail », l' »enveloppe de travail » ou la « plage de travail » du robot. Malheureusement, on vous présentera souvent un diagramme simpliste comme celui illustré ci-dessous ou, pire encore, la soi-disant portée du robot.

This is not the workspace of the Meca500 robot
This is not the workspace of the Meca500 robot

En robotique, le terme approprié pour ce que vous recherchez est l’espace de travail du robot. La portée n’est rien d’autre que la distance maximale entre le centre du poignet du robot (le point d’intersection des axes des trois dernières articulations du robot) et l’axe de l’articulation 1. La zone grise de la figure ci-dessus est la zone atteignable par le centre du poignet, pour une rotation donnée de l’articulation 1. Cette zone, ou même le volume balayé par la rotation de cette zone autour de l’axe de l’articulation 1, n’est PAS l’espace de travail du robot. Il n’y a absolument aucune garantie que vous puissiez atteindre une position dans ce volume avec l’outil d’un effecteur particulier, et encore moins que vous puissiez atteindre cette position avec n’importe quelle orientation. En fait, si vous montez un effecteur relativement long, vous ne pourrez atteindre aucune position de ce volume avec la pointe de votre outil.

L’espace de travail d’un robot à six axes est l’ensemble de toutes les poses (positions et orientations) pouvant être atteintes par un effecteur particulier monté sur ce robot. Ainsi, (1) personne ne peut vous dire quel est l’espace de travail d’un bras robotique à six axes spécifique à moins que vous ne précisiez quel est l’effecteur que vous avez l’intention d’utiliser, et (2) cet espace de travail est une entité à six dimensions qu’il est généralement impossible de représenter graphiquement.

« L’espace de travail d’un robot à six axes est l’ensemble de toutes les positions pouvant être atteintes par un effecteur particulier monté sur ce robot. »

Bien sûr, il y a quelques exceptions dans le domaine de la robotique, lorsqu’il s’agit de représentation graphique. L’espace de travail d’un robot cartésien à six axes tel que celui présenté ci-dessous est trivial à décrire, mais seulement pour un choix spécifique d’infobulle. En effet, si le tooltip de l’effecteur terminal du robot coïncide avec le point d’intersection des axes des trois joints tournants, alors ce robot à six axes peut positionner son tooltip n’importe où à l’intérieur du cuboïde jaune, avec absolument n’importe quelle orientation de l’outil.

The workspace of a six-axis Cartesian robot is extremely easy to describe
The workspace of a six-axis Cartesian robot is extremely easy to describe

Hélas, la grande majorité des robots industriels à six axes ne sont pas cartésiens, pour diverses raisons pratiques. Par exemple, le robot cartésien ci-dessus a un espace de travail très réduit en termes de positionnement. Le bras robotique à six axes typique, souvent appelé bizarrement robot à articulation verticale, se compose de sept maillons (corps), reliés en série par six articulations tournantes actionnées. Le premier de ces corps est la base du robot, et le dernier est la bride du robot (également appelée interface mécanique). En outre, l’axe de la première articulation est vertical, les axes des articulations 2 et 3 sont horizontaux, l’axe de l’articulation 4 est normal à l’axe de l’articulation 3, et les axes des trois dernières articulations se croisent généralement en un point.

Alors que les bras de robots industriels sont généralement vendus sans aucun outil, un effecteur final (tel qu’une pince ou un palpeur) est éventuellement fixé à la bride du robot. L’utilisateur doit alors associer un référentiel d’outil, fixé à cet effecteur. Ce cadre de référence de l’outil est défini par rapport au cadre de référence de la bride. L’origine du référentiel outil est appelée TCP (tool center point). En définitive, vous devez donc vous intéresser à l’ensemble des poses par rapport au référentiel de base du robot, où le robot peut apporter un référentiel d’outil spécifique. L’espace de travail du robot est donc l’ensemble des poses pouvant être atteintes par le cadre de référence de l’outil du robot.

Dans un bras robotisé typique à six axes, tel que notre Meca500, quel que soit l’effecteur final, pour chaque position réalisable du TCP, la gamme d’orientations d’outils réalisables est complètement différente, en raison des interférences mécaniques, des limites des articulations et des limitations de la longueur des liens. En plus de ce couplage élevé entre les capacités de positionnement et d’orientation des bras robotiques à six axes typiques, ces robots présentent ce que l’on appelle des singularités. Dans une singularité, le robot ne peut pas se déplacer dans certaines directions. Il s’agit d’un blocage physique, et non d’un problème mathématique, et absolument tous les bras robotiques à six axes (y compris le bras cartésien illustré ci-dessus) présentent des singularités. Par exemple, lorsque toutes les articulations du Meca500 sont à zéro degré, comme dans la figure de gauche ci-dessous, l’effecteur terminal du robot ne peut pas se déplacer le long d’une ligne parallèle à l’axe y de base (le vert). Pour se déplacer le long de cette ligne, les articulations 4 et 6 doivent d’abord pivoter de ±90° (dans des directions opposées).

Crossing a wrist singularity
Crossing a wrist singularity

 

Les singularités sont un phénomène (ou plutôt une nuisance) très important en robotique et sont traitées dans un tutoriel séparé que vous devez également lire. Ici, il suffit de dire que même si un chemin se trouve à l’intérieur de l’espace de travail d’un robot, comme dans l’exemple ci-dessus, le cadre de référence de l’outil du robot peut ne pas être en mesure de le suivre continuellement (c’est-à-dire sans pauses dans le mouvement du PCT), à cause des singularités.

Ainsi, en général, les singularités du robot limitent davantage les parties utilisables de l’espace de travail d’un robot. En fait, l’espace de travail d’un bras robotique à six axes typique est la combinaison de plusieurs sous-ensembles d’espace de travail exempts de singularités et se chevauchant partiellement, séparés par des singularités. Le robot peut se déplacer n’importe où dans l’espace de travail total, en mode articulé, mais généralement seulement dans l’un des sous-ensembles de l’espace de travail sans singularité lorsqu’il est en mode cartésien (c’est-à-dire lorsque son TCP suit continuellement une trajectoire spécifique). Chaque sous-ensemble d’espace de travail sans singularité est limité par les dimensions de la liaison du robot et par les plages autorisées de ses articulations.

« L’espace de travail d’un bras robotisé à six axes typique est la combinaison de plusieurs sous-ensembles d’espace de travail sans singularité et se chevauchant partiellement, séparés par des singularités. »

Mecademic est l’un des rares fabricants de robots industriels à permettre à ses bras robotiques à six axes de franchir des singularités en mode cartésien, c’est-à-dire de se déplacer à travers deux ou plusieurs sous-ensembles d’espace de travail sans singularité en un seul déplacement cartésien. Cette fonctionnalité permet des déplacements cartésiens plus importants et sera présentée à la fin de ce tutoriel.

Chaque sous-ensemble d’espace de travail sans singularité correspond à une configuration spécifique du robot. Notez que si une pose donnée semble inaccessible avec la configuration actuelle du robot, elle peut être accessible avec une autre configuration. Par exemple, la pose du cadre de référence de l’outil dans la figure ci-dessous ne peut être atteinte que dans l’une des huit configurations du robot. Pourtant, une erreur courante consiste à ne considérer qu’un seul des sous-ensembles de l’espace de travail sans singularité au lieu de l’espace de travail total (c’est-à-dire à ne travailler que dans l’un des huit modes de configuration). Notez que si vous spécifiez une pose à l’aide des coordonnées x, y, z et des angles d’Euler et que vous utilisez ensuite la commande MovePose, le robot trouvera automatiquement la meilleure configuration. Malheureusement, les utilisateurs apprennent généralement les positions du robot en trottinant, plutôt qu’en spécifiant une pose.

This end-effector pose can be attained with only one robot configuration
This end-effector pose can be attained with only one robot configuration

Souvent, l’utilisateur dispose déjà d’un ensemble de poses de l’effecteur final à atteindre pour son application donnée. Par exemple, une pièce doit être prélevée sur un convoyeur, puis présentée devant une caméra dans différentes orientations, et enfin déposée sur un autre convoyeur. Trouver l’emplacement optimal de la caméra, l’installation optimale de la pince et la conception optimale des doigts est loin d’être trivial. Malheureusement, à ce jour, il n’existe pas de procédure automatique disponible dans le commerce pour trouver la conception optimale des cellules – la seule méthode consiste à procéder par essais et erreurs.

Heureusement, il n’est pas nécessaire de disposer d’une installation réelle pour cela ; vous pouvez utiliser un logiciel de simulation comme RoboDK. Cela dit, vous devez tout de même avoir quelques compétences en robotique, sans quoi vous risquez de consacrer beaucoup d’efforts aux essais et aux erreurs. Dans ce qui suit, nous vous donnons dix conseils pour utiliser au mieux l’espace de travail de votre robot. Bien que nous utilisions notre Meca500 comme exemple, ces conseils s’appliquent à n’importe quel bras robotique à six axes.

Directive 1 : Placez votre TCP aussi près que possible de la bride du robot

Dans le domaine de l’inspection, il est fréquent de devoir présenter une pièce devant une caméra avec une large gamme d’orientations. Dans une telle application, la première règle à suivre est de placer le cadre de référence de l’outil aussi près que possible du cadre de référence de la bride. En d’autres termes, vous devez concevoir un système de préhension qui vous permette de saisir la pièce à inspecter aussi près que possible de la bride du robot.

Notez que nous fournissons notre préhenseur électrique optionnel avec une plaque d’adaptation qui vous permet de fixer le préhenseur comme indiqué ci-dessus. Cependant, pour certaines applications, il peut être préférable de concevoir votre propre plaque d’adaptation pour fixer la pince de manière à ce que les doigts et l’axe de l’articulation 6 soient dans un même plan, ou pour fixer la pince le long de l’axe de l’articulation 6 (comme dans cette vidéo). Une autre solution consisterait à utiliser des doigts en forme de L.

Directive 2 : Ne pas se déplacer en mode cartésien à moins de suivre une trajectoire

Lors de l’inspection, il est souvent nécessaire de faire pivoter une pièce dans différentes orientations. Bien sûr, dans ce cas, il est beaucoup plus facile d’utiliser la commande MoveLinRelTRF ou de déplacer le robot en mode cartésien. Cependant, ces deux approches échouent si une singularité est présente pendant la rotation, comme dans l’exemple illustré dans la figure ci-dessous. Dans cet exemple, vous ne pouvez pas faire tourner l’effecteur autour de son axe y (le vert) à 90°, à cause d’une singularité (les axes des articulations 4 et 6 s’alignent).

Vous devez donc apprendre à utiliser les angles d’Euler et utiliser la commande MovePose à la place. Vous pouvez également utiliser RoboDK. RoboDK étant un simulateur, il vous permet de passer à travers les singularités en mode jogging cartésien. Indépendamment des singularités, utilisez toujours les commandes MovePose ou MoveJoints, à moins que vous ne souhaitiez que votre TCP suive un chemin spécifique. L’utilisation de ces commandes permet généralement d’obtenir les temps de cycle les plus rapides.

The robot cannot move from one of these two configurations to the other by rotating its end-effector about the tool y-axis, due to a wrist singularity
The robot cannot move from one of these two configurations to the other by rotating its end-effector about the tool y-axis, due to a wrist singularity

Directive 3 : Si le câblage limite trop l’articulation 6, alignez les axes des articulations 1, 4 et 6.

Bien que l’articulation 6 soit mécaniquement illimitée, si vous utilisez un effecteur terminal auquel est attaché un câblage, comme notre préhenseur, l’amplitude de l’articulation 6 sera limitée à environ ±180°, voire moins. Si vous avez besoin de plus d’amplitude, vous pouvez aligner les axes des articulations 4 et 6, voire des articulations 1, 4 et 6. Bien entendu, une telle configuration sera singulière, et vous devrez donc utiliser la commande MoveJoints pour effectuer une rotation autour de ces axes coïncidents

Directive 4 : Si vous utilisez un effecteur terminal avec câblage, maintenez l’articulation 6 aussi proche que possible de zéro degré.

Dans la mesure du possible, lors d’une pose souhaitée, essayez de maintenir l’articulation 6 aussi proche que possible de zéro degré. Si, par exemple, vous saisissez une pièce dans une position du robot où l’articulation 6 est à 170°, puis exécutez une commande MovePose, l’articulation 6 tournera probablement beaucoup. Par exemple, si à la nouvelle pose souhaitée, l’articulation 6 pourrait être à 190°, le robot fera automatiquement pivoter sa dernière articulation de 340° dans le sens négatif (au lieu de 20° dans le sens positif).

Directive 5 : Si vous devez beaucoup vous orienter, positionnez votre TCP sur l’axe de l’articulation 1.

Si vous devez couvrir un large éventail d’orientations, vous devez positionner votre TCP sur l’axe de l’articulation 1, comme dans la figure ci-dessous. Une telle configuration vous permettra de tourner de ±175° autour de l’axe de l’articulation 1 et de ±180° autour de l’axe de l’articulation 6. Plus le centre du poignet du robot est éloigné de l’articulation 1, moins les capacités d’orientation du robot sont importantes.

In this configuration, the robot can rotate its end-effector a lot
In this configuration, the robot can rotate its end-effector a lot

Ligne directrice 6 : Essayer toutes les configurations du robot

Il arrive que le robot soit trop proche d’une singularité dans une ou plusieurs des poses de l’effecteur final à atteindre. Dans une application d’inspection, cela peut ne pas poser de problème, mais si vous devez prendre ou placer un objet, vous devrez très probablement arriver à la position finale et en repartir en mode linéaire. Dans ce cas, testez toutes les configurations possibles du robot et choisissez celle qui est la plus éloignée des singularités. Par exemple, dans la figure ci-dessous, la configuration de gauche est trop proche d’une singularité (les axes 4 et 6 sont presque alignés), mais celle de droite est suffisamment éloignée d’une singularité.

In this example, the same end-effector pose can be attained in two different robot configurations, but one of them is singular
In this example, the same end-effector pose can be attained in two different robot configurations, but one of them is singular

Ligne directrice 7 : Ne pas se limiter à l’accessibilité

Comme nous l’avons déjà mentionné, l’espace de travail d’un bras robotisé à six axes est un ensemble de plusieurs sous-ensembles d’espace de travail séparés par des singularités. En outre, toutes les poses réalisables ne sont pas également « bonnes ». En effet, l’espace de travail d’un bras robotisé à six axes est très hétérogène, en termes de critères de performance tels que la vitesse et la précision. Nous avons déjà mentionné qu’il faut s’éloigner le plus possible des singularités lorsqu’on se déplace en mode cartésien. En outre, plus le bras robotique est étiré, moins il est précis (plus il est flexible) et plus il faut de temps pour supprimer les vibrations au niveau de la pointe de l’outil.

Ligne directrice 8 : Tirez parti de la redondance du robot si vous n’avez pas besoin de six degrés de liberté

Dans de nombreux cas, vous n’avez besoin que de cinq degrés de liberté. Par exemple, si votre effecteur final est un distributeur de colle ou une broche, vous ne vous souciez probablement pas de l’orienter par rapport à l’axe de l’aiguille ou de l’arbre, respectivement. En outre, si vous inspectez une pièce à l’aide d’un capteur axisymétrique tel qu’une caméra, vous pouvez souvent présenter la pièce dans n’importe quelle rotation autour de l’axe du capteur. Dans ce cas, n’alignez pas l’axe de l’articulation 6 avec l’axe de symétrie de votre outil ou de votre capteur et choisissez la meilleure des infinies positions du robot pour chaque pose à atteindre. Meilleure signifie loin des singularités, mais aussi la plus proche des poses précédentes et suivantes à atteindre.

Directive 9 : Fixez votre robot sur un support disponible

Comme de nombreux robots industriels, le Meca500 peut être fixé dans n’importe quelle orientation (par exemple, à l’envers ou sur un mur). Commencez par explorer les surfaces de support disponibles avant de concevoir un support dédié qui occupera inévitablement un espace précieux.

Ligne directrice 10 : Mesurer sept fois, couper une fois

Le proverbe anglais dit « Measure twice, cut once » (mesurer deux fois, couper une fois), mais lorsqu’il s’agit de la conception d’une cellule robotisée, optez pour la version russe « Measure seven times, cut once » (mesurer sept fois, couper une fois). Si votre cellule est relativement complexe ou si l’espace de travail de votre robot semble restreint, vous devez utiliser un logiciel de simulation de robot et procéder à de nombreuses itérations de conception jusqu’à ce que vous trouviez une solution satisfaisante. Toutefois, ne vous fiez pas entièrement à la simulation. Un logiciel de simulation générique comme RoboDK ne simule pas le comportement exact d’un robot. Par exemple, un mouvement linéaire spécifique peut être réalisable dans RoboDK, mais impossible sur un robot réel, en raison de singularités. Par conséquent, vous devez également essayer votre programme sur le robot réel.

Ligne directrice 11 (bonus) : Montez votre robot sur un guide linéaire

Si la portée d’un robot spécifique est trop courte pour votre application, ne commencez pas immédiatement à chercher un robot plus grand. Bien sûr, si vous devez pouvoir atteindre une distance relativement importante de la base du robot dans différentes directions ou si vous devez suivre des trajectoires relativement longues, vous avez probablement besoin d’un robot plus grand. Toutefois, si vous avez simplement besoin de desservir plusieurs zones qui pourraient être alignées dans le processus de conception, la solution la plus compacte et la plus abordable consiste à monter simplement votre robot sur un guide linéaire, comme dans la figure ci-dessous et dans ce video.

You can easily increase your robot's workspace by using a linear guide
You can easily increase your robot’s workspace by using a linear guide

Directive 12 (uniquement pour les robots Mecademic et quelques autres marques) : Franchir judicieusement les singularités

Comme nous l’avons déjà mentionné, les singularités sont les passages entre des sous-ensembles d’espace de travail sans singularité, chaque sous-ensemble correspondant à une configuration donnée du robot (par exemple, {avant, coude en l’air, pas de retournement}). Les singularités ne sont toutefois pas des frontières infranchissables. Elles sont simplement de dimension inférieure. Par exemple, si à l’intérieur d’un des sous-ensembles de l’espace de travail sans singularité, l’effecteur terminal du robot peut se déplacer dans n’importe quelle direction ou pivoter autour de n’importe quel axe, à une singularité, l’effecteur terminal ne peut se déplacer qu’avec cinq degrés de liberté ou moins. Si les sous-ensembles de l’espace de travail sans singularité se chevauchent partiellement, des trajectoires cartésiennes plus importantes (par exemple, une translation linéaire pure ou une rotation pure de l’effecteur final) peuvent être réalisées en commençant par un sous-ensemble de l’espace de travail et en alignant la trajectoire à travers le passage de la singularité. Une telle stratégie permet d’effectuer des déplacements cartésiens plus importants, qui ne sont probablement pas utiles pour les applications de collage ou de soudage, mais qui peuvent être très utiles pour les applications d’inspection.

La courte vidéo ci-dessous illustre cette stratégie unique d’optimisation de l’espace de travail.

En conclusion, à moins que votre application n’implique que quelques mouvements répétitifs, vous devez bien comprendre l’espace de travail de votre robot et consacrer beaucoup de temps à la conception de votre cellule robotisée. La conception d’une cellule robotisée ne consiste pas seulement à pouvoir effectuer tous les mouvements du robot, mais aussi à optimiser le temps de cycle et d’autres critères de performance (précision, consommation d’énergie).

Matériel complémentaire: Pour compléter ce tutoriel, consultez cette présentation sur l’optimisation des trajectoires des robots.

La reproduction de ce tutoriel, en tout ou en partie, est strictement interdite.

 

Share

Les commentaires sont fermés.