Vous êtes sur la page 1sur 91

.

Cours de Robotique Avancée


Redondance et Optimisation

Ph. Bidaud

Université Pierre et Marie Curie - Paris 6


Master Sciences de l’Ingénieur
Objectifs du cours

Ce cours aborde les méthodes utilisées en Robotique pour traiter des problèmes
d’analyse et de commande de systèmes complexes. Les systèmes complexes considérés
ici sont :

1. Les systèmes de manipulation redondants cinématiquement

2. Les systèmes non-hôlonomes

3. Les systèmes à architecture parallèle

4. Les systèmes de manipulation coordonnée avec des liaisons unilatérales

On recouvre l’essentiel des problèmatiques auxquelles on est confronté dans le cadre de


la manipulation dextre, la préhension articulée, la locomotion à roues et à pattes, etc ...

Plan du cours

1. Cinématique des systèmes redondants.

2. Dynamique des systèmes redondants et containts

3. Cinématique et statique des systèmes parallèles et de manipulation coordonnée

4. Stabilité des contacts unilatéraux

5. Les quantificateurs de performance

6. Méthodes d’optimisation multi-critères

2
Contents
1 Introduction 6

2 Cinématique des systèmes redondants 6


2.1 Générateur du mouvement, noyau et leurs compléments orthogonaux et
réciproques . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6
2.2 Définition de la redondance cinématique . . . . . . . . . . . . . . . . . . 7
2.3 Analyse du problème de la redondance cinématique . . . . . . . . . . . . 8
2.4 Définition d’un modèle géomètrique inverse . . . . . . . . . . . . . . . . . 9
2.4.1 Solution par la Jacobienne transposée . . . . . . . . . . . . . . . . 11
2.4.2 Solution par la pseudo-inverse de Moore Penrose . . . . . . . . . . 12
2.5 Homogénéı̈sation de J pour le calcul de la pseudo-inverse . . . . . . . . . 14
2.6 Méthodes de détermination des mouvements internes . . . . . . . . . . . 15
2.6.1 Vecteurs du noyau de J . . . . . . . . . . . . . . . . . . . . . . . 15
2.6.2 Tâche secondaire dans l’espace articulaire . . . . . . . . . . . . . 16
2.6.3 Tâche secondaire dans l’espace cartésien . . . . . . . . . . . . . . 19
2.6.4 Autre formulation de la tâche secondaire . . . . . . . . . . . . . . 20
2.7 Augmentation de l’espace opérationnel . . . . . . . . . . . . . . . . . . . 21
2.8 Utilisation de méthodes d’optimisation . . . . . . . . . . . . . . . . . . . 23
2.8.1 Multiplicateurs de Lagrange . . . . . . . . . . . . . . . . . . . . . 23
2.8.2 Programmation linéaire . . . . . . . . . . . . . . . . . . . . . . . 24
2.9 Détermination des configurations singulières dans les manipulateurs re-
dondants . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 24
2.10 Passage des singularités . . . . . . . . . . . . . . . . . . . . . . . . . . . 25

3 Dynamique des systèmes redondants et contraints 27


3.1 Principe de dÁlembert et travaux virtuels . . . . . . . . . . . . . . . . . 27
3.2 Modèle dynamique inverse des systèmes séries . . . . . . . . . . . . . . . 30
3.3 Modèle dynamique cartésien des manipulateurs non-redondants . . . . . 31
3.4 Modèle dynamique articulaire des manipulateurs redondants . . . . . . . 32
3.5 Modèle dynamique opérationel des manipulateurs redondants . . . . . . . 33
3.6 Modèle dynamique des systèmes contraints . . . . . . . . . . . . . . . . . 34
3.6.1 Multiplicateurs de Lagrange . . . . . . . . . . . . . . . . . . . . . 34
3.6.2 Réduction du modèle dynamique par résolution des multiplicateurs
de Lagrange . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 37
3.6.3 Résolution des accélérations généralisées par optimisation . . . . . 38
3.6.4 Réduction des équations par le complément orthogonal . . . . . . 38

4 Commande des systèmes redondants 43


4.1 Commande en accélération des manipulateurs redondants . . . . . . . . . 43
4.2 Commande en vitesse des manipulateurs redondants . . . . . . . . . . . . 44
4.3 Commande en couple des manipulateurs redondants . . . . . . . . . . . . 45

3
5 Systèmes parallèles et systèmes de manipulation coordonnée 46
5.1 Systèmes parallèles . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 46
5.1.1 Exemples de systèmes parallèles . . . . . . . . . . . . . . . . . . . 46
5.1.2 Modèle cinématique des systèmes parallèles . . . . . . . . . . . . 47
5.1.3 Modèle cinématique des systèmes parallèles contraints . . . . . . . 49
5.1.4 Modèle cinématique des systèmes parallèles redondants . . . . . . 53
5.1.5 Modèle statique des systèmes parallèles . . . . . . . . . . . . . . . 53
5.1.6 Modèle dynamique des systèmes parallèles . . . . . . . . . . . . . 54
5.2 Systèmes de manipulation coordonnée . . . . . . . . . . . . . . . . . . . . 56
5.2.1 Statique de la manipulation coordonnée . . . . . . . . . . . . . . 58
5.2.2 Modèle des actions de contact . . . . . . . . . . . . . . . . . . . . 58
5.2.3 Modélisation du contact entre 2 solides . . . . . . . . . . . . . . . 58
5.2.4 Transmission de mouvement dans les liaisons par contact . . . . . 59
5.2.5 Champ des actions de contact . . . . . . . . . . . . . . . . . . . . 60
5.2.6 Modèle de frottement de Coulomb . . . . . . . . . . . . . . . . . . 61
5.2.7 Application à la modélisation d’une prise . . . . . . . . . . . . . . 63
5.2.8 Etude de l’équilibre de la prise . . . . . . . . . . . . . . . . . . . . 66
5.2.9 Famille de réactions statiquement admissibles . . . . . . . . . . . 67
5.2.10 Analyse algébrique de l’équilibre . . . . . . . . . . . . . . . . . . . 68
5.2.11 Détermination des forces de contact . . . . . . . . . . . . . . . . . 69
5.2.12 Détermination des composantes de serrage . . . . . . . . . . . . . 69
5.2.13 Rigidité de la prise . . . . . . . . . . . . . . . . . . . . . . . . . . 71
5.3 Cinématique de la manipulation coordonnée . . . . . . . . . . . . . . . . 72
5.3.1 Equations de fermeture des chaı̂nes cinématiques . . . . . . . . . 72
5.3.2 Utilisation des torseurs réciproques . . . . . . . . . . . . . . . . . 73
5.3.3 Projection des mouvements transmis par les doigts sur les contraintes 73
5.4 Introduction de la cinématique des contacts . . . . . . . . . . . . . . . . 75
5.4.1 Dynamique de la manipulation coordonnée . . . . . . . . . . . . . 76
5.5 Cas particulier des robots humanoı̈des . . . . . . . . . . . . . . . . . . . 78
5.5.1 Caractérisation de l’équilibre d’un humanoı̈de . . . . . . . . . . . 78

6 Analyse des performances 81


6.1 Indices de manipulabilité . . . . . . . . . . . . . . . . . . . . . . . . . . . 81
6.1.1 Indice de manipulabilité cinématique . . . . . . . . . . . . . . . . 82

7 Analyse des performances 82


7.1 Transmission des vitesses . . . . . . . . . . . . . . . . . . . . . . . . . . . 82
7.2 Transmission des efforts . . . . . . . . . . . . . . . . . . . . . . . . . . . 85
7.3 Transmission des accélérations (manipulabilité dynamique) . . . . . . . . 86
7.4 Indice de rigidité s’un système . . . . . . . . . . . . . . . . . . . . . . . . 86
7.5 Indice de stabilité d’un système d’appuis unilatéraux . . . . . . . . . . . 87

4
8 Configurations singulières et domaine de travail 87
8.0.1 Configurations stationnaires d’un mécanisme série . . . . . . . . . 87
8.0.2 Détermination du domaine accessible en position . . . . . . . . . 89
8.0.3 Extension au mécanismes parallèles . . . . . . . . . . . . . . . . . 91

9 Techniques d’optimisation 91

5
1 Introduction
Les systèmes robotiques présentent généralement un degré de complexité qui impose
de reconsidérer les techniques de modélisation et de commande de leur comportement.
L’une des dimensions particulières dans la complexité des systèmes est liée au nombre
de leur degré de liberté qui peut induire une redondance/abondance vis-à-vis des tâches
à réaliser.
L’exploitation de la redondance cinématique est le premier des points que nous ex-
aminerons. Cette redondance peut notamment servir à optimiser par la commande le
comportement du système du point de vue de certaines de ses performances. Ce problème
peut être abordé d’un point de vue cinématique ou dynamique selon le type contrôle bas-
niveau mis en oeuvre sur le système.
Une autre dimension dans la complexité des systèmes est induite par le fait des con-
traintes imposées par des liaisons non-holonomes ou par des cycles cinématiques multiples
dans le mécanisme. Nous considérerons les problèmes de modélisation et de commande
de systèmes non-holonomes, de systèmes parallèles ainsi que de systèmes présentant des
liaisons par contact de pour lesquels la persistance de la liaison doit être maintenue.
Nous introduirons un certain nombre de moyens pour quantifier les performances
cinématiques et dynamiques de ces systèmes et nous envisagerons leur utilisation dans
leur commande (lorsqu’ils concernent des variables de commande) ou leur conception
(lorsqu’ils portent sur des paramètres structurels).
Enfin, nous reviendrons sur plusieurs techniques d’optimisation particulièrement adaptées
au traitement des problèmes exposés. Nous introduirons également des techniques adaptées
au multi-critère.

2 Cinématique des systèmes redondants


2.1 Générateur du mouvement, noyau et leurs compléments
orthogonaux et réciproques
La relation entre l’espace des vitesses généralisées et des vitesses opérationnelles est une
application linéaire dont J est la matrice associée. Le produit J q̇ peut être vu comme
une combinaison linéaire des vecteur-colonnes de J. Aussi, on peut définir :
1. Le générateur de l’application définit l’ensemble des vitesses transmissibles par le
système. n o
R(J) = Ẋ ∈ Rm /∃q̇ ∈ Rn Ẋ = J q̇

2. Le complément orthogonal à R(J) constitue l’ensemble des vitesses non-transmissibles.


n o
R(J)⊥ = Ẋ ∈ Rm /∃Ẋ 0 ∈ R(J) Ẋ t Ẋ 0 = 0

3. Le complément réciproque à R(J) définit les actions naturellement transmissibles


n o
R(J)R = Ḟ ∈ Rm /∃Ẋ ∈ R(J) F t Ẋ = 0

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

N (J) = {q̇ ∈ Rn /J q̇ = 0}

5. Le complément orthogonal est l’ensemble des vitesses articulaires qui engendre un


mouvement de l’effecteur.
n o
N (J)⊥ = q̇ ∈ Rn /∃q̇ 0 ∈ N (J) q̇ t q̇ 0 = 0

6. Le complément réciproque au noyau est l’ensemble des couples articulaires qui


produisent une puissance nulle dans le mouvement interne.
n o
N (J)R = τ ∈ Rn /∃q̇ 0 ∈ N (J) τ t q̇ 0 = 0

On montre également que :


R(J)⊥ = N (J t )
N (J)⊥ = R(J t )
Cette dualité entre la vitesses et efforts est illustrée sur la figure 1.

Figure 1: Illustration de la dualité vitesse/effort

2.2 Définition de la redondance cinématique


La redondance d’un système mécanique peut être définie du point de vue cinématique.
Lorsque m la dimension de l’espace des déplacements du système, ou si tous les déplacements
ne sont pas imposés par la tâche le nombre de contraintes imposées sur le mouvements
du corps ”‘manipulé”’ est égal à la mobilité cinématique du système, alors la matrice

7
jacobienne J du système est hors singulatités une matrice carrée. la solution au problème
cinématique inverse Ẋ = J q̇ (ou différentiel inverse dX = Jdq ) est donnée par :

q̇ = J −1 Ẋ

Pour simplifier les choses, on considérera que la mobilité du mécanisme est directement n
le nombre de liaisons et que le nombre de contraintes est directement égal à la dimension
du groupe des déplacements dans lequel le système évolue (noté d).
Dès lors où le manipulateur est redondant devant la tâche (n > d ou plus généralement
rg(J) > d) alors le problème est sous-déterminé. Il existe une infinité de solutions au
problème cinématique inverse. Le degré de redondance cinématique du système devant
la tâche est :
r = n − dim(R(J)) = dim(N (J))

2.3 Analyse du problème de la redondance cinématique


Pour le manipulateur de 3P de la figure 2, si seule la trajectoire du point P est imposée,
le degré de redondance est 1. La Jacobienne de ce manipulateur est :

Figure 2: Manipulateur redondant 3P

1 0 1
 
Jv =
0 1 0
Une base de R(J) est :
1 0
 
R(J) =
0 1
Une base de N (J) est :  
−1
N (J) =  0 
 

1
dim(N (J)) 6= 0 traduit le fait qu’il existe une possibilité de mouvement interne comme
l’illustre la figure 3. Le complément orthogonal au (N (J))⊥ constitue le sous-espace
des mouvements articulaires réalisant le mouvement δX avec le minimum d’amplitude
δq. Plusieurs méthodes sont envisageables pour résoudre la redondance. Les méthodes
utilisant le modèle cinématique sont les plus générales.

8
Figure 3: Illustration du mouvement interne

2.4 Définition d’un modèle géomètrique inverse


Si on considère le système est sous asservissement articulaire, l’une des solutions pour
aborder la commande des mouvements est d’utiliser le modèle géométrique inverse pour
définir les consignes articulaires à partir de la définition de la trajectoire en position et
orientation de l’objet manipulé. Cependant, dans le cas où le système est redondant,
le problème géométrique inverse est das ce cas sous-déterminé. Il existe par conséquent
une infinité de configurations articulaire pour atteindre une tâche donnée.
Pour traiter la redondance, une solution consiste à introduire des relations supplémentaires
pour traduire un objectif secondaire qui est par exemple d’optimiser une performance
locale. Si on considère que la performance en question est représentée par une fonction
scalaire continue notée W (q) en fonction des paramètres généralisés q. On peut con-
sidérer la résolution du problème géométrique inverse à partir d’une part par le modèle
géomètrique direct X = f (q) et d’autre part par r équations algébriques traduisant un
optimum de la fonction.
La recherche d’un optimum pour W (q) peut être vu comme un problème d’optimisation
sous les contraintes F (q) = (f (q) − X). Ce type de problème peut être abordé à
l’aide des multiplicateurs de Lagrange. Le problème équivaut à minimiser le Lagrangien
L(q) = W (q) + λt F (q), λ ∈ Rm=d étant le vecteur des multiplicateurs de Lagrange.
Ainsi, la solution vérifie à la fois la solution au modèle géométrique et minimise W (q).
Les points stationnaires sont tels que la différentielle de L(q) soit nulle :
!t
∂ L(q) ∂ W (q) ∂ F (q)
= + λ=0
∂q ∂q ∂q
∂ 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’équation précédente peut être ré-écrite :
J tλ + h = 0
ou en partitionnant les m premières lignes et les n − m suivantes :
t
Jm hm
  
λ= (1)
Jn−m hn−m

9
On peut à partir de ce système de n équations auquel serait joint les m équations issues
du modèle géomtrique direct déterminer l’ensemble des incunnues (les m multiplicateurs
de Lagrange et les n variables articulaires.
On peut également, en s’aidant des m premières équations du système (1) de résoudre
les m multiplicateurs de Lagrange.
−1
λ = Jm hm

En substituant dans les n − m équations, on a :


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

Ces r équations peuvent se mettre sous la forme matricielle :


−1
( Jn−m Jm , In−m ) h = 0
−1
où encore en notant Z = ( Jn−m Jm , In−m )

Zh = 0

Le problème géomètrique inverse pour un système redondant consiste alors à résoudre le


système :

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

Ces dernières équations permettent de détemininer complètement les variables articu-


laires.
Pour illustrer cette méthode nous utiliserons l’exemple de la figure 4. Le point P de
ce système de type PR doit se déplacer selon un axe vertical situé à x de l’origine tout
en évitant un obstacle situé à d du 2nd segment.
Le modèle géométrique direct se réduit à :

x = r1 + aCθ2 (3)

La Jacobienne transposée est J t = ( 1 , −aSθ2 ). La redondance du système r = 1.


La distance à l’obstacle est (x − r1 )Sθ2 = dSθ2 . Le problèmme géométrique inverse peut
être posé comme :
−Sθ2 1
   
+λ = 0
dCθ2 aSθ2
r1 + aCθ2 − x = 0 (4)

où encore, à l’aide de la matrice Z :


−Sθ2
 
( −aSθ2 ,1) = 0
dCθ2
r1 + aCθ2 − x = 0 (5)

10
Figure 4: Illustration du traitement de la redondance par une méthode géométrique

2.4.1 Solution par la Jacobienne transposée


La commande cinématique d’un système (ici considéré comme arborescent) peut être
réalisée en utilisant directement la jacobienne inverse. Le problème de la redondance est
alors résolu en considérant qu’un torseur de force FExt est appliqué à l’effecteur, cette
dernière cherchant à l’amener sur la position désirée Xd (voir illustration figure 5)

Figure 5: Illustration du principe de commande par Jacobienne inverse

Si cette action extérieure est considérée comme réalisée à travers une raideur :

FExt = K(Xd − X) = K e

avec K une matrice positive et symétrique d’ élasticité, on peut déterminer la solution q̇


par :
q̇ = J t Ke

11
Cette méthode présente l’intérêt de traiter directement du problème de la redondance et
des singularités. La solution obtenue est non-exacte mais stable. En effet, le potentiel
élastique du système Φ(e) est tel que Φ(e) > 0∀e 6= 0 et Φ(0) = 0:
1
Φ(e) = et Ke
2
En différentiant par rapport au temps Φ(e) on trouve :
1 1
Φ̇(e) = e˙t Ke + et K ė = et K ė
2 2
et K(Ẋd − Ẋ) = et K Ẋd − et KJ q̇
Le choix de q̇ = J t Ke conduit à :

et K Ẋd − et KJJ t Ke

qui pour Xd = cte vérifie :


Φ̇(e) = −et KJJ t Ke < 0
ce qui montre que la convergence vers zéro de la solution est assurée.

2.4.2 Solution par la pseudo-inverse de Moore Penrose


On peut imposer une contrainte supplémentaire pour obtenir une solution, par exemple
chercher une solution q˙p de norme Euclidienne minimale telle que :
2 2
J q˙p − Ẋ = minq̇∈Rn J q̇ − Ẋ

L’unique solution est donnée par :


q˙p = J + Ẋ
où J + est la pseudo-inverse de J. Elle produit une solution minimale pour kq̇k2 (aux
moindres carrés) pour Ẋ désiré. (Fonction pinv() de Matlab )
Le calcul de la pseudo-inverse de J peut être réalisé si rg(J) = m par :

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

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


 
1/2 0
+
Jv =  0 1 


1/2 0

D’une manière plus générale, si J ∈ Rm×n est de rang r, elle admet une décomposition
en valeurs singulières (Fonction svd() de Matlab ) qui est:

J = U ΣV t = σi ui vit
X

i=1,r

12
Pour l’exemple du manipulateur PPP, on a :
 
0.7071 0 −0.7071
1 0 1.4142 0 0 
  
Jv = 0 1.0000 0

0 1 0 1.0000 0
 
0.7071 0 0.7071

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


1
J + = V Σ+ U t = vi uti
X
σ
i=1,r i

avec :
1 1
Σ+ = diag( , . . . , , 0, . . . 0)
σ1 σr
où σ1 , . . . σr sont les valeurs singulières 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
Indifférement des conditions sur le rang de J, cette pseudo-inverse satisfait les propriétés
suivantes :
JJ + J = J
J + JJ + = J +
(JJ + )t = (J + J)
(J + J)t = (JJ + )
et
+
(J + ) = J
t +
(J + ) = (J t )
+
(J + ) = (J t J) J t
t +
(J + ) = 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 quantité qui est optimisée dans une solution purement cinématique
est :
C = q̇ t q̇
Cette quantité n’a pas forcément de sens physique. Aussi, la pseudo-inverse peut être
pondérée pour optimiser par exemple l’énergie cinétique développée dans le mouvement.
Cette dernière s’écrit :
1
T = q̇ t M (q)q̇
2

13
M (q) est symétrique et inversible.
Le problème de la minimisation de T dans le mouvement Ẋ = J q̇ peut être posé comme
un problème d’optimisation sous contraintes.
1
min T = q̇ t M (q)q̇
2
tel que : Ẋ = J q̇
Une solution classique à ce type de problème peut être déterminée à l’aide des multipli-
cateurs de Lagrange λ, la contrainte étant alors intégrée à la fonction à minimiser sous
la forme :
1
T 0 = q̇ t M (q)q̇ + λt (Ẋ − J q̇)
2
Les multiplicateurs λ peuvent ici être interprétés physiquement comme les quantités de
mouvement à appliquer pour satisfaire Ẋ − J q̇ = 0.
Les paramètres de Lagrange peuvent être déterminés en cherchant les solutions à :

∂T 0
=0
∂ q̇
Ceci conduit au système de n équations suivant:

q̇ t M − λt J = 0 (∗)

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

q̇ t J t = λt (JM −1 J t )

Les multiplicateurs λ sont donc tels que :

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

En reportant dans (∗), on trouve :

q̇ = M −1 J t (JM −1 J t )−1 Ẋ
+
q̇ = JM Ẋ
+
JM est la pseudo-inverse de J pondérée par la matrice d’énergie cinétique du système.

2.5 Homogénéı̈sation de J pour le calcul de la pseudo-inverse


Les termes de JJ t peuvent ne pas être homogènes en dimension. Considérons par exemple
le robot plan PPR dont la Jacobienne serait :
 
0 0 1
J =  1 0 −dSθ3 
 

0 1 dCθ3

14
Les composantes de JJ t sont :
 
1 −dSθ3 dCθ3
t 2 2 2
JJ =  −dSθ3 (1 + d S θ3 ) −d Sθ3 Cθ3 
 

dCθ3 −d2 Sθ3 Cθ3 (1 + dSθ3 dCθ3 )


Ces composantes sont inhomogènes en dimension.
D’une manière générale, si un système comporte de liaisons de rotation et de translation,
2
kq̇k2 = q̇ t q̇ conduira à une somme de termes inhomogènes. De même le calcul de Ẋ =

Ẋ t Ẋ est le résultat du produit orthogonal entre torseurs et dépendra du point ou la


vitesse est exprimée et des unités des longueurs.
A titre d’exemple, en considérant le robot de la figure 6, Pour palier ce problème, une

Figure 6: Manipulateur PRR pour illustration des problèmes d’inhomogoneı̈té

solution consiste à normer les vecteurs Ẋ et q̇ en utilisant par exemple une longueur
caractéristique.

ẊN orm = diag[1, 1, 1, 1/L1 , 1/L1 , 1/L1 ]Ẋ = Nv Ẋ

q̇N orm = diag[a11 , . . . , ann ]q̇ = Nq q̇


avec aii = 1 pour les liaisons rotoı̈des et aii = 1/L2 . La pseudo inverse pondérée de J
est alors égale à :
JN+orm = [Nv JNq−1 ]+

2.6 Méthodes de détermination des mouvements internes


2.6.1 Vecteurs du noyau de J
On peut déterminer un ensemble de vecteurs orthogonaux qui forment une base du noyau
de J(q). Cette base est de dimension n − r. Elle peut être constituée des vecteurs vi
i = r, n issus d’une décomposition en valeurs singulières de J(q) et tel que :

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

15
On vérifie bien pour l’exemple du manipulateur 3P que :
 
−1
1 0 1  0
   
 0 =

0 1 0 0
1

Ainsi, la solution homogène q̇h peut s’exprimer :


X
q̇h = N (J)ẋN = x˙N i vi
i=1,n−r

- N (J) ∈ R(n×n−r) est la matrice de regroupant les vecteurs du noyau,


- ẋN ∈ Rn−r est le vecteur des amplitudes des vitesses compatibles avec le mouvement
interne (pseudo-vitesses). On peut exprimer le mouvement interne ẋN comme :

ẋN = V + q̇ = JN q̇

Pour l’exemple du système 3P on a :

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

2.6.2 Tâche secondaire dans l’espace articulaire


Une méthode consiste à projeter une tâche secondaire sur le noyau de la Jacobienne en
utilisant le projecteur orthogonal (Id − J + J)

q̇h = (Id − J + J) q̇op


| {z }
PN (J)

De manière plus générale, en algèbre linéaire, une projection orthogonale est un pro-
jecteur tel que les deux sous-espaces sont orthogonaux. Le projecteur a pour effet de
supprimer la composante qui influence δX. On a donc :

J q̇h = 0

Le vecteur q̇op ∈ Rn , qui est a priori quelconque, peut servir à optimiser une performance
locale. Il peut être alors déterminer comme :
 ∂φ 
∂q1
 . 
q̇op = α∇φ = α
 
.

 
∂φ
∂qn

- α > 0 conduit à une croissance de φ


- α < 0 conduit à une décroissance de φ
Un exemple de fonction φ pour l’éloignement aux butées est :
X qi − qi moy 2
φ(q) = ( )
i=1,n ∆qi

16
avec ∆qi = (qimax − qimin )
Un autre exemple de fonction φ est celui qui reflète le conditionnement de la matrice
Jacobienne (voir chapitre quantification des performances).
q
φ(q) = det(JJ t )
On peut aussi construire une fonction φ pour générer un champ de forces (attractives et
répulsives) sur le système.
φirep (q)
X
φ(q) = φatt (q) +
i=1,n

ici en considérant un seul potentiel attractif pontuel et un ensemble de n potentiels


répulsifs. Le potentiel attractif peut être :
1 1
φatt (q) = kd2 = k(q(t) − qd )2
2 2
La force qui serait ainsi créée pour ”‘attirer”’ les système vers qd est :
Fatt = −k∇φ(q) = k(q(t) − qd )
Un exemple de champ attractif pour un système 2R est donné sur la figure 7 Un potentiel

Figure 7: Illustration d’un champ attractif

réplusif borné à la distance d0 est le suivant :


1 i 1 1
φirep (q) = krep ( i − )2 si di (q) ≤ d0 ; φirep (q) = 0 si di (q) > d0
2 d (q) d0
Un exemple est donné sur la figure 8
On illustre l’effet du projecteur orthogonal à partir de l’exemple représenté sur la
figure 9 qui considère le problème suivant :
δq1
 
( δx ) = ( −l1 Sθ1 − l2 Sθ12 ; −l2 Sθ12 )
δq2
Le système est une fois redondant vis-à-vis de la tâche. Il est clair que la tâche secondaire
n’est réalisée que partiellement. Par ailleurs, on montre que ce mouvement interne
sans action dissipative peut conduire à un mouvement oscillatoire. Aussi, un terme
d’amortissement peut être introduit pour stabiliser le mouvement.

17
Figure 8: Illustration d’un champ attractif

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

18
2.6.3 Tâche secondaire dans l’espace cartésien
Si on introduit une tache primaire :

Ẋ1 = J1 q̇ (1)

et une tâche secondaire :


Ẋ2 = J2 q̇ (2)
comme pour un évitement d’obstacle (voir illustration 10)
De (1) on tire :

Figure 10: Illustration de l’évitement d’un obstacle

q̇ = J1+ Ẋ1 + (Id − J1+ J1 )Z1


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

Ẋ2 = J2 J1+ Ẋ1 + J2 (Id − J1+ J1 ) Z1


| {z }
Je2

On détermine alors Z1 comme :

Z1 = Je2+ (Ẋ2 − J2 J1+ Ẋ1 ) − (Id − Je2+ Je2 )Z2

d’où : h i
q̇ = J1+ Ẋ1 + (Id − J1+ J1 ) Je2+ (Ẋ2 − J2 J1+ Ẋ1 ) − (Id − Je2+ Je2 )Z2
Si on ne cherche pas à utiliser les mouvements internes (Z2 = 0):
h i
q̇ = J1+ Ẋ1 + (Id − J1+ J1 ) Je2+ (Ẋ2 − J2 J1+ Ẋ1 )

Compte-tenu des propriétés de la pseudo-inverse, le terme :

(Id − J1+ J1 )Je2+ = (Id − J1+ J1 )(J2 (Id − J1+ J1 ))+

19
se réduit à :
(J2 (Id − J1+ J1 ))+ = Je2+
d’où la solution pour q̇ :

q̇ = J1+ Ẋ1 + Je2+ (Ẋ2 − J2 J1+ Ẋ1 )

La formulation générale de la solution est :

q̇ = J1+ Ẋ1 + Je2+ (Ẋ2 − J2 J1+ Ẋ1 ) + (Id − J2+ J2 )Z2

Le mouvement défini par Z2 peut alors être réalisé sans interférence avec les 2 premières
tâches. L’interprétation de cette solution est donnée sur la figure 11.

Figure 11: Illustration de la formulation dans l’espace cartésien

Cette méthode permet de réaliser les différentes tâches lorsque celles-ci sont compat-
ibles. Elle conduit a une singulatité algorithmique lorsque les noyaux sont voisins. Le
point d’intersection est alors tel qu’il induit de très grandes vitesses articulaires (voir
figure 12)

2.6.4 Autre formulation de la tâche secondaire


Pour éviter les singularités algorithmiques une formulation alternative conduit à déterminer
la solution pour la tâche secondaire puis à la projeter sur le noyau de J1 . La solution est
alors déterminée par :
q̇ = J1+ Ẋ1 + PN (J1 ) (J2+ Ẋ2 )
Pour des systèmes hautement redondant, on peut imaginer que les tâches soient en
cascade et la soultion déterminée par :

q̇ = J1+ Ẋ1 + PN (J1 ) (J2+ Ẋ2 + P(N (J1 )∩N (J2 )) Z2 )

20
Figure 12: Illustration d’une singularité algorithmique

Le vecteur Z2 est ici projeté sur l’intersection des noyaux de J1 et de J2 pour ne perturber
aucune des deux tâches. L’illsutration de la méthode est donnée sur la figure 13

Figure 13: Illustration de l’utilisation d’une tâche secondaire cartésienne

2.7 Augmentation de l’espace opérationnel


Une autre solution consiste à étendre l’espace opérationnel en ajoutant un objectif
complémentaire à celui de la tâche principal Ẋ qui introduirait rg(J) = n − m con-
traites sur le mouvement. Ces contraintes supplémentaires peuvent être choisies pour

21
former un système A(q)q̇ = 0. Sur l’exemple de la figure 14 on peut choisir de faire que
le centre de masse généralisée reste sur l’axe de y.
Le vecteur opérationnel se trouve ainsi augmenté d’un certain nombre de contraintes.

Figure 14: Augmentation de la Jacobienne pour la coordination posture/tâche

X
 
Xe =
Xc

la matrice Jacobienne correspondante devient elle aussi étendue :

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

Si le rang de Je (q) est r = m = n, alors on résoud le problème cinématique inverse


comme :
q̇ = Je−1 (q)Ẋe
Une matrice Jacobienne pour le nombre de contraintes ninimum est donné par :

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

Pour éviter d’avoir à fixer le nombre de contraintes requis pour former un système carré
(on peut aussi envisager de former un système sur-déterminé), une alternative qui peut
être préférée consiste à exprimer un objectif secondaire qui serait d’annuler le gradient
d’une fonction scalaire g(q) et à le projeter sur le N (J). Le vecteur opérationnel est ainsi
: !
X
Xe =
∇gN = N (J)t ∂g
∂q
= N (J)t ∇g
La matrice N (J) constituant les vecteurs du noyau de J se détermine notamment à l’aide
d’un SVD :  t
VR
J = U ΣV t = U [ΣR , 0]
VNt

22
N (J)t = VNt = (n1 , n2 , . . . , nn−m )t
En notant ∇gNi = nti ∇g les composantes augmentées de Xe , on a :

Xe = Je q̇
 
X J
 
 ∂
 ∇g


N1   ∂q
∇g N1 

 

 . =

 .  q̇

.
 
 .  



∂g
∇gNn−m ∂q
∇g Nn−m

La partie augmentée des colonnes de Je pour obtenir une matrice carrée est formée par
deux termes :
∂ ∂ t ∂ni t ∂
∇gNi = (ni ∇g) = ∇g + nti ∇g
∂qj ∂qj ∂qj ∂qj
Si l’objectif est d’obtenir un gradient de g nul, on aura donc comme précédemment :


 
q̇ = Je−1 (q)
0

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


 
q̇ = Je−1 (q)
−α∇gN

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

2.8 Utilisation de méthodes d’optimisation


La résolution du problème cinématique inverse peut être réalisée à l’aide de méthode
d’optimisation.

2.8.1 Multiplicateurs de Lagrange


Le méthode des multiplicateurs de Lagrange peut être également exploitée. Le problème
sera alors posé sous la forme :

W (q) J q̇ 0
    
=
Jt 0 λ Ẋ

La résolution de ce système d’équation linéaire se fait en particulier à l’aide d’une


décomposition LU .

23
2.8.2 Programmation linéaire
Dès lors où l’on veut prendre en compte dans la résolution des contraintes d’inégalité
(comme les bornes sur les vitesses articulaires). On peut, lors de la programmation
linéaire, chercher à minimiser la fonction objectif :

L(δ) = K t δ

sous les contraintes linéaires :

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

Le vecteur K peut être vu comme le vecteur des raideurs articulaires.

l’algorithme du simplexe (Fonction matlab simplex2p ) est pratiquement toujours


plus performant pour résoudre un LP. Les méthodes de point intérieur sont qui perme-
ttent d’évoluer à l’intérieur du polytope des contraintes sont également des méthodes
performantes.

2.9 Détermination des configurations singulières dans les ma-


nipulateurs redondants
Un manipulateur série non-redondant se trouve dans une configuration singulière lorsque
rg(J) < d (dimension de l’espace de tâche). On détermine les configurations singulières
algébriquement en considérant les conditions sur q conduisant à :

det(J) = 0

Pour un manipulateur redondant, le système se trouvera dans une configuration singulière


lorsque le rang de JJ t est modifié. Cependant, une approche algébrique peut être rendue
délicate (voire impossible) du fait de la complexité des termes de JJ t . On peut utiliser
la méthode ”‘géométrique”’ suivante.
On cherche à déterminer le torseur réciproque $R tel que :

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

Pour cela, on commence par rechercher les conditions sur $R pour qu’il soit réciproque
à un sous-système :
n o
τcsub = $i ∈ τc , i ∈ {1, . . . , n} ,
X
i=d

Après avoir placé le système dans cette configuration singulière, on cherche ensuite à
identifier les conditions supplémentaires pour que le $R soit également réciproque aux
torseurs cinématiques ”‘redondants”’ à partir des équations :

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

24
On montre dans ce qui suit comment cette technique s’applique à un système PRRR
plan (voir figure 2.9)
La jacobienne écrite en O4 de ce système est :
0 z2 z3 z4
 
J = [$1 , $2 , $3 , $4 ] =
z1 04 02 ∧ z2 04 03 ∧ z3 0

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


En reportant dans J Sub on a :
 
1 1 1
J Sub =  −l12 Sθ2

−l2 Sθ2 0
l12 Cθ2 l2 Cθ2 0
Sub
$R = (Cθ2 , Sθ2 , 0)
R Sub
$ est aussi réciproque à $1 si :
Sub
$R .$1 = 0

La condition supplémentaire est θ2 = π/2 + kπ

2.10 Passage des singularités


Dans une configuration singulière J(q) n’est plus de rang plein. Sa pseudo-inverse J +
n’st pas définie dans une telle configuration. Aussi, on utilise la pseudo-inverse pondérée
qui est définie de la manière suivante.
Plutôt que de chercher la solution à Ẋ = J q̇ telle que min kq̇k, on détermine q̇ qui
minimise : 2
2
J q̇ − Ẋ + λ2 kq̇k

où λ est une constante non-nulle.


Cette quantité est équivalent à :
J Ẋ 2
   
I λ q̇

d 0
La solution aux moindres carrés est donnée par :
t  t 
J J J Ẋ
   
q̇ =
Id λ Id λ a Id λ 0

25
que nous pouvons ré-écrire comme :

(J t J + λ2 Id )q̇a = J t Ẋ

On montre que (J t J + λ2 Id ) est non-singulière. En effet, J ∈ Rm×n et λ2 Id ∈ Rn×n et


J
 
son rang est n. Aussi, le rang de = n. La solution aux moindres carrés amortie
Id λ
(Damped Least Square - DLS dans laquelle λ est le facteur d’amortissement) est :

q̇a = (J t J + λ2 Id )−1 J t Ẋ

(J t J + λ2 Id )−1 J t = J t (JJ t + λ2 Id )
La solution se ré-écrit :
q̇a = J t (JJ t + λ2 Id )Ẋ
Cette solution est celle donnée par la méthode de Levenberg-Marquardt qui peut être
vue comme une interpolation entre une méthode de Gauss et de descente de gradient.
La valeur du facteur λ peut varier en fonction du résidus.
Une décompostion en valeurs singulières permet de comprendre comment agit la DLS
par rapport à la SVD.

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

Aussi:
J t (JJ t + λ2 Id ) = V Σ(Σ2 + λ2 Id )−1 U t = V EU t
| {z }
E

E ∈ Rm×n est une matrice diagonale :


σi
E = diag(eii ) avec eii =
σi2 + λ2

La pseudo-inverse pondérée se calcule de la manière suivante :


σi
J+ = vi uti
X
2 2
i=1,k σi +λ

Détermination de λ : σ2σ+λi
2 → 0 quand σi → 0 λ doit donc être pris très grand pour
i
maintenir les vitesses angulaires près de la singularité.
Inversement, loin des singularités λ doit rester tel que σi >> λ alors les composantes
σi
σ 2 +λ2
≈ σ1i
i

26
3 Dynamique des systèmes redondants et contraints
Ce qui est désigné par ”‘modèle dynamique”’ d’un système mécanique comme les systèmes
robotiques est à proprement parler l’ensemble des équations du mouvement qui définissent
la valeur des paramètres de configuration en fonction du temps. Le modèle dynamique
des systèmes constitue un élément essentiel pour l’analyse du comportement, la com-
mande mais aussi la conception des systèmes.

3.1 Principe de dÁlembert et travaux virtuels


Le modèle dynamique d’un système robotique, comme pour tous les systèmes de corps
rigides, peut être établi par application des théorèmes généraux sur l’ensemble du système
ou par utilisation du théorème de d’Alembert conduisant aux équations d’Euler-Lagrange.
D’autres formulations à l’aide du théorème d’Hamilton ou des moindres contraintes de
Gauss sont aussi utilisées.
Si on considère le manipulateur formé de corps rigides articulés par des liaisons par-
faites (comme représenté sur la figure 15, ses équations d’Euler-Lagrange sont obtenues
très simplement à partir de l’application du théorème des travaux virtuels (dans des
déplacements virtuels licites du système). Un mouvement virtuel est dit licite pour
les liaisons s’il respecte les contraintes induites par les liaisons telles qu’elles existent à
l’instant t0 . Dans un système paramétré par un ensemble de n paramètres qi regroupés
dans le vecteur q, les trajectoires virtuelles du système à l’instant t est une courbe de
l’espace des configurations passant par la position réelle q(t) définie en associant à un
paramètre réel u une position q(u) du système telle que :

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

L’espace tangent à l’espace des paramètres définit les déplacements virtuels du système.
En un point P repéré par rapport au point O le déplacement virtuel est défini par :
1 X ∂OP d qi X ∂OP
δ OP (q(u), t = t0 ) == limu→0 [OP (q(u), t0 ) − OP (0)] = = δqi
u i=1,n ∂qi dt i=1,n ∂qi

un vecteur du champ de déplacement virtuel. L’hypothèse de rigidité entraine que les


vecteurs du champ de déplacement vérifie la relation :

δ OP = δ OQ + P Q ∧ δ Φ

si P et Q sont deux points d’un même solide et δ Φ le vecteur taux de rotation virtuelle.
A proprement parler, δOP est le taux de déplacement. En pratique on utlise l’expression
de déplacement virtuel. On utilise également la notion (tout aussi inexacte) de vitesse
virtuelle.
Le travail virtuel à l’instant t d’un champ d’actions φ(P ) s’exercant sur A dans le
champ de déplacement δ OP est :
Z
δW = φ(P ).δ OP dP
P ∈A

27
En remplacant dans δW le champ δ OP par son expression particulière dans le cas d’un
système de solides indéformables paramétré par q, il vient :
 
Z
∂OP 
X
δW = φ(P ).  δqi dP
P ∈A i=1,n ∂qi

où encore en posant : !


Z
∂ OP
γi = φ(P ). δqi dP
P ∈A ∂ qi
X
δW = γi δqi
i=1,n

γi est l’action généralisée relative à la variable qi . Il s’agit d’une force lorque le paramètre
est associée à une translation et un couple lorsque ce dernier est une rotation.
Le principe des travaux virtuels s’énonce de la manière suivante : Il existe un repère
de l’espace dans lequel à tout instant pour tout déplacement virtuel d’un système, la
somme des travaux virtuels de toutes les actions s’exerçant sur le système est nulle.
Les équations du mouvement d’un système soumis à des actions extérieures (de
gravité notamment) s’obtiennent très directement par application du principe des travaux
virtuels qui s’écrit alors :
δ Wj = δ Wd + δ Wl = 0 ∀q
où δ Wj , δ Wd et δ Wl désignent respectivement le travail virtuel des efforts d’inertie, des
efforts donnés et des interefforts de liaison. On peut écrire la même chose en termes de
puissances virtuelles, ce qui donne :

Pj∗ = Pd∗ + Pl∗ = 0 ∀q

Ces travaux virtuels peuvent être définis en fonction des actions généralisées associées :

1. les actions données sont définies par leurs n actions généralisées Qi telles que :
X
δ Wd = Qi δqi
i=1,n

Pour les actions qui dérivent d’un potentiel U (Σ) (comme les actions de gravité),
elles s’écrivent alors :
∂U (Σ)
Qi = −
∂ q̇i
2. les liaisons peuvent introduire si elles ne sont pas parfaites des efforts généralisés
de liaison dans un mouvement licite avec les liaisons tel que :
X
δ Wl = Li δqi
i=1,n

28
3. les actions d’inertie Ji telles que :
X
δ Wd = Ji δqi
i=1,n

peuvent être obtenues à partir de l’énergie cinétique totale du système T (Σ) ex-
primée en fonction des paramètres qi :
Z
∂OP
Ji = aP . dm
Σ ∂ qi
et se calculent à l’aide des formules de Lagrange :

d ∂T (Σ) ∂T (Σ)
Ji = −
dt ∂ q̇i ∂ qi

Les équations du mouvement s’écrivent alors tout simplement en considérant en fonction


de chaque paramètre généralisé et considérant déplacement virtuel licite δqi :

−Ji + Qi + Li = 0

Dans un système holonome où les liaisons sont supposées parfaites on a :

Ji − Qi = 0

Si ce système est conservatif; les équations du mouvement sont alors données par les
équations de Lagrange :

d ∂T (Σ) ∂T (Σ) ∂U (Σ)


− + =0
dt ∂ q̇i ∂ qi ∂ q̇i

On peut montrer que ces équations découlent du principe d’Hamilton (ou principe de
moindre action). Ce principe suggère qu’un système holonome muni d’un paramétrage
strict et tel que les actions extérieures (et intérieures) dérivent d’un potentiel, la tra-
jectoire d’un tel système rend stationnaire l’intégrale à limites fixes du Lagrangien
L(q, q̇, t) = E(q, q̇) − U (q).
Z t2
L(q, q̇, t) = L(q, q̇, t)dt
t1

Si on ajoute une force généralisée issue d’un actionneur τi agissant directement sur la
variable qi , alors l’équation du mouvement d’un tel système est :

d ∂T (Σ) ∂T (Σ) ∂U (Σ)


τi = − +
dt ∂ q̇i ∂ qi ∂ q̇i

29
Figure 15: Système de manipulation en mouvement libre

3.2 Modèle dynamique inverse des systèmes séries


Si on considère un manipulateur en mouvement libre dont la configuration est définie
par un ensemble q de paramètres indépendants (comme représenté sur la figure 15, on a
:
1. l’énergie potentielle du système qui est :

mi g t GO
X X
U= Ui = i
i=1,n i=1,n

G0i Gii
   
- = T0i : vecteur position de Gi dans R0 ,
1 1
- g: accélération de la pesanteur.

2. l’énergie cinétique:
X 1 X t 1 X X
T = Ti = Ẋi Mi Ẋi = Mij (q1 , ..., qn )q̇i q̇j
i=1,n 2 i=1,n 2 i=1,n j=1,n

On obtient les équations d’Euler-Lagrange d’un tel système en calculant :


d ∂T d X
( )= ( Mij (q1 , ..., qn )q̇j )
dt ∂ q̇i dt j=1,n

d ∂T X X
( )= Mij q̈j + Ṁij q̇j
dt ∂ q̇i j=1,n j=1,n

∂T ∂ 1 X X 1 X X ∂Mjk
= ( Mjk q̇j q̇k ) = q̇j q̇k
∂qi ∂qi 2 j=1,n k=1,n 2 j=1,n k=1,n ∂qi
On a alors :
X X X ∂Mij 1 ∂Mjk ∂U
τi = Mij q̈j + ( q̇j q̇k − q̇j q̇k ) +
j=1,n j=1,n k=1,n ∂qk 2 ∂qi ∂qi

30
X X X ∂U
τi = Mij q̈j + Hijk q̇j q̇k +
j=1,n j=1,n k=1,n ∂qi
∂M
où : Hijk = 21 ( ∂M ij
∂qk
+ ∂M ik
∂qj
− ∂qjk
i
)
Il s’agit d’un système d’équations différentielles du second ordre composé des forces
d’inertie, des forces de Coriolis et centrifuge et les forces dérivant d’un potentiel U (q)
qui sous une forme matricielle s’écrit:

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

- M (q) est la matrice des masses généralisées,


- C(q, q̇) : vecteur des effets de Coriolis et effets centrifuges,
- N (q): vecteur des efforts généralisés de pesanteur (auxquels on peut ajouter les frotte-
ments visqueux par exemple).
Dès lors où il existe une interaction physique (donnée) entre le système et son envi-
ronnement, on peut ajouter dans les équations du mouvement les forces généraliées
extérieures résultant d’une action extérieure F qui sera exprimée en action généralisée à
travers la ”‘Jabobienne du contact”’ transposée:

Q = J t F̃

On ajoute ici le .̃ pour signifier que les composantes de F sont permutées par rappport
à la définition usuelle des composantes d’un torseur.
En statique, les efforts actionneurs de commande pour produire les forces d’interaction
de l’effecteur avec l’environnement définies par F sont donnés par :

τd = J t F̃ + N (q)

3.3 Modèle dynamique cartésien des manipulateurs non-redondants


Un manipulateur sera mis en mouvement défini par q̈, q̇, q en produisant des efforts
actionneurs tels que :
τd = M (q)q̈ + C(q, q̇) + N (q)
En procédant dans l’équation pécédente au changement de variable :

Ẋ = J q̇

Ẍ = J q̈ + J˙q̇
L’énergie cinétique dans X s’écrivant :
1 t
T = Ẋ t (J −1 ) M (J −1 )Ẋ = Ẋ t Mx Ẋ
2
on a :
τd = M (q)J −1 (Ẍ − J˙q̇) + C(q, q̇) + N (q)

31
Ce mouvement peut être vu comme produit également par une action ”‘cartésienne”’ Fd
telle que :
h i
Fd = (J t )−1 τd = (J t )−1 M (q)J −1 (Ẍ − J˙q̇) + C(q, q̇) + N (q))

Fd = Mx Ẍ + Cx + Nx
avec :
t
- Mx = (J −1 ) M (q)(J −1 ),
t ˙ q̇,
- Cx = (J −1 ) C(q, q̇) − Mx J(q)
−1 t
- Nx = (J ) N (q).

Dans le cas d’un manipulateur au contact avec l’environnement, les forces généralisées
pour commander la force extérieure (voir illustration 16) et compenser les actions d’inertie
sont :
τc = J t Fd + J t Fe
Fe représente ici la force exercée par le système sur l’environnement.

Figure 16: Illustration d’un manipulateur au contact

3.4 Modèle dynamique articulaire des manipulateurs redon-


dants
Si le manipulateur est redondant, à la force généralisée de commande des mouvements
de l’effecteur (et éventuellement de l’interaction avec l’environnement) peut être ajoutée
une composante qui permet d’exécuter un mouvement interne.

τ = τp + τ0

Cependant, ce mouvement ne doit produire aucun effet dynamique sur l’effecteur (aucune
accélération).
+
τ = J t Fd + J t Fe + (1 − J t J t ) τ0
| {z }
P
N (J t + )

τh est la force généralisée de commande du mouvement interne.

32
Pour que cela soit vérifié, la pseudo-inverse de J t doit être dynamiquement compatible
et telle que :
+ t
J t = J + = J¯t = Λ(q)JM −1 (q)
où Λ = Mx (q) = (J(q)M −1 (q)J t (q))−1
Les matrices d’énergie cinétique sont symétriques donc :

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

Pour mettre en évidence les conditions qui conduisent à un effet dynamique nul des
mouvements internes, on peut considérer les relations (l’action extérieure sur le terminal
étant prise nulle) :
+
τ = J t Fd + (1 − J t J t )τ0
τ = M (q)q̈ + C(q̇, q) + N (q)
En égalant ces 2 équations et en multipliant par JM −1 (q), on trouve :
+
J q̈ + JM −1 C(q̇, q) + JM −1 N (q) = JM −1 (q)J t Fd + JM −1 (q)(1 − J t J t )τ0

Sachant que :

J q̈ + J˙q̇ = Ẍ
en substitutant on a :
+
Ẍ − J˙q̇ + JM −1 C(q̇, q) + JM −1 N (q) = JM −1 (q)J t Fd + JM −1 (q)(1 − J t J t )τ0

soit :
+
h  
Ẍ = − JM −1 C(q̇, q) − J˙q̇ + JM −1 N (q) ] + JM −1 (q)J t Fd + JM −1 (q)(1 − J t J t )τ0
| {z }
Λ−1 (q)

Pour que le terme multipliant τ0 soit nul, il faut vérifier :


+
JM −1 (q) − JM −1 (q)J t J t = 0
| {z }
Λ−1

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


+
J t = ΛJM −1 (q)

3.5 Modèle dynamique opérationel des manipulateurs redon-


dants
En reprenant l’équation :
+
h  i
Ẍ = − JM −1 C(q̇, q) − J˙q̇ + JM −1 N (q) + Λ−1 (q)Fd + JM −1 (q)(1 − J t J t )τ0

33
et en multipliant chacun des membres par Λ, on trouve :
Fd = ΛẌ − ΛJ˙q̇ + ΛJM −1 C(q̇, q) + ΛJM −1 N (q)
Fd = ΛẌ − ΛJ˙q̇ + J¯t C(q̇, q) + J¯t N (q) + (1 − J t J¯t )τ0
Fd = ΛẌ + µ + p + (1 − J t J¯t )τ0
¯ J¯
qui peut être vue comme la projection du modèle dynamique articulaire sur Ẍ par J.
assure le découplage entre la tâche et les mouvements internes d’ajustement.

3.6 Modèle dynamique des systèmes contraints


3.6.1 Multiplicateurs de Lagrange
Si le système est contraint dans son mouvement par des interactions avec l’environnement
notamment (voir illustration 3.6.1), les n paramètres du mouvement du système ne sont
plus indépendants. Les interactions imposent n − m relations du type :

f (q, t) = 0 ; f (q, t) = 0 p équations pour les contraintes holonomes
∂q
h(q̇, q, t) = 0 l équations pour les contraintes holonomes

Si les contraintes cinématiques ne sont pas intégrables ou encore si on ne dispose


pas des expressions des énergies dans un paramètrage strict, on est conduit à établir les
équations du mouvement dans un paramètrage surabondant. Pour ce faire on exploite le
théorème des multiplicateurs de Lagrange. On cherche alors un minimum à la fonction
L(q, q̇, t) sous les contraintes des liaisons supposées linéairement indépendantes. Si seules
les p contraintes holonomes existent, ces dernières étant représentées par p fonctions
fj (q) j = 1, p continument différentiables, le minimum local de la fonction L(q, q̇, t) sous
les contraintes satisfait les n équations :
d ∂L ∂L X ∂
− − λj fj (q, t) = 0
dt ∂ q̇i ∂ qi j=1,p ∂qi

34
D’une manière générale, il découle du théorème des multiplicateurs de Lagrange ∃(p+l) =
(m − n) = k multiplicateurs scalaires λ tels que :

Q − J + λp f (q, t) + µl h(q̇, q, t) = 0
∂q
Les contraintes sont introduites avec leurs coefficients associés qui deviennent des
inconnues.
En regroupant l’ensemble des équations de contraintes dans le système d’équations
homogènes :
A(q)q̇ = 0 A ∈ Rk×n
où A(q) représente la Jacobienne des contraintes cinématiques imposées sur les mouve-
ments du système, les équations du mouvement sont :

J − Q − At λ = 0

Les composantes en qi s’écrivent :


X
Ji = Qi + λj aji
j=1,k

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

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

Les actions représentées par la fonction Φ(q) = (J − Q) sont telles qu’elles ne produisent
aucune puissance dans le mouvement compatible avec les contraites du système (elles
sont ⊥ au mouvement).
Ceci conduit à dire que Φ(q) a un noyau et qu’il peut être exprimé sous la forme d’une
combinaison des vecteurs de base :
X
Φ(q) = λj φj
j=1,k=dim(ker(φ))

ou en passant aux composantes :


X X
(Ji − Qi ) = λj φj,i = λj aji
j=1,k=dim(ker(φ)) j=1,k

car une base du noyau est donnée par A(q)q̇ = 0

Pour comprendre le sens de cette expression il convient de regarder A(q) comme un


ensemble de vecteurs colonnes chacun d’eux représentant le gradient d’une fonction
scalaire de contrainte C(q) = 0. Ces gradients représentent les normales aux hyper-
surfaces de contraintes dans l’espace des coordonnées généralisées et définissent les di-
rections desquelles les mouvements sont interdits. A titre d’exemple, on peut considérer
le manipulateur plan RP en contact ponctuel avec une surface vertical (voir figure 17.
La matrice Jacobienne du système est :

35
Figure 17: Exemple du robot RP plan en contact ponctuel avec l’environnement
 
1 0
J =  −r2 Sθ1

Cθ1 

r2 Cθ1 Sθ1
La contrainte s’exprime comme :

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


∂f1 ∂f1
= −r2 Sθ1 = Cθ1
∂θ1 ∂r2
La Jacobienne des contraintes A(q) est :

A(q) = (−r2 Sθ1 , Cθ1 )

Son noyau N (A) représente le mouvement articulaire qui satisfait la contrainte :


Cθ1
 
N (A) =
r2 Sθ1
Cθ1
 
q̇ = α
r2 Sθ1
et son complément N (A))⊥ le mouvement orthogonal à la contrainte (illicite avec la
containte):
N (A))⊥ = (r2 Sθ1 , −Cθ1 )
Par ailleurs :
R(At ) = (N (A))⊥
Au sens de la dualité cinématique et statique R(At ) sont des actions transmises qui
maintiennent l’effecteur sur la surface de contrainte.

Les équations du mouvement peuvent donc s’écrire :

J = Q + At λ

36
La composante en qi s’écrit par les expressions de Lagrange :
!
d ∂T ∂T ∂U X
− + = τi + λj aji
dt ∂ q̇i ∂qi ∂qi j=1,k

3.6.2 Réduction du modèle dynamique par résolution des multiplicateurs


de Lagrange
Le modèle dynamique pour un système de manipulation contraint par une interaction
est formé par le système d’équations :
M (q)q̈ + C(q̇, q) + N (q) = τ + At λ (∗)
 

A(q)q̇ = 0
où encore en différentiant A(q̇) = 0 on a :
Aq̈ + Ȧq̇ = 0
Le modèle dynamique peut être mis sous la forme :
M (q) −At (q) q̈ C(q̇, q) + N (q) τ
      
+ =
A(q) 0 λ Ȧq̇ 0
Si M (q) et A(q) sont de rang plein, il existe une solution à q̈ et λ.

Les multiplicateurs de Lagrange peuvent être résolus en considérant qu’on a :


h i
q̈ = M −1 (q) τ − (C(q̇, q) + N (q) + At λ
et en reportant dans l’équation précédente
AM −1 (q) [τ − (C(q̇, q) + N (q)] + AM −1 (q)At λ + Ȧq̇ = 0
on obtient en supposant AM −1 (q)At de rang plein :
 −1 h i
λ = AM −1 (q)At AM −1 (q) [−τ + (C(q̇, q) + N (q)] − Ȧq̇
En substituant les λ dans l’équation (∗), on a :
 −1 h i
M (q)q̈+C(q̇, q)+N (q) = τ +At AM −1 (q)At AM −1 (q) [−τ + (C(q̇, q) + N (q)] − Ȧq̇
 
t −1 t −1
   
t −1 t −1 −1
M (q)q̈+A AM (q)A Aq̇+ 1 − A AM (q)A AM (q) C(q̇, q)+PN (q) = Pτ
| {z }
P
En notant que :  −1
M (q)q̈ + At AM −1 (q)At Ȧq̇ = PM (q)q̈
les équations du mouvement se réduisent à :
PM (q)q̈ + PC(q̇, q) + PN (q) = Pτ
qui sont les équations du mouvement projetées dans l’espace des mouvements transmis-
sibles.

37
3.6.3 Résolution des accélérations généralisées par optimisation
Le modèle dynamique du système contraint :

M (q) −At (q) q̈ −C(q̇, q) − N (q) + τ


    
=
A(q) 0 λ −̇Aq̇

peut être mis sous la forme :


W (q)x = u
Accélérations généralisées et forces de contact peuvent alors être résolues simultanément
par une pseudo-inverse de W .

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

où y est un vecteur arbitraire.

3.6.4 Réduction des équations par le complément orthogonal


On peut aussi définir un complément orthogonal à A(q) qui est constitué par les vecteurs
du noyau N (A) = S(q) et donc tel que :

A(q)S(q) = 0

S(q) constitue est la base des mouvements indépendants compatibles avec les contraintes
(pseudo-vitesses) du système:
q̇ = S(q)ν
ν = S(q)α α ∈ Rm
Le complément orthogonal peut être utilisé pour réduire le modèle dynamique d’un
système contraint. En dérivant la relation entre les vitesses généralisées et les pseudo-
vitesses on a :
q̈ = S(q)ν̇ + Ṡ(q)ν
En prémultipliant les équations de la dynamique par S t et en sustituantν, les équations
se réduisent à :

S t M (q)S(q)ν̇ + S t C(q̇, q) + S t M (q)Ṡ(q)ν + S t N (q) = S t B(q)τ

soit encore, en posant :


- M̄ (q) = S t M (q)S(q)
- C̄(q̇, q) = S t C(q̇, q) + +S t M (q)Ṡ(q)ν
- N̄ (q) = S t N (q)
M̄ (q)ν̇ + C̄(q̇, q) + N̄ (q) = τ̄
L’illustration de ce principe peut être faite à l’aide du robot plan 2R pour lequel un
paramètrage surabondant utilisant la position et l’orientation de chacun des segments
(de longueur li et de demi-longueur li0 i = 1, 2) et considérés comme libres par rapport à

38
R0 serait introduit. Ainsi, q = [θ1 , xG1 , yG1 , θ2 , xG2 , yG2 ]. La matrice M (q) et les vecteurs
C(q, q̇), N (q) de ce système sont :
 
0
 0 
 
 −m1 g 
 
M (q) = diag(I1 , m1 , m1 , I2 , m2 , m2 ) C(q, q̇) = 0 N (q) = 
 
 0 

 0 
 

−m2 g
Les équations de contrainte pour un tel système sont :
f1 = xG1 − l10 Cθ1 = 0
 
 f2 = yG1 − l10 Sθ1 = 0 
C(q) = 
 
 f3 = xG2 − l20 Cθ12 − xG1 − l10 Cθ1 = 0 

f4 = xG2 − l20 2θ12 − yG1 − l10 Sθ1 = 0


d’où la matrice A(q) :
l10 Sθ1 1 0 0 0 0
 
 −l10 Cθ1 0 1 0 0 0
A(q) = 
 0

 l1 Sθ1 − l20 Sθ12 0
−1 0 −l2 Sθ12 1 0

l10 Cθ1 − l20 Cθ12 0 −1 −l20 Sθ12 0 1


Les équations de contrainte cinématique peuvent encore se mettre sous la forme :
1 0 0 0 ẋG1 l10 Sθ1 0
    
 0 1 0 0   ẏG1  
    −l10 Cθ1 0   θ̇ 
1
Ad q̇d + Ai q̇i =  + 0

=0
 −1 0 1 0   ẋG2   l1 Sθ1 − l20 Sθ12 −l20 Sθ12  θ̇2
  

0 −1 0 1 ẏG2 l10 Cθ1 − l20 Cθ12 −l20 Sθ12


Sachant que :
ẋG1 1 0 0 0 l10 Sθ1 0
    
 ẏ 
 G1 
0 1 0 0
  −l10 Cθ1 0   θ̇ 
1
 = −
 
0   l1 Sθ1 − l20 Sθ12
 0
 ẋG2  1 0 1 −l20 Sθ12  θ̇2
 

ẏG2 0 1 0 1 l10 Cθ1 − l20 Cθ12 −l20 Sθ12


le complément orthogonal S(q) tel que :
 
θ̇1
 ẋG1 
 
 ẏG1 
 = S(q) θ̇1
   

 θ̇  θ̇2
 2 
 ẋG2 
 

ẏG2
est:  
1 0
0

 −l1 Sθ1 0  
l10 Cθ1 0 
 

S(q) =  

 0 1  
 −l1 Sθ1 − l20 Sθ12 l20 Sθ12 
 

l1 Cθ1 + l20 Cθ12 l20 Cθ12

39
 
0 0
0

 −θ̇1 l1 Cθ1 0 

0
− θ̇ l Sθ 0
 
 1 1 1 
Ṡ(q) = 
 
 0 0 

0 0
 −θ̇1 l1 Cθ1 − (θ̇1 + θ̇2 )l2 Cθ12 ) −(θ̇1 + θ̇2 )l2 Cθ12 
 

−̇θ1 l1 Sθ1 − (θ̇1 + θ̇2 )l20 Sθ12 −(θ̇1 + θ̇2 )l20 Sθ12
Ainsi la matrice M̄ (q) et les vecteurs C̄(q, q̇), N̄ (q) de ce système sont en fonction des
paramètres indépendants (θ1 , θ2 ):

M̄ (q) = S t M (q)S(q)

C̄(q̇, q) = S t C(q̇, q) + +S t M (q)Ṡ(q)ν


N̄ (q) = S t N (q)
Un autre exemple que nous considérerons est celui d’un robot mobile de type char
représenté sur la figure 18.

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

On peut introduire comme paramètres de configuration d’un tel système q = (xc , yc , φ, θd , θg )


Les équations de contraintes traduisent ici :
- qu’il n’y a pas de glissement latéral :

vo(0) .j = 0

- que l’entrainement se fait sans glissement :


(0) (0)
vId ∈Rd = vIg ∈Rg = 0

Ces contraintes cinématiques conduisent au système d’équations scalaires :


 
−Sφ Cφ −d 0 0
A(q) =  −Cφ −Sφ b r 0 
 

−Cφ −Sφ b 0 r
S(q) = N (A) =??

40
La matrice d’énergie cinétique est :
m 0 2mdSφ 0 0
 

 0 m −2mdCφ 0 0 

M (q) =  2mdSφ −2mdCφ I 0 0 
 
 
 0 0 0 IR 0 
0 0 0 0 IR
où :
- I = Ic + 2mR (d2 + b2 ) est le moment d’inertie de l’ensemble,
- m = mc + 2mR

2mφ̇2 Cφ
 
 2mφ̇2 Sφ 
 
C(q̇, q) =  0
 

 
 0 
0
0 0
 
0 0
 
B(q) =  0 0
 
 
1 0
0 1
Un autre exemple d’utilisation du complément orthogonal pour la réduction du modèle
dynamique est donné par un système en chaı̂ne fermée. On peut en effet considérer la
fermeure de chaı̂ne après avoir pratiqué une coupure virtuelle (voir illustration figure
19), on peut procéder à une réduction du paramètrage pour tenir compte des contraintes
cinématiques en utilisant le complément à A(q)q̇ = 0. Pour le système représenté sur la

Figure 19: Système arborescent obtenu après une coupure virtuelle

figure 3.6.4, les équations du mouvement peuvent être établies dans un premier temps en

41
utilisant une coupure virtuelle au point P et le système de paramètres q = [θ11 , θ21 , θ12 , θ22 ].
Puis une réduction du paramètrage peut être réalisée à l’aide des relations de contrainte
:  1
θ̇1
1 1 1 1 1 1 2 1 2 2 2  1
−l1 Sθ1 − l2 Sθ12 −l2 Sθ12 l2 Sθ1 + l2 Sθ12 l2 Sθ12  θ̇2  0
  
1 1 1 1 1 1 1 2 1 2 2 2  2 =
l1 Cθ1 + l2 Cθ12 l2 Cθ12 −l2 Cθ1 − l2 Cθ12 −l2 Sθ12  θ̇1  0
θ̇22

42
4 Commande des systèmes redondants
La commande des robots manipulateurs redondants peut être réalisée pour un mouve-
ment désiré de différentes manières. La technique la plus simple à mettre en oeuvre
conduit à exploiter une commande cinématique sur la base d’un asservissement en po-
sition. Les modèles exploités sont alors ceux introduits dans le premier chapitre de ce
document. Une compensation des effets dynamiques peut s’avérer nécessaire. Aussi,
nous considérerons dans ce qui suit plusieurs possibilités pour décrire une trajectoire
dans le cadre d’une commande dynamique de maniplateurs redondants.
Dans ce cas le système sera commandé directement par l’intermédiaire des couples
articulaires qui sont calculés (pour des mouvements libres) à partir d’une estimée de la
matrice M (q) et des effets centrifuges/coriolis et de gravité:
τ = M̃ (q)y + C̃(q̇, q) + Ñ (q)
La variable y est la variable de commande qui est dans le cas d’une estimation parfaite de
la dynamique du système directement l’accélération. En utilisant une telle commande,
on montre très directement que le système devient un système linéaire et découplé. Il se
réduit alors à un double intégrateur.

4.1 Commande en accélération des manipulateurs redondants


Pour un manipulateur redondant, ce principe de commande se met en oeuvre à partir de
l’accélération désirée de l’effecteur Ẍd . L’accélération de commande Ẍc peut être définie
comme :
Ẍc = Ẍd + Kv (Ẋd − Ẋ) + 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 linéaire/angulaire de l’effecteur.
L’erreur en orientation dépend naturellement du paramétrage choisi pour définir la con-
figuration angulaire de l’effecteur (angles d’Euler, paramètres d’Euler, Quaternions).
Sachant que :
Ẍc = J q̈c + J˙q̇
on peut déterminer q̈c pour un système redondant comme :
q̈c = J + (Ẍc − J˙q̇) + q̈h
- J + est ici une pseudo-inverse pondérée pour être dynamiquement consistante (voir
section modélisation dynamique)
- q̈h est une accélération interne qui peut être déterminée à l’aide du projecteur orthogonal
sur le noyau de J d’un vecteur z2 ∈ Rn :
q̈h = (Id − J + J)z2
Notons que le choix de z2 est conditionné au choix d’un vecteur z1 (qui serait tel que
z1 = α∇g qui serait projeté sur le noyau de J pour définir les vitesses internes au système.
q̇ = J + Ẋc + (Id − J + J)z1

43
On montre que :
z2 = J˙+ J(q̇ − z1 ) + ż1
On a alors la commande :

τ = M (q)(Ẍc − J˙q̇ − q̈h ) + C(q̇, q) + N (q)

4.2 Commande en vitesse des manipulateurs redondants


Supposons qu’une trajectoire cartésienne désirée de l’effecteur Ẋd soit donnée, une vitesse
de commande peut être définie comme la somme d’une compensation de l’erreur et
position et un terme feedforward en vitesse:

Ẋc = Ẋd + Kxp (Xd − X)

où Kxp est une matrice définie positive de gains agissant sur l’erreur en position et en
orientation de l’effecteur. Les vitesses articulaires de commande q̇c peuvent être déduites
par exemple comme :
q̇c = J + Ẋc + (Id − J + J)α∇g
Une loi de commande dynamique avec correction des vitesses articulaires peut alors être
formulée comme :

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

Kqp et Kqv étant des matrices de gains.


Cette méthode présente comme désavantage de nécessiter la dérivation numérique et
l’intégration numérique de q̇c . Par ailleurs, elle ne pas prendre en compte directement
l’accélération désirée.
On peut éviter les opérations de dérivation et d’intégration numérique en considérant
par exemple la commande :

τ = M (q)q̈c + C(q̇, q) + N (q) + Kqv (q̇c − q̇)

Sachant que par dérivation on a la relation :

Ẍc = Ẍd + Kxp ė

avec e = (Xd − X).


On peut établir que :
q̈c = q̈d + J + Kxv ė
De la même manière on peut établir que :

q̇c = q̇d + J + Kxp e

Ainsi par substitution on obtient la commande :

τ = M (q)(q̈d + J + Kxp ė) + C(q̇, q) + N (q) + Kqv (q̇d − q̇) + Kqv J + Kxp e

44
4.3 Commande en couple des manipulateurs redondants
Nous avons établi le modèle dynamique cartésien des manipulateurs sous la forme :

Fd = ΛẌ + µ + p + (1 − J t J¯t )τ0

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

τ0 = −Kqv q̇ + α∇g

Sur la base de ce modèle, on peut définir une loi de commande telle que :

Fd = ΛẌr + µ + p + (1 − J t J¯t )τ0

avec :
Ẍr = Ẍd + Kxv (Ẋd − Ẋ) + Kxp (Xd − X)
Ce type de commande peut être simplifiée si une compensation des termes de gravité et
de Coriolis/centrifuge est faite dans l’espace articulaire.

45
5 Systèmes parallèles et systèmes de manipulation
coordonnée
5.1 Systèmes parallèles
5.1.1 Exemples de systèmes parallèles
On désigne par systèmes parallèles tous les mécanismes dont la topologie est telle que le
corps manipulé est relié au corps de référence par des chemins (présentant des boucles
cinématiques ou pas) disposés en parallèle. Ces systèmes sont très utilisés en robotique
en raison notamment de leurs propriétés dynamiques. La figure 5.1.1 illustre de tels
systèmes : La cinématique d’un systèmeparallèle peut être telle que sa mobilité est égale

Figure 20: Illustrations de systèmes parallèles

à la dimension du groupe des déplacements SE(2) ou SE(3) ou dans un sous-groupe


de déplacements. Dans ce dernier cas, le système sera dit contraint. Si sa mobilité est
supérieure à la dimension de SE(2) ou SE(3), le système sera redondant. Ces différentes
situations sont illustrées sur la figure 21

Figure 21: (b) Système plan contraint - (c) Système plan redondant

46
5.1.2 Modèle cinématique des systèmes parallèles
La méthode de détermination du modèle cinématique des robots parallèles développée
dans ce qui suit utilise le principe des torseurs réciproques. Nous commencerons par
traiter le cas d’un système dont la mobilité est égale à la dimension de SE(2) ou SE(3).
D’une manière générale le modèle cinématique direct d’un chemin 0 j 0 d’un système
parallèle peut s’écrire sous la forme :

θij $ji = Ω$
X

i=1,m
j
$ji
Si les sont linéairement indépendants, on détermine $R i , on détermine dans SE(2) ou
SE(3) le torseur réciproque:
j
$R i .$jk = 0, k 6= i pour k = 1, ..., dim(SE(2))ouSE(3)
En mutlipliant ce torseur à droite et à gauche dans l’équation de chaı̂ne ouverte, on a :
j j
θ̇ij ($ji .$R i ) = Ω$.$R i
En répètant pour toutes les liaisons actives, on obtient le modèle cinématique sous la
forme canonique:
˜
B q̇ = DẊ
˜ = (v , v , v , ω , ω , ω )t
Ẋ x y z x y z
j
- B est une matrice diagonale regroupant les termes $R i .$ji .
 R1 1
$ 1 .$1 0 0 0 0 0

R1 1
 0 $ 2 .$1 0 0 0 0
 
B=

 
 . . . . . . 
RN N
0 0 0 0 0 $ g .$g
- D, est de dimension (N g ∗ m), les coefficients sont N g torseurs réciproques:
 t
1 t 1 N
D = ($R
1 ) ($R
2 )
t
. . ($R
g )
t

47
Figure 22: Système parallèle 3RPR

Exemple : Le système 3RPR de la figure 22 présente une mobilité de 3. On utilisera


comme variables actives les actionneurs linéaires de chaque chemin. Pour chaque chemin
j on a l’équation de chaı̂ne ouverte suivante :

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

En notant les composantes des vecteurs OP Bj et Bj Aj dans RP


   
aj Uj
OP Bj =  bj  et Bj Aj =  Vj 
   

0 0
j
Pour éliminer les variables, on utilisera le torseur réciproque $R 2 tel que :
j
$R 2 .$jk = 0, pour k = 1, 3

et qui est :
j
$R 2 = ( Cθ1j , Sθ1j , aj Cθ1j )t
Ce torseur peut être interprété physiquement comme l’action transmise par le chemin j
sur SP par l’actionneur de la liaison active considérée.
Le système étant symétrique, on obtient donc directement le modèle cinématique qui
prend la forme suivante :

ṙ21 Cθ11 Sθ11 a1 Cθ11


     
1 0 0 ωz
 0 1 0   ṙ2  =  Cθ12
 2
Sθ12 2
a2 Cθ1   vx 
  

0 0 1 ṙ23 Cθ13 Sθ13 a3 Cθ13 vy


| {z } | {z } | {z } | {z }
B q̇ D ˜

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

48
Pour le système plan pris comme exemple, le mouvement de SP sera complètement com-
mandable si les 3 actions (les 3 forces) soient linéairement indépendantes.

Ce même modèle aurait pu être établi par en considérant que la vitesse de chaque point
Bj s’écrit vectoriellement :
vBj = vOP + Bj OP ∧ ω
vBj = vOP + Bd
j OP ω

vBj = (Id , Bd ˜
j OP )Ẋ = Ej Ẋ

On peut éliminer les variables passives dans le cas où les actionneurs linéaires sont reliés
à SP et SO par des liaisons de rotation d’axes concourants en Aj et Bj en consédérant
que la vitesse du points Bj par rapport à RO s’écrit :

vBj = ṙ2j z2j + ωS j /S0 ∧ r2j z2j


3

On obtient donc l’égalité :

ṙ2j z2j + ωS j /S0 ∧ r2j z2j = vOP + Bj OP ∧ ω


3

En projetant cette équation sur l’axe z2j , on a :


vOP
 
ṙ2j = (z2j , OP Bj ∧ z2j )
ω
On retrouve le même résultat que précédemment. L’une et l’autre des 2 méthodes sont
utilisables pour obtenir les modèles cinématiques des plates-formes de Gough-Stewart.

5.1.3 Modèle cinématique des systèmes parallèles contraints


Si le système est contraint la méthode précédente peut être très facilement adaptée.
Pour définir et illustrer les principes proposés nous utiliserons l’exemple du système de
locomotion représenté sur la figure 23.
L’équation de chaı̂ne relative à chaque chemin :

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

Si toutes les roues sont commandées ainsi que les directions, on a alors le modèle
cinématique entrée/sortie suivant:

R t 
 R(1) (1) (1)
 ($φ ) 

$ .$φ 0 0 0 0 0
 φ  φ̇1
 
R (2)
 R(1) t 
 ($
0 −R$θ (2) .$θ 0 0 0 0  θ ) 
  1  
   θ̇  
 R (1)   R(2) t  u̇
 0 0 $φ (1) .$φ 0 0 0   φ̇2 
  ($
 φ )  

=  v̇ 
 
R (2)
 2  t
  θ̇ 
  R

 0 0 0 −R$θ (2) .$θ 0 0   (2)
 ($θ )  Φ̇
 
R(1) (1)   φ̇3 
 R(3) t 
  
 0 0 0 0 $φ .$φ 0 
3

 ($φ ) 

R (2)

θ̇ t
−R$θ (2) .$θ
 
0 0 0 0 0 R
($θ (3) )

49
i j1
b1
)1  1 $̂1 O1 $̂1
)
B1 ) O D 1 $̂1D

d
un
i1

gro
:$̂ P
j
G a3
B3 platform  3 $̂3)
B2  2 $̂ 2 )
) )

O3 $̂3O
O2 $̂O2

c3 D 2 $̂D2 D 3 $̂D3
(a)
(b)

Figure 23: (a) Plate-forme mobile avec 3 caster-wheels et (b) son schéma cinématique
équivalent

Sahant que la matrice Jacobienne pour le chemin j est dans le repère Rj = (Bj , uj , vj , k):
 
1 0 1
Ji = 
0 1 0
bi 0 0
en ne considérant que les seules roues commandées, le modèle cinématique s’écrit :
θ̇1
     
−R 0 0 Cα1 Sα1 a1 Sα1 u̇
 2
 0

−R 0   θ̇  = 
 Cα2 Sα2 a2 Sα2 − c2 Cα2   v̇ 
 

0 0 −R θ̇3 Cα3 Sα3 a3 Sα3 − c3 Cα3 Φ̇


Si on supprime les fourches des roues arrières et que les roues sont montées sur un même
axe (comme montré sur la figure 24), le modèle cinématique précédent se réduit à :

θ̇1
     
−R 0 0 Cα1 Sα1 a1 Cα1 u̇
 2
 0 −R 0   θ̇  =  1 0 −c2   v̇ 
   

0 0 −R θ̇3 1 0 −c3 Φ̇
Nota : Plus loin nous avons adopté les notations suivantes : a1 Cα1 = h c2 = d c3 =
−d α1 = φ Si φ 6= 0, D définit un système de forces de rang 3 (det(D) 6= 0). On pourrait
en conclure que le mouvement de SP est complètement commandable, ce qui n’est pas
le cas. Ceci relève du fait que les contraintes naturelles dues au non-glissement latéral
des roues ne sont pas prises en compte explicitement dans le modèle cinématique. Ces
contraintes limitent la mobilité à système à 2. Les composantes de Ẋ ne sont donc pas
indépendantes. Il faut en effet tenir compte (comme on le fait dessous) du fait que :
(1) (2) (3)
TC = TC ∩ T C ∩ T C

Pour cela, on peut procéder de la manière suivante. On écrit les Jacobiennes relatives aux
différents chemins par exemple dans des repères liés à chacune des roues (par exemple

50
O1 $̂1O D 1 $̂1D
) 1
 1 $̂1
) )

d
un
gro
:$̂ P
a1
i platform
O2 $̂O2 O3 $̂3O
j G 3
2
d d D 2 $̂D2 D 3 $̂D3
(a)
(b)

Figure 24: (a) Plate-forme mobile contrainte et (b) son schéma cinématique équivalent

(0i , ui , vi , k)). on a :    
0 1 1 0 1
J1 =  1 0 0  J2,3 = 1 0
   

0 0 b 0 0
(i)
Si on note TC le torseur cinématique du mouvement absolu de SP par rapport à S0
resultant de la composition des mouvements introduits par les liaisons décrites par les
Jacobiennes Ji , le mouvement de SP par rapport à S0 est tel que :
(1) (2) (3)
T C = TC ∩ T C ∩ T C
(2) (2)
Ici, dim(TC ) = dim(TC ) < dim(SE(2))
Les contraintes imposées par les liaisons équivalentes aux chemins 2 et 3 sur le mou-
vement de SP sont définies, en terme de mouvement incompatible, par un complément
orthogonal aux torseurs de Ji . Ici, ce système se réduit au singleton :
 
0

(Ji ) = 0
 
i = 2, 3
1

Le complément réciproque à (Ji )R = A(Ji )⊥ , A définissant la matrice de permutation


représente les actions ”‘naturelles”’ passives (actions qui ne font pas travailler les liaisons)
transmises par le chemin cinématique.
 
0
R
(Ji ) = [$R
p] = 1
 
i = 2, 3
0

Les contraintes passives développées par le chemin 2 et 3 étant d’ordre le plus élevé (et
identiques par ailleurs), ce sont elles qui définissent la mobilité relative de SP par rapport
à S0 ainsi complémentairement les mouvements non-transmissibles. Ici :
(1) (2) (3)
dim(TC ) = dim(TC ∩ TC ∩ TC ) = 2

51
(1) (2) (3)
dim(T ⊥ C ) = dim(T ⊥ C ∩ T ⊥ C ∩ T ⊥ C ) = 1
Les contraintes passives imposées par les chemins 2 et 3 peuvent être exprimées dans un
même repère en utilisant les opérateurs adjoints AdTRi ,RP
 
1 0 0
AdTRi ,RP = 0 1 0
 

(−1)(i+1) d 0 1
 
0
Wi = [($R )
p i ] =  1  i = 2, 3
 

0
Une base pour ces contraintes :  
0
BW =  1 
 

0
Si d’une manière générale les coordonnées pluckeriennes des torseurs réciproques associés
aux liaisons actives ont pour composantes dans le plan $R = (u, v, n∗ ), les torseurs
transmissibles (activement) par les chaı̂nes contraintes sont tels que :
(u, 0, n∗ )t = BW

(u, v, n∗ )t
Notons que si la roue 1 était sans fourche et de même direction que les roues arrières,
nous aurions :  
0
R
W1 = [($p )1 ] =  1 
 

b
La base des contraintes naturelles seraient alors (dans le même repère):
 
0 0
BW = 1 0
 

0 1
Si nous considérons un système avec une fourche avant, les torseurs réciproques cor-
respondants aux liaisons actives (les deuxièmes liaisons de chaque chaı̂ne) des chemins
1, 2, 3 sont dans RP .
     
cos φ 1 1
(2) (2) (2)
$R =  0  $R a )2 =  0  ($R a )3 =  0 
     
a1
h d −d
Le modèle cinématique mis sous la forme :
˜
B q̇a = DẊ
pour un système comportant 3 roues motorisée est :
    
−R 0 0 θ̇1 cos φ h  
vx
 0

−R 0   θ̇2  =  1
  
d 
ωz

0 0 −R θ̇3 1 −d

52
Le rang de D est égal à 2, les contraintes actives ne sont pas linéairement indépendantes.
La mobilité réelle du système est 2. Pour un système avec les seules roues arrières
motorisées, le modèle cinématique se réduit à :

−R 0 θ̇2 1 d vx
     
=
0 −R θ̇3 1 −d ωz

La mobilité reste inchangée.


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

5.1.4 Modèle cinématique des systèmes parallèles redondants


Dans le cas où l’un des chemins (ou plusieurs) présente une redondance cinématique, il
convient de déterminer pour pouvoir appliquer la méthode des torseurs réciproques une
base de torseurs des liaisons correspondant à un chemin j de dimension égale à celle du
groupe des déplacements dans lequel le système évolue. (voir principe de détermination
de cette base dans la thèse de V. Pasqui).

5.1.5 Modèle statique des systèmes parallèles


Le modèle statique des robots parallèles s’établit très facilement à partir des équations
d’équilibre de SP . En notant T sCj →SP les torseurs des actions transmises par les bras
sur SP (voir figure 25) l’équilibre statique de SP se traduit par :

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

X
T sSP →Ext = T sCj →SP
j=1,n

53
Lorsque les actions sont décomposées en actions élémentaires d’amplitudes fj selon les
torseurs statiques $̄j on est conduit à :
X
fj $̄j = −FExt→SP = FSP →Ext
j=1,n
 
fx
f1
 
f 

 fy 
h i 2  
 fz 

$̄1 , $̄2 , $̄3 , . . . , $̄n  .  = 
   
| {z }
 . 
  m x


Dt  my 
 
fn
mz
Pour l’exemple du système plan considéré au-dessus, le modèle statique est :
Cθ11 Cθ12 Cθ13  
 
 
fx  Sθ11 Sθ12 Sθ13  f1
 fy  =   f2 
    
 p1 p2 p3  
mz |{z} f3
(OB1 ∧z21 ).z0

avec :
pj = (OBj ∧ z2j ).z0 = (kOBj k sinαj )z0
On peut aussi établir cette relation en utilisant le principe des puissances virtuelles. Dans
tout déplacement compatible avec les liaisons, on a :
˜
f t q̇ = FSt P →Ext Ẋ ˜
∀Ẋ

Si le système est non-singulier, compte-tenu du modèle cinématique on peut établir la


relation de transmission d’effort :
˜ = Ft
f t B −1 DẊ ˜ ˜
SP →Ext Ẋ ∀Ẋ

soit :
FSP →Ext = B −1 Dt f
Cette relation se réduit à :
FSP →Ext = Dt f
pour des systèmes pleinement parallèle (fully-parallel) à actionneurs linéaires.
A titre d’exemple on peut considérer le mécanisme parallèle redondant de la figure 5.1.5.

5.1.6 Modèle dynamique des systèmes parallèles


Deux méthodes sont proposées dans ce qui suit. La première considère une coupure
virtuelle du corps SP de couplage. La seconde une coupure aux liaisons entre les bras et
SP .
• Coupure sur SP .
Sur le manipulateur plan de la figure 26, on considère une coupure virtuelle du corps SP

54
Figure 26: Système parallèle 2*2P

55
qui transforme le système parallèle en 2 systèmes 2P.
Les équations de la dynamique pour chacun des chemins sont :
 j   j
m1 + m2 0 r̈1 0 τ1
  
+ = j = 1, 2
0 m2 r̈2j m2 g τ2j

M (q)j q̈ j + N j (q) = τ j
Les équations de contrainte considèrent que :

OP∈S21 = OP∈S22

Ce qui conduit à 2 relations scalaires de contrainte :

f1 (q) = r11 − l + r12 = 0

f2 (q) = r21 − r22 = 0


Ces dernières traduisent les contraintes cinématiques de fermeture de chaı̂ne :
 1
1 ṙ
1
1 0 1 0   ṙ2  0
   
 2 =
0 1 0 −1  ṙ1  0
ṙ22

Le modèle dynamique pour l’ensemble du système est sous la forme de matrices blocks:

M1
 1
N1
 1
0 q̈ τ
  
+ + At λ =
0 M2 q̈ 2 N2 τ2

En partitionnant les variables comme :


 1  1
1 0 ṙ 1 0 ṙ 0
   
1 2
Ad q̇d + Ai q̇i = + =
0 1 ṙ12 0 −1 ṙ22 0

on obtient pour S(q) :


−1 0
 
 0 1
S(q) = 
 
 1 0

0 1

5.2 Systèmes de manipulation coordonnée


La manipulation par plusieurs manipulateurs peut être rendue nécessaire pour des objets
lourds ou volumineux. Un préhenseur articulé peut également être vu comme un système
de manipulation coordonnée comme également un système de locomotion à pattes.

56
Figure 27: Illustrations de systèmes de manipulation coordonnée

57
5.2.1 Statique de la manipulation coordonnée
5.2.2 Modèle des actions de contact
Une liaison par contact entre un solide S et un solide SP peut être représentée par un
torseur d’interaction. Ce torseur reduit en un point peut être décomposé en la somme
d’un glisseur G (force pure) et d’un couple C.
TS (S/SP ) = (f, OP ∧ f )t + (0, mt )t = (f, OP ∧ f + mt )t = (f, mtO )t
| {z } | {z }
G C

Les 2 composantes vectorielles de ce torseur peuvent être écrites dans n’importe quelle
base, par exemple B0 . Pour opérer un changement de base et de point de réduction
(définis par une transformation Euclidienne), on peut utiliser la matrice qui serait si la
ROS dOS

transformation est par exemple : TOS =
0 1
t
F ROS 0 F
    
=
MSt BS −dˆ0S Rt OS
t
ROS MOt B0

ERROS est la matrice adjointe AdTOS . Le torseur TS (S/SP ) (wrench en anglais) peut être
exprimé en fonction du torseur géométrique (screw en anglais):
TS (S/SP ) = kF k (s, λs + sP ) = f $̄
On détermine le vecteur directeur de l’axe central s du torseur si :
F
1. F 6= 0 → kF k

Mt
2. F = 0 → kM t k

Le pas du torseur est :


F.M t
λ=
f2
les points H de l’axe central sont tels que :
F ∧ MOt
OH = + ks k ∈ R
f2

5.2.3 Modélisation du contact entre 2 solides


• Trajectoires des points de contact
Soit deux solides SP et Snj (rapportés respectivement aux repères RP et R ,mo-
biles dans l’espace affine et assujétis à rester en contact à tout instant. Au point
géométrique I de contact viennent en coı̈ncidence deux points:
- la particule ItP de SP en contact avec Snj à l’instant t,
- la particule Itn de Snj en contact avec SP à l’instant t.
Quand t varie, I décrit un arc de courbe Ci à la surface Σi de Si , qui est la tra-
jectoire du point de contact. La position à l’instant t du point de contact sur
chacune des surfaces est la même, mais leurs trajectoires, vitesses, accélérations
sont différentes.

58
• Normale au contact
Si SP et S sont considérés comme des solides à surface régulière, ils ont même plan
tangent (Π).
Si leur surface est définie par une fonction S(x, y, z), et si S(x, y, z) > 0 est la
surface intérieure à SP , la normale ni au point I intérieure à SP est donnée par:

grad(S(Pj )
nj =
kgrad(S(Pj )k

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 SP
et S dans leur mouvement relatif par rapport à R0 . Le champ des vitesses de SP dans
son mouvement par rapport à S est alors décrit par le torseur:

(VISSP , ωSP /S )
t

On appelle vitesse de glissement de SP par rapport à S la vitesse V SSP qui est telle que:
It

VISSP = VI SP − V S
j
t t It n

Dans les cas réguliers, VI SP et VIt∈S sont tangents à la trajectoire de I dans RP et Rjn . La
t
vitesse de glissement est donc elle aussi dans (Π). Le contact étant supposé persistant,
la vitesse selon la normale au plan tangent (Π) est donc nulle:
j
V SSnP .nj = 0
It

La vitesse angulaire se décompose en une vitesse dite de roulement ωR et une vitesse de


pivotement ωP .

ωP = ωSnj /SP .nj


ωR tj = ωSnj /SP − ωP nj
On 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 autour
d’un vecteur tj du plan tangent (Π).
On dira que le solide SP roule sans glisser sur le solide Snj lorsque la vitesse de glissement
du premier par rapport au second est nulle:
j
V SSnP = VI SP − V S
j =0
It t It n

Le roulement sans glissement se traduit par deux relations scalaires qui font s’annuler la
j
vitesse V SSnP dans le plan (Π).
It

59
5.2.5 Champ des actions de contact
S’il s’agit d’un contact ponctuel, au point géométrique Pj agit une force pure. Dans ces
conditions, le torseur T s(S/SP ) réduit en Pj s’exprime:

T s(S/SP ) = (f (Pj ), 0)
On a, par ailleurs, du théorème de l’action et de la réaction:

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


Dans le cas ou le contact n’est plus ponctuel, si l’on désigne par Φ(I) la densité de force
de contact en I agissant sur un élément d’arc de longueur ds ou de surface da, pour
obtenir l’effort de contact il suffit d’intégrer la densité de force sur l’élément de surface
par exemple:
Z Z
f (Pj ) = Φ(I)da; M t (Pj ) = Pj ∧ Φ(I)da
On considére généralement 3 types de contacts élémentaires, sachant que par combinaison
de ceux-ci on peut décrire des contacts de complexité supérieure. Ces trois contacts sont:
1. Contact ponctuel sans frottement
2. Contact ponctuel avec frottement
3. Contact ponctuel dit ”déformable”
Ces actions peuvent être décomposées dans une base de torseurs géométriques propres à
chaque contact. On peut choisir par exemple la base:

Bc = [$x , $y , $z , $o x, $o y, $o z]
base qui coincide avec les forces et moments purs s’excercant selon et autour des axes
d’un repère d’origine Pj dont les axes sont ceux définis comme sur la figure 28:
Dans ces conditions, les différents types d’actions sont représentables par:

Figure 28: Repère lié au contact

60
• Contact ponctuel sans frottement:

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


= f3 $z
(7)

• Contact ponctuel avec frottement


T s(Snj /SP ) = (f1 , f2 , f3 , 0, 0, 0)
= f1 $x + f2 $y + f3 $z
(8)

• Contact déformable:

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


= f1 $x + f2 $y + f3 $z + m3 $o z
(9)

Ici, les scalaires fi et mi représentent respectivement les amplitudes des forces et des
moments élémentaires.
Dans l’hypothèse ou le contact est non-dissipatif (on néglige le frottement de roulement
et de glissement), le système de torseurs réciproques aux systèmes définis ci-dessus donne
accès aux mouvements relatifs des corps.

5.2.6 Modèle de frottement de Coulomb


Le travail résistant des actions de liaison résulte en partie du frottement sec. Le travail
des actions induites par le frottement est négatif. Par exemple, pour un glissement de
SP dans le plan (Π), on vérifie que:
j
V SnSP = −λf ti avec λ > 0
P jt

Ainsi, la force de frottement s’oppose au mouvement de glissement. Cependant, cette


force prend une valeur indépendante de la vitesse de glissement. Elle ne dépend pas de
l’aire des contacts mais principalement de la nature des surfaces (matériaux, rugosité).
Les forces de frottement peuvent être approchées par les lois de Coulomb. Celles-ci
traduisent le fait que les bornes sur les actions induites par frottement ne dépendent que
de l’amplitude de la force normale au contact fn et lui sont proportionnelles. Ces lois
s’énnoncent comme suit:
1. Glissement:
V S SP 6= 0; f (Pj ).V S SP < 0 ; kf tj k = µkf nj k
P jt P jt
V S SP = 0; kf tj k < µkf nj k
P jt

61
2. Roulement:
ωR (Snj /SP ) 6= 0; MRt (Pj ).ωR (S/SP ) < 0; kMRt (Pj )k = kf nj k
ωR (S/SP ) = 0; kMRt (Pj )k = kf nj k

3. Pivotement:
ωP (S/SP ) 6= 0; MPt (Pj ).ωP (S/SP ) < 0; kMPt (Pj )k = ζkf nj k
ωP (Snj /SP ) = 0; kMPt (Pj )k = ζkf nj k

µ, ζ et  sont respectivement les coefficients de glissement, roulement et pivotement. Le


premier est sans dimension, les deux autres sont homogènes à une longueur. , pour des
corps rigides est du second ordre devant les deux premiers. Dans le cas où les vitesses
de glissement et pivotement sont nulles, il y a adhérence du contact. Les forces de
frottement dans les conditions d’adhérence s’expriment par des inégalités strictes. Les
conditions d’équilibre peuvent s’illustrer géométriquement en posant µ comme égal à:

µ = tg(φ)

φ étant le demi-angle au sommet du cône formé par le droites de Coulomb (voir figure
29). Ce cône peut être approximé par un cone polyédrique formé par une combinaison
convexe de n vecteurs sur la génératrice du cone.
X X
f≈ α i ci αi ≥ 0, αi = 1
i=1,n i=1,n

Si le point représentatif de la résultante fj de l’effort de contact se trouve à l’intérieur

Figure 29: Représentation du cone de Coulomb

ou au bord du domaine délimité par les droites de Coulomb, il y a équilibre, dans le cas
contraire, il y a glissement. Un ensemble de contacts sera représenté comme le montre
la figure ??.

62
5.2.7 Application à la modélisation d’une prise
Pour représenter et analyser différentes prises (comme celles illustrées sur la figure 30),
le système de forces transmis par chaque contact j sur SP est représenté par un torseur
T s(Sj /SP ). Ce torseur peut est décomposé sous forme d’une combinaison linéaire des

Figure 30: Différentes configurations de prises

torseurs de base de l’effort transmissible:

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


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

ici, fi est l’amplitude du torseur géométrique de base f¯i . Ce contact occupant une
configuration m de l’espace des configurations M , il peut être vu comme une applica-
tion linéaire bijective ψj de l’espace vectoriel Rcj sur l’espace cotangent à l’espace des
déplacements en m T sm :
ψj : Rcj → T sm
ψj (f1j , f2j , ...., fcjj ) → ERRjP Bj (f1j , f2j , ..., fkj )t

63
RP
Dans l’équation au-dessus, ER j désigne la matrice de changement des coordonnées, des
n
torseurs statiques exprimés dans le repère Rj , dans RP .

Bj est une matrice de sélection de dimension (6 × cj ), elle traduit les conditions de


transmission des efforts par le contact. Pour un contact de type ponctuel avec frottement,
cette matrice Bj prend pour valeur:
 
1 0 0
0 1 0


0 0 1
 
Bj = 
0

 0 0
0 0 0
 

0 0 0
Dans cette mesure, une prise réalisée par un système de contacts peut être représentée par
une somme d’applications linéaires du même type, chacune caractérisant les contraintes
qu’elle provoque sur les mouvements de SP .

G : R n → T sm
X
n= cn

G(f1j , .., fcNN ) = ψ1 (f11 , .., fc11 ) + ψ2 (f12 , ..., fc22 ) + . . . + ψN (f1N , .., fcNN )
La matrice associée à G regroupe en colonne les coordonnées Pluckériennes des torseurs
géométriques statiques associés aux différents contacts.

G = [ERR1P B1 ; ERR2P B2 ; . . . ERRNP BN ]


Si nous considérons à titre d’exemple un système de forces pures, issuent des N contacts
ponctuels avec frottement. On a directement:

Figure 31: Saisie par des contacts ponctuels avec frottement

T s(Snj /SP ) = fij $̄ji


X X

j=1,N i=1,3

64
avec:
fˆij = (sji , rij ∧ sji )
alors:
G = {$̄11 , $̄12 , ....., $̄N
3 }
n1 , t1 , b1 , ··· bN
 
G=
r1 ∧ n1 , r1 ∧ t1 , r1 ∧ b1 , · · · , rN ∧ bN
Les colonnes de G sont les coordonnées Pluckériennes des droites support des com-
posantes de force. A titre d’exemple nous considérerons la prise d’un objet plan par 2
contacts ponctuels avece frottment comme montré sur la figure 5.2.7 Les matrices des

transformations homogènes T01 et T02 sont respectivement :


1 0 0 −a −1 0 0 a
   
0 1 0 0   0 −1 0 0 
T01 = 
T02 = 
0 0 1 0   0 0 1 0
   

0 0 0 1 0 0 0 1
Pour cet exemple, les matrices de changement de coordonnées des torseurs sont :
−1 0 0 0
   
1 0 0 0 0 0 0 0
0

1 0 0 0 0

 0 −1 0 0 0 0
0 0 1 0 0 0 0 0 1 0 0 0
   
R0 R  
ER =  E 0 =
R1

1 0
 0 0 1 0 0
 0
 0 0 −1 0 0 

0 0 −a 0 1 0  0 0 a 0 −1 0 
   

0 a 0 0 0 1 0 −a 0 0 0 1
qui dans le plan se réduisent à :
   
1 0 0 −1 0 0
R0 R0
ER =  0 1 0  ER =  0 −1 0 
   
1 1
0 a 1 0 −a 1
Ainsi la matrice G s’écrit :
R0 R0
G = [ER1
B1 ; ER2
B2 ]
 
1 0 −1 0
G = 0 1 0 1
 

0 −a 0 a

65
5.2.8 Etude de l’équilibre de la prise
Il convient de distinguer différentes situations dans l’analyse du problème de l’équilibre.

1. Le sous-espace de SE(3) dans lequel l’équilibre doit être satisfait.

2. Si les forces extérieures sont données et constantes

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

4. etc ...

• Etude par le rang de G


G regroupe dans ses colonnes les coordonnées du système de torseurs appliqué sur SP ,
exprimées dans un repère arbitrairement choisi RP , l’équilibre de SP se traduit sous une
forme matricielle par:
[G]f = −F
N t
- f = (f11 , f21 , ..., fcN ) , sont les amplitudes des torseurs regroupés dans G,
- F est un torseur de forces extérieures appliqué sur SP , autres que les forces de contact
des doigts.
En ne considérant aucune condition particulière sur les forces de contact, une prise
représentée par G est statiquement stable quand il existe une solution à f pour F quel-
conque. Ceci implique la condition nécessaire suivante:

rg(G) = 6

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

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

Dès lors ou le rang de G est tel que rg(G) < 6, il existe une mobilité transitoire ou per-
manente de SP par rapport à SO . Par conséquent, il existe 6−rg(G) torseurs réciproques
indépendants au système de torseurs défini par G. Ce système de torseurs réciproques
forme la base du mouvement laissé libre par la liaison équivalente. On détermine ce
mouvement en recherchant les $R j tels que:

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

Si on considère que les actions extérieures sont issues de liaisons par contact ponctuel
rigide sans frottement, ces équations d’équilibre peuvent se mettre sous la forme ma-
tricielle :
Gf = −F avec f ≥ 0
G est ici la matrice qui regroupe en colonnes les coordonnées plukériennes des torseurs
associés aux liaisons unilatérales.
n1 n2 ... ni ... nn
 
G=
r1 ∧ n1 r2 ∧ n2 . . . r i ∧ ni . . . r n ∧ nn

66
avec les ni orientés vers l’intérieur de SP . Au-delà de la condition nécessaire définie
avant il faut vérifier si les conditions relatives à l’unilatéralité des forces développées par
les appuis.
• Analyse géométrique de l’équilibre des appuis.
Une représentation géométrique équivalente des contraintes dans l’espace des torseurs
peut être donnée sous la forme d’un polyèdre (borné ou non-borné). L’ensemble ainsi
défini est :
P (G) = {F t ∈ R6 : F = Gf }
Graphiquement, ce polyèdre est construit en traçant à partir d’une origine les vecteurs
forces et moments regroupés dans G. Les valeurs admissibles pour des combinaisons
linéaires de f sont données par les points de P (G). Une autre représentation consiste à
définir l’enveloppe convexe de l’ensemble des torseurs de G:
n o
Conv(G) = F t ∈ R6 : F = Gf, f > 0,
X
ifi = 1

A partir du polyèdre des contraintes et de leur enveloppe convexe on peut définir la


notion de fermeture géométrique (pour des forces de contact supposées sans frottement)
comme :
P (G) = R6 = se∗ (3)
O ∈ int(Conv(G))
Dès lors où le fermeture n’est que partielle, le complément réciproque à G définit les
mouvements qui restent libres. Si on note V le système de torseur tel que :

Gt V = 0

on peut définir l’ensemble des mouvements compatibles avec les contraintes comme un
polyèdre de se(3) :
P (V ) = {δX ∈ R6 : Gt δX ≤ 0}
et Conv(V ). On peut déteminer un système de torseurs réciproques à G puis par une
SVD ou le méthode de Gram-schmit une base pour ce système qui définira le mouvement
laissé libre par les contraintes.

5.2.9 Famille de réactions statiquement admissibles


Si le nombre de torseurs élémentaires n introduits par les doigts sur l’objet est supérieur
à 6 (n > 6), la prise est hyperstatique. Il manque en effet h = n − rg(G) équations pour
déterminer les fi qui définissent la prise.
Comme dans tout problème hyperstatique, les relations nécessaires à la résolution des
inconnues d’efforts extérieurs (ici les fi appliqués au corps dont on étudie l’équilibre
(ici SP ) sont celles qui traduisent l’état de déformation du corps et/ou des liaisons.
La résolution du problème sous-déterminé du système peut être abordée en utilisant
la pseudo-inverse. Les solutions possibles pour f (solutions statiquement admissibles)
prendront alors la forme suivante:

f = fp + fh

67
La solution est constituée d’une solution particulière fp et d’une solution fh au système
homogène associé. Cette dernièreforme un système de forces auto-équilibré. Le solution
fh peut être déterminée comme :
fh = N (G)λ
La solution à f pour une prise hyperstatique peut aussi être obtenue à partir d’une
méthode de résolution fondée sur la pseudo-inverse:
f = G+ F + (In − G+ G)τ
- G+ = Gt (GGt )−1 , est l’inverse à droite de G puisque n > 6
- τ est un vecteur arbitraire de Rn
Le premier terme, est la solution particulière de norme Euclidienne minimale.
Le second terme est la projection sur le noyau de G d’un vecteur arbitraire τ de Rn .
On appelle également la solution particulière ”forces de manipulation”. La solution
homogène constitue les ”forces intérieures”. La première sert à résister au torseur de
forces extérieures tandis que la seconde définit les forces de serrage (ou encore forces de
saisie).

5.2.10 Analyse algébrique de l’équilibre


On peut vérifier si une solution satisfaisant l’équilibre existe en utilisant une pseudo-
inverse de G. Alternativement, une solution peut être obtenue aussi en introduidant un
vecteur de variables virtuelles y et en résolvant le programme linéaire suivant :
X
minimiser yi
i=1,n

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 problème. Si les contraintes ne
permettent pas d’immobiliser complètement SP (cas d’une table à 4 pieds par exemple),
la fermeture n’est que partielle. On vérifiera alors que le travail réaliser par les contraites
sur l’objet fait que les distances des appuis à l’objet restent inférieures aux distances
initiales :
Gt δXd ≤ d
, le produit Gt δX étant le comoment entre 2 torseurs. On peut verifier que cette condition
est respectée en considérant le programme linéaire :
minF t δX
sous contraintes Gt δXd ≤ d
ou son dual :
minf t d
sous contraintes Gf = −F
avec
f ≥0
Dès lors où les forces d’appui sont bornées, on ne parle plus en terme de contraintes
géométriques mais de contraintes de forces.

68
5.2.11 Détermination des forces de contact
La prise étant hyperstatique (de degré h) devant d, les solutions statiquement admissibles
à (??) font apparaı̂tre une solution particulière (fp ) et une solution homogène (fh ) :
f = fp + fh (10)
Cette dernière correspond au système de forces ”équilibré” intérieur à la prise que l’on
désigne aussi par efforts de serrage. Du point de vue de l’algèbre linéaire, elle est con-
stituée par les éléments du noyau de l’application associée à la matrice G (N (G)), qui
forme un espace vectoriel de dimension h, et est donnée par :
fh = N (G)λ (11)
où N (G) est la matrice qui regroupe en colonnes les vecteurs de N (G) donnés notam-
ment par les vecteurs singuliers à droite de G associés aux valeurs singulières d’ordre
supérieur à rang(G)=h , λ ∈ Rh est le vecteur des multiplicateurs scalaires de la so-
lution homogène. Notons que les vecteurs de N (G) peuvent être choisis pour donner
un sens physique aux forces intérieures (Ex : 2 forces directement opposées, 3 forces
coplanaires et concourantes, etc ...).
La solution particulière équilibre quant à elle les efforts extérieurs FExt . Une solution
de norme minimum (minkfh k) s’obtient notamment en utilisant l’inverse généralisée à
droite G+ + t
d L’expression de Gd obtenue par G (GG )
t −1
n’ayant pas de sens dans le cas
général, G doit être pondérée.

fp = −G+
dF

Le terme d’optimisation peut être déterminé pour satisfaire par exemple la minimi-
sation des efforts induits par frottement ou la stabilité du contact.

5.2.12 Détermination des composantes de serrage


Les amplitudes des forces intérieures (de serrage) servent à maintenir la stabilité du
contact quand les perturbations extérieures varient. Cela suppose bien évidemment que
les mécanismes des doigts soient susceptibles d’appliquer des efforts dans une direction
choisie (direction de la composante de force intérieure) autrement dit que leur mobilité
soit telle que l’on puisse maı̂triser la direction d’application de l’effort.
Le problème devant lequel on est placé peut se formuler de la manière suivante: Trouver
des 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 problème peut être abordé comme un problème de minimisation si l’on considère qu’il
s’agit de trouver le vecteur f tel que la fonction objective:
(fj .nj )2
X

j=1,N

69
soit minimum.
Un vecteur optimal admissible pourra être déterminé pour cette fonction objective

(fj .nj )2
X
min
j=1,N

, sous les contraintes d’inégalité et d’égalité (1, 7 + 2N ) en exploitant les techniques de


programmation linéaire.

Une fois linéarisées, les différentes contraintes imposées aux efforts de contact, traduisant
la stabilité du contact, s’expriment sous la forme d’un système d’inéquations qui s’écrit:

f nj > 0 j = 1, N
f tj + f nj ≥ 0 j = 1, N
f tj − f nj ≤ 0 j = 1, N
f bj + f nj ≥ 0 j = 1, N
f bj − f nj ≤ 0 j = 1, N
Jjt Bj fj ≤ τmax
Jjt Bj fj ≥ τmin
Celles-ci peuvent se regrouper sous la forme matricielle suivante:

Cf ≥ P
En substituant dans ce système d’inéquations:

[fh ] = N (G)t λ
et,
[f ] = [fp ] + [fh ]
on obtient le système:
CN (G)t λ > P − C[fp ]
qui définit comment les λ doivent être choisis pour satisfaire aux contraintes de stabilité
du contact.

70
5.2.13 Rigidité de la prise
La rigidité du système de préhension n’étant pas infini, l’objet saisi va subir un déplacement
sous l’action des forces extérieures. En statique, on a en pratique un comportement
élastique, linéaire ou non, des contacts sous l’effet d’une action mécanique. Les coeffi-
cients de la matrice de raideur sont alors constants. Ils reflètent la raideur structurelle
de l’ensemble doigt-objet. Lorsqu’il s’agit d’un préhenseur articulé dont les articulations
commandées sont réversibles, à la compliance structurelle Cs s’ajoute la compliance des
asservissements Ca . La relation entre les forces de contact et les déplacements qu’ils
provoquent en un point Pj est autour de la configuration d’équilibre:

Fj = kj δPj

En considérant SP saisi et auquel est appliqué un système de forces de serrage fh , la rela-


tion matricielle entre les efforts extérieurs et les déplacements de l’objet qu’ils provoquent
est :
δX t F + δP t f = 0
δX étant un petit déplacement de SP . Les équations du déplacement d’équilibre élastique
s’écrivent :
F = GkGt δX
K = GkGt est la matrice de rigidité élastique globale exprimée au point origine de RP
et obtenue à partir des raideurs raideurs équivalentes dans les directions contraintes par
les contacts. D’une manière générale :
t
kj = (Cs + Jdj Ca Jdj )−1

La conception de la structure mécanique du préhenseur et sa commande influencent la


rigidité de la prise. Celle-ci peut être utilisée pour compenser passivement les erreurs
de positionnement relatif comme on le fait avec les ”‘poignets compliants”. La matrice
de rigidité du système peut être utilisée pour l’analyse de la stabilité de la prise. Cette
matrice est définie positive, c’est à dire telle que :

δX t KδX > 0 ∀δX

L’équilibre de SP correspond à la stationarité de l’énergie potentielle totale qui en


présence de forces extérieures est :

U = 1/2δX t KδX − δX t F

La prise sera stable si on peut trouver un déplacement défini pour une force extérieure
donnée, autrement dit si la matrice K est inversible. Pour que K soit inversible il faut
vérifier que :
det(K) 6= 0
ce qui conduit à vérifier que toutes les valeurs propres Λl de K sont non-nulles puisque :
Y
det(K) = Λl
k=1,l

71
5.3 Cinématique de la manipulation coordonnée
La manipulation de SP est obtenue par le mouvement coordonné des articulations des
doigts. La formulation cinématique du problème de la manipulation coordonnée peut être
vue comme une extension du problème cinématique inverse des manipulateurs simples
à des manipulateurs disposés en parallèles (entre SP et S0 ) sachant que le système de
torseurs générateurs du mouvement de SP par rapport à S0 , TSP /SO est constitué par
l’intersection des générateurs TSjP /SO de l’ensemble des N chemins.

TSP /SO = TS1P /SO ∩ TS2P /SO ∩ . . . ∩ TSNP /SO (12)

Plusieurs techniques d’obtention du modèle cinématique inverse sont envisageables.

5.3.1 Equations de fermeture des chaı̂nes cinématiques


Une solution pour traduire la cinématique des mécanismes en chaı̂nes fermées conduit
à écrire les (N − 1) équations torsorielles de fermeture de chaı̂ne. Si l’on considère le
cycle cinématique constitué par le doigt j, le doigt k, et l’objet SP (chacun des doigts
comportant g articulations actives 1 et des contacts dont la cinématique seraient décrites
par un système de (m − g) torseurs indépendants 2 , en notant d’une manière générale ωi
l’amplitude des torseurs et $̂i les torseurs unitaires, cette équation prend la forme :

ωaj $̂ja + ωpj $̂jp = −( ωak $̂ka + ωpk $̂kp )


X X X X
(13)
a=1,g p=g+1,m a=1,g p=g+1,m

Ces relations intrinsèques, écrites dans RP , conduisent après partitionnement des vari-
ables cinématiques actives (θ̇) et passives (φ̇) au système matriciel :

Jd θ̇ = Jc φ̇ (14)

où Jd , de dimension (d(N − 1) × N g) est la Jacobienne des doigts et Jc , de dimension


(d(N − 1) × N (m − g)).
Dans (Eq. 14), les paramètres du distributeur des vitesses de SP par rapport à S0
(Ẋ) n’apparaissant pas explicitement. Cette équation ne permet pas d’obtenir le modèle
cinématique inverse du système. Pour introduire Ẋ, on peut ajouter aux équations
précédentes une équation supplémentaire de chaı̂ne ouverte, en considérant le doigt j
par exemple :

ωaj $̂ja + ωpj $̂jp = Ω$̂


X X
(15)
a=1,g p=g+1,m

On obtient alors un système de (6 ∗ N ) équations scalaires (pour un mécanisme opérant


dans l’espace 3D), qui ne sont pas a priori indépendantes, entre les (N ∗ g) paramètres
1
on suppose ici la cinématique du préhenseur symétrique sans que cela modifie la généralité
2
système réciproque à ceux définis par les matrices Bj

72
cinématiques ”actifs”, les N ∗ (m − g) paramètres ”passifs” et les 6 paramètres scalaires
du distributeur des vitesses de SP par rapport à S0 .

Une variante consiste à utiliser directement N équations torsorielles de chaı̂nes ou-


vertes semblables à (Eq. 16), celles-ci découplant en effet au mieux les variables cinématiques
d’entrée (actives) qui sont à déterminer :

ωaj $̂ja + ωpj $̂jp = Ω$̂


X X
j = 1, .., N (16)
a=1,g p=g+1,m

Le système d’équations scalaires obtenu en les écrivant dans RP , prend alors la forme
suivante:

Jdj θ̇j + Jcj φ̇j = Ẋ j = 1, .., N (17)


 j  j
θ̇ j θ̇
Jj = ( Jd Jc )j
= Ẋ j = 1, .., N
φ̇j φ̇j
(18)

L’équation (17) fait apparaı̂tre le mouvement instantané produit par les articulations des
doigts, dont la configuration du système d’axes est décrit par les colonnes de la matrice
(d×g) Jd , et le mouvement induit dans les liaisons par contact.

5.3.2 Utilisation des torseurs réciproques


Pour éliminer les variables passives, on peut procéder de plusieurs manières. La première
consiste à considérer le système de préhension comme un mécanisme parallèle dans lequel
les liaisons par contact sont des liaisons passives (en introduisant l’hypothèse que les
contacts 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 à R0 peut être déterminé à partir d’un changement
de coordonnées des composantes du torseur Ẋ.
Rj
(Ẋ)Rj = ERPP (Ẋ)RP
P

Les composantes du mouvement à transmettre par le contact j sont définies par la matrice
Bj .
˜ ) j = B t (Ẋ)
(Ẋ ˜ j
r R j RP
P

Ce mouvement peut être décrit dans un repère lié au contact RjC On a par ailleurs :

˜ ) j = E RjC B t E RjP (Ẋ)


Jdj θ̇j = (Ẋ r R Rj j RP RP
C P

Pour l’exemple du système représenté sur la figure ?? Pour ce système plan, on a :

73
    
wz 1 0 0 wz
 vx  =  0 1 0   vx 
    

vy R1 −a 0 1 vy
P

    
wz 1 0 0 wz
 vx  =  0 1 0   vx 
   

vy R2 a 0 1 vy
P

1 0 0
 
B1 =
0 1 0
1 0 0
 
B2 =
0 1 0
On a par ailleurs :  
w
1 0 0  z
 1
θ̇
 
Jd1 1
=  vx 
θ̇21 0 1 −a
vy
 
w
1 0 0  z
 2
θ̇
 
Jd2 1
=  vx 
θ̇22 0 1 a
vy
Ce système d’équation peut se mettre sous a forme :
 1
θ̇1 1 0 0  
 
 1 1 wz
Jd 0   θ̇2 
0 1 −a 

=   vx 
  
0 Jd2  θ̇12  1 0 0 
 
2 vy
θ̇2 0 1 a
| {z }
Jd | {z }
Gt

Jq q̇ = Gt Ẋ

74
5.4 Introduction de la cinématique des contacts
Selon la géométrie et la mécanique des contacts, deux situations sont à distinguer :

1. soit les contacts peuvent être considérés comme stationnaires, et donc le mouvement
représentable par un système de torseurs invariant dans RP ,

2. soit on a affaire à une liaison de classe intermédiaire [?], et le système de torseurs


varie dans le temps.

La première situation correspond au cas où la courbure relative de ΣP et Σjn est grande.
La longueur de l’arc de courbe que décrit le point de contact sur les surfaces ΣP et Σjn
peut alors être négligée. D’autre part, les déplacements des Snj par rapport à SP doivent
être compatibles avec la mécanique des contacts pour qu’il n’y ait pas de glissement
induit. Il en est a priori ainsi si dim(φ̇) = d(N − 1) ou si on impose d(N − 1)-dim(φ̇)
contraintes sur les θ̇ij .
Lorsque cette approximation ne peut plus être faite, la cinématique du contact doit alors
être décrite dans une base locale (par exemple Rnj ). Celle-ci s’introduit notamment à
l’aide de la première et de la seconde forme fondamentale de la surface au point de
contact. Elles définissent, à travers le premier et second tenseur, les propriétés métriques
et la courbure locale de la surface.
• Le tenseur métrique donne les propriétés métriques des vecteurs projetés dans le plan
tangent et initialement définis en coordonnées curvilignes. Dans le cas ou le paramétrage
est orthogonal, sa représentation matricielle est :

kMu k 0
 
IM = (19)
0 kMv k

• Le tenseur de courbure, dont la représentation maticielle est :


 t
x zu zv
KM = (M ) (20)
yt u Mv

où zu = ∂z/∂u et zv = ∂z/∂v définissent la variation du vecteur normal en projection


dans le plan tangent.

On introduit ensuite un troisième paramètre géométrique de la surface, la torsion,


qui traduit comment évolue sur la surface l’un des vecteurs du plan tangent (par exemple
le vecteur y, sachant que x et y sont orthogonaux) comme :
xu !
t kMu k
TM = ( y ) xv (21)
kMv k

On peut alors déterminer les composantes (ẋjcn , ẏcjn , żcjn , ωxjcn , ωycjn , ωzcjn )t du distributeur
des vitesses en Pj de Rcjn par rapport à RcP dans la base associée à ce dernier repère par
la relation:

75
  Σjn 
Σj
Σjn
0   u̇Σjn

−IM Rγj IMP
 v̇
 
0 0 0
 
( ẋjcn , ẏcjn , żcjn , ωxjcn , ωycjn , ωzcjn )t =  P 
Σj Σj u̇Σn (22)

 j Σjn Σjn  
 Rγ KM IM Rγj KMP IMP 0   ΣPn
  
 v̇
 
j j
ΣP ΣP

Σn Σn
−TM IM −TMn IMn 1 γ̇

Dans cette équation, Rγj désigne la matrice de rotation entre Rcjn et RcP . Si Σjn et ΣP
sont connus, en considérant que les repères locaux de contact sont en coı̈ncidence au
temps to de la manipulation, l’intégration des variables cinématiques du contact permet
de suivre l’évolution des coordonnées du contact sur un intervalle de temps.

5.4.1 Dynamique de la manipulation coordonnée


Considérons comme exemple de système de manipulation coordonnée un système de
préhension articulé. Pour établir le modèle dynamique de l’ensemble objet/doigts (comme
représenté sur la figure 5.4.1), il convient d’étbalir d’une part les équations du mouve-
ment de l’ensemble des doigts et celle de l’objet : En établissant des coupures virtuelles

au niveau des contacts, on établir séparemment les équations du mouvement du doigt j


qui s’écrivent :
M j (q)q̈ j + C j (q j , q̇ j ) + N j (q j ) = τ j
Pour l’ensemble des doigts on a :

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

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

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

Lorsque les contacts sont établis, les paramètres q et X ne sont plus indépendants. Les
relations de contrainte s’expriment par :

Jq q̇ = Gt Ẋ

76
Les équations du mouvement pour l’ensemble du système font apparaı̂tre des multipli-
cateurs de Lagrange qui représentent les amplitudes des forces élémentaires de contact.
On a le système suivant :
 t
Md 0 q̈ Cd (q, q̇) Nd (q) J τ
        
q
+ + + λ=
0 Mo Ẍ Co (X, Ẋ) No (X) G Fext

77
5.5 Cas particulier des robots humanoı̈des
Un humanoı̈de peut être vu comme un système articulé de corps rigides (hypothèse
forte car on sait que le pied par exemple est très déformable et participe beaucoup
à l’équilibration posturale) à topologie arborescente en mouvement par rapport à un
référentiel Galiléen, mouvement qui peut être contraint par des liaisons holonômes voire
également par des liaisons non-holonômes (voir illustration figure 32). Les équations du
mouvement d’un tel système supposé ici sans contrainte peuvent d’une manière générale
être obtenues par le formalisme de Lagrange écrit en termes de quasi-coordonnées (Equa-
tions de Boltzmann-Hamel) pour tenir compte en particulier du paramétrage des rota-
tions spatiales du corps ”‘racine”. Ces équations sont de la forme :

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

q̇ = A(q)v

Hr

q4

f c2
f c1

Figure 32: Mannequin numérique

L’un des problèmes centraux pour la mise en oeuvre physique ou virtuelle de tels
systèmes est d’une part la maı̂trise de leur équilibre et de la stabilité des équilibres ainsi
que de la contrôlabilité de leurs mouvements.

5.5.1 Caractérisation de l’équilibre d’un humanoı̈de


Les robots humanoides sont par nature des systèmes non-linéaires et les variations de la
topologie de leurs appuis induisent des changements discrets du vecteur d’état. D’autres
non-linéarités sont associées aux contraintes physiques et des actionneurs, etc ...
La caractérisation de certains de leurs mouvements suppose un certain degré d’interprétation.
En effet, la différence (pour une partie importante de trajectoire) entre un mouvement
de chute verticale d’un sujet et son mouvement pour s’assoir sur le sol est probablement
ténue. Une trajectoire satisfaisant les contraintes existe, cependant elle ne traduira pas

78
que le système ne chute pas. Le traitement de la chute suppose d’ajouter une condition
supplémentaire comme l’apparition d’un nouveau contact entre le système et le sol et
un autre lieu que sur les extrêmités des membres en appui. L’un des moyens utilisés
pour observer une instabilité est le glissement ou le décollement des appuis avec le sol et
l’environnement physique en général.
L’équilibre en rotation est souvent encore plus important car il peut induire une
perte de contrôle de la posture du mannequin. Cela est plus particulièrement vrai si on
considère des rotations autour d’axes situés dans le plan (ou plan virtuel des appuis).
Cet état de déséquilibre conduira alors un basculement qui peut, s’il n’est pas suivi d’un
changement de la topologie des appuis (comme dans le cas de la marche), provoquera la
chute.
L’analyse de la stabilité de l’équilibre des systèmes multipodaux est rapportée généralement
à l’enveloppe convexe des appuis. L’équilibre statique est généralement analysé en util-
isant la projection du CdG sur l’enveloppe convexe des points d’appuis.
L’analyse de l’équilibre dynamique est introduit ici en considérant un seul pied au
contact avec le sol. Cependant, cette analyse est généralisable au cas des appuis bipodaux
voire aux appuis multipodaux planaires.
En isolant le pied en contact, la résultante des forces d’interaction entre le pied et le
sol Rc (sur la surface S est la somme de la résultante du champ de forces normales et du
champ de forces tangentielles:
Z Z
c n t
R =R +R = φn (P )ds + φf (P )ds
P ∈S P ∈S

Le moment en un point Q quelconque de ce champ peut être décomposé également en


considérant les actions normales et de frottement :
Z Z
MQc = MQn + MQf = QP ∧ φn (P )ds + QP ∧ φf (P )ds
P ∈S P ∈S

L’équilibre de l’ensemble s’écrit :

Rc = Rgi + Re

- Rgi = −mg +
P
i m i aG i

- Re =
P
j,nc Fj

MQc = MQgi + MQe


!
MQgi
X X
= d/dtσGi + QGi ∧ mi aGi − QG ∧ m g
i i
avec :
P P
- m= i mi et QG = 1/m i mi QGi

- MQe = QPj ∧ Fj + Mj
P
j,nc

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

MCc ∧ n = 0

En C le moment de ”‘basculement”’ du système autour d’un axe quelconque du plan du


contact s’annule. Seule la composante de moment correspondant au pivotement est le
cas échéant non-nulle. Par définition, le CoP est le point d’application de la résultante
des forces de pression des pieds au sol dans un appui monopodal (par extension biopodal)
définit le centre de pression. Pour assurer la propulsion du corps, ce point voyage pour
une grande majorité des individus selon un axe médian de la sole plantaire du talon vers
l’avant pied.
En l’absence de forces de contact extérieures autres que celles du pied, l’équation
d’équilibre des moments vérifie :

MCc ∧ n = MCgi ∧ n

qui peut encore être notée : h i


[MCc ]t = MCgi
t
Le point ou le moment résultant des forces de gravité et d’inertie voit ses composantes
selon les axes du plan tangent du contact s’annuler est définit dans la littérature comme le
ZM P (Zéro Moment Point). Il s’agit là d’un abus de language car seules les composantes
du moment tangent s’annulent en ce point.
On peut facilement déterminer la position du CoP comme du ZM P . La position de
chacun de ces points est donnée par :

OCCoP = (n ∧ MOn )/Rn

OCZM P = (n ∧ MOgi )/Rgi .n


CoP et ZM P Les coordonnées du ZM P sont :
QGi ∧ mi aGi ) + QG ∧ m g] .y
P P
[ i (σ̇Gi + i
xZM P = P
(−mg + i mi z̈Gi )
QGi ∧ mi aGi ) + QG ∧ m g] .x
P P
[ i (σ̇Gi + i
xZM P = P
(−mg + i mi z̈Gi )
On peut aussi considérer le rôle particulier jouer par la dynamique du pied dans
l’équilibre. L’équation de moment en un point O du sol pour ses seules composantes
tangentielles s’écrit :
h i h i
pied
OC ∧ Rc + OGpied ∧ mpied g + OA ∧ Ra + τ a = σ̇G pied
+ OGpied ∧ mpied aGpied
t t

où :
- mpied , σ pied et OGpied sont respectivement la masse du pied, le moment cinétique
du pied au point O et le vecteur position du centre de gravité du pied.

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

En développant ces derniers, l’équation de moment peut être mise sous la forme :
h i h i
pied
OC ∧ Rc + OGpied ∧ P pied + OG0 ∧ P 0 = σ̇G pied
0
+ σ̇G 0 + OGpied ∧ m
pied
aGpied + OG0 ∧ m0 aG0
t t

Introduisons un point F situé au delà de la frontière du contact et toujours dans le plan


de l’appui, l’équation de moment en F est :
h i h i
pied
(OC + CF ) ∧ Rc + OGpied ∧ mpied g + OA ∧ Ra + τ a = σ̇G pied
+ 0Gpied ∧ mpied aGpied
t t

Au point C, lorsque le pied est immobile, l’équation de moment vérifie :


h i
CGpied ∧ mpied g + CA ∧ Ra + τ a =0
t

Si le pied pivote sur le sol, toujours au point C on a :


h i h i
pied
CF ∧ Rc + CGpied ∧ mpied g + CA ∧ Ra + τ a = σ̇G pied
+ CGpied ∧ mpied aGpied
t t

La composante de moment due au pivotement est :


h i
pied
[CF ∧ Rc ]t = σ̇G pied
+ CGpied ∧ mpied aGpied
t

. Elle représente le FRI (Foot Rotation Index) .


Une autre manière de quantifier l’état de déséquilibre du système conduit à définir la
position du point d’application d’une force d’appui (du pied avec le sol) qui ferait que la
variation du moment cinétique soit nulle. Si on considère l’équation de moment toujours
dans la plan tangent au contact pour l’ensemble du système

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

La condition pour que σ̇G = 0 conduit à :

[GCCM P ∧ Rc ]t = [σ̇G ]t = 0

Pour qu’il en soit ainsi il faut tout simplement que GCCM P et la force de réaction au
contact soient colinéraires ou dans parallèles.

81
6 Analyse des performances
6.1 Indices de manipulabilité
Dans les années 50, Fitt a proposé un index de difficulté pour quantifier le comporte-
ment humain psychomoteur. Cet index interprète le compromis entre la vitesse et la
précision dexécution dune action rapide et ciblée ( ex : saisir un objet) à travers le
temps nécessaire pour saisir une cible de diamètre W située à une distance A comme une
fonction logarithmique de lerreur spatiale relative A/W .
T = a + blog2(A/W + 1)
La transmission cinématique d’un mécanisme est évaluée à travers l’indice d’avantage
mécanique qui est le rapprt entre la vitesse d’entrée et de sortie du mécanisme :
M A = |Ve | / |Vs |
La capacité de transmission d’effort sera également interprétable à travers cet indice si
les actions sont colinéaires aux mouvements d’entrée et de sortie :
M A = |Vs | / |Ve |
On quantifie également l’angle de transmission δ et de déviation γ dans un mécanisme
(voir figure 6.1).

6.1.1 Indice de manipulabilité cinématique

7 Analyse des performances


7.1 Transmission des vitesses
La transmission des vitesses articulaires sur SP est définie par le modèle cinématique
direct du mécanisme de manipulation.
Ẋ = J q̇

82
J peut être vue comme la matrice associée à la transformation entre les vitesses artic-
ulaires q̇ et la vitesse relative de l’objet SP par rapport à S0 . En pratique, les valeurs
prises par les q̇i sont bornées par les capacités technologiques en vitesse des actionneurs
où les saturations introduites dans la commande. La représenation paramétrique de cette
contrainte est:
q˙i min ≤ q̇i ≤ q̇imax
ou encore, en prenant des contraintes symétriques:

| q̇i |≤ q̇imax

La courbe paramétrée correspondant à ces dernières, dans le plan rapporté à un repère


orthonormé dont les axes portent q̇1 q̇2 , est un parallélépipède fermé (figure 33).
Ces limites vont introduire des bornes sur les capacités de déplacement cartésien de
SP . Celles-ci sont données pour la direction j de l’espace cartésien par:

| Ẋj |≤ Jj q̇ max

où Jj est la fonction réelle des q̇ dont les coefficients sont les termes de la j ème ligne de
la matrice J. La courbe paramétrée correspondante est donnée figure 34
Pour savoir comment opère la transformation, nous allons successivement considérer,
d’un point de vue géométrique, l’image d’un point de Q puis le domaine de définition
des points images dans X . Nous conduirons le raisonnement pour n = m = 2 sachant
que l’on peut généraliser directement au cas où n > 2 et m > 2.

Si l’on définit une métrique de type N2 pour Q, géométriquement l’ensemble des


points tels que:
| q̇ |2 = (q̇12 + q̇22 + · · · + q̇n2 ) ≤ 1
constitue une sphère fermée de rayon unité, où un disque fermé dans le cas où m = n = 2.

| q̇ |2 = (q̇12 + q̇22 ) ≤ 1

L’image de l’ensemble de ces points dans X constitue un champ elliptique fermé. En


effet:
| q̇ |2 = q̇ t q̇ = (J + Ẋ)t (J + Ẋ) = Ẋ t (JJ t )−t ≤ 1
En utilisant une décomposition en valeurs singulières de J −1 (et pour généralisation J + ),
on a:
J + = V Σ+ U t
où U ∈ Rm×m , V ∈ Rn×n sont des matrices orthogonales et Σ = diag(σ1 , σ2 , ...., σr ), r
étant le rang de J. Dans ces conditions,

| q̇ |2 = Ẋ t (V Σ+ U t )t (V Σ+ U t )Ẋ = Ẋ t U (Σ+ )2 U t Ẋ ≤ 1

soit en termes de composantes :


X
(ẋui )/σi ≤ 1
i=1,k

83
Cette quadrique bornée est l’équation cartésienne réduite d’un ellipsoide. Les valeurs sin-
gulières σi sont les demi-axes de l’ellipsoide 3 ) mesurés selon les directions des vecteurs
colonnes de U . On traduit ainsi géométriquement la manière dont se réalise la transmis-
sion des vitesses dans une configuration géométrique donnée du mécanisme et par toute
direction prise par le vecteur vitesses articulaires .
Jusqu’à ce point nous avons implicitement admis que tous les axes des articulations
actives disposaient d’actionneurs identiques et par conséquent étaient suceptibles des
mêmes capacités. Sous cette hypothèse, on peut introduire une première mesure, celle
que l’on associe au volume de l’ellipsoı̈de qui par définition est directement proportionel
au produit des valeurs singulières σi . La qualité de la transmission, en terme d’amplitude,
peut donc être représentée par le scalaire ω tel que:
Y
ω= σi
i

En utilisant la décomposition en valeur singulière de J, pour le cas général ou n ≥ m on


a également:
ω = det(JJ t ) = det(U ) × det(ΣΣt ) × det(U t )
or det(U ) × det(U t ) = 1, puisque U U t = U U −1 = 1
et donc det(JJ t ) = det(ΣΣt )

Dans le cas particulier où J est une matrice carrée (m = n), cette même mesure se
réduit à:
ω =| det(J) |=| det(Σ) |
puisque U et V ∈ Rn×n et det(U ) = ±1, det(V ) = ±1

Cette mesure n’est bien évidemment pas la seule qui puisse être introduite. On peut
par exemple penser à exploiter directement les directions dans lesquelles les demis-axes
de l’éllipsoı̈de sont les plus grands et les faire coı̈ncider avec les directions de l’espace
cartésien que la tâche impose de privilégier. Notons par ailleurs que la mesure ω donne
une distance par rapport aux singularités cinématiques du mécanisme. Si l’on veut main-
tenant tenir compte du domaine de définition de q̇, ceci peut être fait en considérant non
pas directement les projections des parallélépipèdes de containtes mais une approxima-
tion sous la forme d’une fonction continue. Les parallélépipèdes présentent, en effet, une
discontinuité de première espèce 4 .
On peut approcher le parallélépipède du plan (q̇1 q̇2 ) par une ellipse (ellipsoı̈de dans un
espace de dimension supérieur à 2) et dire par approximation que les vitesses articulaires
réalisables doivent être prises à l’intérieur d’un ensemble dont les frontières sont définie
par la courbe:
(Qsat )−1 q̇((Qsat )−1 )t q̇ t = 1 (Qsat ) = diag(q̇1max , · · · , q̇nmax )
L’image de cet ellipsoı̈de dans l’espace des X est:
2 2
(Q−1 t −1 t −1 t + t t −1 + t
sat q̇) Qsat q̇ = q̇ (Qsat ) q̇ = Ẋ (V Σ U ) (Qsat ) V Σ U Ẋ
3
On appelle ellipsoı̈de une surface qui, par rapport à une origine et une base orthonormale admet
une équation de la forme x2 /a2 + y 2 /b2 + z 2 /c2 = 1, où a, b, c sont des constantes > 0
4
les limites à droite et à gauche existent et sont distinctes

84
soit encore en notant Ẋu = U t Ẋ
2
(Q−1 t −1 t + t −1 +
sat q̇) Qsat q̇ = Ẋu Σ V (Qsat ) V Σ Ẋu

Ce que l’on peut observer à partir de ce résultat est que la direction des axes principaux de
l’ellipsoı̈de restent bien sur inchangée mais que les longueurs des demis-axes se trouvent
modifées par la matrice:
−1 2 2
(Q0 sat ) = V t (Q−1
sat ) V
2
matrice dites congruente de (Q−1
sat )

7.2 Transmission des efforts


Nous pouvons conduire le même raisonnement sur les efforts statiques qu’il est possible
de transmettre dans une configuration donnée du mécanisme. Dans l’hypothèse ou les
forces de gravité sont négligées, la loi de transmission des efforts est:

τ = (J t )+ F

où F et τ désignent respectivement les vecteur des forces extérieur appliqué sur SP et le
vecteur des forces articulaires généralisées.
L’image de | τ |2 ≤ 1 dans l’espace cartésien forme un ellipsoide définit par :

F t JJ t F t ≤ 1

L’ellipsoı̈de de transmission de force aura cette fois pour axes principaux:

ui /σi

et par conséquent, son volume sera proportionel à:

1/ω

Ceci met directement en évidence le fait que la qualité de transmission de force est, dans
un mécanisme donné, inversement proportionelle à la qualité de transmission des des
efforts.

7.3 Transmission des accélérations (manipulabilité dynamique)


Rappelons que les équations du mouvement dans l’espace cartésien, en l’absence de
mouvement interne s’écrivent :

τ = M (q)J(q)+ (Ẍ − J˙q̇) + C(q, q̇) + N (q)

Les accélérations cartésiennes pour un vecteur de commande donné sont :

Ẍ = J(q)M (q)−1 (τ − C(q, q̇) − N (q)) + J˙q̇

85
On peut voir l’accélération cartésienne Ẍ comme la somme de deux termes :

Ẍ = J(q)M (q)−1 τ + J(q)M (q)−1 (−C(q, q̇) − N (q)) + J˙q̇ = J(q)M (q)−1 τ + Ẍof f

Le terme Ẍof f constitue un offset pour l’accélération de l’effecteur lorsque τ = 0 L’image


du domaine des couples (forces) actionneurs tel que :

τ tτ ≤ 1

dans l’espace des accélérations est :

(Ẍ − Ẍof f )t (M (q)J(q)+ )t (M (q)J(q)+ )(Ẍ − Ẍof f ) ≤ 1

(Ẍ − Ẍof f )t (JM −2 J t )+ (Ẍ − Ẍof f ) ≤ 1


De cette ellipsoide, on peut dériver une mesure de manipulabilité dynamique :
h i1/2
ωd = det(JM −2 J t )

qui quand n = m se réduit à :

| detJ |
ωd =| det(JM −1 ) |=
| detM |

7.4 Indice de rigidité s’un système


Tout système peut présenter des déformations sous des actions extérieures. Si ces
déformations sont considérées comme localisées dans les liaisons et proportionnelles à
la raideur des asservissements de position, pour chaque articulation on a :

δqi = ci τi

Si les liaisons sont indépendantes (comme pour un système série), on peut définir une
matrice d’élasticité articulaire comme :

C = diag(c1 , c2 , . . . , cn )

Le vecteur des petits déplacements articulaires sous une action articulaire donnée est :

δq = Cq τ

Ce déplacement se projete dans l’espace opérationel par J, on a donc :

δX = JCq J t F = Cx F

La matrice Cx représente la ”‘compliance”’ globale du système dans l’espace opérationnel.


De la même manière on peut déterminer la compliance opérationnelle d’un système
parallèle.

86
7.5 Indice de stabilité d’un système d’appuis unilatéraux
Lorsque les systèmes présentent des appuis unilatéraux, il peut être important de pouvoir
maı̂triser les conditions non rupture voire de non-glissement de ces appuis. Ce type de
question se pose notamment pour les systèmes de préhension et de locomotion.

8 Configurations singulières et domaine de travail


D’une manière générale, les configurations stationnaires d’un mécanisme série sont au
nombre de k = 2n−1 , si n est le nombre de liaisons bilatérales. Un mécanisme de doigt
constitué de 3 articulations présentera 4 configurations stationnaires.

L’ensemble des configurations stationnaires peut être déterminé indifférement du


mécanisme. Cependant, seulement un certain nombre d’entre-elles correspondent aux
frontières extérieures et intérieures du domaine atteingnable, les autres se trouvant à
l’intérieur du domaine défini par ces frontières. Si nous cherchons à les déterminer
toutes, dans un premier temps. Ce que l’on sait c’est que dans une telle configuration
singulière, il existe un torseur réciproque au système de torseurs, générateur du mouve-
ment du point Pj (Lorsque la configuration singulière est double, triple .., il s’agit d’un
système de torseurs réciproques de dimension 1,2,3 ....).
Avant d’aborder plus spécifiquement le problème de la détermination des configurations
stationnaires des mécanismes de préhension, nous allons reprendre quelques éléments
généraux sur ce sujet.

8.0.1 Configurations stationnaires d’un mécanisme série


Les mécanismes séries se trouvant dans une configuration stationnaire voient leur mo-
bilité diminuer. Ceci se traduit par le fait que, la matrice Jacobienne J, regroupant en
colonne les coordonnées Pluckériennes des torseurs, a un rang RG(J) < m (m : mobilité
générale). Lorsque m = 6 par exemple, J s’écrit:
 
l1 l2 l3 l4 l5 l6
 m1 m2 m3 m4 m5 m6 


 n1 n2 n3 n4 n5 n6 
 
J =
 p∗

 1 p∗2 p∗3 p∗4 p∗5 p∗6 

 ∗
 q1 q2∗ q3∗ q4∗ q5∗ q6∗ 

r1∗ r2∗ r3∗ r4∗ r5∗ r6∗

Hors configuration singulière, à chaque système de 5 torseurs, pris parmi les 6 précédants,
correspond un torseur réciproque différent. Ce système de torseurs réciproques se détermine
directement en exploitant la relation (b) et par permutation circulaire sur les 6 torseurs.

87
Figure 33: Manipulateur Puma representé dans un configuration singulière, les liaisons
4 et 6 sont co-axiales

En notant (l0 , m0 , n0 , p0∗ , q 0∗ , r0∗ ) leurs coordonnées, on peut former la matrice Jc suivante:
 0∗
p0∗ p0∗ p0∗ p0∗ p0∗

p1 2 3 4 5 6
 0∗
 q1 q20∗ q30∗ q40∗ q50∗ q60∗ 

 0∗
 r1 r20∗ r30∗ r40∗ r50∗ 0∗ 
r6 
Jc = 
 l0

 1 l20 l30 l40 l50 l60 
 0
 m1 m02 m03 m04 m05 m06 

n01 n02 n03 n04 n05 n06

On remarquera que cette matrice n’est autre que la matrice des cofacteurs de la matrice
J (de chaque élément de det(J)), la ième colonne de Jc regroupant les coordonnées
permutée du torseur réciproque à tous les torseurs de J excepté, $i .
Dès lors ou les 5 torseurs considérés pour déterminer $Ri sont linéairement indépendants,
$Ri est non-nul. Lorsque les 5 torseurs sont cette fois linéairement dépendants, la colonne
de Jc correspondante represente un torseur nul.
On illustre cela sur l’exemple un manipulateur PUMA pris dans la configuration
représentée sur la figure 35. Dans cette configuration, les torseurs cinématiques des
liaisons exprimés 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),
5
les torseurs sont pris non-unitaires pour faciliter les calculs.

88
$6 = (2, 0, −1, 0, 0, 0) La matrice Jacobienne qui leur correspond est:
 
0 0 0 2 1 2
0 1 1 0 0 0 


1 0 0 −1 2 −1
 

J =
 
1 0 −1 0 0 0  
4 0 0 0 0 0 
 

0 −4 2 0 0 0

La matrice des cofacteurs Jc obtenue est:


 
0 0 0 0 0 0
0

0 0 −80 0 80 

0 0 0 0 0 0 
 
Jc =  
0
 0 0 −40 0 40 

0 0 0 −10 0 10 
 

0 0 0 −20 0 20

Les colonnes non-nulles de Jc correspondent aux combinaisons de torseurs dans J linéairement


indépendants dans la configuration. On observe que lorsque $4 ou $6 ne rentrent pas dans
cette combinaison, les 5 autres torseurs sont indépendants. Par conséquent, seules les
combinaisons entre $4 ou $6 provoquent la singularité.
L’autre information importante restituée par Jc est que seuls les torseurs correspondants
aux liaisons comprises entre les torseurs linéairement dépendants peuvent en modifier
leur configuration instantanée relative. Pour sortir de la singularité dans laquelle se
trouve le PUMA, la position de l’axe 5 doit être modifiée.
Le torseur réciproque au système de 6 torseurs est donc de coordonnées:

$R = ρ(4, −1, 2, 0, −8, 0)

Le pas de ce torseur est :


lp∗ + mq ∗ + nr∗
λ= = −8/21,
l2 + m2 + n2
et son axe central est porté par la droite de coordonnées homogènes:

ρ(4, −1, 2, 0, −8 + λ, 0)

8.0.2 Détermination du domaine accessible en position


Les frontières de l’espace physique délimitant le volume de travail sont déterminées par
les positions extrêmes que peut prendre le mécanisme. La distance Euclidienne entre
l’axe de la première liaison et le point caractéristique P est à un extrémum si la droite
issue de P et normale à s1 est concourante avec chacun des axes géométriques des liaisons
(rotoı̈des).

89
On remarque directement que les configurations correspondant aux conditions du
théorème précédent sont indifférentes de la valeur prise par θ1 . Elles seront donc vérifiées
pour tous les points situés sur le cercle de rayon A1 P . Par ailleurs, en suivant ce théorème,
on notera qu’il existe, pour un mécanisme de géométrie donnée, articulé par des liaisons
rotoı̈des, plusieurs configurations pouvant être qualifiées de configurations d’extension
extrême. Si le point P est situé sur la droite L passant par A1 et A2 et si P est dans un
plan perpendiculaire à s1 , alors une rotation d’angle Π autour de s1 placera à nouveau
A2 P colinéaire à A1 A2 (cf figure ??). Pour chaque axe on aura donc 2 solutions et
par extension pour un manipulateur n axes 2n−1 solutions. Dans une configuration
stationnaire, les torseurs décrivant le mouvement relatif des corps sont reciproques à un
ou un système de torseurs. Placé dans ces conditions géométriques, le corps terminal de
la chaı̂ne cinématique pert un (ou plusieurs) degrés de liberté. Le mouvement instantané
parallèle à l’axe du torseur réciproque devient impossible, incompatible avec la liaison
complexe SP /S0 . Tout torseur $R satsifait donc à la condition de réciprocité le torseur
associé à l’axe 0 i0 , est traduite géométriquement par:
ri sinαi + (λR − λi )cosαi = 0
où ri , αi , λR et λi désignant respectivement la distance normale à l’axe du torseur du point
P , l’angle entre les deux axes centraux des torseurs et le pas des torseurs cinématiques
et réciproques.
Le glisseur réciproque, dont l’axe passe par P , réprésente une force pure dont le sup-
port est l’axe du glisseur. Cette force ne fera travailler aucune des liaisons rotoı̈des dans
cette configuration. On peut donc s’aider de cette interprétation dans la recherche des
frontières du domaine de travail. Le déplacement du point P nést plus permis dans la
direction de l’axe du torseur réciproque au système de torseurs cinématiques. Le manip-
ulateur se trouve en équilibre statique sous l’action de la force représentée par $R . On
notera que ces configurations singulières sont à différencier de celles illustrer sur la figure
(X), ou là nous avons également à faire à un torseur réciproque qui est un glisseur mais
d’axe ~y . Pour discriminer, parmi les configurations stationnaires, celles corespondant à la
frontière du domaine, on peut utiliser un algorithme permettant dans un premier temps
de trouver toutes configurations conforment au théorème enoncé avant, puis de vérifier
celles qui réalisent un équilibre statique stable sous l’action d’une force pure appliquée
en P .
Dans l’hypothèse d’un système conservatif, et en considérant que les actions extérieures
développées aux articulations dérivent d’un potentiel, la position d’équilibre est stable si
la matrice de rigidité (autour de la valeur θ0 d’équilibre) est définie positive et instable
si l’une au moins de ses valeurs propres est strictement négative.

Les frontières du domaine de variation des configurations du point P dans l’espace


physique sont les lieux des points P satisfaisant aux conditions énoncées au-dessus.
Comme nous l’avons déjà fait remarquer, $R est indépendant de la valeur prise par la
variable cinématique de la première liaison rotoı̈de. Par conséquent, les lieux des points
P vérifiant (1) sont des cercles de rayon A1 P . L’un d’eux vérifie par ailleurs la stabilité
de l’équilibre.

90
8.0.3 Extension au mécanismes parallèles
Si l’on étend cette technique à un système mécanique constitué de N chaı̂nes séries
disposées en parallèle, on peut dire que un point P du corps SP se trouvera sur la
frontière de l’espace si le système de N chaı̂nes est dans un état d’équilibre statique
stable. Autrement dit, s’il exite un glisseur, dont l’axe passe par P , qui est réciproque
au système S de torseurs décrivant le mouvement de SP par rapport à SO .
Ce glisseur est un représentant du système SR obtenu par l’union de tous les systèmes de
(i)
glisseurs réciproques SR aux systèmes de torseurs S (i) décrivant les mouvements relatifs
des corps de la chaı̂ne 0 i0 .
$R = $1R ∪ $2R ∪ .... ∪ $nR
Les frontières du domaine de variation des configurations du point P dans l’espace
physique sont les lieux des points P satisfaisant aux conditions énoncées au-dessus. A
noter que cette condition est une condition nécessaire mais non suffisante. Elle ne con-
sidère en effet que la superposition les contraintes élémentaires introduites pour chaque
chaı̂ne du mécanisme. Quand 2 des chaı̂nes se trouvent en extension maximale, elles
produisent des contraintes simultanément sur le mouvement de SP . SP peut être alors
vu comme le corps de couplage d’un mécanisme en chaı̂ne fermée. Le point P de SP
est astreint à une trajectoire, appelée courbe de couplage qui vérifie les équations de
contrainte suivantes:

φ(Pi , Pj , Cij ) = (XPi − XPj )2 + (YPı − YPj )2 + (ZPı − ZPj )2 − Cij = 0

9 Techniques d’optimisation

91