Académique Documents
Professionnel Documents
Culture Documents
L'objectif du modèle cinématique inverse est de calculer, à partir d'une configuration q donnée,
les vitesses articulaires q qui assurent au repère terminal une vitesse opérationnelle X imposée. Cette
définition est analogue à celle du modèle différentiel inverse : ce dernier permet de déterminer la
différentielle articulaire dq correspondant à une différentielle des coordonnées opérationnelles dX
spécifiée. Pour obtenir le modèle cinématique inverse, on inverse le modèle cinématique direct en
résolvant un système d ' équations linéaires. La mise en œuvre peut ê t r e faite de façon analytique ou
numérique :
Nous présentons dans ce chapitre les techniques à mettre en oeuvre pour établir un modèle
cinématique inverse dans les cas réguliers, singuliers et redond ants. Compte tenu de l'intérêt de la
redondance dans la commande, nous étudions aussi comment rendre un robot manipulateur redondant par
une description appropriée des tâches qu ' il doit réaliser, On suppose que le lecteur est familier avec la
notion de système d'équations linéaires. Quelques rappels sont donnés en Annexe 4 à toutes fins utiles.
6.2. Forme générale du modèle cinématique
D'après les relations [5.22] et [5.50], quelle que soit la méthode utilisée pour décrire les
coordonnées opérationnelles, le modèle cinématique direct peut être mis sous la forme :
03 0 Ai 03 I 3 i Lˆ j ,n i
X p J n, j q [6.1]
03 r 03 0
Ai 03 I 3
Ou, sous forme condensée :
X 0J xq [6.2]
I i
Lˆ j ,n i A0 0 3 p1 0 3
i
X n, j 3 X [6.4]
03 I 3 03 i
A0 03 r
On a vu au § 5.1 1 que si l'on utilise les coordonnées cartésiennes pour décrire la position, alors
Ω p -1 = I 3 . L'inverse à gauche Ω r + a été calculée pour différentes représentations de l'orientation. Pour
alléger l'écriture, nous considérerons la forme suivante de l'équation [6.3] :
X Jq [6.5]
Remarque
Si n<6, on ne peut plus utiliser systématiquement la matrice jacobienne i J n , j . Les singularités de
cette matrice ne tiennent en effet pas compte du choix des coordonnées opérationnelles [Borrel 86].
q J 1 X [6.6]
Lorsque la matrice J a la forme suivante :
A 0
J [6.7]
B C
Les matrices A et C étant carrées inversibles, il est facile de montrer que l'inverse de cette
matrice s'écrit :
A1 0
J 1 1 1 [6.8]
C BA C 1
La résolution du problème se ramène donc a l'inversion, beaucoup plus simple, de deux matrices
de dimension moindre. Lorsque le robot manipulateur possède six degrés de liberté et un poignet de
type rotule, la forme générale de J est celle de la relation [6.7], A et C étant de dimension (3x3) [Gorla
84].
Dans cette méthode, on tient compte d'une éventuelle l'orme particulière de la matrice J
permettant de réduire le nombre d'inconnues à prendre en compte simultanément. Cette méthode donne,
dans la plupart des cas, des solutions nécessitant moins d'opérations. Prenons par exemple, le cas d'un
robot manipulateur à poignet rotule dont le jacobien a, comme on l'a vu dans l'exemple 5.4, la st ructure
de l'équation [6.7] :
X a A 03 qa
[6.9]
X b B C qb
A et C étant des matrices carrées de dimension (3x3), inversibles en dehors des positions
singulières.
qa A1 X a
[6.10]
qb C X a Bqa
1
Solution qui, a priori, est beaucoup plus simple que celle obtenue avec la première méthode.
• Exemple 6.1. :
Calcul du modèle différentiel inverse du robot manipulateur Stäubli RX-90. Le jacobien 3 J6 a été
calculé dans l'exemple 5.3. On reprend tout d'abord la solution selon l'équation [6.8], puis celle de
l'équation [6.10].
0 0 V 1
1
A 0 V3 0
1/ RL 4 V 2V 3 / RL 4 0
Et
V4 1 V 5
1
C S4 0 C4
C 4 / C 5 0 S 4 / S 5
Avec:
1
V1
S 23RL 4 C 2 D3
V 2 RL 4 S 3D3
1
V3
C 3 D3
V 4 C 4 cot g 5
V 5 S 4 cot g 5
0 0 V1 0 0 0
0 V3 0 0 0 0
3 1
1/ RL 4 V 2V 3 / RL4 0 0 0 0
J6
S 4C 5V 7 V 5V 6 V8 V4 1 V 5
C 4 / RL 4 C 4V 6 S 23S 4V 1 S4 0 C4
S 4V 7 S 4V 6 / S 5 S 23C 4V 1/ S 5 C 4 / S 5 0 S 4 / S 5
Avec :
S3
V6
C 3RL 4
1
V7
S 5RL 4
V 8 S 23V 4 C 23V 1
q1 V 1X 3
qa q2 V 3 X 2
q3 X V 2V 3 X / RL 4
1 2
X 4 X 4 S 23q1
X b Bqa X 5 X 5 C 23q1
X X q q
6 6 2 3
On en déduit que :
q4 X 4 C 4 cot g 5 X 4 X 5 S 4 cot g 5 X 6
qb q5 C 1 X 5 S 4 X 4 C 4 X 6
X 6 C 4 X 4 S 4 X 6 / S 5
q6
Cette solution tient compte du découplage entre la position et l'orientation et ne nécessite que 22
multiplications/divisions et 12 additions en plus de 8 fonctions sinus/cosinus.
6.4. Solution au voisinage des positions singulières
Lorsque le robot est non redondant, les singularités d'ordre un sont solution de det(J)=0. Dans le cas
redondant, elles sont données par det(JJT)=O. Les singularités d'ordre supérieur sont déterminées à partir des
configurations singulières d'ordre un.
Le passage au voisinage d'une position singulière est cependant déter miné de façon plus précise
en considérant les valeurs singulières : la décroissance d'une ou plusieurs valeurs singulières est
généralement plus significative que celle du déterminant.
En une configuration singulière donnée, le vecteur vitesse X est constitué en général d'un
ensemble de composantes formant un vecteur de I(J) et d'un vecteur orthogonal de composantes
dégénérées appartenant à I(J) ┴ ; il n'existe pas de vitesse articulaire qui puisse engendrer une vitesse
opérationnelle suivant cette dernière direction avec le modèle cinématique inverse. Au voisinage des
positions singulières, l'utilisation du modèle cinématique inverse classique peu t donner des vitesses
articulaires importantes, incompatibles avec les caractéristiques des actionneurs.
Pour éviter les singularités, une solution consiste à augmenter le nombre de degrés de libe rté du
mécanisme [Hollerbach 84b], [Luh 85a]. Le robot devient redondant et nous verrons au § 6.5 qu'avec
un critère approprié, il est possible de déterminer un mouvement hors singularité. Il existe cependant
des singularités inévitables [Baillieul 84] qui doivent être prises en compte par le concepteur de la
commande.
6 . 4 . 1 . Utilisation de la pseudo-inverse
q JX [6.11]
Cette solution, proposée par Whitney [Whitney 69 ], [Whitney 72], minimise la norme
2
q et la norme de l'erreur X Jq . Dans une configuration singulière, on distingue les
2
euclidienne
deux cas particuliers suivants :
• X appartient uniquement à I(J). Alors, la solution [6.11] est exacte et l ' erreur est nulle bien que
l'inverse J-1 ne soit pas défini ;
• X appartient uniquement à I(J) ┴ . Alors, la solution [6.11] donne q 0 . Si la consigne de vitesse
suivante est définie selon cette direction, le robot se bloque et il faut lui définir des stratégies de
déblocage [Chevallereau 88b].
Dans [Wampler 86], on montre que le pseudo-inverse donne une solution discontinue lors du
passage par une configuration singulière, ce qui peut être mis en évidence par la décomposition en
valeurs singulières de la solution (§ 5.8.1). En effet, en dehors des singularités :
m
1
q VU T
i i X [6.12]
i 1 i
En s'approchant d'une singularité, σ min devient petit ce qui conduit à une vitesse q élevée. Lorsque
la valeur singulière s'annule, elle n'est plus prise en compte, la somme s'arrêtant à m-1, et la vitesse
q peut chuter considérablement.
Remarque:
2
q et X Jq
2
Les deux normes peuvent contenir chacune des composantes de nature différente.
Cependant, l'utilisation de radians pour les angles et de mètres pour les distances donne de bons résultats
pour des robots industriels de dimensions classiques (1 à 2 mètres de portée).
Différents auteurs [Wampler 86], [Nakamura 87] proposent de remplacer la pseudo-inverse par la
méthode des moindres carrés amortis qui est fondée sur la minimisation de l'expressi on suivante :
2
X Jq 2 q
2
[6.13]
Où α est une constante, ce qui revient à trouver la solution des moindres carrés du système suivant :
J X
I q [6.14]
n 0nx1
La solution de ce système s'écrit :
1
qa J T J 2 I n J T X [6.15]
Lorsque n > m, la relation équivalente suivante est plus fa cile à calculer [Maciejewski 88] :
1
qa J T JJ T 2 I m X
[6.16]
m
i
qa VU T
i i X
i 1
i
2 2
[6 .17]
i i
Lorsque i on a i
2
2
2 . L'erreur introduite par le facteur α sur les coordonnées articulaires
s'exprime par :
2 m
eq q qa 2 VU T
i i X
i 1 i i
2
[6.18]
L'erreur en X s'écrit :
m
2
ex Jeq U UT X [6.19]
i 1 i
2
2 i i
Le facteur d'amortissement a limite d'autant plus l'amplitude maximale de la solution qu'il est
choisi grand. En contrepartie, plus α est grand, plus l'erreur est importante et un compromis doit être
trouvé entre la précision d'une solution et sa possibilité de réalisation.
Wampler [Wampler 86] propose de prendre α=0,003, tandis que Nakamura [Nakamura 86]
suggère d ' ajuster le facteur d 'amortissement en introduisant la mesure de la manipulabilité w (équation
[5.38]) de la façon suivante :
w
0 1 si w w0
w0 [6.20]
0 si w w0
Où α 0 et w0 sont des constantes positives, w 0 définissant une limite de voisinage des singularités.
Une solution plus adéquate est d'ajuster la valeur de α en fonction de la plus petite valeur
singulière σ min qui est la mesure exacte de l'approche d'une position singulière. Macie jewski et Klein
[Maciejewski 88] proposent de calculer le facteur d'amortissement par :
2 min
2
si min
[6.21]
0 si min
Ou ε est constant.
On trouve dans [Maciejewski 88] une méthode efficace pour l'estimation de σ min . Cependant, une
difficulté subsiste avec l'utilisation de la solution calculée par la méthode des moindres carrés amortis car
le robot peut rester bloqué dans une configuration singulière. Cela se produit lorsque la vitesse désirée est spécifiée
selon des directions dégénérées de l'espace opérationnel, c'est-à-dire lorsque (relations [5.30] et [5.31]) :
U U X
m
X i
T
i [6.22]
i r 1
Ou r m donne le rang de J.
6.4.3. Méthodes n'utilisant pas le modèle cinématique inverse
Le modèle cinématique, qui est une linéarisation du premier ordre, ne donne pas de solution exacte
respectant les contraintes des actionneurs à l'approche des singularités. Aussi, certains auteurs [Nielsen 91],
[Chevallereau 98] ont utilisé un développement du MGI ou le modèle cinématique avec un ordre plus élevé pour
déterminer les coordonnées articulaires correspondant à un mouvement cartésien passant par une singularité. I l a été
démontré dans une étude récente [Llyod 96] que l'organe terminal peut se déplacer le long d'une trajectoire (chemin)
quelconque en utilisant une loi horaire appropriée.
Pour montrer la portée d'une telle technique, considérons le cas d'un robot plan à deux degrés de liberté en
configuration singulière "bras tendu". On désire que ce robot réalise un déplacement avec des vitesses articulaires
finies selon la direction dégénérée portée par l'axe x. Un déplacement exécuté à vitesse opérationnelle constante le
long de la direction dégénérée est non faisable en utilisant le modèle cinématique (figure 6.1a). Le même
déplacement réalisé à accélération opérationnelle constante avec une vitesse opérationnelle initiale nulle devient
réalisable (figure 6.1b) en utilisant un développement du MGI limité à l'ordre 2 [Nielsen 91] ou en utilisant le
modèle cinématique du deuxième ordre [Chevallereau 98].
Figure 6.1. Déplacement le long de la direction dégénérée
Par ailleurs, Egeland et Spangelo [Egeland 91] ont montré que dans certains cas, en effectuant un
mouvement dans le noyau de la matrice J, un déplacement non faisable pouvait devenir réalisable. Avec
un robot plan à deux degrés de liberté et deux bras identiq ues par exemple, partant de la configuration
initiale "bras replié" représentée sur la figure 6.2a, il n 'est pas possible de suivre une trajectoire portée par
la direction x. En revanche, après avoir réalisé une rotation de 90° de la première articulation, ce qui ne
modifie pas les coordonnées opérationnelles du point terminal mais modifie la direction dégénérée (figure
6.2b), on peut créer une vitesse le long de l'axe x en utilisant le modèle cinématique.
Les méthodes présentées dans ce paragraphe tolèrent une dégradation du suivi temporel mais
assurent un suivi convenable du chemin désiré contrairement aux méthodes du § 6.4 .2 qui acceptent une
dégradation du suivi du chemin sans remettre en cause le suivi temporel.
Un robot manipulateur est redondant lorsqu'il possède plus de degrés de liberté N que la dimension
de l 'espace opérationnel de l'organe terminal M. Il existe donc une infinité de solutions articulaires pour
réaliser une tache donnée. La différence (N-M) représente le degré de la redondance. Les modèles
géométrique et cinématique inverses ont dans ce cas une infinité de solutions, d'où la possibilité de
choisir la solution qui satisfait des contraintes d'optimisation supplémentaires telles que :
Pour un tel mécanisme, la matrice J est de dimension (mxn) avec n>m, en supposant que les
coordonnées articulaires et opérationnelles utilisées soient indépendantes (n=N, m=M), Plusieurs méthodes de
résolution du système [6.5] sont envisageables, comme on le montre dans ce paragraphe.
6 . 5 . 1 . Ajout de (n-m) contraintes supplémentaires
Xc h q [6.23]
Dans cette expression Xc est un vecteur de dimension (n-m)x1 et h(q) est une fonction vectorielle en q. Le modèle
cinématique associé à ces équations supplémentaires s'écrit :
X c Jhq [6.24]
X Jaq [6.25]
Avec:
X J
Xa et Ja
X c Jh
Si le jacobien augmenté Ja n'est pas singulier, la vitesse articulaire q du robot sera calculée comme
dans le cas des robots non redondants.
Cette méthode fondée sur le jacobien augmenté présente les inconvénients suivants :
— Le choix des (n-m) relations supplémentaires est important ;
— le jacobien augmenté Ja peut être non inversible même si le robot est loin d'une configuration
singulière (rang(J)=m). Le fait d'ajouter (n-m) relations supplémentaires peut conduire à des
singularités autres que celles du robot que l'on qualifiera de singularités algorithmiques.
Son avantage est qu'elle permet d'obtenir une réponse articulaire répétable dans le cas où la
trajectoire cartésienne est cyclique ou fermée. En effet, la solution trouvée est unique.
On peut utiliser cette technique pour optimiser une fonction objective désirée Φ ( q ) en prenant
h(q) de telle sorte que :
Le calcul des vecteurs de la base du noyau de la matrice jacobienne devant être effectués de façon
analytique, cette méthode ne peut être utilisée que pour des systèmes à faible degré de redondance. Cette
difficulté a été récemment résolue par [Klein 95].
6 . 5 . 2 . Utili sa t io n de la ps eu do - inv er se
q J X [6 .27]
2
Où J+ représente la pseudo-inverse de la matrice J. Cette solution minimise la norme q .
Cependant, Klein et Huang [Klein 83] ont montré que pour une trajectoire cartésienne fermée
(mouvement cyclique), les trajectoires articulaires calculées par cette équation ne s ont pas toujours
répétitives, ce qui peut constituer une limitation.
6 .5 .3 . Ut ili sa t io n de la ps eu do - inv er se po nd ér ée
C qT Eq [6.28]
Dans le cas où J est de rang maximal, la solution est donnée par :
q JE X [6.29]
Avec :
J E + = E -1 J T (J E -1J T ) -1 [6.30]
Benoît et al. [Benoît 75] proposent de prendre pour E la matrice d'inertie du robot (chapitre 9) afin de
minimiser l'énergie cinétique. Konstantinov et al. [Konstantinov 81] ont utilisé la pseudo-inverse pondérée
pour éviter les butées articulaires.
q J X In J J Z [6.31]
Le second terme du membre de droite, appelé solution homogène ou terme d'optimisation, appartient au
noyau de J et n'affecte pas la valeur de X . Il peut être utilisé pour satisfaire des contraintes d'optimisation
supplémentaires. Soit Φ ( q ) une fonction scalaire définie positive de l'état q du mécanisme et soit Φ
le gradient de cette fonction en q. On montre que le choix de Z entraîne la décroissance de la fonction
Φ(q) pour α<0 et provoque la croissance de cette fonction pour α>o. La solution s'écrit alors :
q J X I n J J [6.32]
Avec:
T
[6.33]
q1 qn
2
Le coefficient α représente un gain qui permet de trouver un compromis entre les objectifs de minimisation de q
et d'optimisation de Φ(q). Nous étudions dans ce qui suit deux choix possibles pour le critère d'optimisation.
Une solution pratique pour commander un robot redondant peut être de faire évoluer les variables
articulaires au voisinage de leurs valeurs moyennes q moy , c'est-à-dire loin de leurs limites q min et q max
On pose :
q moy = 1/2 (q max + q min ) [6.34]
Une fonction scalaire possible, dont la décroissance a pour effet l'éloignement du robot de ses butées, peut
s'exprimer par la forme quadratique suivante [Fournier 80] :
2
n
q q
q i imoy [6.36]
i 1 qi 2
La division par Δq i permet de l'aire varier la contribution de chaque articulation dans Φ entre 0 et 1.
L'élément i du vecteur Z s'écrit (avec α<0) :
q 2 qi qimoy
Zi [6.37]
qi qi 2
Remarque:
Pour le choix du critère, Klein [Klein 841 remarque que si la forme quadratique est la plus
souvent utilisée pour résoudre les problèmes d'optimisation, ce n'est pas toujours elle qui répond le mieux
aux objectifs fixés. Pour l'éloignement de butées en particulier, la forme suivante est plus appropriée :
qi qimoy
Max Pour i=1,…,n [6.38]
qi
L'introduction de ce critère dans le système [6.32] n'est cependant pas immédiate comme peut l'être
celle d'un critère quadratique. Une solution consiste à approcher le critère [ 6 .3 8 ] en utilisant une p-norme
définie par [Klein 83] :
1/ p
N p
q qmoy qi qimoy [6.39]
p
i 1
Quand p tend vers l'infini, la p-norme correspondante rejoint le critère [6.38] mais déjà avec p =
6, l'approximation peut être suffisante.
Nous avons donné au § 5.8.2 l'expression [5.38] de la manipulabilité w(q) d'un robot
manipulateur. Sur les positions singulières, w est minimum et s'annule. Afin d'augmenter la
manipulabilité du mécanisme, on peut choisir une fonction scalaire telle que :
REMARQUE.— Certaines configurations singulières sont inévitables [Baillieul 84]. C'est le cas pour le
robot plan à trois axes de l'exemple 6.1, lorsqu'il est en extension maximale ou lorsqu'il est replié sur lui -
même (figure 6.3), L ' es autres singularités sont évitables, le robot pouvant se reconfigurer sans que la
position de son extrémité ne soit affectée (figure 6.4).
Figure 6.3. Singularités inévitables d'an robot plan à trois degrés de liberté
Figure 6.4. Singularités évitables d'ut robot plan n trois degrés de liberté
Pour résoudre le modèle cinématique inverse, Nakamura [Nakamura 87] a introduit la notion de
priorité des tâches qui consiste à définir une tâche primaire X 1 de priorité supérieure et une deuxième tâche
secondaire X 2 de priorité inférieure. Ces taches s'expriment par les relations suivantes :
X 1 =f 1 (q) [6.41]
X 2 =f 2 (q) [6.42]
Les modèles cinématiques directs associés aux équations [6.41] et [6.42] s'écrivent :
X1 J1q [6.43]
X 2 J 2q [6.44]
Où J i = ∂f i (q)/∂q de dimension (m i xn) est le jacobien de la tâche X i considérée (i=1 ou 2). En utilisant la
pseudo-inverse, la solution générale de l'équation [6.43] est donnée par :
A partir de cette équation, le vecteur Z1 pourra être déterminé cri utilisant la pseudo-inverse :
Z1 J 2 X 2 J 2 J1 X 1 I n J 2 J 2 Z 2
[6.47]
La vitesse articulaire q du robot est calculée à partir des équations [6.45] et [6.47]:
q J1 X1 I n J1 J1 J 2 X 2 J 2 J1 X1 I n J 2 J 2 Z 2 [6.48]
Lorsqu'il n'est pas possible de trouver de forme explicite au modèle géométrique inverse, on peut
utiliser le modèle cinématique pour calculer itérativement une solution locale numérique. L'algorithme est
le suivant :
– à partir d'une configuration articulaire initiale q c (aléatoire ou courante), calculer la
situation correspondante 0 T n c du repère outil en utilisant le MGD:
Calculer l'écart dX =│dX pT X r T │ T entre la situation désirée 0 T n d et la situation initiale 0 T nc ,
tel que dX p = P nd-P nc et dX r = u α. u et α désignant l'axe et l'angle correspondant à la
rotation 0 A n d = rot (u,α) 0 A nc (§ 2.3.8). Pour rester dans le domaine de validité du modèle
cinématique, qui représente un développement du premier ordre, on doit introduire à chaque
pas de calcul des seuils S p , et S r respectivement sur dX p et dX r , de sorte que :
dX p
-si dX p S p , alors dX p .
dX p
dX r
-si dX r Sr , alors dX r .
dX r
Des valeurs de 0,3 mètre et 0,3 radian pour ces seuils sont acceptables pour la plupart des
robots industriels compte tenu de leurs dimens ions. Lorsque dX est suffisamment petit,
arrêter le calcul ;
– calculer numériquement la matrice jacobienne directe 0 J n (q c ) et sa pseudoinverse J + ;
– calculer la variation articulaire correspondante dq = J + dX avec ou sans terme
d'optimisation ;
– mettre à jour la configuration articulaire courante : q c =qc +dq ;
– retourner à la première étape,
Lorsque le nombre de composantes utilisées pour spécifier la tache est inférieur au nombre de degrés de liberté
du robot, il y a redondance de celui-ci vis-à-vis de la tâche, et donc, une infinité de solutions pour la réaliser. Cette
description, minimale en ce sens qu'elle ne contraint que les degrés de liberté de la tache ayant un rôle fonctionnel,
est intéressante car elle permet de satisfaire des critères d'optimisation supplémentaires lors de son exécution (§ 6.5),
Le formalisme retenu est celui du contact des surfaces usuelles de la mécanique (plan, cylindre, sphère) qui
décrit les liaisons mécaniques simples (tableau 6.1) illustrées par la figure 6.6. A ces six liaisons, on adjoint la
liaison totale, correspondant à un encastrement et les deux liaisons composées à un degré de mobilité d éjà
renco ntrées : la liaison rotoïde et la liaison prismatique (figure 6.7).
La description des situations successives du repère terminal lié au robot est réalisée par une séquence de
liaisons simples et composées, le choix d'une liaison étant dicté par les contraintes locales associées à la tâche,
Sphère Rotule
Le formalisme des liaisons mécaniques peut paraître difficile à utiliser. Une solution plus
ergonomique consiste à décrire un déplacement en termes de liaison entre deux entités géométriques
simples (point, droite, plan) appartenant l'une au robot, l'autre à l'environnement [Dombre 85] : une
liaison rotule, par exemple, correspond à la mise en coïncidence de deux points. De même, les liaisons
composées seront spécifiées par deux combinaisons simulta nées d'éléments géométriques. Le choix n ' est
pas unique : ainsi, une liaison rotoide par exemple peut être issue de la réalisation d'une liaison droite
sur droite et d'une liaison point sur plan ou d'une liaison droite sur droite et d'une liaison point sur
point.
Figure 6.7. Liaison rotoide et prismatique
Cette description géométrique est particulièrement bien adaptée à une programmation graphique
des tâches. La figure 6.8 montre l'exemple d'un assemblage cylindrique, réalisé avec l'application
robotique du logiciel de CFAO CATIA [Catia] clans lequel est implanté ce formalisme. Les différentes
étapes sont les suivantes :
a) état initial : sélection d'un point du robot et d'un point de l'environnement (rotule) ;
b) le cylindre est positionné, avec une orientation quelconque, au-dessus du site d'assemblage
; sélection d'une droite du robot et d'une droite de l'environnement. (verrou) ;
c) les axes du tampon cylindrique et de l'alésage sont alignés ; sélection d'un point et d'une
droite du robot d'une part, de l'environnement d'autre part (rotoide) ;
d) état final : la tâche d'assemblage est terminée. On peut remarquer la rotation laissée libre
autour de l'axe principal du cylindre entre les états c) et d).
Figure 6.8. Programmation graphique d’un assemblage à partir d’une description minimale des taches
6.7.2. Modèles différentiels associés à une description minimale
Pour prendre en compte ce type de description de tâche, on écrit le modèle différentiel définissant
les relations différentielles du repère outil R E de la façon suivante :
0d E 0 An 03 d E 0 An
n
03 I 3 n PˆE d E
n
0
E 03
0
An n E 03 0
An 03 I 3 n E
0A 0 An n PˆE n
n J n dq [6.49]
03
0
An
dX = H nJ n dq [6.50]
Nous montrons comment évaluer la matrice H pour les liaisons les plus fréquemment rencontrées
[Dombre 81].
Cette liaison consiste à amener un point OE de l'outil dans le plan Q, sa position dans le plan Q étant
quelconque (figure 6.9). Soit N le vecteur unitaire selon la normale au plan Q et soit O D un point arbit r aire
du plan Q. Le déplacement global à effectuer pour réaliser l'appui simple s'ex prime dans le repère R0 par :
0
P D et 0P E définissant les points OD et OE dans le repère R 0.
Le déplacement global r est réalisé par une succession de déplacements élémentaires à une seule
composante de tels que (relation [6.49]) :
dX dr 0 N T 0d E 0 N T 0 An 0 N T 0 An n PˆE n J n dq
[6.52]
0 N T 0 An I 3 n PˆE n J n dq
La matrice H est alors identifiée à N T 0 An I 3 n PˆE et n'a qu'une seule ligne. L'expression [6.52]
constitue le modèle différentiel de l'appui simple.
dr1 N An
0 T 0
0 N T 0 An n PˆE1 n
dX J n dq [6.53]
dr2 N An 0 N T 0 An n PˆE 2
0 T 0
La matrice H est alors de dimension (2xn). On peut généraliser ce raisonnement à toutes les
liaisons simples et composées considérées. La j ième ligne de la matrice H prend la forme générale suivante
:
Hj 0 N j T 0 An I 3 n PˆEj [6.54]
Où 0Nj désigne le vecteur unitaire normal au plan du j ième appui simple dont les composantes sont
exprimées dans R0 et où nPE j est le vecteur représentant le point de l'outil OEj utilisé pour décrire le j ième appui.
L'appui plan consiste à amener le plan Q E , de normale N E attachée à l'organe terminal sur le plan
Q D de normale ND de l 'environnement sans contrainte d'orientation et de position (figure 6.11). On
détermine trois points distincts arbitraires dans Q E puis on effectue trois appuis simples simultanément.
Figure 6.11. Réalisation d 'un appui plan
La liaison anneau (ou gouttière) consiste à amener un point O E de l'organe terminal sur une droite U D de
l'environnement. On la réalise par deux appuis simples du point OE, dans deux plans orthogonaux arbitraires
dont l'intersection est la droite UD (figure 6.12).
6.7.2.5. Liaison verrou (droite, droite)
La tâche consiste à aligner deux droites UE et UD, sans contrainte de position et d'orientation
respectivement le long et autour de ces droites (figure 6.12). On définit deux plans orthogonaux arbitraires QD1
et Q D2 de normale ND1et ND2 dont l'intersection est la droite UD. Réaliser une liaison verrou consiste à amener deux
points distincts OE1 et OE2 quelconques de la droite UE simultanément dans les plans QDl et QD2. En d'autres termes,
la liaison verrou correspond à quatre appuis simples.
La liaison rotule permet d'amener le point O E de l'effecteur sur un point O D (le l'environnement,
sans contrainte d'orientation sur le solide, Les points O E et O D suffisent donc à caractériser la liaison qui
peut être assimilée à la réalisation de trois appuis simples. Pou r cela, on considère que les déplacements
r 1 , r 2 et r 3 à effectuer ont pour valeur les composantes sur les axes du repère R 0 du vecteur O E O D . Ces
axes définissent les normales à trois plans orthogonaux Q D 1 , Q D2 et Q D3 passant par le point O D . En
prenant ces plans parallèles aux plans (y 0 ,z 0 ),(x 0 ,z 0 ),(x 0 ,y 0 ), la tâche est définie par :
dr1
dX dr2 0 An 0 An n PˆE n J n dq [6.55]
dr3
La liaison rotoide (figure 6.12) consiste à aligner une droite U E de l'organe terminal et à
confondre un point O E de U E , respectivement avec une droite U D de l'environnement et un plan Q D normal
à U D (non représenté sur la figure). Soit O E1 et O E2 deux points distincts quelconques de la droite U E .
Comme pour la liaison verrou, soit O D1 et Q D2 deux plans orthogonaux arbitraires dont l'intersectio n est la
droite U D . La liaison est alors équivalente à la réalisation simultanée de cinq appuis simples :
– amener le point O EI sur le plan Q D1 et sur le plan Q D2 ;
– amener le point O E2 sur le plan Q D1 et sur le plan Q D2 ;
– amener le point OE sur un plan QD.
Dans la pratique, pour l'utilisateur d'un système de CAO, on peut diminuer le nombre
d'interactions en décrivant une liaison rotoide par une liaison droite sur droite et une liaison point sur
point. Ce choix conduit à sept équations. Ainsi, le système dX=HJdq devient redondant mais le rang de la
matrice HJ reste égal à cinq.
La liaison prismatique revient à aligner deux directions du solide transporté avec deux directions
géométriquement compatibles de l'environnement et à permettre une translation le long d'un axe
arbitraire. Pour simplifier, on considère que les deux directions sont perpendiculaires et que le
déplacement s'effectue selon l'une de ces directions.
Soit U E1 et UE2 deux droites appartenant au solide transporté et soit U D1 et U D2 deux droites de
l'environnement (figure 6.13). On suppose que la translation libre se fait le long de la droite U D1 . Soit Q D1a
et Q D1b deux plans orthogonaux arbitraires dont l'intersection est la droite U D1 . Soit deux points distincts
O E1a , O E1b quelconques de la droite U E1 . On réalise la liaison prismatique avec cinq appuis simples :
– amener le point O E1a sur le plan Q D1a et sur le plan QD2b.
– amener le point O E1b sur le plan Q D1a et sur le plan QD2b.
– amener un point quelconque de UE2 qui n'est pas l'intersection de UE1 et UE2 sur le plan formé par les deux
droites UD1 et UD2 .
Comme pour la liaison rotoïde, il est plus rapide pour l'utilisateur de spécifier une liaison
prismatique à partir de deux liaisons plan sur plan. Le nombre d’équations dans ce cas est égal à six.
REMARQUES.-
– pour la liaison totale, on utilise la description complète dX = Jdq ;
– le tableau 6.2 résume le mode de spécification géométrique de chaque liaison mécanique ainsi que le
nombre d'équations nécessaires.
6.8. Conclusion
Nous avons examiné dans ce chapitre plusieurs méthodes de détermination du modèle cinématique
inverse en considérant trois cas, selon que le manipulateur est régulier, en configuration singulière ou redondant.
Ces méthodes sont soit analytiques, soit numériques.
Les méthodes analytiques conviennent pour résoudre le problème inverse lorsque la matrice jacobienne associée
au mécanisme est régulière. Leur mise en couvre est simplifiée lorsque le poignet du mécanisme possède trois
articulations rotoides d'axes concourants : le problème se réduit alors à l ' i n version de deux matrices
régulières d'ordre trois.
Nous avons montré comment, à partir d'une description utilisant le formalisme des liaisons mécaniques,
il était possible de contraindre uniquement les degrés de liberté fonctionnels de la tâche.
L'intérêt de la redondance, qu'elle soit intrinsèque au robot ou consécutive à une description minimale des
taches, est qu'elle peut être exploitée pour engendrer des déplacements optimaux du mécanisme. A cet égard, la
méthode de résolution fondée sur la notion de pseudo-inverse se révèle être très puissante. Elle permet de
prendre en compte différents critères locaux pour optimiser l 'éloignement des butées mécaniques ou la
manipulabilité.
L'inconvénient majeur du modèle cinématique pour le transformateur de coordonnées est qu'il ne traduit qu'un
comportement local du robot autour d'une configuration articulaire données La trajectoire engendrée dépend donc
de la configuration initiale du mécanisme.