cours de robotique avanc ee - isir.upmc.fr robotique 834(1).pdf · cours de robotique avanc ee...

91
. Cours de Robotique Avanc´ ee Redondance et Optimisation Ph. Bidaud Universit´ e Pierre et Marie Curie - Paris 6 Master Sciences de l’Ing´ enieur

Upload: hoangthien

Post on 11-Sep-2018

264 views

Category:

Documents


11 download

TRANSCRIPT

Page 1: Cours de Robotique Avanc ee - isir.upmc.fr Robotique 834(1).pdf · Cours de Robotique Avanc ee Redondance et Optimisation Ph. Bidaud Universit e Pierre et Marie Curie - Paris 6 Master

.

Cours de Robotique Avancee

Redondance et Optimisation

Ph. Bidaud

Universite Pierre et Marie Curie - Paris 6Master Sciences de l’Ingenieur

Page 2: Cours de Robotique Avanc ee - isir.upmc.fr Robotique 834(1).pdf · Cours de Robotique Avanc ee Redondance et Optimisation Ph. Bidaud Universit e Pierre et Marie Curie - Paris 6 Master

Objectifs du cours

Ce cours aborde les methodes utilisees en Robotique pour traiter des problemesd’analyse et de commande de systemes complexes. Les systemes complexes consideresici sont :

1. Les systemes de manipulation redondants cinematiquement

2. Les systemes non-holonomes

3. Les systemes a architecture parallele

4. Les systemes de manipulation coordonnee avec des liaisons unilaterales

On recouvre l’essentiel des problematiques auxquelles on est confronte dans le cadre dela manipulation dextre, la prehension articulee, la locomotion a roues et a pattes, etc ...

Plan du cours

1. Cinematique des systemes redondants.

2. Dynamique des systemes redondants et containts

3. Cinematique et statique des systemes paralleles et de manipulation coordonnee

4. Stabilite des contacts unilateraux

5. Les quantificateurs de performance

6. Methodes d’optimisation multi-criteres

2

Page 3: Cours de Robotique Avanc ee - isir.upmc.fr Robotique 834(1).pdf · Cours de Robotique Avanc ee Redondance et Optimisation Ph. Bidaud Universit e Pierre et Marie Curie - Paris 6 Master

Contents

1 Introduction 6

2 Cinematique des systemes redondants 62.1 Generateur du mouvement, noyau et leurs complements orthogonaux et

reciproques . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 62.2 Definition de la redondance cinematique . . . . . . . . . . . . . . . . . . 72.3 Analyse du probleme de la redondance cinematique . . . . . . . . . . . . 82.4 Definition d’un modele geometrique inverse . . . . . . . . . . . . . . . . . 9

2.4.1 Solution par la Jacobienne transposee . . . . . . . . . . . . . . . . 112.4.2 Solution par la pseudo-inverse de Moore Penrose . . . . . . . . . . 12

2.5 Homogeneısation de J pour le calcul de la pseudo-inverse . . . . . . . . . 142.6 Methodes de determination des mouvements internes . . . . . . . . . . . 15

2.6.1 Vecteurs du noyau de J . . . . . . . . . . . . . . . . . . . . . . . 152.6.2 Tache secondaire dans l’espace articulaire . . . . . . . . . . . . . 162.6.3 Tache secondaire dans l’espace cartesien . . . . . . . . . . . . . . 192.6.4 Autre formulation de la tache secondaire . . . . . . . . . . . . . . 20

2.7 Augmentation de l’espace operationnel . . . . . . . . . . . . . . . . . . . 212.8 Utilisation de methodes d’optimisation . . . . . . . . . . . . . . . . . . . 23

2.8.1 Multiplicateurs de Lagrange . . . . . . . . . . . . . . . . . . . . . 232.8.2 Programmation lineaire . . . . . . . . . . . . . . . . . . . . . . . 24

2.9 Determination des configurations singulieres dans les manipulateurs re-dondants . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 24

2.10 Passage des singularites . . . . . . . . . . . . . . . . . . . . . . . . . . . 25

3 Dynamique des systemes redondants et contraints 273.1 Principe de dAlembert et travaux virtuels . . . . . . . . . . . . . . . . . 273.2 Modele dynamique inverse des systemes series . . . . . . . . . . . . . . . 303.3 Modele dynamique cartesien des manipulateurs non-redondants . . . . . 313.4 Modele dynamique articulaire des manipulateurs redondants . . . . . . . 323.5 Modele dynamique operationel des manipulateurs redondants . . . . . . . 333.6 Modele dynamique des systemes contraints . . . . . . . . . . . . . . . . . 34

3.6.1 Multiplicateurs de Lagrange . . . . . . . . . . . . . . . . . . . . . 343.6.2 Reduction du modele dynamique par resolution des multiplicateurs

de Lagrange . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 373.6.3 Resolution des accelerations generalisees par optimisation . . . . . 383.6.4 Reduction des equations par le complement orthogonal . . . . . . 38

4 Commande des systemes redondants 434.1 Commande en acceleration des manipulateurs redondants . . . . . . . . . 434.2 Commande en vitesse des manipulateurs redondants . . . . . . . . . . . . 444.3 Commande en couple des manipulateurs redondants . . . . . . . . . . . . 45

3

Page 4: Cours de Robotique Avanc ee - isir.upmc.fr Robotique 834(1).pdf · Cours de Robotique Avanc ee Redondance et Optimisation Ph. Bidaud Universit e Pierre et Marie Curie - Paris 6 Master

5 Systemes paralleles et systemes de manipulation coordonnee 465.1 Systemes paralleles . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 46

5.1.1 Exemples de systemes paralleles . . . . . . . . . . . . . . . . . . . 465.1.2 Modele cinematique des systemes paralleles . . . . . . . . . . . . 475.1.3 Modele cinematique des systemes paralleles contraints . . . . . . . 495.1.4 Modele cinematique des systemes paralleles redondants . . . . . . 535.1.5 Modele statique des systemes paralleles . . . . . . . . . . . . . . . 535.1.6 Modele dynamique des systemes paralleles . . . . . . . . . . . . . 54

5.2 Systemes de manipulation coordonnee . . . . . . . . . . . . . . . . . . . . 565.2.1 Statique de la manipulation coordonnee . . . . . . . . . . . . . . 585.2.2 Modele des actions de contact . . . . . . . . . . . . . . . . . . . . 585.2.3 Modelisation du contact entre 2 solides . . . . . . . . . . . . . . . 585.2.4 Transmission de mouvement dans les liaisons par contact . . . . . 595.2.5 Champ des actions de contact . . . . . . . . . . . . . . . . . . . . 605.2.6 Modele de frottement de Coulomb . . . . . . . . . . . . . . . . . . 615.2.7 Application a la modelisation d’une prise . . . . . . . . . . . . . . 635.2.8 Etude de l’equilibre de la prise . . . . . . . . . . . . . . . . . . . . 665.2.9 Famille de reactions statiquement admissibles . . . . . . . . . . . 675.2.10 Analyse algebrique de l’equilibre . . . . . . . . . . . . . . . . . . . 685.2.11 Determination des forces de contact . . . . . . . . . . . . . . . . . 695.2.12 Determination des composantes de serrage . . . . . . . . . . . . . 695.2.13 Rigidite de la prise . . . . . . . . . . . . . . . . . . . . . . . . . . 71

5.3 Cinematique de la manipulation coordonnee . . . . . . . . . . . . . . . . 725.3.1 Equations de fermeture des chaınes cinematiques . . . . . . . . . 725.3.2 Utilisation des torseurs reciproques . . . . . . . . . . . . . . . . . 735.3.3 Projection des mouvements transmis par les doigts sur les contraintes 73

5.4 Introduction de la cinematique des contacts . . . . . . . . . . . . . . . . 755.4.1 Dynamique de la manipulation coordonnee . . . . . . . . . . . . . 76

5.5 Cas particulier des robots humanoıdes . . . . . . . . . . . . . . . . . . . 785.5.1 Caracterisation de l’equilibre d’un humanoıde . . . . . . . . . . . 78

6 Analyse des performances 816.1 Indices de manipulabilite . . . . . . . . . . . . . . . . . . . . . . . . . . . 81

6.1.1 Indice de manipulabilite cinematique . . . . . . . . . . . . . . . . 82

7 Analyse des performances 827.1 Transmission des vitesses . . . . . . . . . . . . . . . . . . . . . . . . . . . 827.2 Transmission des efforts . . . . . . . . . . . . . . . . . . . . . . . . . . . 857.3 Transmission des accelerations (manipulabilite dynamique) . . . . . . . . 867.4 Indice de rigidite s’un systeme . . . . . . . . . . . . . . . . . . . . . . . . 867.5 Indice de stabilite d’un systeme d’appuis unilateraux . . . . . . . . . . . 87

4

Page 5: Cours de Robotique Avanc ee - isir.upmc.fr Robotique 834(1).pdf · Cours de Robotique Avanc ee Redondance et Optimisation Ph. Bidaud Universit e Pierre et Marie Curie - Paris 6 Master

8 Configurations singulieres et domaine de travail 878.0.1 Configurations stationnaires d’un mecanisme serie . . . . . . . . . 878.0.2 Determination du domaine accessible en position . . . . . . . . . 898.0.3 Extension au mecanismes paralleles . . . . . . . . . . . . . . . . . 91

9 Techniques d’optimisation 91

5

Page 6: Cours de Robotique Avanc ee - isir.upmc.fr Robotique 834(1).pdf · Cours de Robotique Avanc ee Redondance et Optimisation Ph. Bidaud Universit e Pierre et Marie Curie - Paris 6 Master

1 Introduction

Les systemes robotiques presentent generalement un degre de complexite qui imposede reconsiderer les techniques de modelisation et de commande de leur comportement.L’une des dimensions particulieres dans la complexite des systemes est liee au nombrede leur degre de liberte qui peut induire une redondance/abondance vis-a-vis des tachesa realiser.

L’exploitation de la redondance cinematique est le premier des points que nous ex-aminerons. Cette redondance peut notamment servir a optimiser par la commande lecomportement du systeme du point de vue de certaines de ses performances. Ce problemepeut etre aborde d’un point de vue cinematique ou dynamique selon le type controle bas-niveau mis en oeuvre sur le systeme.

Une autre dimension dans la complexite des systemes est induite par le fait des con-traintes imposees par des liaisons non-holonomes ou par des cycles cinematiques multiplesdans le mecanisme. Nous considererons les problemes de modelisation et de commandede systemes non-holonomes, de systemes paralleles ainsi que de systemes presentant desliaisons par contact de pour lesquels la persistance de la liaison doit etre maintenue.

Nous introduirons un certain nombre de moyens pour quantifier les performancescinematiques et dynamiques de ces systemes et nous envisagerons leur utilisation dansleur commande (lorsqu’ils concernent des variables de commande) ou leur conception(lorsqu’ils portent sur des parametres structurels).

Enfin, nous reviendrons sur plusieurs techniques d’optimisation particulierement adapteesau traitement des problemes exposes. Nous introduirons egalement des techniques adapteesau multi-critere.

2 Cinematique des systemes redondants

2.1 Generateur du mouvement, noyau et leurs complementsorthogonaux et reciproques

La relation entre l’espace des vitesses generalisees et des vitesses operationnelles est uneapplication lineaire dont J est la matrice associee. Le produit Jq peut etre vu commeune combinaison lineaire des vecteur-colonnes de J . Aussi, on peut definir :

1. Le generateur de l’application definit l’ensemble des vitesses transmissibles par lesysteme.

R(J) =X ∈ Rm/∃q ∈ Rn X = Jq

2. Le complement orthogonal aR(J) constitue l’ensemble des vitesses non-transmissibles.

R(J)⊥ =X ∈ Rm/∃X ′ ∈ R(J) X tX ′ = 0

3. Le complement reciproque a R(J) definit les actions naturellement transmissibles

R(J)R =F ∈ Rm/∃X ∈ R(J) F tX = 0

6

Page 7: Cours de Robotique Avanc ee - isir.upmc.fr Robotique 834(1).pdf · Cours de Robotique Avanc ee Redondance et Optimisation Ph. Bidaud Universit e Pierre et Marie Curie - Paris 6 Master

4. Le noyau de l’application constitue l’ensemble des articulaires internes.

N (J) = q ∈ Rn/Jq = 0

5. Le complement orthogonal est l’ensemble des vitesses articulaires qui engendre unmouvement de l’effecteur.

N (J)⊥ =q ∈ Rn/∃q′ ∈ N (J) qtq′ = 0

6. Le complement reciproque au noyau est l’ensemble des couples articulaires qui

produisent une puissance nulle dans le mouvement interne.

N (J)R =τ ∈ Rn/∃q′ ∈ N (J) τ tq′ = 0

On montre egalement que :

R(J)⊥ = N (J t)

N (J)⊥ = R(J t)

Cette dualite entre la vitesses et efforts est illustree sur la figure 1.

Figure 1: Illustration de la dualite vitesse/effort

2.2 Definition de la redondance cinematique

La redondance d’un systeme mecanique peut etre definie du point de vue cinematique.Lorsquem la dimension de l’espace des deplacements du systeme, ou si tous les deplacementsne sont pas imposes par la tache le nombre de contraintes imposees sur le mouvementsdu corps ”‘manipule”’ est egal a la mobilite cinematique du systeme, alors la matrice

7

Page 8: Cours de Robotique Avanc ee - isir.upmc.fr Robotique 834(1).pdf · Cours de Robotique Avanc ee Redondance et Optimisation Ph. Bidaud Universit e Pierre et Marie Curie - Paris 6 Master

jacobienne J du systeme est hors singulatites une matrice carree. la solution au problemecinematique inverse X = Jq (ou differentiel inverse dX = Jdq ) est donnee par :

q = J−1X

Pour simplifier les choses, on considerera que la mobilite du mecanisme est directement nle nombre de liaisons et que le nombre de contraintes est directement egal a la dimensiondu groupe des deplacements dans lequel le systeme evolue (note d).Des lors ou le manipulateur est redondant devant la tache (n > d ou plus generalementrg(J) > d) alors le probleme est sous-determine. Il existe une infinite de solutions auprobleme cinematique inverse. Le degre de redondance cinematique du systeme devantla tache est :

r = n− dim(R(J)) = dim(N (J))

2.3 Analyse du probleme de la redondance cinematique

Pour le manipulateur de 3P de la figure 2, si seule la trajectoire du point P est imposee,le degre de redondance est 1. La Jacobienne de ce manipulateur est :

Figure 2: Manipulateur redondant 3P

Jv =(

1 0 10 1 0

)Une base de R(J) est :

R(J) =(

1 00 1

)Une base de N (J) est :

N(J) =

−101

dim(N (J)) 6= 0 traduit le fait qu’il existe une possibilite de mouvement interne commel’illustre la figure 3. Le complement orthogonal au (N (J))⊥ constitue le sous-espacedes mouvements articulaires realisant le mouvement δX avec le minimum d’amplitudeδq. Plusieurs methodes sont envisageables pour resoudre la redondance. Les methodesutilisant le modele cinematique sont les plus generales.

8

Page 9: Cours de Robotique Avanc ee - isir.upmc.fr Robotique 834(1).pdf · Cours de Robotique Avanc ee Redondance et Optimisation Ph. Bidaud Universit e Pierre et Marie Curie - Paris 6 Master

Figure 3: Illustration du mouvement interne

2.4 Definition d’un modele geometrique inverse

Si on considere le systeme est sous asservissement articulaire, l’une des solutions pouraborder la commande des mouvements est d’utiliser le modele geometrique inverse pourdefinir les consignes articulaires a partir de la definition de la trajectoire en position etorientation de l’objet manipule. Cependant, dans le cas ou le systeme est redondant,le probleme geometrique inverse est das ce cas sous-determine. Il existe par consequentune infinite de configurations articulaire pour atteindre une tache donnee.

Pour traiter la redondance, une solution consiste a introduire des relations supplementairespour traduire un objectif secondaire qui est par exemple d’optimiser une performancelocale. Si on considere que la performance en question est representee par une fonctionscalaire continue notee W (q) en fonction des parametres generalises q. On peut con-siderer la resolution du probleme geometrique inverse a partir d’une part par le modelegeometrique direct X = f(q) et d’autre part par r equations algebriques traduisant unoptimum de la fonction.

La recherche d’un optimum pourW (q) peut etre vu comme un probleme d’optimisationsous les contraintes F (q) = (f(q) − X). Ce type de probleme peut etre aborde al’aide des multiplicateurs de Lagrange. Le probleme equivaut a minimiser le LagrangienL(q) = W (q) + λtF (q), λ ∈ Rm=d etant le vecteur des multiplicateurs de Lagrange.Ainsi, la solution verifie a la fois la solution au modele geometrique et minimise W (q).

Les points stationnaires sont tels que la differentielle de L(q) soit nulle :

∂ L(q)

∂ q=∂ W (q)

∂ q+

(∂ F (q)

∂ q

)tλ = 0

- ∂ F (q)∂ q∈ Rm×n est la matrice Jacobienne.

- ∂ W (q)∂ q

= ∇W (q) = h ∈ Rn est le vecteur gradient de la fonction W (q)L’equation precedente peut etre re-ecrite :

J tλ+ h = 0

ou en partitionnant les m premieres lignes et les n−m suivantes :(JmJn−m

)tλ =

(hmhn−m

)(1)

9

Page 10: Cours de Robotique Avanc ee - isir.upmc.fr Robotique 834(1).pdf · Cours de Robotique Avanc ee Redondance et Optimisation Ph. Bidaud Universit e Pierre et Marie Curie - Paris 6 Master

On peut a partir de ce systeme de n equations auquel serait joint lesm equations issuesdu modele geomtrique direct determiner l’ensemble des incunnues (les m multiplicateursde Lagrange et les n variables articulaires.

On peut egalement, en s’aidant des m premieres equations du systeme (1) de resoudreles m multiplicateurs de Lagrange.

λ = J−1m hm

En substituant dans les n−m equations, on a :

Jn−mJ−1m hm − hn−m = 0

Ces r equations peuvent se mettre sous la forme matricielle :

( Jn−mJ−1m , In−m )h = 0

ou encore en notant Z = ( Jn−mJ−1m , In−m )

Zh = 0

Le probleme geometrique inverse pour un systeme redondant consiste alors a resoudre lesysteme :

F (q) = 0Zh = 0 (2)

Ces dernieres equations permettent de detemininer completement les variables articu-laires.

Pour illustrer cette methode nous utiliserons l’exemple de la figure 4. Le point P dece systeme de type PR doit se deplacer selon un axe vertical situe a x de l’origine touten evitant un obstacle situe a d du 2nd segment.

Le modele geometrique direct se reduit a :

x = r1 + aCθ2 (3)

La Jacobienne transposee est J t = ( 1 ,−aSθ2 ). La redondance du systeme r = 1.La distance a l’obstacle est (x− r1)Sθ2 = dSθ2. Le problemme geometrique inverse peutetre pose comme : (−Sθ2

dCθ2

)+ λ

(1

aSθ2

)= 0

r1 + aCθ2 − x = 0 (4)

ou encore, a l’aide de la matrice Z :

(−aSθ2 , 1 )(−Sθ2

dCθ2

)= 0

r1 + aCθ2 − x = 0 (5)

10

Page 11: Cours de Robotique Avanc ee - isir.upmc.fr Robotique 834(1).pdf · Cours de Robotique Avanc ee Redondance et Optimisation Ph. Bidaud Universit e Pierre et Marie Curie - Paris 6 Master

Figure 4: Illustration du traitement de la redondance par une methode geometrique

2.4.1 Solution par la Jacobienne transposee

La commande cinematique d’un systeme (ici considere comme arborescent) peut etrerealisee en utilisant directement la jacobienne inverse. Le probleme de la redondance estalors resolu en considerant qu’un torseur de force FExt est applique a l’effecteur, cettederniere cherchant a l’amener sur la position desiree Xd (voir illustration figure 5)

Figure 5: Illustration du principe de commande par Jacobienne inverse

Si cette action exterieure est consideree comme realisee a travers une raideur :

FExt = K(Xd −X) = K e

avec K une matrice positive et symetrique d’ elasticite, on peut determiner la solution qpar :

q = J tKe

11

Page 12: Cours de Robotique Avanc ee - isir.upmc.fr Robotique 834(1).pdf · Cours de Robotique Avanc ee Redondance et Optimisation Ph. Bidaud Universit e Pierre et Marie Curie - Paris 6 Master

Cette methode presente l’interet de traiter directement du probleme de la redondance etdes singularites. La solution obtenue est non-exacte mais stable. En effet, le potentielelastique du systeme Φ(e) est tel que Φ(e) > 0∀e 6= 0 et Φ(0) = 0:

Φ(e) =1

2etKe

En differentiant par rapport au temps Φ(e) on trouve :

Φ(e) =1

2etKe+

1

2etKe = etKe

etK(Xd − X) = etKXd − etKJq

Le choix de q = J tKe conduit a :

etKXd − etKJJ tKe

qui pour Xd = cte verifie :Φ(e) = −etKJJ tKe < 0

ce qui montre que la convergence vers zero de la solution est assuree.

2.4.2 Solution par la pseudo-inverse de Moore Penrose

On peut imposer une contrainte supplementaire pour obtenir une solution, par exemplechercher une solution qp de norme Euclidienne minimale telle que :∥∥∥Jqp − X∥∥∥2

= minq∈Rn

∥∥∥Jq − X∥∥∥2

L’unique solution est donnee par :qp = J+X

ou J+ est la pseudo-inverse de J . Elle produit une solution minimale pour ‖q‖2 (auxmoindres carres) pour X desire. (Fonction pinv() de Matlab )Le calcul de la pseudo-inverse de J peut etre realise si rg(J) = m par :

J+ = J t(J J t)−1

Pour l’exemple du manipulateur PPP, la pseudo-inverse de Jv est :

J+v =

1/2 00 1

1/2 0

D’une maniere plus generale, si J ∈ Rm×n est de rang r, elle admet une decompositionen valeurs singulieres (Fonction svd() de Matlab ) qui est:

J = UΣV t =∑i=1,r

σiuivti

12

Page 13: Cours de Robotique Avanc ee - isir.upmc.fr Robotique 834(1).pdf · Cours de Robotique Avanc ee Redondance et Optimisation Ph. Bidaud Universit e Pierre et Marie Curie - Paris 6 Master

Pour l’exemple du manipulateur PPP, on a :

Jv =(

1 00 1

)(1.4142 0 0

0 1.0000 0

) 0.7071 0 −0.70710 1.0000 0

0.7071 0 0.7071

Alors, la pseudo-inverse de Moore-Penrose est :

J+ = V Σ+U t =∑i=1,r

1

σiviu

ti

avec :

Σ+ = diag(1

σ1

, . . . ,1

σr, 0, . . . 0)

ou σ1, . . . σr sont les valeurs singulieres de J .Si rg(J) = r = m < n (rang maximal) alors J+ = J t(JJ t)−1

Si rg(J) = r = m = n alors J+ = J−1

Indifferement des conditions sur le rang de J , cette pseudo-inverse satisfait les proprietessuivantes :

JJ+J = J

J+JJ+ = J+

(JJ+)t = (J+J)

(J+J)t = (JJ+)

et(J+)

+= J

(J+)t

= (J t)+

(J+) = (J tJ)+J t

(J+)t

= J t(JJ t)+

Par ailleurs :- si rg(J) = m = n, alors : A+ = A−1

- si rg(J) = m < n, alors : AA+ = Id (A+A 6= Id)- si rg(J) = n < m, alors : A+A = Id (AA+ 6= Id)• Remarque : La quantite qui est optimisee dans une solution purement cinematiqueest :

C = qtq

Cette quantite n’a pas forcement de sens physique. Aussi, la pseudo-inverse peut etreponderee pour optimiser par exemple l’energie cinetique developpee dans le mouvement.Cette derniere s’ecrit :

T =1

2qtM(q)q

13

Page 14: Cours de Robotique Avanc ee - isir.upmc.fr Robotique 834(1).pdf · Cours de Robotique Avanc ee Redondance et Optimisation Ph. Bidaud Universit e Pierre et Marie Curie - Paris 6 Master

M(q) est symetrique et inversible.Le probleme de la minimisation de T dans le mouvement X = Jq peut etre pose commeun probleme d’optimisation sous contraintes.

min T =1

2qtM(q)q

tel que : X = Jq

Une solution classique a ce type de probleme peut etre determinee a l’aide des multipli-cateurs de Lagrange λ, la contrainte etant alors integree a la fonction a minimiser sousla forme :

T ′ =1

2qtM(q)q + λt(X − Jq)

Les multiplicateurs λ peuvent ici etre interpretes physiquement comme les quantites demouvement a appliquer pour satisfaire X − Jq = 0.Les parametres de Lagrange peuvent etre determines en cherchant les solutions a :

∂T ′

∂q= 0

Ceci conduit au systeme de n equations suivant:

qtM − λtJ = 0 (∗)

En post-multipliant par M−1J t, ce systeme se transforme en :

qtJ t = λt(JM−1J t)

Les multiplicateurs λ sont donc tels que :

λt = X t(JM−1J t)−1

En reportant dans (∗), on trouve :

q = M−1J t(JM−1J t)−1X

q = J+MX

J+M est la pseudo-inverse de J ponderee par la matrice d’energie cinetique du systeme.

2.5 Homogeneısation de J pour le calcul de la pseudo-inverse

Les termes de JJ t peuvent ne pas etre homogenes en dimension. Considerons par exemplele robot plan PPR dont la Jacobienne serait :

J =

0 0 11 0 −dSθ3

0 1 dCθ3

14

Page 15: Cours de Robotique Avanc ee - isir.upmc.fr Robotique 834(1).pdf · Cours de Robotique Avanc ee Redondance et Optimisation Ph. Bidaud Universit e Pierre et Marie Curie - Paris 6 Master

Les composantes de JJ t sont :

JJ t =

1 −dSθ3 dCθ3

−dSθ3 (1 + d2S2θ3) −d2Sθ3Cθ3

dCθ3 −d2Sθ3Cθ3 (1 + dSθ3dCθ3)

Ces composantes sont inhomogenes en dimension.D’une maniere generale, si un systeme comporte de liaisons de rotation et de translation,

‖q‖2 = qtq conduira a une somme de termes inhomogenes. De meme le calcul de∥∥∥X∥∥∥2

=

X tX est le resultat du produit orthogonal entre torseurs et dependra du point ou lavitesse est exprimee et des unites des longueurs.A titre d’exemple, en considerant le robot de la figure 6, Pour palier ce probleme, une

Figure 6: Manipulateur PRR pour illustration des problemes d’inhomogoneıte

solution consiste a normer les vecteurs X et q en utilisant par exemple une longueurcaracteristique.

XNorm = diag[1, 1, 1, 1/L1, 1/L1, 1/L1]X = NvX

qNorm = diag[a11, . . . , ann]q = Nq q

avec aii = 1 pour les liaisons rotoıdes et aii = 1/L2. La pseudo inverse ponderee de Jest alors egale a :

J+Norm = [NvJN

−1q ]+

2.6 Methodes de determination des mouvements internes

2.6.1 Vecteurs du noyau de J

On peut determiner un ensemble de vecteurs orthogonaux qui forment une base du noyaude J(q). Cette base est de dimension n − r. Elle peut etre constituee des vecteurs vii = r, n issus d’une decomposition en valeurs singulieres de J(q) et tel que :

J(q)vi = 0 i = r, n

15

Page 16: Cours de Robotique Avanc ee - isir.upmc.fr Robotique 834(1).pdf · Cours de Robotique Avanc ee Redondance et Optimisation Ph. Bidaud Universit e Pierre et Marie Curie - Paris 6 Master

On verifie bien pour l’exemple du manipulateur 3P que :

(1 0 10 1 0

)−101

=(

00

)

Ainsi, la solution homogene qh peut s’exprimer :

qh = N(J)xN =∑

i=1,n−r˙xNivi

- N(J) ∈ R(n×n−r) est la matrice de regroupant les vecteurs du noyau,- xN ∈ Rn−r est le vecteur des amplitudes des vitesses compatibles avec le mouvementinterne (pseudo-vitesses). On peut exprimer le mouvement interne xN comme :

xN = V +q = JN q

Pour l’exemple du systeme 3P on a :

JN = (−1/2 0 1/2 )

2.6.2 Tache secondaire dans l’espace articulaire

Une methode consiste a projeter une tache secondaire sur le noyau de la Jacobienne enutilisant le projecteur orthogonal (Id − J+J)

qh = (Id − J+J)︸ ︷︷ ︸PN (J)

qop

De maniere plus generale, en algebre lineaire, une projection orthogonale est un pro-jecteur tel que les deux sous-espaces sont orthogonaux. Le projecteur a pour effet desupprimer la composante qui influence δX. On a donc :

Jqh = 0

Le vecteur qop ∈ Rn, qui est a priori quelconque, peut servir a optimiser une performancelocale. Il peut etre alors determiner comme :

qop = α∇φ = α

∂φ∂q1..∂φ∂qn

- α > 0 conduit a une croissance de φ- α < 0 conduit a une decroissance de φUn exemple de fonction φ pour l’eloignement aux butees est :

φ(q) =∑i=1,n

(qi − qimoy

∆qi)2

16

Page 17: Cours de Robotique Avanc ee - isir.upmc.fr Robotique 834(1).pdf · Cours de Robotique Avanc ee Redondance et Optimisation Ph. Bidaud Universit e Pierre et Marie Curie - Paris 6 Master

avec ∆qi = (qmaxi − qmini )Un autre exemple de fonction φ est celui qui reflete le conditionnement de la matriceJacobienne (voir chapitre quantification des performances).

φ(q) =√det(JJ t)

On peut aussi construire une fonction φ pour generer un champ de forces (attractives etrepulsives) sur le systeme.

φ(q) = φatt(q) +∑i=1,n

φirep(q)

ici en considerant un seul potentiel attractif pontuel et un ensemble de n potentielsrepulsifs. Le potentiel attractif peut etre :

φatt(q) =1

2kd2 =

1

2k(q(t)− qd)2

La force qui serait ainsi creee pour ”‘attirer”’ les systeme vers qd est :

Fatt = −k∇φ(q) = k(q(t)− qd)Un exemple de champ attractif pour un systeme 2R est donne sur la figure 7 Un potentiel

Figure 7: Illustration d’un champ attractif

replusif borne a la distance d0 est le suivant :

φirep(q) =1

2kirep(

1

di(q)− 1

d0

)2 si di(q) ≤ d0;φirep(q) = 0 si di(q) > d0

Un exemple est donne sur la figure 8On illustre l’effet du projecteur orthogonal a partir de l’exemple represente sur la

figure 9 qui considere le probleme suivant :

( δx ) = (−l1Sθ1 − l2Sθ12; −l2Sθ12 )(δq1

δq2

)Le systeme est une fois redondant vis-a-vis de la tache. Il est clair que la tache secondairen’est realisee que partiellement. Par ailleurs, on montre que ce mouvement internesans action dissipative peut conduire a un mouvement oscillatoire. Aussi, un termed’amortissement peut etre introduit pour stabiliser le mouvement.

17

Page 18: Cours de Robotique Avanc ee - isir.upmc.fr Robotique 834(1).pdf · Cours de Robotique Avanc ee Redondance et Optimisation Ph. Bidaud Universit e Pierre et Marie Curie - Paris 6 Master

Figure 8: Illustration d’un champ attractif

Figure 9: Illustration de la partition de l’espace des solutions

18

Page 19: Cours de Robotique Avanc ee - isir.upmc.fr Robotique 834(1).pdf · Cours de Robotique Avanc ee Redondance et Optimisation Ph. Bidaud Universit e Pierre et Marie Curie - Paris 6 Master

2.6.3 Tache secondaire dans l’espace cartesien

Si on introduit une tache primaire :

X1 = J1q (1)

et une tache secondaire :X2 = J2q (2)

comme pour un evitement d’obstacle (voir illustration 10)De (1) on tire :

Figure 10: Illustration de l’evitement d’un obstacle

q = J+1 X1 + (Id − J+

1 J1)Z1

ou Z1 est un vecteur quelconque de Rn.en substituant dans (2) :

X2 = J2J+1 X1 + J2(Id − J+

1 J1)︸ ︷︷ ︸J2

Z1

On determine alors Z1 comme :

Z1 = J+2 (X2 − J2J

+1 X1)− (Id − J+

2 J2)Z2

d’ou :q = J+

1 X1 + (Id − J+1 J1)

[J+

2 (X2 − J2J+1 X1)− (Id − J+

2 J2)Z2

]Si on ne cherche pas a utiliser les mouvements internes (Z2 = 0):

q = J+1 X1 + (Id − J+

1 J1)[J+

2 (X2 − J2J+1 X1)

]Compte-tenu des proprietes de la pseudo-inverse, le terme :

(Id − J+1 J1)J+

2 = (Id − J+1 J1)(J2(Id − J+

1 J1))+

19

Page 20: Cours de Robotique Avanc ee - isir.upmc.fr Robotique 834(1).pdf · Cours de Robotique Avanc ee Redondance et Optimisation Ph. Bidaud Universit e Pierre et Marie Curie - Paris 6 Master

se reduit a :(J2(Id − J+

1 J1))+ = J+2

d’ou la solution pour q :

q = J+1 X1 + J+

2 (X2 − J2J+1 X1)

La formulation generale de la solution est :

q = J+1 X1 + J+

2 (X2 − J2J+1 X1) + (Id − J+

2 J2)Z2

Le mouvement defini par Z2 peut alors etre realise sans interference avec les 2 premierestaches. L’interpretation de cette solution est donnee sur la figure 11.

Figure 11: Illustration de la formulation dans l’espace cartesien

Cette methode permet de realiser les differentes taches lorsque celles-ci sont compat-ibles. Elle conduit a une singulatite algorithmique lorsque les noyaux sont voisins. Lepoint d’intersection est alors tel qu’il induit de tres grandes vitesses articulaires (voirfigure 12)

2.6.4 Autre formulation de la tache secondaire

Pour eviter les singularites algorithmiques une formulation alternative conduit a determinerla solution pour la tache secondaire puis a la projeter sur le noyau de J1. La solution estalors determinee par :

q = J+1 X1 + PN (J1)(J

+2 X2)

Pour des systemes hautement redondant, on peut imaginer que les taches soient encascade et la soultion determinee par :

q = J+1 X1 + PN (J1)(J

+2 X2 + P(N (J1)∩N (J2))Z2)

20

Page 21: Cours de Robotique Avanc ee - isir.upmc.fr Robotique 834(1).pdf · Cours de Robotique Avanc ee Redondance et Optimisation Ph. Bidaud Universit e Pierre et Marie Curie - Paris 6 Master

Figure 12: Illustration d’une singularite algorithmique

Le vecteur Z2 est ici projete sur l’intersection des noyaux de J1 et de J2 pour ne perturberaucune des deux taches. L’illsutration de la methode est donnee sur la figure 13

Figure 13: Illustration de l’utilisation d’une tache secondaire cartesienne

2.7 Augmentation de l’espace operationnel

Une autre solution consiste a etendre l’espace operationnel en ajoutant un objectifcomplementaire a celui de la tache principal X qui introduirait rg(J) = n − m con-traites sur le mouvement. Ces contraintes supplementaires peuvent etre choisies pour

21

Page 22: Cours de Robotique Avanc ee - isir.upmc.fr Robotique 834(1).pdf · Cours de Robotique Avanc ee Redondance et Optimisation Ph. Bidaud Universit e Pierre et Marie Curie - Paris 6 Master

former un systeme A(q)q = 0. Sur l’exemple de la figure 14 on peut choisir de faire quele centre de masse generalisee reste sur l’axe de y.Le vecteur operationnel se trouve ainsi augmente d’un certain nombre de contraintes.

Figure 14: Augmentation de la Jacobienne pour la coordination posture/tache

Xe =(XXc

)la matrice Jacobienne correspondante devient elle aussi etendue :

Je(q) =(J(q)A(q)

)

Si le rang de Je(q) est r = m = n, alors on resoud le probleme cinematique inversecomme :

q = J−1e (q)Xe

Une matrice Jacobienne pour le nombre de contraintes ninimum est donne par :

Je(q) =(J(q)JN(q)

)Pour eviter d’avoir a fixer le nombre de contraintes requis pour former un systeme carre(on peut aussi envisager de former un systeme sur-determine), une alternative qui peutetre preferee consiste a exprimer un objectif secondaire qui serait d’annuler le gradientd’une fonction scalaire g(q) et a le projeter sur le N (J). Le vecteur operationnel est ainsi:

Xe =

(X

∇gN = N (J)t ∂g∂q

= N (J)t∇g

)La matrice N (J) constituant les vecteurs du noyau de J se determine notamment a l’aided’un SVD :

J = UΣV t = U [ΣR , 0](V tR

V tN

)

22

Page 23: Cours de Robotique Avanc ee - isir.upmc.fr Robotique 834(1).pdf · Cours de Robotique Avanc ee Redondance et Optimisation Ph. Bidaud Universit e Pierre et Marie Curie - Paris 6 Master

N (J)t = V tN = (n1, n2, . . . , nn−m)t

En notant ∇gNi= nti∇g les composantes augmentees de Xe, on a :

Xe = JeqX∇gN1

.

.∇gNn−m

=

J

∂∂q∇gN1

.

.∂g∂q∇gNn−m

q

La partie augmentee des colonnes de Je pour obtenir une matrice carree est formee pardeux termes :

∂qj∇gNi

=∂

∂qj(nti∇g) =

∂ni∂qj

t

∇g + nti∂

∂qj∇g

Si l’objectif est d’obtenir un gradient de g nul, on aura donc comme precedemment :

q = J−1e (q)

(X0

)On peut aussi imposer seulement une descente du gradient et on aura alors :

q = J−1e (q)

(X

−α∇gN

)

On pourra alors omettre le terme ∂∂qj∇g dans Je.

2.8 Utilisation de methodes d’optimisation

La resolution du probleme cinematique inverse peut etre realisee a l’aide de methoded’optimisation.

2.8.1 Multiplicateurs de Lagrange

Le methode des multiplicateurs de Lagrange peut etre egalement exploitee. Le problemesera alors pose sous la forme :(

W (q) JJ t 0

)(qλ

)=(

0X

)La resolution de ce systeme d’equation lineaire se fait en particulier a l’aide d’unedecomposition LU .

23

Page 24: Cours de Robotique Avanc ee - isir.upmc.fr Robotique 834(1).pdf · Cours de Robotique Avanc ee Redondance et Optimisation Ph. Bidaud Universit e Pierre et Marie Curie - Paris 6 Master

2.8.2 Programmation lineaire

Des lors ou l’on veut prendre en compte dans la resolution des contraintes d’inegalite(comme les bornes sur les vitesses articulaires). On peut, lors de la programmationlineaire, chercher a minimiser la fonction objectif :

L(δ) = Ktδ

sous les contraintes lineaires :

δX = Jδq−δ < δq < δδ > 0 (6)

Le vecteur K peut etre vu comme le vecteur des raideurs articulaires.

l’algorithme du simplexe (Fonction matlab simplex2p ) est pratiquement toujoursplus performant pour resoudre un LP. Les methodes de point interieur sont qui perme-ttent d’evoluer a l’interieur du polytope des contraintes sont egalement des methodesperformantes.

2.9 Determination des configurations singulieres dans les ma-nipulateurs redondants

Un manipulateur serie non-redondant se trouve dans une configuration singuliere lorsquerg(J) < d (dimension de l’espace de tache). On determine les configurations singulieresalgebriquement en considerant les conditions sur q conduisant a :

det(J) = 0

Pour un manipulateur redondant, le systeme se trouvera dans une configuration singulierelorsque le rang de JJ t est modifie. Cependant, une approche algebrique peut etre renduedelicate (voire impossible) du fait de la complexite des termes de JJ t. On peut utiliserla methode ”‘geometrique”’ suivante.On cherche a determiner le torseur reciproque $R tel que :

$R.$i = 0 ∀i = 1, n

Pour cela, on commence par rechercher les conditions sur $R pour qu’il soit reciproquea un sous-systeme :

τ subc =

$i ∈ τc, i ∈ 1, . . . , n ,∑

i = d

Apres avoir place le systeme dans cette configuration singuliere, on cherche ensuite aidentifier les conditions supplementaires pour que le $R soit egalement reciproque auxtorseurs cinematiques ”‘redondants”’ a partir des equations :

$R.$j = 0 ∀j = 1, n et j 6= i

24

Page 25: Cours de Robotique Avanc ee - isir.upmc.fr Robotique 834(1).pdf · Cours de Robotique Avanc ee Redondance et Optimisation Ph. Bidaud Universit e Pierre et Marie Curie - Paris 6 Master

On montre dans ce qui suit comment cette technique s’applique a un systeme PRRRplan (voir figure 2.9)

La jacobienne ecrite en O4 de ce systeme est :

J = [$1, $2, $3, $4] =(

0 z2 z3 z4

z1 0402 ∧ z2 0403 ∧ z3 0

)

det(JSub) = det($2, $3, $4) = 0 si θ3 = 0

En reportant dans JSub on a :

JSub =

1 1 1−l12Sθ2 −l2Sθ2 0l12Cθ2 l2Cθ2 0

$R

Sub= (Cθ2, Sθ2, 0)

$RSub

est aussi reciproque a $1 si :

$RSub.$1 = 0

La condition supplementaire est θ2 = π/2 + kπ

2.10 Passage des singularites

Dans une configuration singuliere J(q) n’est plus de rang plein. Sa pseudo-inverse J+

n’st pas definie dans une telle configuration. Aussi, on utilise la pseudo-inverse pondereequi est definie de la maniere suivante.Plutot que de chercher la solution a X = Jq telle que min ‖q‖, on determine q quiminimise : ∥∥∥Jq − X∥∥∥2

+ λ2 ‖q‖2

ou λ est une constante non-nulle.Cette quantite est equivalent a : ∥∥∥∥( J

Idλ

)q −

(X0

)∥∥∥∥2

La solution aux moindres carres est donnee par :(JIdλ

)t ( JIdλ

)qa =

(JIdλ

)t ( X0

)

25

Page 26: Cours de Robotique Avanc ee - isir.upmc.fr Robotique 834(1).pdf · Cours de Robotique Avanc ee Redondance et Optimisation Ph. Bidaud Universit e Pierre et Marie Curie - Paris 6 Master

que nous pouvons re-ecrire comme :

(J tJ + λ2Id)qa = J tX

On montre que (J tJ + λ2Id) est non-singuliere. En effet, J ∈ Rm×n et λ2Id ∈ Rn×n et

son rang est n. Aussi, le rang de(JIdλ

)= n. La solution aux moindres carres amortie

(Damped Least Square - DLS dans laquelle λ est le facteur d’amortissement) est :

qa = (J tJ + λ2Id)−1J tX

(J tJ + λ2Id)−1J t = J t(JJ t + λ2Id)

La solution se re-ecrit :qa = J t(JJ t + λ2Id)X

Cette solution est celle donnee par la methode de Levenberg-Marquardt qui peut etrevue comme une interpolation entre une methode de Gauss et de descente de gradient.La valeur du facteur λ peut varier en fonction du residus.Une decompostion en valeurs singulieres permet de comprendre comment agit la DLSpar rapport a la SVD.

(JJ t + λ2Id) = (UΣV t)(V ΣU t) + λ2Id = UΣ2U t + λ2Id = U(Σ2 + λ2Id)Ut

Aussi:J t(JJ t + λ2Id) = V Σ(Σ2 + λ2Id)

−1︸ ︷︷ ︸E

U t = V EU t

E ∈ Rm×n est une matrice diagonale :

E = diag(eii) avec eii =σi

σ2i + λ2

La pseudo-inverse ponderee se calcule de la maniere suivante :

J+ =∑i=1,k

σiσ2i + λ2

viuti

Determination de λ : σi

σ2i +λ2 → 0 quand σi → 0 λ doit donc etre pris tres grand pour

maintenir les vitesses angulaires pres de la singularite.Inversement, loin des singularites λ doit rester tel que σi >> λ alors les composantesσi

σ2i +λ2 ≈ 1

σi

26

Page 27: Cours de Robotique Avanc ee - isir.upmc.fr Robotique 834(1).pdf · Cours de Robotique Avanc ee Redondance et Optimisation Ph. Bidaud Universit e Pierre et Marie Curie - Paris 6 Master

3 Dynamique des systemes redondants et contraints

Ce qui est designe par ”‘modele dynamique”’ d’un systeme mecanique comme les systemesrobotiques est a proprement parler l’ensemble des equations du mouvement qui definissentla valeur des parametres de configuration en fonction du temps. Le modele dynamiquedes systemes constitue un element essentiel pour l’analyse du comportement, la com-mande mais aussi la conception des systemes.

3.1 Principe de dAlembert et travaux virtuels

Le modele dynamique d’un systeme robotique, comme pour tous les systemes de corpsrigides, peut etre etabli par application des theoremes generaux sur l’ensemble du systemeou par utilisation du theoreme de d’Alembert conduisant aux equations d’Euler-Lagrange.D’autres formulations a l’aide du theoreme d’Hamilton ou des moindres contraintes deGauss sont aussi utilisees.

Si on considere le manipulateur forme de corps rigides articules par des liaisons par-faites (comme represente sur la figure 15, ses equations d’Euler-Lagrange sont obtenuestres simplement a partir de l’application du theoreme des travaux virtuels (dans desdeplacements virtuels licites du systeme). Un mouvement virtuel est dit licite pourles liaisons s’il respecte les contraintes induites par les liaisons telles qu’elles existent al’instant t0. Dans un systeme parametre par un ensemble de n parametres qi regroupesdans le vecteur q, les trajectoires virtuelles du systeme a l’instant t est une courbe del’espace des configurations passant par la position reelle q(t) definie en associant a unparametre reel u une position q(u) du systeme telle que :

q(u)u=0 = q(t0)

L’espace tangent a l’espace des parametres definit les deplacements virtuels du systeme.En un point P repere par rapport au point O le deplacement virtuel est defini par :

δ OP (q(u), t = t0) == limu→01

u[OP (q(u), t0)−OP (0)] =

∑i=1,n

∂OP

∂qi

d qidt

=∑i=1,n

∂OP

∂qiδqi

un vecteur du champ de deplacement virtuel. L’hypothese de rigidite entraine que lesvecteurs du champ de deplacement verifie la relation :

δ OP = δ OQ+ PQ ∧ δ Φ

si P et Q sont deux points d’un meme solide et δ Φ le vecteur taux de rotation virtuelle.A proprement parler, δOP est le taux de deplacement. En pratique on utlise l’expressionde deplacement virtuel. On utilise egalement la notion (tout aussi inexacte) de vitessevirtuelle.

Le travail virtuel a l’instant t d’un champ d’actions φ(P ) s’exercant sur A dans lechamp de deplacement δ OP est :

δ W =∫P∈A

φ(P ).δ OPdP

27

Page 28: Cours de Robotique Avanc ee - isir.upmc.fr Robotique 834(1).pdf · Cours de Robotique Avanc ee Redondance et Optimisation Ph. Bidaud Universit e Pierre et Marie Curie - Paris 6 Master

En remplacant dans δW le champ δ OP par son expression particuliere dans le cas d’unsysteme de solides indeformables parametre par q, il vient :

δ W =∫P∈A

φ(P ).

∑i=1,n

∂OP

∂qiδqi

dPou encore en posant :

γi =∫P∈A

φ(P ).

(∂ OP

∂ qiδqi

)dP

δ W =∑i=1,n

γiδqi

γi est l’action generalisee relative a la variable qi. Il s’agit d’une force lorque le parametreest associee a une translation et un couple lorsque ce dernier est une rotation.

Le principe des travaux virtuels s’enonce de la maniere suivante : Il existe un reperede l’espace dans lequel a tout instant pour tout deplacement virtuel d’un systeme, lasomme des travaux virtuels de toutes les actions s’exercant sur le systeme est nulle.

Les equations du mouvement d’un systeme soumis a des actions exterieures (degravite notamment) s’obtiennent tres directement par application du principe des travauxvirtuels qui s’ecrit alors :

δ Wj = δ Wd + δ Wl = 0 ∀q

ou δWj, δWd et δWl designent respectivement le travail virtuel des efforts d’inertie, desefforts donnes et des interefforts de liaison. On peut ecrire la meme chose en termes depuissances virtuelles, ce qui donne :

P∗j = P∗d + P∗l = 0 ∀q

Ces travaux virtuels peuvent etre definis en fonction des actions generalisees associees :

1. les actions donnees sont definies par leurs n actions generalisees Qi telles que :

δ Wd =∑i=1,n

Qiδqi

Pour les actions qui derivent d’un potentiel U(Σ) (comme les actions de gravite),elles s’ecrivent alors :

Qi = −∂U(Σ)

∂ qi

2. les liaisons peuvent introduire si elles ne sont pas parfaites des efforts generalisesde liaison dans un mouvement licite avec les liaisons tel que :

δ Wl =∑i=1,n

Liδqi

28

Page 29: Cours de Robotique Avanc ee - isir.upmc.fr Robotique 834(1).pdf · Cours de Robotique Avanc ee Redondance et Optimisation Ph. Bidaud Universit e Pierre et Marie Curie - Paris 6 Master

3. les actions d’inertie Ji telles que :

δ Wd =∑i=1,n

Jiδqi

peuvent etre obtenues a partir de l’energie cinetique totale du systeme T (Σ) ex-primee en fonction des parametres qi :

Ji =∫

ΣaP .

∂OP

∂ qidm

et se calculent a l’aide des formules de Lagrange :

Ji =d

dt

∂T (Σ)

∂ qi− ∂T (Σ)

∂ qi

Les equations du mouvement s’ecrivent alors tout simplement en considerant en fonctionde chaque parametre generalise et considerant deplacement virtuel licite δqi :

−Ji +Qi + Li = 0

Dans un systeme holonome ou les liaisons sont supposees parfaites on a :

Ji −Qi = 0

Si ce systeme est conservatif; les equations du mouvement sont alors donnees par lesequations de Lagrange :

d

dt

∂T (Σ)

∂ qi− ∂T (Σ)

∂ qi+∂U(Σ)

∂ qi= 0

On peut montrer que ces equations decoulent du principe d’Hamilton (ou principe demoindre action). Ce principe suggere qu’un systeme holonome muni d’un parametragestrict et tel que les actions exterieures (et interieures) derivent d’un potentiel, la tra-jectoire d’un tel systeme rend stationnaire l’integrale a limites fixes du LagrangienL(q, q, t) = E(q, q)− U(q).

L(q, q, t) =∫ t2

t1L(q, q, t)dt

Si on ajoute une force generalisee issue d’un actionneur τi agissant directement sur lavariable qi, alors l’equation du mouvement d’un tel systeme est :

τi =d

dt

∂T (Σ)

∂ qi− ∂T (Σ)

∂ qi+∂U(Σ)

∂ qi

29

Page 30: Cours de Robotique Avanc ee - isir.upmc.fr Robotique 834(1).pdf · Cours de Robotique Avanc ee Redondance et Optimisation Ph. Bidaud Universit e Pierre et Marie Curie - Paris 6 Master

Figure 15: Systeme de manipulation en mouvement libre

3.2 Modele dynamique inverse des systemes series

Si on considere un manipulateur en mouvement libre dont la configuration est definiepar un ensemble q de parametres independants (comme represente sur la figure 15, on a:

1. l’energie potentielle du systeme qui est :

U =∑i=1,n

Ui =∑i=1,n

migtGO

i

-(G0i

1

)= T0i

(Gii

1

): vecteur position de Gi dans R0,

- g: acceleration de la pesanteur.

2. l’energie cinetique:

T =∑i=1,n

Ti =1

2

∑i=1,n

X tiMiXi =

1

2

∑i=1,n

∑j=1,n

Mij(q1, ..., qn)qiqj

On obtient les equations d’Euler-Lagrange d’un tel systeme en calculant :

d

dt(∂T

∂qi) =

d

dt(∑j=1,n

Mij(q1, ..., qn)qj)

d

dt(∂T

∂qi) =

∑j=1,n

Mij qj +∑j=1,n

Mij qj

∂T

∂qi=

∂qi(1

2

∑j=1,n

∑k=1,n

Mjkqj qk) =1

2

∑j=1,n

∑k=1,n

∂Mjk

∂qiqj qk

On a alors :

τi =∑j=1,n

Mij qj +∑j=1,n

∑k=1,n

(∂Mij

∂qkqj qk −

1

2

∂Mjk

∂qiqj qk) +

∂U

∂qi

30

Page 31: Cours de Robotique Avanc ee - isir.upmc.fr Robotique 834(1).pdf · Cours de Robotique Avanc ee Redondance et Optimisation Ph. Bidaud Universit e Pierre et Marie Curie - Paris 6 Master

τi =∑j=1,n

Mij qj +∑j=1,n

∑k=1,n

Hijkqj qk +∂U

∂qi

ou : Hijk = 12(∂Mij

∂qk+ ∂Mik

∂qj− ∂Mjk

∂qi)

Il s’agit d’un systeme d’equations differentielles du second ordre compose des forcesd’inertie, des forces de Coriolis et centrifuge et les forces derivant d’un potentiel U(q)qui sous une forme matricielle s’ecrit:

τ = M(q)q + C(q, q) +N(q)

- M(q) est la matrice des masses generalisees,- C(q, q) : vecteur des effets de Coriolis et effets centrifuges,- N(q): vecteur des efforts generalises de pesanteur (auxquels on peut ajouter les frotte-ments visqueux par exemple).Des lors ou il existe une interaction physique (donnee) entre le systeme et son envi-ronnement, on peut ajouter dans les equations du mouvement les forces generalieesexterieures resultant d’une action exterieure F qui sera exprimee en action generalisee atravers la ”‘Jabobienne du contact”’ transposee:

Q = J tF

On ajoute ici le . pour signifier que les composantes de F sont permutees par rappporta la definition usuelle des composantes d’un torseur.En statique, les efforts actionneurs de commande pour produire les forces d’interactionde l’effecteur avec l’environnement definies par F sont donnes par :

τd = J tF +N(q)

3.3 Modele dynamique cartesien des manipulateurs non-redondants

Un manipulateur sera mis en mouvement defini par q, q, q en produisant des effortsactionneurs tels que :

τd = M(q)q + C(q, q) +N(q)

En procedant dans l’equation pecedente au changement de variable :

X = Jq

X = Jq + J q

L’energie cinetique dans X s’ecrivant :

T =1

2X t(J−1)

tM(J−1)X = X tMxX

on a :τd = M(q)J−1(X − J q) + C(q, q) +N(q)

31

Page 32: Cours de Robotique Avanc ee - isir.upmc.fr Robotique 834(1).pdf · Cours de Robotique Avanc ee Redondance et Optimisation Ph. Bidaud Universit e Pierre et Marie Curie - Paris 6 Master

Ce mouvement peut etre vu comme produit egalement par une action ”‘cartesienne”’ Fdtelle que :

Fd = (J t)−1τd = (J t)−1[M(q)J−1(X − J q) + C(q, q) +N(q))

]Fd = MxX + Cx +Nx

avec :- Mx = (J−1)

tM(q)(J−1),

- Cx = (J−1)tC(q, q)−MxJ(q)q,

- Nx = (J−1)tN(q).

Dans le cas d’un manipulateur au contact avec l’environnement, les forces generaliseespour commander la force exterieure (voir illustration 16) et compenser les actions d’inertiesont :

τc = J tFd + J tFe

Fe represente ici la force exercee par le systeme sur l’environnement.

Figure 16: Illustration d’un manipulateur au contact

3.4 Modele dynamique articulaire des manipulateurs redon-dants

Si le manipulateur est redondant, a la force generalisee de commande des mouvementsde l’effecteur (et eventuellement de l’interaction avec l’environnement) peut etre ajouteeune composante qui permet d’executer un mouvement interne.

τ = τp + τ0

Cependant, ce mouvement ne doit produire aucun effet dynamique sur l’effecteur (aucuneacceleration).

τ = J tFd + J tFe + (1− J tJ t+)︸ ︷︷ ︸P

N(Jt+)

τ0

τh est la force generalisee de commande du mouvement interne.

32

Page 33: Cours de Robotique Avanc ee - isir.upmc.fr Robotique 834(1).pdf · Cours de Robotique Avanc ee Redondance et Optimisation Ph. Bidaud Universit e Pierre et Marie Curie - Paris 6 Master

Pour que cela soit verifie, la pseudo-inverse de J t doit etre dynamiquement compatibleet telle que :

J t+

= J+t = J t = Λ(q)JM−1(q)

ou Λ = Mx(q) = (J(q)M−1(q)J t(q))−1

Les matrices d’energie cinetique sont symetriques donc :

J = M−1(q)J tΛ(q)

Pour mettre en evidence les conditions qui conduisent a un effet dynamique nul desmouvements internes, on peut considerer les relations (l’action exterieure sur le terminaletant prise nulle) :

τ = J tFd + (1− J tJ t+)τ0

τ = M(q)q + C(q, q) +N(q)

En egalant ces 2 equations et en multipliant par JM−1(q), on trouve :

Jq + JM−1C(q, q) + JM−1N(q) = JM−1(q)J tFd + JM−1(q)(1− J tJ t+)τ0

Sachant que :

Jq + J q = X

en substitutant on a :

X − J q + JM−1C(q, q) + JM−1N(q) = JM−1(q)J tFd + JM−1(q)(1− J tJ t+)τ0

soit :

X = −[(JM−1C(q, q)− J q

)+ JM−1N(q)

)] + JM−1(q)J t︸ ︷︷ ︸

Λ−1(q)

Fd + JM−1(q)(1− J tJ t+)τ0

Pour que le terme multipliant τ0 soit nul, il faut verifier :

JM−1(q)− JM−1(q)J t︸ ︷︷ ︸Λ−1

J t+

= 0

La pseudo-inverse de J t qui satisfait cette condition est bien :

J t+

= ΛJM−1(q)

3.5 Modele dynamique operationel des manipulateurs redon-dants

En reprenant l’equation :

X = −[(JM−1C(q, q)− J q

)+ JM−1N(q)

]+ Λ−1(q)Fd + JM−1(q)(1− J tJ t+)τ0

33

Page 34: Cours de Robotique Avanc ee - isir.upmc.fr Robotique 834(1).pdf · Cours de Robotique Avanc ee Redondance et Optimisation Ph. Bidaud Universit e Pierre et Marie Curie - Paris 6 Master

et en multipliant chacun des membres par Λ, on trouve :

Fd = ΛX − ΛJ q + ΛJM−1C(q, q) + ΛJM−1N(q)

Fd = ΛX − ΛJ q + J tC(q, q) + J tN(q) + (1− J tJ t)τ0

Fd = ΛX + µ+ p+ (1− J tJ t)τ0

qui peut etre vue comme la projection du modele dynamique articulaire sur X par J . Jassure le decouplage entre la tache et les mouvements internes d’ajustement.

3.6 Modele dynamique des systemes contraints

3.6.1 Multiplicateurs de Lagrange

Si le systeme est contraint dans son mouvement par des interactions avec l’environnementnotamment (voir illustration 3.6.1), les n parametres du mouvement du systeme ne sontplus independants. Les interactions imposent n−m relations du type :

f(q, t) = 0 ;∂

∂qf(q, t) = 0 p equations pour les contraintes holonomes

h(q, q, t) = 0 l equations pour les contraintes holonomes

Si les contraintes cinematiques ne sont pas integrables ou encore si on ne disposepas des expressions des energies dans un parametrage strict, on est conduit a etablir lesequations du mouvement dans un parametrage surabondant. Pour ce faire on exploite letheoreme des multiplicateurs de Lagrange. On cherche alors un minimum a la fonctionL(q, q, t) sous les contraintes des liaisons supposees lineairement independantes. Si seulesles p contraintes holonomes existent, ces dernieres etant representees par p fonctionsfj(q) j = 1, p continument differentiables, le minimum local de la fonction L(q, q, t) sousles contraintes satisfait les n equations :

d

dt

∂L

∂ qi− ∂L

∂ qi−∑j=1,p

λj∂

∂qifj(q, t) = 0

34

Page 35: Cours de Robotique Avanc ee - isir.upmc.fr Robotique 834(1).pdf · Cours de Robotique Avanc ee Redondance et Optimisation Ph. Bidaud Universit e Pierre et Marie Curie - Paris 6 Master

D’une maniere generale, il decoule du theoreme des multiplicateurs de Lagrange ∃(p+l) =(m− n) = k multiplicateurs scalaires λ tels que :

Q− J + λp∂

∂qf(q, t) + µl h(q, q, t) = 0

Les contraintes sont introduites avec leurs coefficients associes qui deviennent desinconnues.

En regroupant l’ensemble des equations de contraintes dans le systeme d’equationshomogenes :

A(q)q = 0 A ∈ Rk×n

ou A(q) represente la Jacobienne des contraintes cinematiques imposees sur les mouve-ments du systeme, les equations du mouvement sont :

J −Q− Atλ = 0

Les composantes en qi s’ecrivent :

Ji = Qi +∑j=1,k

λjaji

avec : A = |aij| Si on note le mouvement compatible avec les contraintes q∗ et dont telque A(q)q∗ = 0 pour des liasisons parfaites on a :

P∗ = (J −Q)q∗ = 0 ∀q∗ A(q)q∗ = 0

Les actions representees par la fonction Φ(q) = (J −Q) sont telles qu’elles ne produisentaucune puissance dans le mouvement compatible avec les contraites du systeme (ellessont ⊥ au mouvement).Ceci conduit a dire que Φ(q) a un noyau et qu’il peut etre exprime sous la forme d’unecombinaison des vecteurs de base :

Φ(q) =∑

j=1,k=dim(ker(φ))

λjφj

ou en passant aux composantes :

(Ji −Qi) =∑

j=1,k=dim(ker(φ))

λjφj,i =∑j=1,k

λjaji

car une base du noyau est donnee par A(q)q = 0

Pour comprendre le sens de cette expression il convient de regarder A(q) comme unensemble de vecteurs colonnes chacun d’eux representant le gradient d’une fonctionscalaire de contrainte C(q) = 0. Ces gradients representent les normales aux hyper-surfaces de contraintes dans l’espace des coordonnees generalisees et definissent les di-rections desquelles les mouvements sont interdits. A titre d’exemple, on peut considererle manipulateur plan RP en contact ponctuel avec une surface vertical (voir figure 17.La matrice Jacobienne du systeme est :

35

Page 36: Cours de Robotique Avanc ee - isir.upmc.fr Robotique 834(1).pdf · Cours de Robotique Avanc ee Redondance et Optimisation Ph. Bidaud Universit e Pierre et Marie Curie - Paris 6 Master

Figure 17: Exemple du robot RP plan en contact ponctuel avec l’environnement

J =

1 0−r2Sθ1 Cθ1

r2Cθ1 Sθ1

La contrainte s’exprime comme :

f1(θ1, r2) = r2Cθ1 = cte

∂f1

∂θ1

= −r2Sθ1∂f1

∂r2

= Cθ1

La Jacobienne des contraintes A(q) est :

A(q) = (−r2Sθ1, Cθ1)

Son noyau N (A) represente le mouvement articulaire qui satisfait la contrainte :

N (A) =(Cθ1

r2Sθ1

)

q = α(Cθ1

r2Sθ1

)et son complement N (A))⊥ le mouvement orthogonal a la contrainte (illicite avec lacontainte):

N (A))⊥ = (r2Sθ1,−Cθ1)

Par ailleurs :R(At) = (N (A))⊥

Au sens de la dualite cinematique et statique R(At) sont des actions transmises quimaintiennent l’effecteur sur la surface de contrainte.

Les equations du mouvement peuvent donc s’ecrire :

J = Q+ Atλ

36

Page 37: Cours de Robotique Avanc ee - isir.upmc.fr Robotique 834(1).pdf · Cours de Robotique Avanc ee Redondance et Optimisation Ph. Bidaud Universit e Pierre et Marie Curie - Paris 6 Master

La composante en qi s’ecrit par les expressions de Lagrange :

d

dt

(∂T

∂qi

)− ∂T

∂qi+∂U

∂qi= τi +

∑j=1,k

λjaji

3.6.2 Reduction du modele dynamique par resolution des multiplicateursde Lagrange

Le modele dynamique pour un systeme de manipulation contraint par une interactionest forme par le systeme d’equations :(

M(q)q + C(q, q) +N(q) = τ + Atλ (∗)A(q)q = 0

)ou encore en differentiant A(q) = 0 on a :

Aq + Aq = 0

Le modele dynamique peut etre mis sous la forme :(M(q) −At(q)A(q) 0

)(qλ

)+(C(q, q) +N(q)

Aq

)=(τ0

)Si M(q) et A(q) sont de rang plein, il existe une solution a q et λ.

Les multiplicateurs de Lagrange peuvent etre resolus en considerant qu’on a :

q = M−1(q)[τ − (C(q, q) +N(q) + Atλ

]et en reportant dans l’equation precedente

AM−1(q) [τ − (C(q, q) +N(q)] + AM−1(q)Atλ+ Aq = 0

on obtient en supposant AM−1(q)At de rang plein :

λ =(AM−1(q)At

)−1 [AM−1(q) [−τ + (C(q, q) +N(q)]− Aq

]En substituant les λ dans l’equation (∗), on a :

M(q)q+C(q, q)+N(q) = τ+At(AM−1(q)At

)−1 [AM−1(q) [−τ + (C(q, q) +N(q)]− Aq

]M(q)q+At

(AM−1(q)At

)−1Aq+

[1− At

(AM−1(q)At

)−1AM−1(q)

]︸ ︷︷ ︸

P

C(q, q)+PN(q) = Pτ

En notant que :

M(q)q + At(AM−1(q)At

)−1Aq = PM(q)q

les equations du mouvement se reduisent a :

PM(q)q + PC(q, q) + PN(q) = Pτ

qui sont les equations du mouvement projetees dans l’espace des mouvements transmis-sibles.

37

Page 38: Cours de Robotique Avanc ee - isir.upmc.fr Robotique 834(1).pdf · Cours de Robotique Avanc ee Redondance et Optimisation Ph. Bidaud Universit e Pierre et Marie Curie - Paris 6 Master

3.6.3 Resolution des accelerations generalisees par optimisation

Le modele dynamique du systeme contraint :(M(q) −At(q)A(q) 0

)(qλ

)=(−C(q, q)−N(q) + τ

−Aq

)peut etre mis sous la forme :

W (q)x = u

Accelerations generalisees et forces de contact peuvent alors etre resolues simultanementpar une pseudo-inverse de W .

x = W+u+ (Id −W+W )y

ou y est un vecteur arbitraire.

3.6.4 Reduction des equations par le complement orthogonal

On peut aussi definir un complement orthogonal a A(q) qui est constitue par les vecteursdu noyau N (A) = S(q) et donc tel que :

A(q)S(q) = 0

S(q) constitue est la base des mouvements independants compatibles avec les contraintes(pseudo-vitesses) du systeme:

q = S(q)ν

ν = S(q)α α ∈ Rm

Le complement orthogonal peut etre utilise pour reduire le modele dynamique d’unsysteme contraint. En derivant la relation entre les vitesses generalisees et les pseudo-vitesses on a :

q = S(q)ν + S(q)ν

En premultipliant les equations de la dynamique par St et en sustituantν, les equationsse reduisent a :

StM(q)S(q)ν + StC(q, q) + StM(q)S(q)ν + StN(q) = StB(q)τ

soit encore, en posant :- M(q) = StM(q)S(q)- C(q, q) = StC(q, q) + +StM(q)S(q)ν- N(q) = StN(q)

M(q)ν + C(q, q) + N(q) = τ

L’illustration de ce principe peut etre faite a l’aide du robot plan 2R pour lequel unparametrage surabondant utilisant la position et l’orientation de chacun des segments(de longueur li et de demi-longueur l′i i = 1, 2) et consideres comme libres par rapport a

38

Page 39: Cours de Robotique Avanc ee - isir.upmc.fr Robotique 834(1).pdf · Cours de Robotique Avanc ee Redondance et Optimisation Ph. Bidaud Universit e Pierre et Marie Curie - Paris 6 Master

R0 serait introduit. Ainsi, q = [θ1, xG1 , yG1 , θ2, xG2 , yG2 ]. La matrice M(q) et les vecteursC(q, q), N(q) de ce systeme sont :

M(q) = diag(I1,m1,m1, I2,m2,m2) C(q, q) = 0 N(q) =

00

−m1g00

−m2g

Les equations de contrainte pour un tel systeme sont :

C(q) =

f1 = xG1 − l′1Cθ1 = 0f2 = yG1 − l′1Sθ1 = 0

f3 = xG2 − l′2Cθ12 − xG1 − l′1Cθ1 = 0f4 = xG2 − l′22θ12 − yG1 − l′1Sθ1 = 0

d’ou la matrice A(q) :

A(q) =

l′1Sθ1 1 0 0 0 0−l′1Cθ1 0 1 0 0 0

l′1Sθ1 − l′2Sθ12 −1 0 −l′2Sθ12 1 0l′1Cθ1 − l′2Cθ12 0 −1 −l′2Sθ12 0 1

Les equations de contrainte cinematique peuvent encore se mettre sous la forme :

Adqd + Aiqi =

1 0 0 00 1 0 0−1 0 1 00 −1 0 1

xG1

yG1

xG2

yG2

+

l′1Sθ1 0−l′1Cθ1 0

l′1Sθ1 − l′2Sθ12 −l′2Sθ12

l′1Cθ1 − l′2Cθ12 −l′2Sθ12

(θ1

θ2

)= 0

Sachant que :xG1

yG1

xG2

yG2

= −

1 0 0 00 1 0 01 0 1 00 1 0 1

l′1Sθ1 0−l′1Cθ1 0

l′1Sθ1 − l′2Sθ12 −l′2Sθ12

l′1Cθ1 − l′2Cθ12 −l′2Sθ12

(θ1

θ2

)

le complement orthogonal S(q) tel que :

θ1

xG1

yG1

θ2

xG2

yG2

= S(q)

(θ1

θ2

)

est:

S(q) =

1 0−l′1Sθ1 0l′1Cθ1 0

0 1−l1Sθ1 − l′2Sθ12 l′2Sθ12

l1Cθ1 + l′2Cθ12 l′2Cθ12

39

Page 40: Cours de Robotique Avanc ee - isir.upmc.fr Robotique 834(1).pdf · Cours de Robotique Avanc ee Redondance et Optimisation Ph. Bidaud Universit e Pierre et Marie Curie - Paris 6 Master

S(q) =

0 0−θ1l

′1Cθ1 0

−θ1l′1Sθ1 00 0

−θ1l1Cθ1 − (θ1 + θ2)l′2Cθ12) −(θ1 + θ2)l′2Cθ12

−θ1l1Sθ1 − (θ1 + θ2)l′2Sθ12 −(θ1 + θ2)l′2Sθ12

Ainsi la matrice M(q) et les vecteurs C(q, q), N(q) de ce systeme sont en fonction desparametres independants (θ1, θ2):

M(q) = StM(q)S(q)

C(q, q) = StC(q, q) + +StM(q)S(q)ν

N(q) = StN(q)

Un autre exemple que nous considererons est celui d’un robot mobile de type charrepresente sur la figure 18.

Figure 18: Exemple d’un robot mobile a roues de type char

On peut introduire comme parametres de configuration d’un tel systeme q = (xc, yc, φ, θd, θg)Les equations de contraintes traduisent ici :- qu’il n’y a pas de glissement lateral :

v(0)o .j = 0

- que l’entrainement se fait sans glissement :

v(0)Id∈Rd

= v(0)Ig∈Rg

= 0

Ces contraintes cinematiques conduisent au systeme d’equations scalaires :

A(q) =

−Sφ Cφ −d 0 0−Cφ −Sφ b r 0−Cφ −Sφ b 0 r

S(q) = N(A) =??

40

Page 41: Cours de Robotique Avanc ee - isir.upmc.fr Robotique 834(1).pdf · Cours de Robotique Avanc ee Redondance et Optimisation Ph. Bidaud Universit e Pierre et Marie Curie - Paris 6 Master

La matrice d’energie cinetique est :

M(q) =

m 0 2mdSφ 0 00 m −2mdCφ 0 0

2mdSφ −2mdCφ I 0 00 0 0 IR 00 0 0 0 IR

ou :- I = Ic + 2mR(d2 + b2) est le moment d’inertie de l’ensemble,- m = mc + 2mR

C(q, q) =

2mφ2Cφ2mφ2Sφ

000

B(q) =

0 00 00 01 00 1

Un autre exemple d’utilisation du complement orthogonal pour la reduction du modeledynamique est donne par un systeme en chaıne fermee. On peut en effet considerer lafermeure de chaıne apres avoir pratique une coupure virtuelle (voir illustration figure19), on peut proceder a une reduction du parametrage pour tenir compte des contraintescinematiques en utilisant le complement a A(q)q = 0. Pour le systeme represente sur la

Figure 19: Systeme arborescent obtenu apres une coupure virtuelle

figure 3.6.4, les equations du mouvement peuvent etre etablies dans un premier temps en

41

Page 42: Cours de Robotique Avanc ee - isir.upmc.fr Robotique 834(1).pdf · Cours de Robotique Avanc ee Redondance et Optimisation Ph. Bidaud Universit e Pierre et Marie Curie - Paris 6 Master

utilisant une coupure virtuelle au point P et le systeme de parametres q = [θ11, θ

12, θ

21, θ

22].

Puis une reduction du parametrage peut etre realisee a l’aide des relations de contrainte: (−l11Sθ1

1 − l12Sθ112 −l2Sθ1

12 l12Sθ21 + l12Sθ

212 l22Sθ

212

l11Cθ11 + l12Cθ

112 l12Cθ

112 −l12Cθ2

1 − l12Cθ212 −l22Sθ2

12

)θ1

1

θ12

θ21

θ22

=(

00

)

42

Page 43: Cours de Robotique Avanc ee - isir.upmc.fr Robotique 834(1).pdf · Cours de Robotique Avanc ee Redondance et Optimisation Ph. Bidaud Universit e Pierre et Marie Curie - Paris 6 Master

4 Commande des systemes redondants

La commande des robots manipulateurs redondants peut etre realisee pour un mouve-ment desire de differentes manieres. La technique la plus simple a mettre en oeuvreconduit a exploiter une commande cinematique sur la base d’un asservissement en po-sition. Les modeles exploites sont alors ceux introduits dans le premier chapitre de cedocument. Une compensation des effets dynamiques peut s’averer necessaire. Aussi,nous considererons dans ce qui suit plusieurs possibilites pour decrire une trajectoiredans le cadre d’une commande dynamique de maniplateurs redondants.

Dans ce cas le systeme sera commande directement par l’intermediaire des couplesarticulaires qui sont calcules (pour des mouvements libres) a partir d’une estimee de lamatrice M(q) et des effets centrifuges/coriolis et de gravite:

τ = M(q)y + C(q, q) + N(q)

La variable y est la variable de commande qui est dans le cas d’une estimation parfaite dela dynamique du systeme directement l’acceleration. En utilisant une telle commande,on montre tres directement que le systeme devient un systeme lineaire et decouple. Il sereduit alors a un double integrateur.

4.1 Commande en acceleration des manipulateurs redondants

Pour un manipulateur redondant, ce principe de commande se met en oeuvre a partir del’acceleration desiree de l’effecteur Xd. L’acceleration de commande Xc peut etre definiecomme :

Xc = Xd +Kv(Xd − X) +Kp(Xd −X)

Les matrices Kp et Kv sont des matrices des gains agissant sur les erreurs en posi-tion/orientation de l’effecteur et sur l’erreur de vitesse lineaire/angulaire de l’effecteur.L’erreur en orientation depend naturellement du parametrage choisi pour definir la con-figuration angulaire de l’effecteur (angles d’Euler, parametres d’Euler, Quaternions).Sachant que :

Xc = Jqc + J q

on peut determiner qc pour un systeme redondant comme :

qc = J+(Xc − J q) + qh

- J+ est ici une pseudo-inverse ponderee pour etre dynamiquement consistante (voirsection modelisation dynamique)- qh est une acceleration interne qui peut etre determinee a l’aide du projecteur orthogonalsur le noyau de J d’un vecteur z2 ∈ Rn :

qh = (Id − J+J)z2

Notons que le choix de z2 est conditionne au choix d’un vecteur z1 (qui serait tel quez1 = α∇g qui serait projete sur le noyau de J pour definir les vitesses internes au systeme.

q = J+Xc + (Id − J+J)z1

43

Page 44: Cours de Robotique Avanc ee - isir.upmc.fr Robotique 834(1).pdf · Cours de Robotique Avanc ee Redondance et Optimisation Ph. Bidaud Universit e Pierre et Marie Curie - Paris 6 Master

On montre que :z2 = J+J(q − z1) + z1

On a alors la commande :

τ = M(q)(Xc − J q − qh) + C(q, q) +N(q)

4.2 Commande en vitesse des manipulateurs redondants

Supposons qu’une trajectoire cartesienne desiree de l’effecteur Xd soit donnee, une vitessede commande peut etre definie comme la somme d’une compensation de l’erreur etposition et un terme feedforward en vitesse:

Xc = Xd +Kxp(Xd −X)

ou Kxp est une matrice definie positive de gains agissant sur l’erreur en position et enorientation de l’effecteur. Les vitesses articulaires de commande qc peuvent etre deduitespar exemple comme :

qc = J+Xc + (Id − J+J)α∇g

Une loi de commande dynamique avec correction des vitesses articulaires peut alors etreformulee comme :

τ = M(q)qc + C(q, q) +N(q) +Kqp(qc − q) +Kqv(qc − q)

Kqp et Kqv etant des matrices de gains.Cette methode presente comme desavantage de necessiter la derivation numerique etl’integration numerique de qc. Par ailleurs, elle ne pas prendre en compte directementl’acceleration desiree.On peut eviter les operations de derivation et d’integration numerique en considerantpar exemple la commande :

τ = M(q)qc + C(q, q) +N(q) +Kqv(qc − q)

Sachant que par derivation on a la relation :

Xc = Xd +Kxpe

avec e = (Xd −X).On peut etablir que :

qc = qd + J+Kxve

De la meme maniere on peut etablir que :

qc = qd + J+Kxpe

Ainsi par substitution on obtient la commande :

τ = M(q)(qd + J+Kxpe) + C(q, q) +N(q) +Kqv(qd − q) +KqvJ+Kxpe

44

Page 45: Cours de Robotique Avanc ee - isir.upmc.fr Robotique 834(1).pdf · Cours de Robotique Avanc ee Redondance et Optimisation Ph. Bidaud Universit e Pierre et Marie Curie - Paris 6 Master

4.3 Commande en couple des manipulateurs redondants

Nous avons etabli le modele dynamique cartesien des manipulateurs sous la forme :

Fd = ΛX + µ+ p+ (1− J tJ t)τ0

τ0 ∈ Rn est un vecteur arbitraire qui peut etre pris par exemple comme :

τ0 = −Kqv q + α∇g

Sur la base de ce modele, on peut definir une loi de commande telle que :

Fd = ΛXr + µ+ p+ (1− J tJ t)τ0

avec :Xr = Xd +Kxv(Xd − X) +Kxp(Xd −X)

Ce type de commande peut etre simplifiee si une compensation des termes de gravite etde Coriolis/centrifuge est faite dans l’espace articulaire.

45

Page 46: Cours de Robotique Avanc ee - isir.upmc.fr Robotique 834(1).pdf · Cours de Robotique Avanc ee Redondance et Optimisation Ph. Bidaud Universit e Pierre et Marie Curie - Paris 6 Master

5 Systemes paralleles et systemes de manipulation

coordonnee

5.1 Systemes paralleles

5.1.1 Exemples de systemes paralleles

On designe par systemes paralleles tous les mecanismes dont la topologie est telle que lecorps manipule est relie au corps de reference par des chemins (presentant des bouclescinematiques ou pas) disposes en parallele. Ces systemes sont tres utilises en robotiqueen raison notamment de leurs proprietes dynamiques. La figure 5.1.1 illustre de telssystemes : La cinematique d’un systemeparallele peut etre telle que sa mobilite est egale

Figure 20: Illustrations de systemes paralleles

a la dimension du groupe des deplacements SE(2) ou SE(3) ou dans un sous-groupede deplacements. Dans ce dernier cas, le systeme sera dit contraint. Si sa mobilite estsuperieure a la dimension de SE(2) ou SE(3), le systeme sera redondant. Ces differentessituations sont illustrees sur la figure 21

Figure 21: (b) Systeme plan contraint - (c) Systeme plan redondant

46

Page 47: Cours de Robotique Avanc ee - isir.upmc.fr Robotique 834(1).pdf · Cours de Robotique Avanc ee Redondance et Optimisation Ph. Bidaud Universit e Pierre et Marie Curie - Paris 6 Master

5.1.2 Modele cinematique des systemes paralleles

La methode de determination du modele cinematique des robots paralleles developpeedans ce qui suit utilise le principe des torseurs reciproques. Nous commencerons partraiter le cas d’un systeme dont la mobilite est egale a la dimension de SE(2) ou SE(3).

D’une maniere generale le modele cinematique direct d’un chemin ′j′ d’un systemeparallele peut s’ecrire sous la forme :

∑i=1,m

θji $ji = Ω$

Si les $ji sont lineairement independants, on determine $Rji , on determine dans SE(2) ou

SE(3) le torseur reciproque:

$Rj

i .$jk = 0, k 6= i pour k = 1, ..., dim(SE(2))ouSE(3)

En mutlipliant ce torseur a droite et a gauche dans l’equation de chaıne ouverte, on a :

θji ($ji .$

Rj

i ) = Ω$.$Rj

i

En repetant pour toutes les liaisons actives, on obtient le modele cinematique sous laforme canonique:

Bq = D ˜X

˜X = (vx, vy, vz, ωx, ωy, ωz)t

- B est une matrice diagonale regroupant les termes $Rji .$

ji .

B =

$R

11.$

11 0 0 0 0 0

0 $R12.$

11 0 0 0 0

. . . . . .0 0 0 0 0 $R

Ng .$

Ng

- D, est de dimension (Ng ∗m), les coefficients sont Ng torseurs reciproques:

D =(

($R11)t ($R2

1)t . . ($Rg

N)t)t

47

Page 48: Cours de Robotique Avanc ee - isir.upmc.fr Robotique 834(1).pdf · Cours de Robotique Avanc ee Redondance et Optimisation Ph. Bidaud Universit e Pierre et Marie Curie - Paris 6 Master

Figure 22: Systeme parallele 3RPR

Exemple : Le systeme 3RPR de la figure 22 presente une mobilite de 3. On utiliseracomme variables actives les actionneurs lineaires de chaque chemin. Pour chaque cheminj on a l’equation de chaıne ouverte suivante :

θj1$j1 + rj2$j2 + θj3$j3 = Ω$ ∀j = 1, 2, 3

En notant les composantes des vecteurs OPBj et BjAj dans RP

OPBj =

ajbj0

et BjAj =

UjVj0

Pour eliminer les variables, on utilisera le torseur reciproque $R

j2 tel que :

$Rj

2.$jk = 0, pour k = 1, 3

et qui est :

$Rj

2 = (Cθj1, Sθj1, ajCθj1 )t

Ce torseur peut etre interprete physiquement comme l’action transmise par le chemin jsur SP par l’actionneur de la liaison active consideree.Le systeme etant symetrique, on obtient donc directement le modele cinematique quiprend la forme suivante : 1 0 0

0 1 00 0 1

︸ ︷︷ ︸

B

r12

r22

r32

︸ ︷︷ ︸

q

=

Cθ11 Sθ1

1 a1Cθ11

Cθ21 Sθ2

1 a2Cθ21

Cθ31 Sθ3

1 a3Cθ31

︸ ︷︷ ︸

D

ωzvxvy

︸ ︷︷ ︸

˜X

Les lignes de la matrice D sont les actions transmises par les actionneurs sur SP pourcommander son mouvement.

48

Page 49: Cours de Robotique Avanc ee - isir.upmc.fr Robotique 834(1).pdf · Cours de Robotique Avanc ee Redondance et Optimisation Ph. Bidaud Universit e Pierre et Marie Curie - Paris 6 Master

Pour le systeme plan pris comme exemple, le mouvement de SP sera completement com-mandable si les 3 actions (les 3 forces) soient lineairement independantes.

Ce meme modele aurait pu etre etabli par en considerant que la vitesse de chaque pointBj s’ecrit vectoriellement :

vBj= vOP

+BjOP ∧ ω

vBj= vOP

+ BjOP ω

vBj= (Id, BjOP )X = Ej

˜X

On peut eliminer les variables passives dans le cas ou les actionneurs lineaires sont reliesa SP et SO par des liaisons de rotation d’axes concourants en Aj et Bj en consederantque la vitesse du points Bj par rapport a RO s’ecrit :

vBj= rj2z

j2 + ωSj

3/S0∧ rj2z

j2

On obtient donc l’egalite :

rj2zj2 + ωSj

3/S0∧ rj2z

j2 = vOP

+BjOP ∧ ω

En projetant cette equation sur l’axe zj2, on a :

rj2 = (zj2, OPBj ∧ zj2)(vOP

ω

)On retrouve le meme resultat que precedemment. L’une et l’autre des 2 methodes sontutilisables pour obtenir les modeles cinematiques des plates-formes de Gough-Stewart.

5.1.3 Modele cinematique des systemes paralleles contraints

Si le systeme est contraint la methode precedente peut etre tres facilement adaptee.Pour definir et illustrer les principes proposes nous utiliserons l’exemple du systeme delocomotion represente sur la figure 23.

L’equation de chaıne relative a chaque chemin :

αj$jα −Rθj$jθ + φi$jφ = Ω$

Si toutes les roues sont commandees ainsi que les directions, on a alors le modelecinematique entree/sortie suivant:

$R(1)

φ .$(1)φ 0 0 0 0 0

0 −R$R(2)

θ .$(2)θ 0 0 0 0

0 0 $R(1)

φ .$(1)φ 0 0 0

0 0 0 −R$R(2)

θ .$(2)θ 0 0

0 0 0 0 $R(1)

φ .$(1)φ 0

0 0 0 0 0 −R$R(2)

θ .$(2)θ

φ1

θ1

φ2

θ2

φ3

θ3

=

($R(1)

φ )t

($R(1)

θ )t

($R(2)

φ )t

($R(2)

θ )t

($R(3)

φ )t

($R(3)

θ )t

uvΦ

49

Page 50: Cours de Robotique Avanc ee - isir.upmc.fr Robotique 834(1).pdf · Cours de Robotique Avanc ee Redondance et Optimisation Ph. Bidaud Universit e Pierre et Marie Curie - Paris 6 Master

11$ 11$ 11$

22 $

22 $

22 $33$

33$

33$

P$

platform

ground

i1

j1

B1

b1

i

j

a3

c3

1

B3G

B2

(a)(b)

Figure 23: (a) Plate-forme mobile avec 3 caster-wheels et (b) son schema cinematiqueequivalent

Sahant que la matrice Jacobienne pour le chemin j est dans le repere Rj = (Bj, uj, vj, k):

Ji =

1 0 10 1 0bi 0 0

en ne considerant que les seules roues commandees, le modele cinematique s’ecrit :−R 0 0

0 −R 00 0 −R

θ

1

θ2

θ3

=

Cα1 Sα1 a1Sα1

Cα2 Sα2 a2Sα2 − c2Cα2

Cα3 Sα3 a3Sα3 − c3Cα3

uvΦ

Si on supprime les fourches des roues arrieres et que les roues sont montees sur un memeaxe (comme montre sur la figure 24), le modele cinematique precedent se reduit a :−R 0 0

0 −R 00 0 −R

θ

1

θ2

θ3

=

Cα1 Sα1 a1Cα1

1 0 −c2

1 0 −c3

uvΦ

Nota : Plus loin nous avons adopte les notations suivantes : a1Cα1 = h c2 = d c3 =−d α1 = φ Si φ 6= 0, D definit un systeme de forces de rang 3 (det(D) 6= 0). On pourraiten conclure que le mouvement de SP est completement commandable, ce qui n’est pasle cas. Ceci releve du fait que les contraintes naturelles dues au non-glissement lateraldes roues ne sont pas prises en compte explicitement dans le modele cinematique. Cescontraintes limitent la mobilite a systeme a 2. Les composantes de X ne sont donc pasindependantes. Il faut en effet tenir compte (comme on le fait dessous) du fait que :

TC = T (1)C ∩ T (2)

C ∩ T (3)C

Pour cela, on peut proceder de la maniere suivante. On ecrit les Jacobiennes relatives auxdifferents chemins par exemple dans des reperes lies a chacune des roues (par exemple

50

Page 51: Cours de Robotique Avanc ee - isir.upmc.fr Robotique 834(1).pdf · Cours de Robotique Avanc ee Redondance et Optimisation Ph. Bidaud Universit e Pierre et Marie Curie - Paris 6 Master

i

j G

dd

a1

1

2 3

11$

11$11$

22 $

22 $

33$

33$

P$

platform

ground

(a)(b)

Figure 24: (a) Plate-forme mobile contrainte et (b) son schema cinematique equivalent

(0i, ui, vi, k)). on a :

J1 =

0 1 11 0 00 0 b

J2,3 =

0 11 00 0

Si on note T (i)

C le torseur cinematique du mouvement absolu de SP par rapport a S0

resultant de la composition des mouvements introduits par les liaisons decrites par lesJacobiennes Ji, le mouvement de SP par rapport a S0 est tel que :

TC = T (1)C ∩ T (2)

C ∩ T (3)C

Ici, dim(T (2)C ) = dim(T (2)

C ) < dim(SE(2))Les contraintes imposees par les liaisons equivalentes aux chemins 2 et 3 sur le mou-

vement de SP sont definies, en terme de mouvement incompatible, par un complementorthogonal aux torseurs de Ji. Ici, ce systeme se reduit au singleton :

(Ji)⊥ =

001

i = 2, 3

Le complement reciproque a (Ji)R = A(Ji)

⊥, A definissant la matrice de permutationrepresente les actions ”‘naturelles”’ passives (actions qui ne font pas travailler les liaisons)transmises par le chemin cinematique.

(Ji)R = [$Rp ] =

010

i = 2, 3

Les contraintes passives developpees par le chemin 2 et 3 etant d’ordre le plus eleve (etidentiques par ailleurs), ce sont elles qui definissent la mobilite relative de SP par rapporta S0 ainsi complementairement les mouvements non-transmissibles. Ici :

dim(TC) = dim(T (1)C ∩ T (2)

C ∩ T (3)C ) = 2

51

Page 52: Cours de Robotique Avanc ee - isir.upmc.fr Robotique 834(1).pdf · Cours de Robotique Avanc ee Redondance et Optimisation Ph. Bidaud Universit e Pierre et Marie Curie - Paris 6 Master

dim(T ⊥C) = dim(T ⊥(1)

C ∩ T ⊥(2)

C ∩ T ⊥(3)

C ) = 1

Les contraintes passives imposees par les chemins 2 et 3 peuvent etre exprimees dans unmeme repere en utilisant les operateurs adjoints AdTRi,RP

AdTRi,RP=

1 0 00 1 0

(−1)(i+1)d 0 1

Wi = [($Rp )i] =

010

i = 2, 3

Une base pour ces contraintes :

BW =

010

Si d’une maniere generale les coordonnees pluckeriennes des torseurs reciproques associesaux liaisons actives ont pour composantes dans le plan $R = (u, v, n∗), les torseurstransmissibles (activement) par les chaınes contraintes sont tels que :

(u, 0, n∗)t = B⊥W(u, v, n∗)t

Notons que si la roue 1 etait sans fourche et de meme direction que les roues arrieres,nous aurions :

W1 = [($Rp )1] =

01b

La base des contraintes naturelles seraient alors (dans le meme repere):

BW =

0 01 00 1

Si nous considerons un systeme avec une fourche avant, les torseurs reciproques cor-

respondants aux liaisons actives (les deuxiemes liaisons de chaque chaıne) des chemins1, 2, 3 sont dans RP .

$R(2)

a1 =

cosφ0h

$R(2)

a )2 =

10d

($R(2)

a )3 =

10−d

Le modele cinematique mis sous la forme :

Bqa = D ˜X

pour un systeme comportant 3 roues motorisee est :−R 0 00 −R 00 0 −R

θ1

θ2

θ3

=

cosφ h1 d1 −d

( vxωz

)

52

Page 53: Cours de Robotique Avanc ee - isir.upmc.fr Robotique 834(1).pdf · Cours de Robotique Avanc ee Redondance et Optimisation Ph. Bidaud Universit e Pierre et Marie Curie - Paris 6 Master

Le rang de D est egal a 2, les contraintes actives ne sont pas lineairement independantes.La mobilite reelle du systeme est 2. Pour un systeme avec les seules roues arrieresmotorisees, le modele cinematique se reduit a :(−R 0

0 −R

)(θ2

θ3

)=(

1 d1 −d

)(vxωz

)La mobilite reste inchangee.

Ici, si d 6= 0 (ce qui est le cas par construction) le rang de D n’est jamais modifie.

5.1.4 Modele cinematique des systemes paralleles redondants

Dans le cas ou l’un des chemins (ou plusieurs) presente une redondance cinematique, ilconvient de determiner pour pouvoir appliquer la methode des torseurs reciproques unebase de torseurs des liaisons correspondant a un chemin j de dimension egale a celle dugroupe des deplacements dans lequel le systeme evolue. (voir principe de determinationde cette base dans la these de V. Pasqui).

5.1.5 Modele statique des systemes paralleles

Le modele statique des robots paralleles s’etablit tres facilement a partir des equationsd’equilibre de SP . En notant TsCj→SP

les torseurs des actions transmises par les brassur SP (voir figure 25) l’equilibre statique de SP se traduit par :

Figure 25: Statique d’une plate-forme de Stewart

TsSP→Ext =∑j=1,n

TsCj→SP

53

Page 54: Cours de Robotique Avanc ee - isir.upmc.fr Robotique 834(1).pdf · Cours de Robotique Avanc ee Redondance et Optimisation Ph. Bidaud Universit e Pierre et Marie Curie - Paris 6 Master

Lorsque les actions sont decomposees en actions elementaires d’amplitudes fj selon lestorseurs statiques $j on est conduit a :∑

j=1,n

fj $j = −FExt→SP= FSP→Ext

[$1, $2, $3, . . . , $n

]︸ ︷︷ ︸

Dt

f1

f2

.

.fn

=

fxfyfzmx

my

mz

Pour l’exemple du systeme plan considere au-dessus, le modele statique est :

fxfymz

=

Cθ1

1 Cθ21 Cθ3

1

Sθ11 Sθ2

1 Sθ31

p1︸︷︷︸(OB1∧z12).z0

p2 p3

f1

f2

f3

avec :

pj = (OBj ∧ zj2).z0 = (‖OBj‖ sinαj)z0

On peut aussi etablir cette relation en utilisant le principe des puissances virtuelles. Danstout deplacement compatible avec les liaisons, on a :

f tq = F tSP→Ext

˜X ∀ ˜X

Si le systeme est non-singulier, compte-tenu du modele cinematique on peut etablir larelation de transmission d’effort :

f tB−1D ˜X = F tSP→Ext

˜X ∀ ˜X

soit :FSP→Ext = B−1Dtf

Cette relation se reduit a :FSP→Ext = Dtf

pour des systemes pleinement parallele (fully-parallel) a actionneurs lineaires.A titre d’exemple on peut considerer le mecanisme parallele redondant de la figure 5.1.5.

5.1.6 Modele dynamique des systemes paralleles

Deux methodes sont proposees dans ce qui suit. La premiere considere une coupurevirtuelle du corps SP de couplage. La seconde une coupure aux liaisons entre les bras etSP .• Coupure sur SP .Sur le manipulateur plan de la figure 26, on considere une coupure virtuelle du corps SP

54

Page 55: Cours de Robotique Avanc ee - isir.upmc.fr Robotique 834(1).pdf · Cours de Robotique Avanc ee Redondance et Optimisation Ph. Bidaud Universit e Pierre et Marie Curie - Paris 6 Master

Figure 26: Systeme parallele 2*2P

55

Page 56: Cours de Robotique Avanc ee - isir.upmc.fr Robotique 834(1).pdf · Cours de Robotique Avanc ee Redondance et Optimisation Ph. Bidaud Universit e Pierre et Marie Curie - Paris 6 Master

qui transforme le systeme parallele en 2 systemes 2P.Les equations de la dynamique pour chacun des chemins sont :(

m1 +m2 00 m2

)(rj1rj2

)+(

0m2g

)=(τ j1τ j2

)j = 1, 2

M(q)j qj +N j(q) = τ j

Les equations de contrainte considerent que :

OP∈S12

= OP∈S22

Ce qui conduit a 2 relations scalaires de contrainte :

f1(q) = r11 − l + r2

1 = 0

f2(q) = r12 − r2

2 = 0

Ces dernieres traduisent les contraintes cinematiques de fermeture de chaıne :

(1 0 1 00 1 0 −1

)r1

1

r12

r21

r22

=(

00

)

Le modele dynamique pour l’ensemble du systeme est sous la forme de matrices blocks:(M1 00 M2

)(q1

q2

)+(N1

N2

)+ Atλ =

(τ 1

τ 2

)En partitionnant les variables comme :

Adqd + Aiqi =(

1 00 1

)(r1

1

r21

)+(

1 00 −1

)(r1

2

r22

)=(

00

)

on obtient pour S(q) :

S(q) =

−1 00 11 00 1

5.2 Systemes de manipulation coordonnee

La manipulation par plusieurs manipulateurs peut etre rendue necessaire pour des objetslourds ou volumineux. Un prehenseur articule peut egalement etre vu comme un systemede manipulation coordonnee comme egalement un systeme de locomotion a pattes.

56

Page 57: Cours de Robotique Avanc ee - isir.upmc.fr Robotique 834(1).pdf · Cours de Robotique Avanc ee Redondance et Optimisation Ph. Bidaud Universit e Pierre et Marie Curie - Paris 6 Master

Figure 27: Illustrations de systemes de manipulation coordonnee

57

Page 58: Cours de Robotique Avanc ee - isir.upmc.fr Robotique 834(1).pdf · Cours de Robotique Avanc ee Redondance et Optimisation Ph. Bidaud Universit e Pierre et Marie Curie - Paris 6 Master

5.2.1 Statique de la manipulation coordonnee

5.2.2 Modele des actions de contact

Une liaison par contact entre un solide S et un solide SP peut etre representee par untorseur d’interaction. Ce torseur reduit en un point peut etre decompose en la sommed’un glisseur G (force pure) et d’un couple C.

TS(S/SP ) = (f,OP ∧ f)t︸ ︷︷ ︸G

+ (0,mt)t︸ ︷︷ ︸C

= (f,OP ∧ f +mt)t = (f,mtO)t

Les 2 composantes vectorielles de ce torseur peuvent etre ecrites dans n’importe quellebase, par exemple B0. Pour operer un changement de base et de point de reduction(definis par une transformation Euclidienne), on peut utiliser la matrice qui serait si la

transformation est par exemple : TOS =(ROS dOS

0 1

)(FM t

S

)BS

=(

RtOS 0

−d0SRtOS Rt

OS

)(FM t

O

)B0

ERSRO

est la matrice adjointe AdTOS. Le torseur TS(S/SP ) (wrench en anglais) peut etre

exprime en fonction du torseur geometrique (screw en anglais):

TS(S/SP ) = ‖F‖ (s, λs+ sP ) = f $

On determine le vecteur directeur de l’axe central s du torseur si :

1. F 6= 0 → F‖F‖

2. F = 0 → Mt

‖Mt‖

Le pas du torseur est :

λ =F.M t

f 2

les points H de l’axe central sont tels que :

OH =F ∧M t

O

f 2+ ks k ∈ R

5.2.3 Modelisation du contact entre 2 solides

• Trajectoires des points de contactSoit deux solides SP et Sjn (rapportes respectivement aux reperes RP et R ,mo-biles dans l’espace affine et assujetis a rester en contact a tout instant. Au pointgeometrique I de contact viennent en coıncidence deux points:- la particule IPt de SP en contact avec Sjn a l’instant t,- la particule Int de Sjn en contact avec SP a l’instant t.Quand t varie, I decrit un arc de courbe Ci a la surface Σi de Si, qui est la tra-jectoire du point de contact. La position a l’instant t du point de contact surchacune des surfaces est la meme, mais leurs trajectoires, vitesses, accelerationssont differentes.

58

Page 59: Cours de Robotique Avanc ee - isir.upmc.fr Robotique 834(1).pdf · Cours de Robotique Avanc ee Redondance et Optimisation Ph. Bidaud Universit e Pierre et Marie Curie - Paris 6 Master

• Normale au contactSi SP et S sont consideres comme des solides a surface reguliere, ils ont meme plantangent (Π).Si leur surface est definie par une fonction S(x, y, z), et si S(x, y, z) > 0 est lasurface interieure a SP , la normale ni au point I interieure a SP est donnee par:

nj =grad(S(Pj)

‖grad(S(Pj)‖

5.2.4 Transmission de mouvement dans les liaisons par contact

Soient (VI∈SP, ωSP /S0) et (VI∈S

, ωS/S0) les distributeurs des vitesses respectivement de SPet S dans leur mouvement relatif par rapport a R0. Le champ des vitesses de SP dansson mouvement par rapport a S est alors decrit par le torseur:

(V S

ISPt

, ωSP /S)

On appelle vitesse de glissement de SP par rapport a S la vitesse V S

ISPt

qui est telle que:

V S

ISPt

= VI

SPt− V

IS

jn

t

Dans les cas reguliers, VI

SPt

et VIt∈Ssont tangents a la trajectoire de I dans RP et Rj

n. La

vitesse de glissement est donc elle aussi dans (Π). Le contact etant suppose persistant,la vitesse selon la normale au plan tangent (Π) est donc nulle:

V Sjn

ISPt

.nj = 0

La vitesse angulaire se decompose en une vitesse dite de roulement ωR et une vitesse depivotement ωP .

ωP = ωSjn/SP

.nj

ωRtj = ωSjn/SP

− ωPnjOn appelle vitesse de pivotement la composante ωP et vitesse de roulement la com-posante ωR. Le pivotement s’effectue autour de la normale nj et le roulement autourd’un vecteur tj du plan tangent (Π).On dira que le solide SP roule sans glisser sur le solide Sjn lorsque la vitesse de glissementdu premier par rapport au second est nulle:

V Sjn

ISPt

= VI

SPt− V

IS

jn

t

= 0

Le roulement sans glissement se traduit par deux relations scalaires qui font s’annuler la

vitesse V Sjn

ISPt

dans le plan (Π).

59

Page 60: Cours de Robotique Avanc ee - isir.upmc.fr Robotique 834(1).pdf · Cours de Robotique Avanc ee Redondance et Optimisation Ph. Bidaud Universit e Pierre et Marie Curie - Paris 6 Master

5.2.5 Champ des actions de contact

S’il s’agit d’un contact ponctuel, au point geometrique Pj agit une force pure. Dans cesconditions, le torseur T s(S/SP ) reduit en Pj s’exprime:

T s(S/SP ) = (f(Pj), 0)

On a, par ailleurs, du theoreme de l’action et de la reaction:

T s(Sjn/SP ) = −T s(SP/Sjn)

Dans le cas ou le contact n’est plus ponctuel, si l’on designe par Φ(I) la densite de forcede contact en I agissant sur un element d’arc de longueur ds ou de surface da, pourobtenir l’effort de contact il suffit d’integrer la densite de force sur l’element de surfacepar exemple:

f(Pj) =∫

Φ(I)da; M t(Pj) =∫Pj ∧ Φ(I)da

On considere generalement 3 types de contacts elementaires, sachant que par combinaisonde ceux-ci on peut decrire des contacts de complexite superieure. Ces trois contacts sont:

1. Contact ponctuel sans frottement

2. Contact ponctuel avec frottement

3. Contact ponctuel dit ”deformable”

Ces actions peuvent etre decomposees dans une base de torseurs geometriques propres achaque contact. On peut choisir par exemple la base:

Bc = [$x, $y, $z, $ox, $oy, $oz]

base qui coincide avec les forces et moments purs s’excercant selon et autour des axesd’un repere d’origine Pj dont les axes sont ceux definis comme sur la figure 28:Dans ces conditions, les differents types d’actions sont representables par:

Figure 28: Repere lie au contact

60

Page 61: Cours de Robotique Avanc ee - isir.upmc.fr Robotique 834(1).pdf · Cours de Robotique Avanc ee Redondance et Optimisation Ph. Bidaud Universit e Pierre et Marie Curie - Paris 6 Master

• Contact ponctuel sans frottement:

T s(Sjn/SP ) = (0, 0, f3, 0, 0, 0)

= f3$z

(7)

• Contact ponctuel avec frottement

T s(Sjn/SP ) = (f1, f2, f3, 0, 0, 0)

= f1$x + f2$y + f3$z

(8)

• Contact deformable:

T s(Sjn/SP ) = (f1, f2, f3, 0, 0,m3)

= f1$x + f2$y + f3$z +m3$oz

(9)

Ici, les scalaires fi et mi representent respectivement les amplitudes des forces et desmoments elementaires.Dans l’hypothese ou le contact est non-dissipatif (on neglige le frottement de roulementet de glissement), le systeme de torseurs reciproques aux systemes definis ci-dessus donneacces aux mouvements relatifs des corps.

5.2.6 Modele de frottement de Coulomb

Le travail resistant des actions de liaison resulte en partie du frottement sec. Le travaildes actions induites par le frottement est negatif. Par exemple, pour un glissement deSP dans le plan (Π), on verifie que:

V Sjn

PjSPt

= −λfti avec λ > 0

Ainsi, la force de frottement s’oppose au mouvement de glissement. Cependant, cetteforce prend une valeur independante de la vitesse de glissement. Elle ne depend pas del’aire des contacts mais principalement de la nature des surfaces (materiaux, rugosite).Les forces de frottement peuvent etre approchees par les lois de Coulomb. Celles-citraduisent le fait que les bornes sur les actions induites par frottement ne dependent quede l’amplitude de la force normale au contact fn et lui sont proportionnelles. Ces loiss’ennoncent comme suit:

1. Glissement:V S

PjSPt

6= 0; f(Pj).VS

PjSPt

< 0 ; ‖ftj‖ = µ‖fnj‖V S

PjSPt

= 0; ‖ftj‖ < µ‖fnj‖

61

Page 62: Cours de Robotique Avanc ee - isir.upmc.fr Robotique 834(1).pdf · Cours de Robotique Avanc ee Redondance et Optimisation Ph. Bidaud Universit e Pierre et Marie Curie - Paris 6 Master

2. Roulement:ωR(Sjn/SP ) 6= 0; M t

R(Pj).ωR(S/SP ) < 0; ‖M tR(Pj)‖ = ε‖fnj‖

ωR(S/SP ) = 0; ‖M tR(Pj)‖ = ε‖fnj‖

3. Pivotement:ωP (S/SP ) 6= 0; M t

P (Pj).ωP (S/SP ) < 0; ‖M tP (Pj)‖ = ζ‖fnj‖

ωP (Sjn/SP ) = 0; ‖M tP (Pj)‖ = ζ‖fnj‖

µ, ζ et ε sont respectivement les coefficients de glissement, roulement et pivotement. Lepremier est sans dimension, les deux autres sont homogenes a une longueur. ε, pour descorps rigides est du second ordre devant les deux premiers. Dans le cas ou les vitessesde glissement et pivotement sont nulles, il y a adherence du contact. Les forces defrottement dans les conditions d’adherence s’expriment par des inegalites strictes. Lesconditions d’equilibre peuvent s’illustrer geometriquement en posant µ comme egal a:

µ = tg(φ)

φ etant le demi-angle au sommet du cone forme par le droites de Coulomb (voir figure29). Ce cone peut etre approxime par un cone polyedrique forme par une combinaisonconvexe de n vecteurs sur la generatrice du cone.

f ≈∑i=1,n

αici αi ≥ 0,∑i=1,n

αi = 1

Si le point representatif de la resultante fj de l’effort de contact se trouve a l’interieur

Figure 29: Representation du cone de Coulomb

ou au bord du domaine delimite par les droites de Coulomb, il y a equilibre, dans le cascontraire, il y a glissement. Un ensemble de contacts sera represente comme le montrela figure ??.

62

Page 63: Cours de Robotique Avanc ee - isir.upmc.fr Robotique 834(1).pdf · Cours de Robotique Avanc ee Redondance et Optimisation Ph. Bidaud Universit e Pierre et Marie Curie - Paris 6 Master

5.2.7 Application a la modelisation d’une prise

Pour representer et analyser differentes prises (comme celles illustrees sur la figure 30),le systeme de forces transmis par chaque contact j sur SP est represente par un torseurT s(Sj/SP ). Ce torseur peut est decompose sous forme d’une combinaison lineaire des

Figure 30: Differentes configurations de prises

torseurs de base de l’effort transmissible:

T s(Sj/SP ) =∑i=1,cj

fiˆ$i avec dim(T s(Sj/SP )) = cj

ici, fi est l’amplitude du torseur geometrique de base fi. Ce contact occupant uneconfiguration m de l’espace des configurations M , il peut etre vu comme une applica-tion lineaire bijective ψj de l’espace vectoriel Rcj sur l’espace cotangent a l’espace desdeplacements en m T sm:

ψj : Rcj → T smψj(f

j1 , f

j2 , ...., f

jcj

)→ ERP

Rj Bj(fj1 , f

j2 , ..., f

jk)t

63

Page 64: Cours de Robotique Avanc ee - isir.upmc.fr Robotique 834(1).pdf · Cours de Robotique Avanc ee Redondance et Optimisation Ph. Bidaud Universit e Pierre et Marie Curie - Paris 6 Master

Dans l’equation au-dessus, ERP

Rjn

designe la matrice de changement des coordonnees, des

torseurs statiques exprimes dans le repere Rj, dans RP .

Bj est une matrice de selection de dimension (6 × cj), elle traduit les conditions detransmission des efforts par le contact. Pour un contact de type ponctuel avec frottement,cette matrice Bj prend pour valeur:

Bj =

1 0 00 1 00 0 10 0 00 0 00 0 0

Dans cette mesure, une prise realisee par un systeme de contacts peut etre representee parune somme d’applications lineaires du meme type, chacune caracterisant les contraintesqu’elle provoque sur les mouvements de SP .

G : Rn → T sm n =∑

cn

G(f j1 , .., fNcN

) = ψ1(f 11 , .., f

1c1

) + ψ2(f 21 , ..., f

2c2

) + . . .+ ψN(fN1 , .., fNcN

)

La matrice associee a G regroupe en colonne les coordonnees Pluckeriennes des torseursgeometriques statiques associes aux differents contacts.

G = [ERP

R1 B1;ERP

R2 B2; . . . ERP

RNBN ]

Si nous considerons a titre d’exemple un systeme de forces pures, issuent des N contactsponctuels avec frottement. On a directement:

Figure 31: Saisie par des contacts ponctuels avec frottement

T s(Sjn/SP ) =∑j=1,N

∑i=1,3

f ji $ji

64

Page 65: Cours de Robotique Avanc ee - isir.upmc.fr Robotique 834(1).pdf · Cours de Robotique Avanc ee Redondance et Optimisation Ph. Bidaud Universit e Pierre et Marie Curie - Paris 6 Master

avec:f ji = (sji , r

ji ∧ s

ji )

alors:G = $1

1, $12, ....., $

N3

G =(

n1, t1, b1, · · · bNr1 ∧ n1, r1 ∧ t1, r1 ∧ b1, · · · , rN ∧ bN

)Les colonnes de G sont les coordonnees Pluckeriennes des droites support des com-posantes de force. A titre d’exemple nous considererons la prise d’un objet plan par 2contacts ponctuels avece frottment comme montre sur la figure 5.2.7 Les matrices des

transformations homogenes T01 et T02 sont respectivement :

T01 =

1 0 0 −a0 1 0 00 0 1 00 0 0 1

T02 =

−1 0 0 a0 −1 0 00 0 1 00 0 0 1

Pour cet exemple, les matrices de changement de coordonnees des torseurs sont :

ER0R1

=

1 0 0 0 0 00 1 0 0 0 00 0 1 0 0 00 0 0 1 0 00 0 −a 0 1 00 a 0 0 0 1

ER0R1

=

−1 0 0 0 0 00 −1 0 0 0 00 0 1 0 0 00 0 0 −1 0 00 0 a 0 −1 00 −a 0 0 0 1

qui dans le plan se reduisent a :

ER0R1

=

1 0 00 1 00 a 1

ER0R1

=

−1 0 00 −1 00 −a 1

Ainsi la matrice G s’ecrit :

G = [ER0R1B1;ER0

R2B2]

G =

1 0 −1 00 1 0 10 −a 0 a

65

Page 66: Cours de Robotique Avanc ee - isir.upmc.fr Robotique 834(1).pdf · Cours de Robotique Avanc ee Redondance et Optimisation Ph. Bidaud Universit e Pierre et Marie Curie - Paris 6 Master

5.2.8 Etude de l’equilibre de la prise

Il convient de distinguer differentes situations dans l’analyse du probleme de l’equilibre.

1. Le sous-espace de SE(3) dans lequel l’equilibre doit etre satisfait.

2. Si les forces exterieures sont donnees et constantes

3. Si toutes les forces de contact sont actives ou non

4. etc ...

• Etude par le rang de GG regroupe dans ses colonnes les coordonnees du systeme de torseurs applique sur SP ,exprimees dans un repere arbitrairement choisi RP , l’equilibre de SP se traduit sous uneforme matricielle par:

[G]f = −F

- f = (f 11 , f

12 , ..., f

NcN)t, sont les amplitudes des torseurs regroupes dans G,

- F est un torseur de forces exterieures applique sur SP , autres que les forces de contactdes doigts.En ne considerant aucune condition particuliere sur les forces de contact, une priserepresentee par G est statiquement stable quand il existe une solution a f pour F quel-conque. Ceci implique la condition necessaire suivante:

rg(G) = 6

Autrement dit, si l’application G est surjective, alors:

∀F ∃f ∈ R6 /G(f) = F

Des lors ou le rang de G est tel que rg(G) < 6, il existe une mobilite transitoire ou per-manente de SP par rapport a SO. Par consequent, il existe 6−rg(G) torseurs reciproquesindependants au systeme de torseurs defini par G. Ce systeme de torseurs reciproquesforme la base du mouvement laisse libre par la liaison equivalente. On determine cemouvement en recherchant les $Rj tels que:

$Rj .$i = 0 j = 1, .., 6− rg(G); i = 1, n

Si on considere que les actions exterieures sont issues de liaisons par contact ponctuelrigide sans frottement, ces equations d’equilibre peuvent se mettre sous la forme ma-tricielle :

Gf = −F avec f ≥ 0

G est ici la matrice qui regroupe en colonnes les coordonnees plukeriennes des torseursassocies aux liaisons unilaterales.

G =(

n1 n2 . . . ni . . . nnr1 ∧ n1 r2 ∧ n2 . . . ri ∧ ni . . . rn ∧ nn

)

66

Page 67: Cours de Robotique Avanc ee - isir.upmc.fr Robotique 834(1).pdf · Cours de Robotique Avanc ee Redondance et Optimisation Ph. Bidaud Universit e Pierre et Marie Curie - Paris 6 Master

avec les ni orientes vers l’interieur de SP . Au-dela de la condition necessaire definieavant il faut verifier si les conditions relatives a l’unilateralite des forces developpees parles appuis.• Analyse geometrique de l’equilibre des appuis.Une representation geometrique equivalente des contraintes dans l’espace des torseurspeut etre donnee sous la forme d’un polyedre (borne ou non-borne). L’ensemble ainsidefini est :

P (G) = F t ∈ R6 : F = GfGraphiquement, ce polyedre est construit en tracant a partir d’une origine les vecteursforces et moments regroupes dans G. Les valeurs admissibles pour des combinaisonslineaires de f sont donnees par les points de P (G). Une autre representation consiste adefinir l’enveloppe convexe de l’ensemble des torseurs de G:

Conv(G) =F t ∈ R6 : F = Gf, f > 0,

∑ifi = 1

A partir du polyedre des contraintes et de leur enveloppe convexe on peut definir lanotion de fermeture geometrique (pour des forces de contact supposees sans frottement)comme :

P (G) = R6 = se∗(3)

O ∈ int(Conv(G))

Des lors ou le fermeture n’est que partielle, le complement reciproque a G definit lesmouvements qui restent libres. Si on note V le systeme de torseur tel que :

GtV = 0

on peut definir l’ensemble des mouvements compatibles avec les contraintes comme unpolyedre de se(3) :

P (V ) = δX ∈ R6 : GtδX ≤ 0et Conv(V ). On peut deteminer un systeme de torseurs reciproques a G puis par uneSVD ou le methode de Gram-schmit une base pour ce systeme qui definira le mouvementlaisse libre par les contraintes.

5.2.9 Famille de reactions statiquement admissibles

Si le nombre de torseurs elementaires n introduits par les doigts sur l’objet est superieura 6 (n > 6), la prise est hyperstatique. Il manque en effet h = n− rg(G) equations pourdeterminer les fi qui definissent la prise.Comme dans tout probleme hyperstatique, les relations necessaires a la resolution desinconnues d’efforts exterieurs (ici les fi appliques au corps dont on etudie l’equilibre(ici SP ) sont celles qui traduisent l’etat de deformation du corps et/ou des liaisons.La resolution du probleme sous-determine du systeme peut etre abordee en utilisantla pseudo-inverse. Les solutions possibles pour f (solutions statiquement admissibles)prendront alors la forme suivante:

f = fp + fh

67

Page 68: Cours de Robotique Avanc ee - isir.upmc.fr Robotique 834(1).pdf · Cours de Robotique Avanc ee Redondance et Optimisation Ph. Bidaud Universit e Pierre et Marie Curie - Paris 6 Master

La solution est constituee d’une solution particuliere fp et d’une solution fh au systemehomogene associe. Cette derniereforme un systeme de forces auto-equilibre. Le solutionfh peut etre determinee comme :

fh = N(G)λ

La solution a f pour une prise hyperstatique peut aussi etre obtenue a partir d’unemethode de resolution fondee sur la pseudo-inverse:

f = G+F + (In −G+G)τ

- G+ = Gt(GGt)−1, est l’inverse a droite de G puisque n > 6- τ est un vecteur arbitraire de Rn

Le premier terme, est la solution particuliere de norme Euclidienne minimale.Le second terme est la projection sur le noyau de G d’un vecteur arbitraire τ de Rn.On appelle egalement la solution particuliere ”forces de manipulation”. La solutionhomogene constitue les ”forces interieures”. La premiere sert a resister au torseur deforces exterieures tandis que la seconde definit les forces de serrage (ou encore forces desaisie).

5.2.10 Analyse algebrique de l’equilibre

On peut verifier si une solution satisfaisant l’equilibre existe en utilisant une pseudo-inverse de G. Alternativement, une solution peut etre obtenue aussi en introduidant unvecteur de variables virtuelles y et en resolvant le programme lineaire suivant :

minimiser∑i=1,n

yi

sous la contrainte Gf + y = w tel que f > 0; y > 0

Si les yi = 0 i = 1, 2, . . . , n alors il existe une solution au probleme. Si les contraintes nepermettent pas d’immobiliser completement SP (cas d’une table a 4 pieds par exemple),la fermeture n’est que partielle. On verifiera alors que le travail realiser par les contraitessur l’objet fait que les distances des appuis a l’objet restent inferieures aux distancesinitiales :

GtδXd ≤ d

, le produit GtδX etant le comoment entre 2 torseurs. On peut verifier que cette conditionest respectee en considerant le programme lineaire :

minF tδX

sous contraintes GtδXd ≤ d

ou son dual :minf td

sous contraintes Gf = −Favec

f ≥ 0

Des lors ou les forces d’appui sont bornees, on ne parle plus en terme de contraintesgeometriques mais de contraintes de forces.

68

Page 69: Cours de Robotique Avanc ee - isir.upmc.fr Robotique 834(1).pdf · Cours de Robotique Avanc ee Redondance et Optimisation Ph. Bidaud Universit e Pierre et Marie Curie - Paris 6 Master

5.2.11 Determination des forces de contact

La prise etant hyperstatique (de degre h) devant d, les solutions statiquement admissiblesa (??) font apparaıtre une solution particuliere (fp) et une solution homogene (fh) :

f = fp + fh (10)

Cette derniere correspond au systeme de forces ”equilibre” interieur a la prise que l’ondesigne aussi par efforts de serrage. Du point de vue de l’algebre lineaire, elle est con-stituee par les elements du noyau de l’application associee a la matrice G (N(G)), quiforme un espace vectoriel de dimension h, et est donnee par :

fh = N(G)λ (11)

ou N(G) est la matrice qui regroupe en colonnes les vecteurs de N (G) donnes notam-ment par les vecteurs singuliers a droite de G associes aux valeurs singulieres d’ordresuperieur a rang(G)=h , λ ∈ Rh est le vecteur des multiplicateurs scalaires de la so-lution homogene. Notons que les vecteurs de N(G) peuvent etre choisis pour donnerun sens physique aux forces interieures (Ex : 2 forces directement opposees, 3 forcescoplanaires et concourantes, etc ...).La solution particuliere equilibre quant a elle les efforts exterieurs FExt. Une solutionde norme minimum (min‖fh‖) s’obtient notamment en utilisant l’inverse generalisee adroite G+

d L’expression de G+d obtenue par Gt(GGt)−1 n’ayant pas de sens dans le cas

general, G doit etre ponderee.

fp = −G+d F

Le terme d’optimisation peut etre determine pour satisfaire par exemple la minimi-sation des efforts induits par frottement ou la stabilite du contact.

5.2.12 Determination des composantes de serrage

Les amplitudes des forces interieures (de serrage) servent a maintenir la stabilite ducontact quand les perturbations exterieures varient. Cela suppose bien evidemment queles mecanismes des doigts soient susceptibles d’appliquer des efforts dans une directionchoisie (direction de la composante de force interieure) autrement dit que leur mobilitesoit telle que l’on puisse maıtriser la direction d’application de l’effort.Le probleme devant lequel on est place peut se formuler de la maniere suivante: Trouverdes valeurs des forces de contact fi telles quelles satisfont aux contraintes:

Gf = −F (1, 6)

fj.nj > 0 j = 1, N (7, 7 +N)

(1 + µ2j)(fj.nj)

2 ≥| fj |2 (7 +N, 7 + 2N)

Ce probleme peut etre aborde comme un probleme de minimisation si l’on considere qu’ils’agit de trouver le vecteur f tel que la fonction objective:∑

j=1,N

(fj.nj)2

69

Page 70: Cours de Robotique Avanc ee - isir.upmc.fr Robotique 834(1).pdf · Cours de Robotique Avanc ee Redondance et Optimisation Ph. Bidaud Universit e Pierre et Marie Curie - Paris 6 Master

soit minimum.Un vecteur optimal admissible pourra etre determine pour cette fonction objective

min∑j=1,N

(fj.nj)2

, sous les contraintes d’inegalite et d’egalite (1, 7 + 2N) en exploitant les techniques deprogrammation lineaire.

Une fois linearisees, les differentes contraintes imposees aux efforts de contact, traduisantla stabilite du contact, s’expriment sous la forme d’un systeme d’inequations qui s’ecrit:

fnj > 0 j = 1, N

ftj + fnj ≥ 0 j = 1, N

ftj − fnj ≤ 0 j = 1, N

fbj + fnj ≥ 0 j = 1, N

fbj − fnj ≤ 0 j = 1, N

J tjBjfj ≤ τmax

J tjBjfj ≥ τmin

Celles-ci peuvent se regrouper sous la forme matricielle suivante:

Cf ≥ P

En substituant dans ce systeme d’inequations:

[fh] = N(G)tλ

et,[f ] = [fp] + [fh]

on obtient le systeme:CN(G)tλ > P − C[fp]

qui definit comment les λ doivent etre choisis pour satisfaire aux contraintes de stabilitedu contact.

70

Page 71: Cours de Robotique Avanc ee - isir.upmc.fr Robotique 834(1).pdf · Cours de Robotique Avanc ee Redondance et Optimisation Ph. Bidaud Universit e Pierre et Marie Curie - Paris 6 Master

5.2.13 Rigidite de la prise

La rigidite du systeme de prehension n’etant pas infini, l’objet saisi va subir un deplacementsous l’action des forces exterieures. En statique, on a en pratique un comportementelastique, lineaire ou non, des contacts sous l’effet d’une action mecanique. Les coeffi-cients de la matrice de raideur sont alors constants. Ils refletent la raideur structurellede l’ensemble doigt-objet. Lorsqu’il s’agit d’un prehenseur articule dont les articulationscommandees sont reversibles, a la compliance structurelle Cs s’ajoute la compliance desasservissements Ca. La relation entre les forces de contact et les deplacements qu’ilsprovoquent en un point Pj est autour de la configuration d’equilibre:

Fj = kjδPj

En considerant SP saisi et auquel est applique un systeme de forces de serrage fh, la rela-tion matricielle entre les efforts exterieurs et les deplacements de l’objet qu’ils provoquentest :

δX tF + δP tf = 0

δX etant un petit deplacement de SP . Les equations du deplacement d’equilibre elastiques’ecrivent :

F = GkGtδX

K = GkGt est la matrice de rigidite elastique globale exprimee au point origine de RP

et obtenue a partir des raideurs raideurs equivalentes dans les directions contraintes parles contacts. D’une maniere generale :

kj = (Cs + J jdCaJjd

t)−1

La conception de la structure mecanique du prehenseur et sa commande influencent larigidite de la prise. Celle-ci peut etre utilisee pour compenser passivement les erreursde positionnement relatif comme on le fait avec les ”‘poignets compliants”. La matricede rigidite du systeme peut etre utilisee pour l’analyse de la stabilite de la prise. Cettematrice est definie positive, c’est a dire telle que :

δX tKδX > 0 ∀δX

L’equilibre de SP correspond a la stationarite de l’energie potentielle totale qui enpresence de forces exterieures est :

U = 1/2δX tKδX − δX tF

La prise sera stable si on peut trouver un deplacement defini pour une force exterieuredonnee, autrement dit si la matrice K est inversible. Pour que K soit inversible il fautverifier que :

det(K) 6= 0

ce qui conduit a verifier que toutes les valeurs propres Λl de K sont non-nulles puisque :

det(K) =∏k=1,l

Λl

71

Page 72: Cours de Robotique Avanc ee - isir.upmc.fr Robotique 834(1).pdf · Cours de Robotique Avanc ee Redondance et Optimisation Ph. Bidaud Universit e Pierre et Marie Curie - Paris 6 Master

5.3 Cinematique de la manipulation coordonnee

La manipulation de SP est obtenue par le mouvement coordonne des articulations desdoigts. La formulation cinematique du probleme de la manipulation coordonnee peut etrevue comme une extension du probleme cinematique inverse des manipulateurs simplesa des manipulateurs disposes en paralleles (entre SP et S0) sachant que le systeme detorseurs generateurs du mouvement de SP par rapport a S0, TSP /SO

est constitue par

l’intersection des generateurs T jSP /SOde l’ensemble des N chemins.

TSP /SO= T 1

SP /SO∩ T 2

SP /SO∩ . . . ∩ TNSP /SO

(12)

Plusieurs techniques d’obtention du modele cinematique inverse sont envisageables.

5.3.1 Equations de fermeture des chaınes cinematiques

Une solution pour traduire la cinematique des mecanismes en chaınes fermees conduita ecrire les (N − 1) equations torsorielles de fermeture de chaıne. Si l’on considere lecycle cinematique constitue par le doigt j, le doigt k, et l’objet SP (chacun des doigtscomportant g articulations actives 1 et des contacts dont la cinematique seraient decritespar un systeme de (m− g) torseurs independants 2, en notant d’une maniere generale ωil’amplitude des torseurs et $i les torseurs unitaires, cette equation prend la forme :

∑a=1,g

ωja$ja +

∑p=g+1,m

ωjp$jp = −(

∑a=1,g

ωka $ka +∑

p=g+1,m

ωkp $kp) (13)

Ces relations intrinseques, ecrites dans RP , conduisent apres partitionnement des vari-ables cinematiques actives (θ) et passives (φ) au systeme matriciel :

Jdθ = Jcφ (14)

ou Jd, de dimension (d(N − 1) × Ng) est la Jacobienne des doigts et Jc, de dimension(d(N − 1)×N(m− g)).

Dans (Eq. 14), les parametres du distributeur des vitesses de SP par rapport a S0

(X) n’apparaissant pas explicitement. Cette equation ne permet pas d’obtenir le modelecinematique inverse du systeme. Pour introduire X, on peut ajouter aux equationsprecedentes une equation supplementaire de chaıne ouverte, en considerant le doigt jpar exemple : ∑

a=1,g

ωja$ja +

∑p=g+1,m

ωjp$jp = Ω$ (15)

On obtient alors un systeme de (6 ∗N) equations scalaires (pour un mecanisme operantdans l’espace 3D), qui ne sont pas a priori independantes, entre les (N ∗ g) parametres

1on suppose ici la cinematique du prehenseur symetrique sans que cela modifie la generalite2systeme reciproque a ceux definis par les matrices Bj

72

Page 73: Cours de Robotique Avanc ee - isir.upmc.fr Robotique 834(1).pdf · Cours de Robotique Avanc ee Redondance et Optimisation Ph. Bidaud Universit e Pierre et Marie Curie - Paris 6 Master

cinematiques ”actifs”, les N ∗ (m− g) parametres ”passifs” et les 6 parametres scalairesdu distributeur des vitesses de SP par rapport a S0.

Une variante consiste a utiliser directement N equations torsorielles de chaınes ou-vertes semblables a (Eq. 16), celles-ci decouplant en effet au mieux les variables cinematiquesd’entree (actives) qui sont a determiner :∑

a=1,g

ωja$ja +

∑p=g+1,m

ωjp$jp = Ω$ j = 1, .., N (16)

Le systeme d’equations scalaires obtenu en les ecrivant dans RP , prend alors la formesuivante:

J jd θj + J jc φ

j = X j = 1, .., N (17)

J j(θj

φj

)= ( J jd J jc )

(θj

φj

)= X j = 1, .., N

(18)

L’equation (17) fait apparaıtre le mouvement instantane produit par les articulations desdoigts, dont la configuration du systeme d’axes est decrit par les colonnes de la matrice(d×g) Jd, et le mouvement induit dans les liaisons par contact.

5.3.2 Utilisation des torseurs reciproques

Pour eliminer les variables passives, on peut proceder de plusieurs manieres. La premiereconsiste a considerer le systeme de prehension comme un mecanisme parallele dans lequelles liaisons par contact sont des liaisons passives (en introduisant l’hypothese que lescontacts sont fixes sur la surface de SP ).

5.3.3 Projection des mouvements transmis par les doigts sur les contraintes

Le mouvements de SP par rapport a R0 peut etre determine a partir d’un changementde coordonnees des composantes du torseur X.

(X)RjP

= ERj

PRP

(X)RP

Les composantes du mouvement a transmettre par le contact j sont definies par la matriceBj.

( ˜Xr)RjP

= Btj(

˜X)RjP

Ce mouvement peut etre decrit dans un repere lie au contact RjC On a par ailleurs :

J jd θj = ( ˜Xr)Rj

C= E

RjC

RjP

BtjERj

PRP

(X)RP

Pour l’exemple du systeme represente sur la figure ?? Pour ce systeme plan, on a :

73

Page 74: Cours de Robotique Avanc ee - isir.upmc.fr Robotique 834(1).pdf · Cours de Robotique Avanc ee Redondance et Optimisation Ph. Bidaud Universit e Pierre et Marie Curie - Paris 6 Master

wzvxvy

R1

P

=

1 0 00 1 0−a 0 1

wzvxvy

wzvxvy

R2

P

=

1 0 00 1 0a 0 1

wzvxvy

B1 =

(1 0 00 1 0

)

B2 =(

1 0 00 1 0

)On a par ailleurs :

J1d

(θ1

1

θ12

)=(

1 0 00 1 −a

)wzvxvy

J2d

(θ2

1

θ22

)=(

1 0 00 1 a

)wzvxvy

Ce systeme d’equation peut se mettre sous a forme :

(J1d 00 J2

d

)︸ ︷︷ ︸

Jd

θ1

1

θ12

θ21

θ22

=

1 0 00 1 −a1 0 00 1 a

︸ ︷︷ ︸

Gt

wzvxvy

Jq q = GtX

74

Page 75: Cours de Robotique Avanc ee - isir.upmc.fr Robotique 834(1).pdf · Cours de Robotique Avanc ee Redondance et Optimisation Ph. Bidaud Universit e Pierre et Marie Curie - Paris 6 Master

5.4 Introduction de la cinematique des contacts

Selon la geometrie et la mecanique des contacts, deux situations sont a distinguer :

1. soit les contacts peuvent etre consideres comme stationnaires, et donc le mouvementrepresentable par un systeme de torseurs invariant dans RP ,

2. soit on a affaire a une liaison de classe intermediaire [?], et le systeme de torseursvarie dans le temps.

La premiere situation correspond au cas ou la courbure relative de ΣP et Σjn est grande.

La longueur de l’arc de courbe que decrit le point de contact sur les surfaces ΣP et Σjn

peut alors etre negligee. D’autre part, les deplacements des Sjn par rapport a SP doiventetre compatibles avec la mecanique des contacts pour qu’il n’y ait pas de glissementinduit. Il en est a priori ainsi si dim(φ) = d(N − 1) ou si on impose d(N − 1)-dim(φ)contraintes sur les θji .Lorsque cette approximation ne peut plus etre faite, la cinematique du contact doit alorsetre decrite dans une base locale (par exemple Rj

n). Celle-ci s’introduit notamment al’aide de la premiere et de la seconde forme fondamentale de la surface au point decontact. Elles definissent, a travers le premier et second tenseur, les proprietes metriqueset la courbure locale de la surface.• Le tenseur metrique donne les proprietes metriques des vecteurs projetes dans le plantangent et initialement definis en coordonnees curvilignes. Dans le cas ou le parametrageest orthogonal, sa representation matricielle est :

IM =( ‖Mu‖ 0

0 ‖Mv‖

)(19)

• Le tenseur de courbure, dont la representation maticielle est :

KM =(xt

yt

)( zuMu

zvMv

) (20)

ou zu = ∂z/∂u et zv = ∂z/∂v definissent la variation du vecteur normal en projectiondans le plan tangent.

On introduit ensuite un troisieme parametre geometrique de la surface, la torsion,qui traduit comment evolue sur la surface l’un des vecteurs du plan tangent (par exemplele vecteur y, sachant que x et y sont orthogonaux) comme :

TM = ( yt )

( xu‖Mu‖xv‖Mv‖

)(21)

On peut alors determiner les composantes (xjcn , yjcn , z

jcn , ωx

jcn , ωy

jcn , ωz

jcn)t du distributeur

des vitesses en Pj de Rjcn par rapport a RcP dans la base associee a ce dernier repere par

la relation:

75

Page 76: Cours de Robotique Avanc ee - isir.upmc.fr Robotique 834(1).pdf · Cours de Robotique Avanc ee Redondance et Optimisation Ph. Bidaud Universit e Pierre et Marie Curie - Paris 6 Master

( xjcn , yjcn , z

jcn , ωx

jcn , ωy

jcn , ωz

jcn )t =

−IΣj

nM Rj

γIΣj

PM 0

0 0 0

RjγK

Σjn

M IΣjn

M RjγK

ΣjP

M IΣj

PM 0

−TΣjn

M IΣjn

M −TΣPn

M IΣP

nM 1

uΣj

n

vΣjn

uΣPn

vΣPn

γ

(22)

Dans cette equation, Rjγ designe la matrice de rotation entre Rj

cn et RcP . Si Σjn et ΣP

sont connus, en considerant que les reperes locaux de contact sont en coıncidence autemps to de la manipulation, l’integration des variables cinematiques du contact permetde suivre l’evolution des coordonnees du contact sur un intervalle de temps.

5.4.1 Dynamique de la manipulation coordonnee

Considerons comme exemple de systeme de manipulation coordonnee un systeme deprehension articule. Pour etablir le modele dynamique de l’ensemble objet/doigts (commerepresente sur la figure 5.4.1), il convient d’etbalir d’une part les equations du mouve-ment de l’ensemble des doigts et celle de l’objet : En etablissant des coupures virtuelles

au niveau des contacts, on etablir separemment les equations du mouvement du doigt jqui s’ecrivent :

M j(q)qj + Cj(qj, qj) +N j(qj) = τ j

Pour l’ensemble des doigts on a :

Md(q)q + Cd(q, q) +Nd(q) = τ j

ainsi que les equations du mouvement de l’objet Sp qui sont :

Mo(X)X + Co(X, X) +No(X) = Fext

Lorsque les contacts sont etablis, les parametres q et X ne sont plus independants. Lesrelations de contrainte s’expriment par :

Jq q = GtX

76

Page 77: Cours de Robotique Avanc ee - isir.upmc.fr Robotique 834(1).pdf · Cours de Robotique Avanc ee Redondance et Optimisation Ph. Bidaud Universit e Pierre et Marie Curie - Paris 6 Master

Les equations du mouvement pour l’ensemble du systeme font apparaıtre des multipli-cateurs de Lagrange qui representent les amplitudes des forces elementaires de contact.On a le systeme suivant :(

Md 00 Mo

)(qX

)+(Cd(q, q)Co(X, X)

)+(Nd(q)No(X)

)+(J tqG

)λ =

(τFext

)

77

Page 78: Cours de Robotique Avanc ee - isir.upmc.fr Robotique 834(1).pdf · Cours de Robotique Avanc ee Redondance et Optimisation Ph. Bidaud Universit e Pierre et Marie Curie - Paris 6 Master

5.5 Cas particulier des robots humanoıdes

Un humanoıde peut etre vu comme un systeme articule de corps rigides (hypotheseforte car on sait que le pied par exemple est tres deformable et participe beaucoupa l’equilibration posturale) a topologie arborescente en mouvement par rapport a unreferentiel Galileen, mouvement qui peut etre contraint par des liaisons holonomes voireegalement par des liaisons non-holonomes (voir illustration figure 32). Les equations dumouvement d’un tel systeme suppose ici sans contrainte peuvent d’une maniere generaleetre obtenues par le formalisme de Lagrange ecrit en termes de quasi-coordonnees (Equa-tions de Boltzmann-Hamel) pour tenir compte en particulier du parametrage des rota-tions spatiales du corps ”‘racine”. Ces equations sont de la forme :

M(q)v +H(q, v, t) = Sτ +Qi +Qc

q = A(q)v

q4

Hr

f c1

f c2

Figure 32: Mannequin numerique

L’un des problemes centraux pour la mise en oeuvre physique ou virtuelle de telssystemes est d’une part la maıtrise de leur equilibre et de la stabilite des equilibres ainsique de la controlabilite de leurs mouvements.

5.5.1 Caracterisation de l’equilibre d’un humanoıde

Les robots humanoides sont par nature des systemes non-lineaires et les variations de latopologie de leurs appuis induisent des changements discrets du vecteur d’etat. D’autresnon-linearites sont associees aux contraintes physiques et des actionneurs, etc ...

La caracterisation de certains de leurs mouvements suppose un certain degre d’interpretation.En effet, la difference (pour une partie importante de trajectoire) entre un mouvementde chute verticale d’un sujet et son mouvement pour s’assoir sur le sol est probablementtenue. Une trajectoire satisfaisant les contraintes existe, cependant elle ne traduira pas

78

Page 79: Cours de Robotique Avanc ee - isir.upmc.fr Robotique 834(1).pdf · Cours de Robotique Avanc ee Redondance et Optimisation Ph. Bidaud Universit e Pierre et Marie Curie - Paris 6 Master

que le systeme ne chute pas. Le traitement de la chute suppose d’ajouter une conditionsupplementaire comme l’apparition d’un nouveau contact entre le systeme et le sol etun autre lieu que sur les extremites des membres en appui. L’un des moyens utilisespour observer une instabilite est le glissement ou le decollement des appuis avec le sol etl’environnement physique en general.

L’equilibre en rotation est souvent encore plus important car il peut induire uneperte de controle de la posture du mannequin. Cela est plus particulierement vrai si onconsidere des rotations autour d’axes situes dans le plan (ou plan virtuel des appuis).Cet etat de desequilibre conduira alors un basculement qui peut, s’il n’est pas suivi d’unchangement de la topologie des appuis (comme dans le cas de la marche), provoquera lachute.

L’analyse de la stabilite de l’equilibre des systemes multipodaux est rapportee generalementa l’enveloppe convexe des appuis. L’equilibre statique est generalement analyse en util-isant la projection du CdG sur l’enveloppe convexe des points d’appuis.

L’analyse de l’equilibre dynamique est introduit ici en considerant un seul pied aucontact avec le sol. Cependant, cette analyse est generalisable au cas des appuis bipodauxvoire aux appuis multipodaux planaires.

En isolant le pied en contact, la resultante des forces d’interaction entre le pied et lesol Rc (sur la surface S est la somme de la resultante du champ de forces normales et duchamp de forces tangentielles:

Rc = Rn +Rt =∫P∈S

φn(P )ds+∫P∈S

φf (P )ds

Le moment en un point Q quelconque de ce champ peut etre decompose egalement enconsiderant les actions normales et de frottement :

M cQ = Mn

Q +M fQ =

∫P∈S

QP ∧ φn(P )ds+∫P∈S

QP ∧ φf (P )ds

L’equilibre de l’ensemble s’ecrit :

Rc = Rgi +Re

- Rgi = −mg +∑imiaGi

- Re =∑j,nc

Fj

M cQ = M gi

Q +M eQ

M giQ =

(∑i

d/dtσGi+∑i

QGi ∧mi aGi

)−QG ∧m g

avec :

- m =∑imi et QG = 1/m

∑imiQGi

- M eQ =

∑j,nc

QPj ∧ Fj +Mj

79

Page 80: Cours de Robotique Avanc ee - isir.upmc.fr Robotique 834(1).pdf · Cours de Robotique Avanc ee Redondance et Optimisation Ph. Bidaud Universit e Pierre et Marie Curie - Paris 6 Master

Le point C de la surface ou le moment des efforts normaux s’annule est le centrede pression (CoP ). Ce point n’est autre que le point d’intersection de l’axe central dutorseur des efforts de contact avec le plan du contact.

M cC ∧ n = 0

En C le moment de ”‘basculement”’ du systeme autour d’un axe quelconque du plan ducontact s’annule. Seule la composante de moment correspondant au pivotement est lecas echeant non-nulle. Par definition, le CoP est le point d’application de la resultantedes forces de pression des pieds au sol dans un appui monopodal (par extension biopodal)definit le centre de pression. Pour assurer la propulsion du corps, ce point voyage pourune grande majorite des individus selon un axe median de la sole plantaire du talon versl’avant pied.

En l’absence de forces de contact exterieures autres que celles du pied, l’equationd’equilibre des moments verifie :

M cC ∧ n = M gi

C ∧ n

qui peut encore etre notee :[M c

C ]t =[M gi

C

]t

Le point ou le moment resultant des forces de gravite et d’inertie voit ses composantesselon les axes du plan tangent du contact s’annuler est definit dans la litterature comme leZMP (Zero Moment Point). Il s’agit la d’un abus de language car seules les composantesdu moment tangent s’annulent en ce point.

On peut facilement determiner la position du CoP comme du ZMP . La position dechacun de ces points est donnee par :

OCCoP = (n ∧MnO)/Rn

OCZMP = (n ∧M giO )/Rgi.n

CoP et ZMP Les coordonnees du ZMP sont :

xZMP =[∑i (σGi

+∑iQGi ∧mi aGi

) +QG ∧m g] .y

(−mg +∑imizGi

)

xZMP =[∑i (σGi

+∑iQGi ∧mi aGi

) +QG ∧m g] .x

(−mg +∑imizGi

)

On peut aussi considerer le role particulier jouer par la dynamique du pied dansl’equilibre. L’equation de moment en un point O du sol pour ses seules composantestangentielles s’ecrit :[

OC ∧Rc +OGpied ∧mpiedg +OA ∧Ra + τa]t

=[σpiedGpied

+OGpied ∧mpiedaGpied

]t

ou :

- mpied, σpied et OGpied sont respectivement la masse du pied, le moment cinetique

du pied au point O et le vecteur position du centre de gravite du pied.

80

Page 81: Cours de Robotique Avanc ee - isir.upmc.fr Robotique 834(1).pdf · Cours de Robotique Avanc ee Redondance et Optimisation Ph. Bidaud Universit e Pierre et Marie Curie - Paris 6 Master

- Ra et τa sont les composantes des efforts d’interaction du pied avec la jambe (a lacheville).

En developpant ces derniers, l’equation de moment peut etre mise sous la forme :[OC ∧Rc +OGpied ∧ P pied +OG′ ∧ P ′

]t

=[σpiedGpied

+ σ′G′ +OGpied ∧mpiedaGpied+OG′ ∧m′aG′

]t

Introduisons un point F situe au dela de la frontiere du contact et toujours dans le plande l’appui, l’equation de moment en F est :[(OC + CF ) ∧Rc +OGpied ∧mpiedg +OA ∧Ra + τa

]t

=[σpiedGpied

+ 0Gpied ∧mpiedaGpied

]t

Au point C, lorsque le pied est immobile, l’equation de moment verifie :[CGpied ∧mpiedg + CA ∧Ra + τa

]t

= 0

Si le pied pivote sur le sol, toujours au point C on a :[CF ∧Rc + CGpied ∧mpiedg + CA ∧Ra + τa

]t

=[σpiedGpied

+ CGpied ∧mpiedaGpied

]t

La composante de moment due au pivotement est :

[CF ∧Rc]t =[σpiedGpied

+ CGpied ∧mpiedaGpied

]t

. Elle represente le FRI (Foot Rotation Index) .Une autre maniere de quantifier l’etat de desequilibre du systeme conduit a definir la

position du point d’application d’une force d’appui (du pied avec le sol) qui ferait que lavariation du moment cinetique soit nulle. Si on considere l’equation de moment toujoursdans la plan tangent au contact pour l’ensemble du systeme

[OC ∧Rc +OG ∧m g]t = [σG +OG ∧maG]t

La condition pour que σG = 0 conduit a :

[GCCMP ∧Rc]t = [σG]t = 0

Pour qu’il en soit ainsi il faut tout simplement que GCCMP et la force de reaction aucontact soient colineraires ou dans paralleles.

81

Page 82: Cours de Robotique Avanc ee - isir.upmc.fr Robotique 834(1).pdf · Cours de Robotique Avanc ee Redondance et Optimisation Ph. Bidaud Universit e Pierre et Marie Curie - Paris 6 Master

6 Analyse des performances

6.1 Indices de manipulabilite

Dans les annees 50, Fitt a propose un index de difficulte pour quantifier le comporte-ment humain psychomoteur. Cet index interprete le compromis entre la vitesse et laprecision dexecution dune action rapide et ciblee ( ex : saisir un objet) a travers letemps necessaire pour saisir une cible de diametre W situee a une distance A comme unefonction logarithmique de lerreur spatiale relative A/W .

T = a+ blog2(A/W + 1)

La transmission cinematique d’un mecanisme est evaluee a travers l’indice d’avantagemecanique qui est le rapprt entre la vitesse d’entree et de sortie du mecanisme :

MA = |Ve| / |Vs|

La capacite de transmission d’effort sera egalement interpretable a travers cet indice siles actions sont colineaires aux mouvements d’entree et de sortie :

MA = |Vs| / |Ve|

On quantifie egalement l’angle de transmission δ et de deviation γ dans un mecanisme(voir figure 6.1).

6.1.1 Indice de manipulabilite cinematique

7 Analyse des performances

7.1 Transmission des vitesses

La transmission des vitesses articulaires sur SP est definie par le modele cinematiquedirect du mecanisme de manipulation.

X = Jq

82

Page 83: Cours de Robotique Avanc ee - isir.upmc.fr Robotique 834(1).pdf · Cours de Robotique Avanc ee Redondance et Optimisation Ph. Bidaud Universit e Pierre et Marie Curie - Paris 6 Master

J peut etre vue comme la matrice associee a la transformation entre les vitesses artic-ulaires q et la vitesse relative de l’objet SP par rapport a S0. En pratique, les valeursprises par les qi sont bornees par les capacites technologiques en vitesse des actionneursou les saturations introduites dans la commande. La represenation parametrique de cettecontrainte est:

qimin ≤ qi ≤ qmaxi

ou encore, en prenant des contraintes symetriques:

| qi |≤ qmaxi

La courbe parametree correspondant a ces dernieres, dans le plan rapporte a un repereorthonorme dont les axes portent q1 q2, est un parallelepipede ferme (figure 33).

Ces limites vont introduire des bornes sur les capacites de deplacement cartesien deSP . Celles-ci sont donnees pour la direction j de l’espace cartesien par:

| Xj |≤ Jj qmax

ou Jj est la fonction reelle des q dont les coefficients sont les termes de la j eme ligne dela matrice J . La courbe parametree correspondante est donnee figure 34

Pour savoir comment opere la transformation, nous allons successivement considerer,d’un point de vue geometrique, l’image d’un point de Q puis le domaine de definitiondes points images dans X . Nous conduirons le raisonnement pour n = m = 2 sachantque l’on peut generaliser directement au cas ou n > 2 et m > 2.

Si l’on definit une metrique de type N2 pour Q, geometriquement l’ensemble despoints tels que:

| q |2= (q21 + q2

2 + · · ·+ q2n) ≤ 1

constitue une sphere fermee de rayon unite, ou un disque ferme dans le cas ou m = n = 2.

| q |2= (q21 + q2

2) ≤ 1

L’image de l’ensemble de ces points dans X constitue un champ elliptique ferme. Eneffet:

| q |2= qtq = (J+X)t(J+X) = X t(JJ t)−t ≤ 1

En utilisant une decomposition en valeurs singulieres de J−1 (et pour generalisation J+),on a:

J+ = V Σ+U t

ou U ∈ Rm×m, V ∈ Rn×n sont des matrices orthogonales et Σ = diag(σ1, σ2, ...., σr), retant le rang de J . Dans ces conditions,

| q |2= X t(V Σ+U t)t(V Σ+U t)X = X tU(Σ+)2U tX ≤ 1

soit en termes de composantes : ∑i=1,k

(xui)/σi ≤ 1

83

Page 84: Cours de Robotique Avanc ee - isir.upmc.fr Robotique 834(1).pdf · Cours de Robotique Avanc ee Redondance et Optimisation Ph. Bidaud Universit e Pierre et Marie Curie - Paris 6 Master

Cette quadrique bornee est l’equation cartesienne reduite d’un ellipsoide. Les valeurs sin-gulieres σi sont les demi-axes de l’ellipsoide 3 ) mesures selon les directions des vecteurscolonnes de U . On traduit ainsi geometriquement la maniere dont se realise la transmis-sion des vitesses dans une configuration geometrique donnee du mecanisme et par toutedirection prise par le vecteur vitesses articulaires .Jusqu’a ce point nous avons implicitement admis que tous les axes des articulationsactives disposaient d’actionneurs identiques et par consequent etaient suceptibles desmemes capacites. Sous cette hypothese, on peut introduire une premiere mesure, celleque l’on associe au volume de l’ellipsoıde qui par definition est directement proportionelau produit des valeurs singulieres σi. La qualite de la transmission, en terme d’amplitude,peut donc etre representee par le scalaire ω tel que:

ω =∏i

σi

En utilisant la decomposition en valeur singuliere de J , pour le cas general ou n ≥ m ona egalement:ω = det(JJ t) = det(U)× det(ΣΣt)× det(U t)or det(U)× det(U t) = 1, puisque UU t = UU−1 = 1et donc det(JJ t) = det(ΣΣt)

Dans le cas particulier ou J est une matrice carree (m = n), cette meme mesure sereduit a:

ω =| det(J) |=| det(Σ) |puisque U et V ∈ Rn×n et det(U) = ±1, det(V ) = ±1

Cette mesure n’est bien evidemment pas la seule qui puisse etre introduite. On peutpar exemple penser a exploiter directement les directions dans lesquelles les demis-axesde l’ellipsoıde sont les plus grands et les faire coıncider avec les directions de l’espacecartesien que la tache impose de privilegier. Notons par ailleurs que la mesure ω donneune distance par rapport aux singularites cinematiques du mecanisme. Si l’on veut main-tenant tenir compte du domaine de definition de q, ceci peut etre fait en considerant nonpas directement les projections des parallelepipedes de containtes mais une approxima-tion sous la forme d’une fonction continue. Les parallelepipedes presentent, en effet, unediscontinuite de premiere espece 4.On peut approcher le parallelepipede du plan (q1q2) par une ellipse (ellipsoıde dans unespace de dimension superieur a 2) et dire par approximation que les vitesses articulairesrealisables doivent etre prises a l’interieur d’un ensemble dont les frontieres sont definiepar la courbe:

(Qsat)−1q((Qsat)

−1)tqt = 1 (Qsat) = diag(qmax1 , · · · , qmaxn )

L’image de cet ellipsoıde dans l’espace des X est:

(Q−1satq)

t Q−1satq = qt(Q−1

sat)2q = X t(V Σ+U t)t(Q−1

sat)2V Σ+U tX

3On appelle ellipsoıde une surface qui, par rapport a une origine et une base orthonormale admetune equation de la forme x2/a2 + y2/b2 + z2/c2 = 1, ou a, b, c sont des constantes > 0

4les limites a droite et a gauche existent et sont distinctes

84

Page 85: Cours de Robotique Avanc ee - isir.upmc.fr Robotique 834(1).pdf · Cours de Robotique Avanc ee Redondance et Optimisation Ph. Bidaud Universit e Pierre et Marie Curie - Paris 6 Master

soit encore en notant Xu = U tX

(Q−1satq)

t Q−1satq = X t

uΣ+V t(Q−1

sat)2V Σ+Xu

Ce que l’on peut observer a partir de ce resultat est que la direction des axes principaux del’ellipsoıde restent bien sur inchangee mais que les longueurs des demis-axes se trouventmodifees par la matrice:

(Q′−1sat)

2= V t(Q−1

sat)2V

matrice dites congruente de (Q−1sat)

2

7.2 Transmission des efforts

Nous pouvons conduire le meme raisonnement sur les efforts statiques qu’il est possiblede transmettre dans une configuration donnee du mecanisme. Dans l’hypothese ou lesforces de gravite sont negligees, la loi de transmission des efforts est:

τ = (J t)+F

ou F et τ designent respectivement les vecteur des forces exterieur applique sur SP et levecteur des forces articulaires generalisees.L’image de | τ |2≤ 1 dans l’espace cartesien forme un ellipsoide definit par :

F tJJ tF t ≤ 1

L’ellipsoıde de transmission de force aura cette fois pour axes principaux:

ui/σi

et par consequent, son volume sera proportionel a:

1/ω

Ceci met directement en evidence le fait que la qualite de transmission de force est, dansun mecanisme donne, inversement proportionelle a la qualite de transmission des desefforts.

7.3 Transmission des accelerations (manipulabilite dynamique)

Rappelons que les equations du mouvement dans l’espace cartesien, en l’absence demouvement interne s’ecrivent :

τ = M(q)J(q)+(X − J q) + C(q, q) +N(q)

Les accelerations cartesiennes pour un vecteur de commande donne sont :

X = J(q)M(q)−1(τ − C(q, q)−N(q)) + J q

85

Page 86: Cours de Robotique Avanc ee - isir.upmc.fr Robotique 834(1).pdf · Cours de Robotique Avanc ee Redondance et Optimisation Ph. Bidaud Universit e Pierre et Marie Curie - Paris 6 Master

On peut voir l’acceleration cartesienne X comme la somme de deux termes :

X = J(q)M(q)−1τ + J(q)M(q)−1(−C(q, q)−N(q)) + J q = J(q)M(q)−1τ + Xoff

Le terme Xoff constitue un offset pour l’acceleration de l’effecteur lorsque τ = 0 L’imagedu domaine des couples (forces) actionneurs tel que :

τ tτ ≤ 1

dans l’espace des accelerations est :

(X − Xoff )t(M(q)J(q)+)t(M(q)J(q)+)(X − Xoff ) ≤ 1

(X − Xoff )t(JM−2J t)+(X − Xoff ) ≤ 1

De cette ellipsoide, on peut deriver une mesure de manipulabilite dynamique :

ωd =[det(JM−2J t)

]1/2qui quand n = m se reduit a :

ωd =| det(JM−1) |= | detJ || detM |

7.4 Indice de rigidite s’un systeme

Tout systeme peut presenter des deformations sous des actions exterieures. Si cesdeformations sont considerees comme localisees dans les liaisons et proportionnelles ala raideur des asservissements de position, pour chaque articulation on a :

δqi = ci τi

Si les liaisons sont independantes (comme pour un systeme serie), on peut definir unematrice d’elasticite articulaire comme :

C = diag(c1, c2, . . . , cn)

Le vecteur des petits deplacements articulaires sous une action articulaire donnee est :

δq = Cqτ

Ce deplacement se projete dans l’espace operationel par J , on a donc :

δX = JCqJtF = CxF

La matrice Cx represente la ”‘compliance”’ globale du systeme dans l’espace operationnel.De la meme maniere on peut determiner la compliance operationnelle d’un systemeparallele.

86

Page 87: Cours de Robotique Avanc ee - isir.upmc.fr Robotique 834(1).pdf · Cours de Robotique Avanc ee Redondance et Optimisation Ph. Bidaud Universit e Pierre et Marie Curie - Paris 6 Master

7.5 Indice de stabilite d’un systeme d’appuis unilateraux

Lorsque les systemes presentent des appuis unilateraux, il peut etre important de pouvoirmaıtriser les conditions non rupture voire de non-glissement de ces appuis. Ce type dequestion se pose notamment pour les systemes de prehension et de locomotion.

8 Configurations singulieres et domaine de travail

D’une maniere generale, les configurations stationnaires d’un mecanisme serie sont aunombre de k = 2n−1, si n est le nombre de liaisons bilaterales. Un mecanisme de doigtconstitue de 3 articulations presentera 4 configurations stationnaires.

L’ensemble des configurations stationnaires peut etre determine indifferement dumecanisme. Cependant, seulement un certain nombre d’entre-elles correspondent auxfrontieres exterieures et interieures du domaine atteingnable, les autres se trouvant al’interieur du domaine defini par ces frontieres. Si nous cherchons a les determinertoutes, dans un premier temps. Ce que l’on sait c’est que dans une telle configurationsinguliere, il existe un torseur reciproque au systeme de torseurs, generateur du mouve-ment du point Pj (Lorsque la configuration singuliere est double, triple .., il s’agit d’unsysteme de torseurs reciproques de dimension 1,2,3 ....).Avant d’aborder plus specifiquement le probleme de la determination des configurationsstationnaires des mecanismes de prehension, nous allons reprendre quelques elementsgeneraux sur ce sujet.

8.0.1 Configurations stationnaires d’un mecanisme serie

Les mecanismes series se trouvant dans une configuration stationnaire voient leur mo-bilite diminuer. Ceci se traduit par le fait que, la matrice Jacobienne J , regroupant encolonne les coordonnees Pluckeriennes des torseurs, a un rang RG(J) < m (m : mobilitegenerale). Lorsque m = 6 par exemple, J s’ecrit:

J =

l1 l2 l3 l4 l5 l6m1 m2 m3 m4 m5 m6

n1 n2 n3 n4 n5 n6

p∗1 p∗2 p∗3 p∗4 p∗5 p∗6q∗1 q∗2 q∗3 q∗4 q∗5 q∗6r∗1 r∗2 r∗3 r∗4 r∗5 r∗6

Hors configuration singuliere, a chaque systeme de 5 torseurs, pris parmi les 6 precedants,correspond un torseur reciproque different. Ce systeme de torseurs reciproques se determinedirectement en exploitant la relation (b) et par permutation circulaire sur les 6 torseurs.

87

Page 88: Cours de Robotique Avanc ee - isir.upmc.fr Robotique 834(1).pdf · Cours de Robotique Avanc ee Redondance et Optimisation Ph. Bidaud Universit e Pierre et Marie Curie - Paris 6 Master

Figure 33: Manipulateur Puma represente dans un configuration singuliere, les liaisons4 et 6 sont co-axiales

En notant (l′,m′, n′, p′∗, q′∗, r′∗) leurs coordonnees, on peut former la matrice Jc suivante:

Jc =

p′∗1 p′∗2 p′∗3 p′∗4 p′∗5 p′∗6q′∗1 q′∗2 q′∗3 q′∗4 q′∗5 q′∗6r′∗1 r′∗2 r′∗3 r′∗4 r′∗5 r′∗6l′1 l′2 l′3 l′4 l′5 l′6m′1 m′2 m′3 m′4 m′5 m′6n′1 n′2 n′3 n′4 n′5 n′6

On remarquera que cette matrice n’est autre que la matrice des cofacteurs de la matriceJ (de chaque element de det(J)), la ieme colonne de Jc regroupant les coordonneespermutee du torseur reciproque a tous les torseurs de J excepte, $i.Des lors ou les 5 torseurs consideres pour determiner $Ri sont lineairement independants,$Ri est non-nul. Lorsque les 5 torseurs sont cette fois lineairement dependants, la colonnede Jc correspondante represente un torseur nul.

On illustre cela sur l’exemple un manipulateur PUMA pris dans la configurationrepresentee sur la figure 35. Dans cette configuration, les torseurs cinematiques desliaisons exprimes en P sont les suivants 5:$1 = (0, 0, 1, 1, 4, 0),$2 = (0, 1, 0, 0, 0,−4,$3 = (0, 1, 0,−1, 0,−2),$4 = (2, 0,−1, 0, 0, 0),$5 = (1, 0, 2, 0, 0, 0),

5les torseurs sont pris non-unitaires pour faciliter les calculs.

88

Page 89: Cours de Robotique Avanc ee - isir.upmc.fr Robotique 834(1).pdf · Cours de Robotique Avanc ee Redondance et Optimisation Ph. Bidaud Universit e Pierre et Marie Curie - Paris 6 Master

$6 = (2, 0,−1, 0, 0, 0) La matrice Jacobienne qui leur correspond est:

J =

0 0 0 2 1 20 1 1 0 0 01 0 0 −1 2 −11 0 −1 0 0 04 0 0 0 0 00 −4 2 0 0 0

La matrice des cofacteurs Jc obtenue est:

Jc =

0 0 0 0 0 00 0 0 −80 0 800 0 0 0 0 00 0 0 −40 0 400 0 0 −10 0 100 0 0 −20 0 20

Les colonnes non-nulles de Jc correspondent aux combinaisons de torseurs dans J lineairementindependants dans la configuration. On observe que lorsque $4 ou $6 ne rentrent pas danscette combinaison, les 5 autres torseurs sont independants. Par consequent, seules lescombinaisons entre $4 ou $6 provoquent la singularite.L’autre information importante restituee par Jc est que seuls les torseurs correspondantsaux liaisons comprises entre les torseurs lineairement dependants peuvent en modifierleur configuration instantanee relative. Pour sortir de la singularite dans laquelle setrouve le PUMA, la position de l’axe 5 doit etre modifiee.Le torseur reciproque au systeme de 6 torseurs est donc de coordonnees:

$R = ρ(4,−1, 2, 0,−8, 0)

Le pas de ce torseur est :

λ =lp∗ +mq∗ + nr∗

l2 +m2 + n2= −8/21,

et son axe central est porte par la droite de coordonnees homogenes:

ρ(4,−1, 2, 0,−8 + λ, 0)

8.0.2 Determination du domaine accessible en position

Les frontieres de l’espace physique delimitant le volume de travail sont determinees parles positions extremes que peut prendre le mecanisme. La distance Euclidienne entrel’axe de la premiere liaison et le point caracteristique P est a un extremum si la droiteissue de P et normale a s1 est concourante avec chacun des axes geometriques des liaisons(rotoıdes).

89

Page 90: Cours de Robotique Avanc ee - isir.upmc.fr Robotique 834(1).pdf · Cours de Robotique Avanc ee Redondance et Optimisation Ph. Bidaud Universit e Pierre et Marie Curie - Paris 6 Master

On remarque directement que les configurations correspondant aux conditions dutheoreme precedent sont indifferentes de la valeur prise par θ1. Elles seront donc verifieespour tous les points situes sur le cercle de rayon A1P . Par ailleurs, en suivant ce theoreme,on notera qu’il existe, pour un mecanisme de geometrie donnee, articule par des liaisonsrotoıdes, plusieurs configurations pouvant etre qualifiees de configurations d’extensionextreme. Si le point P est situe sur la droite L passant par A1 et A2 et si P est dans unplan perpendiculaire a s1, alors une rotation d’angle Π autour de s1 placera a nouveauA2P colineaire a A1 A2 (cf figure ??). Pour chaque axe on aura donc 2 solutions etpar extension pour un manipulateur n axes 2n−1 solutions. Dans une configurationstationnaire, les torseurs decrivant le mouvement relatif des corps sont reciproques a unou un systeme de torseurs. Place dans ces conditions geometriques, le corps terminal dela chaıne cinematique pert un (ou plusieurs) degres de liberte. Le mouvement instantaneparallele a l’axe du torseur reciproque devient impossible, incompatible avec la liaisoncomplexe SP/S0. Tout torseur $R satsifait donc a la condition de reciprocite le torseurassocie a l’axe ′i′, est traduite geometriquement par:

risinαi + (λR − λi)cosαi = 0

ou ri, αi, λR et λi designant respectivement la distance normale a l’axe du torseur du pointP , l’angle entre les deux axes centraux des torseurs et le pas des torseurs cinematiqueset reciproques.

Le glisseur reciproque, dont l’axe passe par P , represente une force pure dont le sup-port est l’axe du glisseur. Cette force ne fera travailler aucune des liaisons rotoıdes danscette configuration. On peut donc s’aider de cette interpretation dans la recherche desfrontieres du domaine de travail. Le deplacement du point P nest plus permis dans ladirection de l’axe du torseur reciproque au systeme de torseurs cinematiques. Le manip-ulateur se trouve en equilibre statique sous l’action de la force representee par $R. Onnotera que ces configurations singulieres sont a differencier de celles illustrer sur la figure(X), ou la nous avons egalement a faire a un torseur reciproque qui est un glisseur maisd’axe ~y. Pour discriminer, parmi les configurations stationnaires, celles corespondant a lafrontiere du domaine, on peut utiliser un algorithme permettant dans un premier tempsde trouver toutes configurations conforment au theoreme enonce avant, puis de verifiercelles qui realisent un equilibre statique stable sous l’action d’une force pure appliqueeen P .Dans l’hypothese d’un systeme conservatif, et en considerant que les actions exterieuresdeveloppees aux articulations derivent d’un potentiel, la position d’equilibre est stable sila matrice de rigidite (autour de la valeur θ0 d’equilibre) est definie positive et instablesi l’une au moins de ses valeurs propres est strictement negative.

Les frontieres du domaine de variation des configurations du point P dans l’espacephysique sont les lieux des points P satisfaisant aux conditions enoncees au-dessus.Comme nous l’avons deja fait remarquer, $R est independant de la valeur prise par lavariable cinematique de la premiere liaison rotoıde. Par consequent, les lieux des pointsP verifiant (1) sont des cercles de rayon A1P . L’un d’eux verifie par ailleurs la stabilitede l’equilibre.

90

Page 91: Cours de Robotique Avanc ee - isir.upmc.fr Robotique 834(1).pdf · Cours de Robotique Avanc ee Redondance et Optimisation Ph. Bidaud Universit e Pierre et Marie Curie - Paris 6 Master

8.0.3 Extension au mecanismes paralleles

Si l’on etend cette technique a un systeme mecanique constitue de N chaınes seriesdisposees en parallele, on peut dire que un point P du corps SP se trouvera sur lafrontiere de l’espace si le systeme de N chaınes est dans un etat d’equilibre statiquestable. Autrement dit, s’il exite un glisseur, dont l’axe passe par P , qui est reciproqueau systeme S de torseurs decrivant le mouvement de SP par rapport a SO.Ce glisseur est un representant du systeme SR obtenu par l’union de tous les systemes deglisseurs reciproques S

(i)R aux systemes de torseurs S(i) decrivant les mouvements relatifs

des corps de la chaıne ′i′.$R = $1

R ∪ $2R ∪ .... ∪ $nR

Les frontieres du domaine de variation des configurations du point P dans l’espacephysique sont les lieux des points P satisfaisant aux conditions enoncees au-dessus. Anoter que cette condition est une condition necessaire mais non suffisante. Elle ne con-sidere en effet que la superposition les contraintes elementaires introduites pour chaquechaıne du mecanisme. Quand 2 des chaınes se trouvent en extension maximale, ellesproduisent des contraintes simultanement sur le mouvement de SP . SP peut etre alorsvu comme le corps de couplage d’un mecanisme en chaıne fermee. Le point P de SPest astreint a une trajectoire, appelee courbe de couplage qui verifie les equations decontrainte suivantes:

φ(Pi, Pj, Cij) = (X iP −X

jP )2 + (Y ı

P − YjP )2 + (Z ı

P − ZjP )2 − Cij = 0

9 Techniques d’optimisation

91