Uploaded by Fabrice Dobgima

multicorps cours 2012

advertisement
Théorie et pratique des Logiciels
de simulation des mécanismes
"Systèmes multicorps"
Jean-Luc DION
01 49 45 29 12
Jean-luc.dion@supmeca.fr
2012
SUPMECA - 3, rue Fernand Hainaut 93407 SAIN OUEN Cedex
http://www.supmeca.fr/
Merci au professeur Fayet
pour m'avoir autorisé à reprendre de larges extraits de son cours et pour ses précieux conseils
1
Sommaire
1 – Introduction
3
2 – Forme générale des équations de mouvement
2.1 - Les équations de liaison
2.2 - Système algébro-différentiel
2.3 - Aperçu sur la résolution
5
5
6
7
3 – Géométrie & cinématique
3.1 - La topologie
3.2 – Coordonnées cartésiennes et angles d’Euler
3.3 – Quaternions
3.4 - La géométrie de Denavit – Hartenberg (D-H)
3.5 - La formulation cinématique récurrente
9
9
11
15
25
35
4 – Equations de liaison
4.1 – Démarche générale
4.2 – Mise en œuvre
44
44
48
5 – Equations et cordonnées généralisées indépendantes–Actions de liaison
5.1 Démarche générale
5.2 Degré de liberté, liberté composée et mobilité
5.3 Torseur statiquement admissible et mouvements incompatibles
5.4 Détermination des actions de liaison
59
59
60
83
84
6 – Equation de la dynamique
85
7 – Résolution des équations
7.1 – Mise en forme du système algébro-différentiel
7.2 – Résolution numérique du système algébro-différentiel
86
86
98
8 – Conclusion
99
2
1 - Introduction
1.1 avant-propos
L'étude des mécanismes réels reste souvent délicate lors de leur modélisation. Les
équations résultantes qui permettent d'accéder à la connaissance des mouvements et
des efforts sont souvent complexes et non linéaires dans le cas de systèmes industriels
et même pour des systèmes aussi simples qu'un pendule.
La résolution analytique de ces équations est dans la plupart des cas impossible, la
solution ne peut alors être déterminée que par des méthodes numériques.
Depuis les années 70, des logiciels dédiés à la résolution des problèmes propres à la
mécanique se sont développés. Si la démarche de ces logiciels multicorps reste
entièrement orientée vers la mécanique, leurs domaines d'applications sont divers et
nombreux : par exemple ; ils sont utilisé en bio-mécanique pour l'étude du corps humain
qui est traité comme un mécanisme formé de nombreux solides et d'actionneurs
(muscles). Ils servent également de simulateur pour des processus dont on ne peut
aisément reproduire les conditions réelles d'utilisation, comme le déploiement d'une
antenne à bord d'un satellite. Le plus souvent, ils sont intégrés dans les différentes
phases de conception d'un produit industriel.
1.2 problématique
Les logiciels auxquels nous nous référons concernent donc des ensembles de solides
rigides connectés par différentes liaisons (contacts entre surfaces), comportant certains
éléments déformables simples comme des ressorts ou des amortisseurs ou complexe
comme des poutres flexibles ou, moins classiquement, des bases modales
préalablement définies dans des logiciels de type Eléments Finis.
Ces logiciels apporte une aide à la compréhension des mécanismes et réduisent
sensiblement le nombre de prototypes et études expérimentales avant l'industrialisation
ou la réalisation finale du produit. De par leur approche sous forme de modèles, ces
logiciels ne sauraient supprimer la phase ultime du prototype et des mesures qui
resteront toujours indispensables pour s'assurer du bon recalage des modèles utilisés à
des fins prédictives. Les logiciels de simulation n'apportent qu'un résultat issu d'une part
des modèles simplifiés de la réalité et d'autre part de l'identification numérique plus ou
moins pertinente de ces modèles par l'utilisateur.
Les produits les plus récents permettent d'obtenir les équations sous leur forme littérale,
de les linéariser autour d'un point de fonctionnement et de précéder à une analyse de
3
sensibilité, c'est à dire étudier l'influence des paramètres géométriques ou inertiels sur
les performances.
La forme littérale du modèle obtenu avant la mise en œuvre de méthodes numériques
apparaît d'ailleurs comme le moyen le plus efficace pour réduire les temps de calcul.
Prenons simplement le problème de la transformation de l'expression d'un vecteur entre
deux bases liées à deux solides. Si l'on considère dans ce but la matrice de passage le
plus générale, utilisant par exemple trois angle d'Euler, elle sera évidemment bien plus
complexe que la matrice dont on a effectivement besoin si par exemple les deux bases
ont un vecteur commun.
D'une manière générale l'établissement du modèle dynamique sous forme littérale
permet d'éviter tout calcul qui d'avance doit conduire à un résultat nul non utile à la suite.
Notons que la robotique a joué un rôle important dans l'amélioration des logiciels
multicorps. Ce domaine en effet nécessite des temps de calcul en temps réel pour la
commande et donc des algorithmes les plus compacts.
Les principes les plus efficaces seront ceux capables en quelques sortes, de fabriquer
automatiquement un programme particulier pour chaque mécanisme avant le traitement
numérique. Il semble à priori supérieurs à ceux qui utilisent une seule et même suite
d'opérations pour les cas envisagés.
Il existe deux grandes classes de logiciels : ceux les plus anciens qui utilisent le
paramétrage de la position de chaque solide par rapport au repère galiléen (paramétrage
absolu) et ceux, plus récents, qui définissent la position de chaque solide par rapport à
son antécédent (paramétrage relatif). La première catégorie est une application
informatique de la mécanique générale telle qu'elle est actuellement enseignée à
SUPMECA. Ce cours se propose de développer plus particulièrement les méthodes
employées dans la deuxième classe de logiciels.
4
2 – Forme générale des équations du mouvement
2.1 Les équations de liaison
Les équations de liaison dans un mécanisme dépendent du paramétrage retenu. Deux
classes de paramétrage existent dans les logiciels de simulation mécanique :
- Le paramétrage absolu qui défini la position de chaque solide au moyen de 6
coordonnées au moins. Toute liaison entre solide engendre donc des équations de
liaison.
- Le paramétrage relatif ou la position de chaque solide est définie par rapport à un
solide voisin. Seule les boucles du mécanisme engendrent des équations de liaison.
Dans tous les cas les équations de liaison sont de deux types :
(
)
Algébrique :
C q ,..., q , t
1 1
n
.
.
.
C q ,..., q , t
(
L 1
n
=0
(1)
)
=0
Elles portent exclusivement sur les paramètres de position q1,…qn et le temps t.
Différentiel :
c qɺ + ... + c qɺ
11 1
1n n
.
.
.
ɺ
c q + ... + c qɺ
L1 1
Ln n
(
= d q ,..., q , t
1 1
n
)
(2)
(
d q ,..., q , t
L 1
n
)
Certaines des équations (2) peuvent être obtenues directement ( cas du non glissement),
d'autres sont obtenues par dérivation des équations de (1). A l'inverse, les équations
différentielles peuvent être intégrées pour avoir une forme algébrique.
Lorsqu'il n'existe pas de forme intégrée, ces équations sont dites non-holonomes.
Lorsque les équations de liaison sont de type algébrique (non différentiel) est sont
holonomes.
Si le temps figure explicitement dans une équation holonome elle est aussi rhéonome
sinon elle est skléronome.
Les équations non holonome possèdent une forme matricielle du type :
[C].[qɺ ] = [d( [q ] , t )]
(3)
5
2.2 Système algébro-différentiel des équations du mouvement
Les équations de Lagrange s'écrivent :
L
g
d ∂T − ∂T = Q + c λ
di ∑ ij j
dt ∂qɺ
∂q
j=1
i
(4)
i
avec …
t
Tg
qi
Qdi
: temps
: énergie cinétique
: ième degré de liberté
: force généralisé donnée associée à qi telle que :
→
∂
OM
Q = ∫ f (M).
dv
di
d
∂q
S
f (M)
d
λj
i
: densité volumique de force donnée (ex : pesanteur, fem …)
: multiplicateur de Lagrange relatif à la jème équation de liaison de (2)
: coefficient de qɺ dans la jème équation de liaison de (2)
cji
Or
(5)
i
Tg
n
s'exprime toujours T = 1 ∑ a qɺ qɺ
2 i, j=1 ij i j
g
(6)
Les équations de Lagrange (4) s'exprime donc :
∑ aijɺqɺ j = Qdi + B(qi, qɺ i, t )+ ∑ cijλ j
n
j=1
n
(7)
j=1
Notons que cette formulation des équations de Lagrange est ramenée ici au Principe
Fondamental de la Dynamique.
La fonction vectorielle B regroupe classiquement les actions extérieures au système dont
l'expression non holonome peut être non linéaire.
Ces n équations portent sur n degrés cinématique qi et sur L liaisons λj.
En ajoutant les L équations de liaison (supposées pour l'instant indépendantes), le
problème a théoriquement une solution.
6
2.3 Aperçu sur la résolution
Nous verrons par la suite que l'intégration numérique nécessite de résoudre d'abord en
[ɺqɺ] et [λ ] le système constitué de (3) et (7). Mais (3) ne fait pas
apparaître [ɺqɺ] et [λ ], nous allons donc dériver (3) par rapport au temps :
ɺ )
[C ] qɺɺ = D ( q,q,t
(8)
Les équations matricielles (7) et (8) possèdent alors la notation tensorielle suivante :
A
 C
CT 
0 
 ɺqɺ 
 − λ 
 Q +B 
= d
 D(q, qɺ , t )
(9)
avec n degrés de liberté cinématique et L liaisons le système est défini par :
A[n,n] ; C[L,n] ; q[n,1] ; λ[L,1] ; Qd[n,1] ; B[n,1] ; D[L,1].
Comme nous le verrons avec plus de rigueur par la suite cette forme différentielle du
second ordre avec n+L équations répond à la problématique classique de la mécanique,
elle est particulièrement adaptée aux méthodes de résolution pas à pas, même s'il reste
à dédoubler en 2n+L le système pour ramener le système différentiel à un ordre 1 requis
pour la résolution numérique. Réduit à l'ordre 1 le système différentiel s'exprime :
I
0
0
0
A
C
0
T
C 
0

 qɺ 
 xɺ 
 − λ 
 x 
= Qd + B
 D 


(10)
Nous aborderons plus tard sa résolution …
7
Exemple : le pendule
Le pendule est composé d'une masse M ponctuelle au bout d'un bras de levier sans
masse de longueur L.
O
x
Xo
L
α
M
z
Zo
Z1
Question : Ecrire les équations de la dynamique du système sous la forme proposée en
(9) :  A
 C
CT 
0 
 ɺqɺ 
 − λ 
 Q +B 
= d
.
 D(q, qɺ , t )
Identifier les différents éléments.
[
Solution :
A= M
0
C = [2x
0
M
2z]
]
−λ =
[ ]
[]
0
Qd = mg
T
2L
D = −2 ( xɺ 2 + zɺ 2 )
ɺqɺ = ɺɺxzɺɺ
[]
B = 00
8
3 – Géométrie & cinématique
3.1 La topologie
On peut classer les mécanismes en 3 catégories :
- les mécanismes en chaîne simple dont le robots-série constituent un exemple
classique,
- les mécanisme en chaîne ouverte complexe, ou arborescente comme le corps
humain ou un satellite artificiel,
- les mécanismes en chaîne fermée complexe, telle qu'une suspension
d'automobile ou un système bielle-manivelle.
Remarque :
Pour une chaîne ouverte simple ou complexe, le nombre de liaisons est égal au nombre
de solides. La numérotation du système est réalisé comme suit :
- l'indice 0 est affecté au bâti (So),
- les indices affectés aux solides croissent de 1 à N (N=nombre de solides) en
allant de la base vers un corps terminal ; la numérotation est alors dite régulière,
- la liaison Li entre le solide Si et son prédécesseur porte l'indice i.
La topologie du système est alors entièrement définie par le vecteur a des antécédents
tels que : ai = j si le solide Sj est le solide antécédent du solide Si.
De la même façon la matrice D des successeurs directes est telles que :
Dij=1 si Sj est un successeur directe de Si. Dij=0 sinon.
La matrice P des successeur absolu (Path Matrix) est définie par :
Pij=1 si Sj est un successeur absolu de Si (rattaché directement ou indirectement)
9
Exercice : trouver a, D et P du système suivant :
S5
L5
S4
L4
S2
L2
L3
S3
S1
L1
S0
10
3.2 Paramétrage absolu : les angles d’Euler
3.2.1 Définitions
Le paramétrage absolu fixe à tout instant la position de chaque solide par rapport à un
repère de référence. Au moins 6 coordonnées sont alors nécessaires : xi,yi,zi pour les
coordonnées cartésiennes d’un point Oi du solide Si et 3 angles d’Euler Ψi, θi et Φi qui
fixent l’orientation du solide Si.
Les coordonnées généralisées sont regroupée dans les variables dynamiques qi avec :
q=(x1,y1,z1,Ψ1,θ1,Φ1,… ,xn,yn,zn,Ψn,θn,Φn)
Cette représentation est celle retenue dans le logiciel ADAMS.
Malgré un grand nombre de variables cette représentation reste toutefois insuffisante car
les angles d’Euler possèdent des singularités et la résolution du problème inverse est
parfois impossible et possède plusieurs infinités de solutions. Ce point est développé par
la suite dans ce chapitre.
Afin d’éviter les singularités propres à la représentation avec les angles d’Euler, une
solution (celle retenu par ADAMS) consiste à décrire les orientations des solides par
deux représentations à priori redondantes : les angles d’Euler de type 1 et les angles
d’Euler de type 2. Le choix final entre ces deux solutions est guidés par la proximité des
orientations avec les singularités.
Angles d’Euler de Type I : rotation ZXZ (313)
Angles d’Euler de Type II : rotation ZYX (321)
Z0= ZI’
ZI ‘’=Zi
Z0= ZII’
ΨI
ΨI
φI
Yi
φI
Zi
YI‘’
Yi
ZII’’
θII XII’’
θII
=
θI
θI
φII φII Xi
YI’
ΨI
ΨI
X0
XI’= XI’'
YII’= YII’’
ΨI
Y0
φI
θI
φII
Y0
θII
Xi
ΨI
X0
XII’
Pour de ces deux types, les angles d’Euler représentent les amplitudes de rotation
autour des axes successivement perpendiculaires à Z0,XI’,ZI’’ pour le premier type et
Z0,YII’,XII’’ pour le second.
11
Les matrices de passage associées écrites avec la convention sα=sin(α) et cα=cos(α),
qui sera assez systématiquement utilise pour rendre les expressions plus courtes, sont
respectivement :
 cθ I cψ I − sφ I cθ I sψ I

R0i =  sψ I cφ I + cψ I cθ I sφ I

sθ I sφ I

 cψ II cθ II

R0i =  sψ II cθ II
 − sθ
II

− cψ I sφ I − sψ I cθ I cφ I
− sφ I sψ I + cψ I cθ I cφ I
sθ I cφ I
cψ II sθ II sφ II − sψ II cφ II
sψ II sθ II sφ II + cψ II cφ II
cθ II sφ II
sθ I sψ I 

− sθ I cψ I 
cθ I 
cψ II sθ II cφ II + sψ II sφ II 

sψ II sθ II cφ II − cψ II sφ II 

cθ II cφ II

Remarque :
La matrice Roi peut être vue comme :
- la matrice de passage de i vers 0 : les coordonnées d’un point M exprimée dans
i s’exprime dans 0 par : Oi M i ( 0) = [R0i ].Oi M i (1)
- ou la matrice de rotation de 0 vers i : le point Mi est l’image du point Mo par
rotation O0 M 0 ( 0) = Oi M i (1) alors : Oi M i ( 0) = [R0i ].O0 M 0 ( 0)
Attention : Cette double utilisation possible des matrices Roi est souvent à l’origine
d’erreurs d’interprétation et de calcul (signe des rotations et ordre des opérations
matricielles dans le cas de rotation multiples).
12
3.2.2 Linéarisation des angles d’Euler de type II
Si les angles de rotation sont petits la matrice de rotation devient :
 1

R0i ≈  ψ II
−θ
 II
− ψ II
1
θ II 

− φ II 
1 
φII
la rotation est alors décrite par :
Oi M i ( 0)
 1

≈  ψ II
−θ
 II
− ψ II
1
φ II
θ II 

− φ II .O0 M 0 ( 0)
1 
ou encore :
 φ II 


Oi M i (0) − O0 M 0 (0) = ∆O0 M 0 (0) = ϕ ∧ O0 M 0 (0) avec ϕ =  θ II 
ψ 
 II  0
En dynamique du véhicule (ferroviaire, automobile, naval, aéronautique et spatial) ces
angles sont associés au lacet (ΦII), au tangage (ΘII) et au roulis (ΨII). La direction
d’évolution naturelle du véhicule (vecteur vitesse) défini l’axe portant le roulis. Le lacet
est portée par l’axe de la gravité.
13
3.2.3 Problème inverse
Pour une orientation de Si donnée nous obtenons la matrice Roi dont les composantes
sont rkl. Nous obtenons alors les angles d’Euler de type I et II en fonction des
composantes rkl.
 r11

R0i =  r21
r
 31
r12
r22
r32
r13 

r23 
r33 
Pour les angles d’Euler de Type I …
θ I = ± Arc cos(r33 ) + 2kπ

 r32 
 + 2kπ
 φ I = Signe(r31 sθ I ). Arc cos

 sθ I 
Si θ I ≠ 0 + kπ alors 
ψ = Signe(r sθ ). Arc cos − r23  + 2kπ
13
I
 sθ 
 I
 I 
Pour les angles d’Euler de Type II …
θ II = Arc sin(−r31 ) + 2kπ
ou
θ II′ = π − θ II + 2kπ

 r33 

 + 2kπ
φ
θ
=
Signe
(
r
c
).
Arc
cos
 II
32
II
c
θ
π

 II 
Si θ II ≠ ± + kπ alors 
2
ψ = Signe(r cθ ). Arc cos − r11  + 2kπ
21
II
 cθ 
 II
 II 
Dans les deux cas il y a une double infinité de solutions
Dans les logiciels de simulation une seule solution est gardée : le choix est fait
arbitrairement à l’origine puis par continuité d’un pas de calcul à l’autre.
De plus lorsque θ I ≠ 0 + kπ ou θ II ≠ ±
π
2
+ kπ il y a indétermination sur Ψ et Φ
dont on ne peut connaître que la somme ou la différence. A l’approche de ces valeurs
particulières de θ I et θ II , une imprécision de plus en plus grande se manifeste sur les
deux autres angles Ψ et Φ.
Les singularités n’intervenants pas dans les mêmes conditions pour les angles d’Euler
de type I et II, la méthode retenue consiste alors à basculer le calcul dans la
représentation d’Euler la plus éloignée de sa singularité.
14
3.3 Paramétrage absolu : les quaternions
3.3.1 Définitions et propriétés des quaternions
Un quaternion est composé d’une partie
scalaire et d’une partie vectorielle rapportée à
une base orthonormée directe (i , j , k )
Q = s + V = s + pi + qj + rk
Les quatre composantes s, p, q et r forment le quaternion.
Le quaternion peut être vu comme la généralisation des nombres complexes. Pour les
nombres complexes, la combinaison des parties réelle et imaginaire permet de décrire
des rotations du plan. Les quaternions permettent de décrire les rotations de l’espace.
Multiplication externe :
αQ = α s + V = αs + α V
(
)
Addition :
Q1 + Q2 = s1 + V1 + s 2 + V2 = s1 + s 2 + V1 + V2
(
Multiplication :
) (
)
Q1 Q2 = s1 + V1 s2 + V2 = s1.s2 − V1.V2 + s1.V2 + s2 .V1 + V1 ∧ V2
(
)(
)
Le produit n’est pas commutatif : Q1 Q2 ≠ Q2 Q1
Associativité :
Q1 ( Q2 Q3 ) = ( Q1 Q2 ) Q3
Distributivité par rapport à l’addition :
Q1 ( Q2 + Q3 ) = Q1 Q2 + Q1 Q3
Conjugué :
Q = s +V ⇒ Q = s −V
2
Q Q = Q Q = s2 + V = s2 + p2 + q2 + r 2
Norme :
Q = Q Q = Q Q = s2 + p2 + q2 + r 2
Inverse :
Q −1 =
Si
Q
Q
2
Q Q −1 = 1
Q =1
Alors
Q −1 = Q
15
3.3.2 Rotations & quaternions
3.3.2.1 Vecteur orthogonal à l’axe de rotation
Soit R = Rot ( n , θ ) la rotation autour d’un axe de vecteur directeur unitaire n et
u
d’angle θ et soit 1 un vecteur unitaire orthogonal à n dont l’image par rotation R
est le vecteur u2 .
Cherchons Q1 tel que : u2 = Q1 ⊙ u1
u1 et u2 sont ici des quaternions purement vectoriels (ternions) et unitaires : leurs
inverses sont égaux à leurs opposés :
−1
−1
u2 = −u2 , u1 = −u1
D’où :
−1
Q1 = u2 u1 = −u2 u1 = u2 .u1 − u2 ∧ u1 = cos (θ ) + sin (θ ) .n
 cos (θ ) 


Avec u2 =  sin (θ ) 
 0  
u1 ,v1 ,n
De même :
u2 = u1 Q2 avec Q2 = −u1 u2 = cos (θ ) − sin (θ ) .n = Q1
Q1 u1 Q1 est donc l’image de u1 par une rotation autour de n d’un angle 2θ ou
encore :
θ 
θ  u2 = Q u1 Q avec : Q = cos   + sin   n
2
2
Remarque : n ≠ Q1 n = ( cos (θ ) + sin (θ ) n ) ⊙ n = − sin (θ ) + cos (θ ) n
C’est à dire que Q1 n n’est pas l’image de n par R.
Mais nous avons toutefois :

θ 
θ   
θ 
θ   Q n Q = ( Q n ) Q =  − sin   + cos   n   cos   − sin   n  = n
2
2  
2
2 

Par cette opération n reste donc bien inchangé (rotation double de θ/2).
16
3.3.2.2 Cas général
V
=
λ
.
u
+
µ
.
n
nous obtenons son image :
Pour un vecteur quelconque 1
1
V2 = Q V1 Q = Q λ.u1 + µ.n Q = Q λ.u1 Q + Q µ.n Q = λ.u2 + µ.n
(
)
θ 
θ  Q = cos   + sin   n = s + p.i + q. j + r.k
2
2
Avec
Si on pose
θ 
θ  s = cos   et p.i + q. j + r.k = sin   n
2
2
Alors Q permet, au travers de la relation V2 = Q V1 Q , de rendre compte de
toute rotation ou tout déplacement à point fixe ou encore tout changement
d’orientation.
Les 4 composantes de Q (s,p,q,r) permettent donc de décrire cette rotation. Ce
2
2
2
2
sont les paramètres d’Euler qui vérifie la relation s + p + q + r = 1 .
Il convient de préciser que tous les vecteurs doivent être exprimés dans la même
base orthonormée directe.
On a donc par exemple :
(V ) = (Q ) (V ) (Q )
2 1
1
1 1
1
()
θ
θ
Avec : (Q )1 = cos  + sin   n 1
2
2
L’analogie entre matrice de rotation et matrice de changement de base développée
précédemment permet d’écrire :
Nous obtenons alors : V2 1 = (Q )1 V2 2 (Q )1
Q apparaît donc comme un opérateur servant aussi bien pour les rotations que les
changements de base et peut se représenter par la matrice R12 qui traduit aussi
bien les rotations de 1 vers 2 que le changement de base de 2 vers 1.
( )
( )
Notons que :
- (Q )1 = (Q )2 puisque le vecteur directeur n de l’axe de rotation est invariant.
- Q21 = Q12 Avec Q12 le quaternion associé à la rotation qui fait passer d’une
position 1 à une position 2. (Q12 est associé à R12)
17
3.3.2.3 Composition des rotations
Soit
une
deuxième
θ'
θ'
Q ' = cos  + sin  n
2
2
rotation
( )
R' = Rot n', θ '
dont
le
quaternion
est :
L’image par R"= R' R de V1 est V2 = Q'Q V1 Q Q'
Sachant que Q'Q = Q Q' le quaternion associé à la rotation R"= R' R est
Q"= Q 'Q
C’est l’intérêt majeur des quaternions : la loi de composition est plus économe en
opération que celle des matrices de passage. Le deuxième intérêt des quaternions
est qu’ils ne présentent pas de singularité par rapport aux représentations avec les
angles d’Euler.
18
Exercice :
3
1
x0,1
α
2
x*0,2
y2,3
z1,3
z0
y*0
y0
z2
z*0
x*0
y02
α
ψ2
y*0
x0
x2
x3
z3
θ2
z2
z0
y3
y1
z1
x3
y1
θ1
x1
ψ1
y0
A un instant donné de la simulation du joint de cardan, les coordonnées absolues des
solides 1 et 3 (par rapport au référentiel galiléen 0) sont données par :
S1 : s1=0,9239
p1=0,3827
q1=0
r1=0
S3 : s3=0.9066
p3=0,3755
q3=-0.0737 r3=0,1914
Trouver les paramètres relatifs ψ1 entre S0 et S1
et θ1 entre S1 et S3.
(ψ1=45° et θ1=22°)
19
3.3.3 Matrice de rotation & paramètres d’Euler
Dans les matrices de rotation chaque colonne représente les composantes des
vecteurs de la nouvelle base dans l’ancienne, ce qui rend leur lecture immédiate
contrairement aux paramètres et aux angles d’Euler.
Nous avons vu précédemment que V2 = Q V1 Q
Avec :
θ 
 θ  Q = cos   + sin   n = s + V
2
2
( )(
)
= (V .V )V + s V + 2 sV ∧ V + V ∧ (V ∧ V )
V2 = s + V V .V1 + s.V1 − V1 ∧ V
V2
2
1
1
Or : s = 1 − V
2
Donc :
( )
1
1
2
( )
= V + V ∧ (V ∧ V )
2
s 2V1 + V .V1 V = V1 − V V1 + V .V1 V
 
1
Car… A ∧ B ∧ C
(
)
1
( A.C ) B−( A.B )C
=
et
(
V2 = V1 + 2sV ∧ V1 + 2V ∧ V ∧ V1
)
C’est la formule de Rodrigues pour les rotations qui peut aussi s’écrire sous forme
matricielle :
V2 =  I 3 + 2 sVˆ + 2Vˆ .Vˆ  Vˆ1
Avec I3 la matrice identité d’ordre 3 et
 0 −r q 
Vˆ =  r
0 − p 
− q p
0  … La matrice antisymétrique associée au vecteur V.
La matrice de rotation s’exprime donc
[I
3
+ 2sVˆ + 2Vˆ .Vˆ
Soit …
(
]
1 − 2 q 2 + r 2

R =  2 pq + 2 sr
 2 pr − 2 sq

)
2 pq − 2 sr
(
1− 2 r + p
2qr + 2 sp
2
2
)
2 pr + 2 sq   r11

2qr − 2 sp  = r21
1 − 2 p 2 + q 2  r31
(
)
r12
r22
r32
r13 
r23 
r33 
20
Par identification avec la matrice de rotation nous pouvons déterminer les 4
paramètres du quaternion correspondant à la rotation R :
1
r11 + r22 + r33 + 1
2
1
p = signe(r32 − r23 ) r11 − r22 − r33 + 1
2
1
q = signe(r13 − r31 ) r22 − r11 − r33 + 1
2
1
r = signe(r21 − r12 ) r33 − r22 − r11 + 1
2
s=
Le choix arbitraire de s positif ne nuit pas à la généralité de la description puisque :
θ 
s = cos  ∈ [0,1] ,
2
θ peut donc prendre toute valeur.
On peut donc constater qu’aucune singularité de description n’apparaît ici
(contrairement aux représentations avec les angles d’Euler). C’est à dire qu’à une
orientation d’un repère par rapport à un autre correspond un quadruplet (s,p,q,r) et
un seul.
Exercice :
Soit R une matrice de rotation dont l’expression par rapport à une base d’origine
orthonormée directe est :
0 0 1 
R = 1 0 0 
0 1 0 
Trouver les paramètres d’Euler p,q,r,s et définir son amplitude et son axe.
Représenter graphiquement le résultat.
21
3.3.4 Cinématique au premier ordre
La cinématique au premier ordre se propose d’exprimer le taux de rotation Ω en
fonction des dérivés des paramètres d’Euler (sɺ pɺ qɺ rɺ ) exprimé sous forme d’un
quaternion.
Nous avions établis précédemment que Vi = Q V0 Q avec Q = s + V le quaternion
associé à la rotation Ro.
En cinématique « classique » (mécanique du solide) on a :
d 0 Vi
= Ω i0 ∧ Vi
dt
Dans le cas d’un paramétrage avec les quaternions Nikravesh & Haug
(concepteurs du logiciels DADS), démontrent que le taux de rotation du solide i par
rapport à 0 (référentiel galiléen)exprimé dans 0 est défini par :
(Ω )
0
i 0
− p s − r
= 2  − q r
s
 − r − q p
 sɺ 
s
q  
 p
pɺ 


− p .
= 2[G ].ϕɺ E Avec ϕ E =  
 qɺ 
q
s   
 
 rɺ 
r 
D’autre par ils établissent que le taux de rotation du solide i par rapport à 0
(référentiel galiléen) exprimé dans i du solide est défini par :
(Ω )
0
i i
− p s
= 2  − q − r
 − r q
 sɺ 
r − q  
pɺ
s
p .  = 2[L ].ϕɺ E
 qɺ 
− p s   
 rɺ 
L’inversion de ces systèmes permet alors d’exprimer les grandeurs caractéristiques
du quaternion dérivé représenté par ϕɺ E en fonction des rotations représentées par
Ωi0 dans le repère 0 :
 sɺ 
− p − q − r 
 pɺ 
 s
 ω x 
−
r
q
1
 = 
.ω y  ⇒ ϕɺ E = 1 [G ]T Ωi0
 qɺ  2  − r
s
p  
2
 

 ω z 
 rɺ 
 q −p s 
( )
0
On constate qu’aucune singularité de description cinématique n’apparaît : quel que
ω x 
soit Ω = ω y  , il est toujours possible de trouver les paramètres d’Euler
ω z 
(sɺ pɺ qɺ rɺ ) ce qui n’est pas le cas lorsque l’on utilise les angles d’Euler.
( )
0
i 0
22
3.3.5 Cinématique au second ordre
Le même type de démarche que celle conduite pour la cinématique du premier
ordre permet d’établir :
− p s − r q 
 d0 0 
 Ωi  = 2[G ].ϕɺɺE Avec G =  − q r
s − p 

dt

0
 − r − q p
s 
ainsi que :
− p s
 d0 0 
 Ωi  = 2[L].ϕɺɺE Avec L =  − q − r

 dt
i
 − r q
− q
s
p 
− p s 
r
23
Exercice :
1 – A partir de la position du dessin, on réalise la rotation instantanée de Ri représentée
1
0  
par le vecteur : Ωi = 1 (remarque : ce vecteur rotation ne peut être décrit par les angles
1 0
d’Euler de type I pour cause de singularité)
Z0,i
Yi
Y0
30°
X0
Xi
Déterminer les dérivées par rapport au temps des paramètres d’Euler décrivant cette
rotation instantanée.
sɺ = −0,1294
pɺ = 0, 6124
qɺ = 0, 3536
rɺ = 0, 483
2 – La nouvelle orientation de Ri est défini par rapport à R0 est définie par p=q=r=1/3,
s=
6
3
La variation instantanée de Ri par rapport à R0dans cette position est décrite par :
pɺ = qɺ = rɺ = 1
Déterminer : sɺ , {Ωi0 }1 , {Ωi0 }0
24
3.4 La géométrie : méthode de DENAVIT – HARTENBERG (D-H)
La méthode DH est une méthode de description de la géométrie des systèmes
mécaniques qui décrit la position et l'orientation de chaque solide qui compose le
mécanisme.
3.4.1 Règle générale pour un mécanisme en chaîne ouverte simple
Toute liaison de type surfacique peut être décomposée par n assemblage en série de
liaisons de type rotoïde (R) ou prismatique (P). Le cas de la liaison hélicoïdale pouvant
être inclus dans ce procédé à condition de considérer les paramètres qui décrivent les
liaisons R et P de même axe comme liés par le pas.
Il suffit donc d'utiliser un indicateur permettant d'identifier la liaison R et P. Il s'agit du
paramétrage booléen εi tel que :
εi = 1, εi = 0 si Li est une liaison rotoïde (R)
εi = 0, εi = 1 si Li est une liaison prismatique (P)
Définition des repères
- Le repère Ri ={Oi,Xi,Yi,Zi} est lié au solide Si.
- Le vecteur unitaire Zi du repère Ri est porté par l'axe de la liaison Li.
- Le point Oi est le pied de la perpendiculaire commune aux axes des liaisons Li et Li+1,
situé sur l'axe de la liaison
Li … voir la figure.
- Le vecteur unitaire Xi du repère Ri est sur cette perpendiculaire commune, orienté
vers Li+1.
Zi+1
Xi+1
Oi+1
Zi
Oi
ri+1
Xi
αi+1
θi+1
di+1
O'i
25
Remarques : R 0 ={O0,X0,Y0,Z0} est fixe par rapport au bâti So, Z0 est choisi selon la verticale
ascendante.
La liberté laissée pour le choix du point Oi ou de l'axe Xi dans certains cas (liaisons
prismatiques, liaisons rotoïdes d'axes parallèles …) peut être mise à profit pour simplifier
le modèle géométrique, en faisant un choix qui conduit au plus grand nombre de
paramètres DH non nuls.
Définition des coordonnées généralisées
La variable de l'articulation de la liaison Li est notée qi conformément à la notation de
Lagrange.
Lorsque εi=1, Li est rotoïde et qi s'identifie à la valeur de l'angle de rotation autour de Zi,
Lorsque εi=0, Li est prismatique et qi s'identifie à la valeur de l'abscisse qui décrit la
translation le long de Zi.
La variable articulaire s'écrit donc : qi =εi(xi−1,xi )+εiOi−1Oi.zi
Les 4 paramètres DH (di, αi, ri, θi) définissent entièrement le repère Ri en fonction du
repère Ri-1.
Le point O'i est le pied de la perpendiculaire commune aux axes de liaisons Li et Li+1,
situé sur l'axe de la liaison Li+1, (O'i est fixe par rapport au solide Si)
Convention générale : Les paramètres qui permettent de définir Si+1 par rapport à Si ont
i+1 comme indice.
Paramètres DH Définition
di+1
Remarques
di+1=OiOi+1.xi
αi+1
ri+1
θi+1
αi+1=angle(zi,zi+1)
sens positif sur xi
ri +1 =OiOi +1.zi +1
θi+1=angle(xi,xi+1)
sens positif sur
zi +1
Distance entre les axes Li et Li+1.
Paramètre de construction et fixe sur Si.
Paramètre de construction et fixe de Si.
ri+1≡qi+1 si Li+1 est prismatique.
Constant si Li+1 est rotoïde
OiOi+1=di+1.xi +ri+1.zi+1
θi+1≡qi+1 si Li+1 est rotoïde.
Constant si Li+1 est prismatique.
26
Exercice :
Définir les paramètres DH du robot manipulateur ACMA-H80 et justifier le choix des
repères :
Z3
Z4
Z0,1,2
O3
X5
X3
X4
O2
X2
O4
Z6
O5,6
Z5
27
Définir repères et les paramètres DH du robot manipulateur AID-V5 :
28
3.4.2 Les chaînes arborescentes
La généralisation aux chaînes arborescentes est immédiate :
Dans le cas ou le corps Si ne porte qu'un seul successeur directe Sj (aj=i), Rj est défini à
partir de Ri comme dans le cas des chaînes ouvertes simples.
Dans le cas ou Si supporte plus d'un successeur direct (par exemple Sj,Sk) il y a
plusieurs perpendiculaires communes entre l'axe de la liaison Li et celui des liaison Lj et
Lk. La démarche consiste donc a construire autant de repères que de successeurs
j
directes. Ces repères sont notés R i pour aj=i.
Définition des repères :
{
Rij= Oij,Xij,Yij,Zij=Zi
}
j
où Xi est le vecteur unitaire de la perpendiculaire commune
des axes de Li et Lj.
k
Le Repère principal Ri est choisi confondu avec le repère Ri associé à la plus longue
chaîne de l'arborescence. Pour ce repère particulier les 4 paramètres classiques de la
méthode DH suffisent à identifier la géométrie du repère k (αk,dk,θk,rk)
Si Ri ≠ Ri la localisation de R i par rapport à Ri nécessite 2 paramètres
supplémentaires :
j
j
Définition
rij
θij
Remarques
j
j
rij=OiOi.zi distance entre les origines de Ri et R i
j
θij= xi,xij
orientation de R i par rapport à Ri
( )
Zi
Oi
Zk
Xi
rij
O ij
θij
Xij
O'i
Zj
O’ij
Ces couples de nouveaux paramètres (2 par branche arborescente j ) sont à reporter en
paramètres complémentaires dans la ligne d’indice i (et non j).
29
Définir les repères et les paramètres DH du satellite Japonais Akebono :
Remarque : Le satellite possède un corps principal qui supporte un pivot central solidaire
d’un plateau inférieur supportant 4 panneaux solaires eux mêmes en liaison pivot avec
le plateau. En position repliées, les antennes se positionnent le long du corps principal.
Le corps principal sera considéré comme le repère galiléen.
30
3.4.3 Les chaînes fermées
Les chaînes fermées sont préalablement traitées en ouvrant les boucles indépendantes
au niveau d'une liaison. Le système ainsi obtenu est nommé SAE : Structure
Arborescente Equivalente.
La SAE est numérotée comme une structure arborescente classique qui possède n
solides et n liaisons. Les liaisons coupées sont numérotées de n+1 à L, L étant le
nombre total de liaisons. L-n est le nombre de boucles indépendantes. Dans une
représentation topologique graphique, L-n défini également le nombre de faces
topologiques finies.
Exemple :
S4
S5
S2
S3
S1
S0
Représentation topologique graphique :
Surface III
Surface I
S0
S4
S2
S1
Surface II
S3
S5
Ce mécanisme présente 3 boucles {S0,S1,S2,S3} ; {S2,S3,S5,S4} ;
{S0,S1,S2,S4,S5,S3}.
Seulement 2 de ces boucles sont indépendantes. La représentation topologique
graphique permet d'identifier 2 faces finies (surface I et II). La troisième boucle est
représentée par la surface III qui est une surface infinie.
Les règles topologiques et géométriques définies dans ce chapitre sont particulièrement
bien adaptées à un processus algorithmique. L'étape suivante consiste à définir (sur ces
mêmes bases) un modèle cinématique au premier ordre (vitesses) et au second ordre
(accélérations).
31
Définir les repères et les paramètres DH de l’ensemble mobile (piston - bielle –
vilebrequin) du compresseur pneumatique ERVOR suivant :
Remarque : le bâtis du compresseur n’est pas représenté.
32
3.4.4 Les matrices de transformation homogène
La figure représente deux repères Ri et Rj et un point P tel que OiP=OiO j+O jP
P
yj
xj
Oj
zj
zi
Oi
yi
xi
Les matrices de passage homogène ont pour but de donner une forme "agréable" à ce
type de relation à l'aide d'un opérateur tensoriel générique et homogène.
La matrice de passage Rij permet d'écrire :
(OiP)i =(OiO j)i +[Rij](O jP)j
( )
( )
( )
(
(
(
)
)
)
soit :
( )
( )
( )
 OiP x(i)   OiO j x(i) 
 O jP x(j) 

 
 


 OiP y(i) = OiO j y(i)  +  R ij   O jP y(j) 
 OiP   OiO j  
  O jP 
z(i)  
z(i) i
z(j) 


Il est possible d'obtenir une relation plus compacte rassemblant la translation et la
rotation :
( )
( )
( )
 OiP x(i)  

 
 OiP y(i) =
 OiP  
z(i)  

 1  
[Rij]
0
0
0
(OiO j)x(i)  (O jP)x(j) 
(OiO j)y(i)   (O jP)y(j) 
(OiO j)z(i)   (O jP)z(j) 

1
 
1

Cette matrice est appelée matrice de transformation homogène. Les coordonnées du
point P exprimée avec une 4ème composante à 1 sont les coordonnées homogènes.
33


Tij=



(OiO j)x(i)
(OiO j)y(i) 
(OiO j)z(i) 
[Rij]
0
0
0


1
La relation entre les coordonnées d'un point exprimé dans une base i sont alors
simplement obtenu à partir de ses coordonnées dans la base j.
 hOiP  =Tij. hO jP 





i

j
La matrice Tij contient à la fois la rotation et la translation entre les repères Rj et Ri :
Tij= Rotation
0
0
0
Translation 
1

Lors du changement de base, des coordonnées homogènes deviennent également des
coordonnées homogène : l'opération peut être reproduite de proche en proche de tel
sorte que :
Tik=Tij.Tjk
Exercice :
Dans le cas du paramétrage DH, trouver les MTH (matrices de transformation
homogènes) Tj-1,j et Tj,j-1 entre deux solides(j-1 et j) relié par une liaison j.
T j −1, j
 cos θ j
cos α .sin θ
j
j
=
 sin α j .sin θ j

0

 cos θ j
 − sin θ
j
T j , j −1 = 
 0

 0
− sin θ j
0
cos α j .cos θ j
sin α j .cos θ j
− sin α j
cos α j
0
0
cos α j .sin θ j
cos α j .cos θ j
sin α j .sin θ j
sin α j .cos θ j
− sin α j
0
cos α j
0

− rj .sin α j 
rj .cos α j 

1
 ( j −1)
dj
− d j .cos θ j 
d j .sin θ j 

− rj

1
( j)
34
3.3 La formulation cinématique récurrente
Le but de ce chapitre est d'établir les formules de récurrences pour obtenir :
d0 V0(M),J 0(M)∀M∈Si,Ωi0,αi0 = Ωi0
dt
0
ˆ 0.Ω
ˆ 0 ˆ0
ainsi que le tenseur Ai =Ω
i i +α
i
3.3.1 Quelques bons souvenirs des cours de Méca. Géné.
Lois de distribution des vitesses et accélérations …
V i ( P2 ) = V i ( P1 ) + Ωij ∧ P1 P2
(
( P2 ∈ S j )
)
( )
i
i
i
i
di i
J ( P2 ) = J ( P1 ) + Ω j ∧ Ω j ∧ P1 P2 +
Ω j ∧ P1 P2
dt
i
J i ( P2 ) = A j .P1 P2 + J i ( P1 )
i
ˆ i .Ω
ˆi +
Aj = Ω
j
j
ˆ )
(
Ω
dt
di
i
j
i
A j est le tenseur distributeur des accélérations dans Sj observé à partir de Si.
 
 γ1 
Ωij= γ2 
γ 
 3
 0 −γ γ 

3 2 
ˆ i = γ 0 −γ 
Ω
j
3
1
 −γ γ 0 
 2 1

 di 
 γ 
 dt 1 
i
d  di 
Ωi = γ
dt j  dt 2 
di
 γ 
 dt 3 


 2 2

 −γ 2 −γ3 γ1.γ2 γ1.γ3 
ˆ i.Ω
ˆ i = γ .γ −γ 2 −γ2 γ .γ 
Ω
j j
2 1
3 1 2 3
 γ .γ γ .γ −γ 2 −γ2 


3 1
3 2
1
2
di di 

 0 − γ
γ 
dt 3 dt 2 

i
di
d
di 

ˆ i = γ
Ω
0 − γ 
dt 3
dt 1
dt j
 di di

− γ
γ1 0 
2
 dt dt



( )
35
Composition des mouvements …
Vi(P)=V j(P)+Vi(P)
j
i
J (P)=J j(P)+ Ji(P)+2Ωi ∧V j(P)
j
j
Dérivée d'un vecteur dans deux bases …
(
) (
)
i
j
i
d vecteur = d vecteur +Ω
∧vecteur
j
dt
dt
3.3.2 Mouvements entre deux solidesSi-1 et Si.
Grandeurs
cinématiques
Vitesse
angulaire
Accélération
angulaire
Vitesse de
translation
Accélération de
translation
Liaison prismatique (P)
Liaison rotoïde (R)
i−1 Ωi =0
i−1 Ωi =qɺ i.zi
i−1 αi−1= d Ωi−1=0
i
dt i
i−1
Vi (M)=qɺ i.zi
i−1
Ji (M)=ɺqɺi.zi
i−1 αi−1= d Ωi−1=ɺqɺ .z
i
i i
dt i
i−1
Vi (M)=qɺ i.zi ∧OiM
(
)
i−1
2 Ji (M)=qɺ1.zi ∧ zi ∧OiM +ɺqɺi.zi ∧OiM
Ces relations de récurrence permettent de mettre en place un algorithme structuré en
boucle sur l'indice de solide i. Les résultats peuvent être projetés dans une base
quelconque (en général les expressions les plus simples sont obtenues en projetant
dans la base de l'indice inférieur.
Cet algorithme est particulièrement performant car d'ordre N.
Classiquement, les algorithmes sont d'ordre Nk, N étant le nombre de solides du
système. Le nombre d'opérations requises est alors une fonction polynomiale de degré k.
Dans l'algorithme présenté k=1.
Description de l'algorithme
Initialisation de la boucle sur le référentiel galiléen (ground)
36
Ω00 =α00 =J 0(O0)=0
Pour i=1 à N ;
i−1
Composition des vitesses ε .qɺ .z =Ω
i i i
0 0
Ωi =Ωi−1+εi.qɺ i.zi
i
Formule de la base mobile :
(
) ( )
( )
i 0 εi ɺqɺi.zi +Ωi0−1∧qɺ i.zi = d Ωii−1 +Ωi0−1∧Ωii−1= d Ωii−1
dt
dt
0 0
0
α =α +ε ɺqɺ .z +Ω ∧qɺ .z
(
i
i−1 i i i
0
0 ˆ0 ˆ0
Ai =αˆ +Ω
.Ω
i
i i
i−1
i i
)
Composition des vitesses
0
0
0
Vi−1(Oi)=V (Oi−1)+Ωi−1∧Oi−1Oi
0
0
0
V (O )=V (O )+ε .qɺ .z
i
i
i−1
i
i i i
0
0
0
J (O )=J (O )+Ai .O O
i−1 i
i −1
i−1 i
0
0
0
J (O )=J (O )+ ε .ɺqɺ .z +2Ω ∧ ε .qɺ .z
i
i
i−1
i
i i i
i −1
(i
i i
Composition des accélérations
)
Fin pour
37
Exercice
Appliquer l'algorithme précédent au double pendule orthogonal suivant :
S0
O1
x1
q1
x0
x2
q2
x1
Z0,1
O2
z2
S2
M
38
3.3.3 Matrice jacobienne
0
N
Il s'agit de déterminer le torseur V (M) en fonction des vitesses généraliser qɺ .
i
 Ω0     qɺ1 
 0 N  = J   ⋮ 
VN(M)    qɺ N 
La matrice Jacobienne J(q,M) représente une application liénaire de LN dans L6.Elle
0
N
exprime le torseurV (M) comme fonction linéaire des vitesses généralisées.
La matrice Jacobienne peut être partitionnée en deux matrices, l'une relative à la partie
vitesse de rotation, l'autre relative à la vitesse de M.
  J 
 J =Jsup 
   inf 
Conformément à la formule de composition des vitesses de rotation et au paramétrage
DH le taux de rotation de l'élément N dans le repère galiléen est défini par :
Ω0 =Ω0 +Ω1 +…+Ω N−2 +Ω N−1
N
1
2
N−1
N
=ε qɺ Z +ε qɺ Z +…+ε qɺ
1 1 1
[
=ε Z
J
sup
1 1
2 2
donc...
=ε Z
ε Z
[
1 1
2 2
+ε qɺ Z
N−1 N −1 N −1
2 2 2
ε Z
Z
⋯
⋯
ε
ε
N N N
Z
 qɺ1 


 qɺ 2 


ε Z  ⋮ 
N N 

qɺ 
 N−1
 qɺ 
 N 
Z
ε Z
N−1 N −1
N−1 N −1
]
N N
]
39
Pour la vitesse de M :
OM=OM(q ,⋯,q )
1
N
par conséquent :
0
V (M) = ∂OM qɺ + ∂OM qɺ +…+ ∂OM qɺ + ∂OM qɺ
N
N −1 ∂q
N
∂q 1 ∂q 2
∂q
1
N −1
12

= ∂OM
∂q
 1
∂OM
∂q
12
⋯
N
∂OM
∂q
N −1
 qɺ1 


 qɺ 2 


∂OM   ⋮ 
∂q 

N 

qɺ 
 N−1
 qɺ 
 N 
∂OM qɺ est la vitesse qu'aurait M si qi variait seul.
∂q i
i
Cette formulation n'étant pas algébrique, elle ne présente pas d'intérêt particulier pour
les techniques algorithmiques.
Le Champ des ∂OM qɺ est un champ de vitesses d'un solide. Considérons toutes les
∂q
i
i
variables bloquées sauf qi :
→
∂ OM
qɺ i = z i qɺ i
∂q i
Pour M ∈S j tel que Pij = 1
… si Li est une liaison Prismatique (P), (translation suivant zi).
→
→
∂ OM
qɺ i = z i ∧ OM qɺ i
∂q i
Pour M ∈S j tel que Pij = 1
… si Li est une liaison rotoïde (R) (rotation autour de zi).
40
Ces deux relations peuvent être regroupées :
→
→
∂ OM
= ε i z i + ε i z i ∧ OM
∂q i
Cette relation permet de définir la dérivation partielle avec une expression algébrique.
La Partie inférieure de la matrice Jacobienne devient :
→
 →
∂ OM ∂ OM

J inf =
⋯
 ∂q 1
∂q 2

ε 2 z2
ε 1 z1 +
=
→
ε z ∧ O M ε z
1
2 2
 1 1
→
→ 
∂ OM 
∂q N 

+
ε N −1 z N −1 +
ε N zN +

⋯
→
→
→ 
∧ O2M
ε N −1 z N −1 ∧ O N −1 M ε N z N ∧ O N M 
∂ OM
∂q N −1
Sous forme algébrique, la matrice Jacobienne complète devient :

 Ω 0N  
 0
=
VN ( M )  

J
{ε 1 z1 }
 
J = ε 1 z1 +
 → 
ε 1 z1 ∧ O1 M 




 qɺ 1 
 ⋮ 
 
qɺ N 
{ε 2 z 2 }
⋯
{ε N −1z N −1}
ε 2 z 2 +

ε N −1 z N −1 +

 
→ 
→ 
ε 2 z 2 ∧ O 2 M  ⋯ ε N −1 z N −1 ∧ O N −1 M 
{ε N z N }


ε N z N +

 → 
ε N z N ∧ O N M 
Si les éléments de J sont projetés dans un repère quelconque, la matrice Jacobienne est
scalaire.
Cette matrice est souvent utilisée pour résoudre numériquement le problème
géométrique inverse. Elle permet de déterminer le vecteur q des coordonnées
articulaires (coordonnées réduites généralisées) pour une position du corps terminal
donnée. Exemple de problème : comment piloter les axes d'un robot de peinture pour
imposer une trajectoire donnée au pistolet. Cette matrice est donc déterminante dans la
synthèse de la commande dynamique en robotique.
41
Lorsqu'il y a des arborescences, la démarche est similaire ; chaque chaîne est traitée
séparément avec un torseur géométrique complémentaire :
ε i z i


G i ( M) =
→ 
ε z + ε z ∧ O M 
i i
i 
 i i
Ce torseur permet de séparer, dans le torseur cinématique, la partie géométrique (nature
de la liaison et localisation de la partie intensité :
Vii−1 = qɺ iG i
Exercice :
Trouver la matrice jacobienne du robot AOIP / Cincinnati suivant :
O5,6
S5
z5
S6
S4
z6
O4
S3
O3
z4
S2
z3
O1,2
z2
S1
S0
a) sous forme intrinsèque (point de réduction en O5)
b) sous forme extrinsèque dans R tel que :
{
R = O5 , X = Z 2,3, 4 , Y , Z = Z 5
}
0
0
α 6 
→
     
O5 Oi =  y i  Z 1 =  β 1  Z 6 =  β 6 
z 
γ 
 0
 i R
 1 R
 R
42
3.3.4 Dérivée du torseur cinématique sous forme semi-explicite
Dans le but d'écrire les équations de la dynamique sous la forme :
A
 C
CT 
0 
 Q +B 
= d
 D(q, qɺ , t )
 ɺqɺ 
 − λ 
Nous devons établir une méthode qui permet de séparer les vitesses des accélérations
des variables articulaires (qi).
Par dérivation de la relation algébrique de la matrice Jacobienne, nous obtenons :
d0
dt
0  
 Ω 0N   α

 0
 ≡  0 N  = 
 VN ( M )  J N ( M )  

J




q1   
 ɺɺ
 ⋮  + γ 
   
ɺɺ
q N   
En d'autre terme, le problème revient à déterminer :
γ = γ ( q , qɺ )
En considérant provisoirement les accélérations des variables articulaires nulles :

 α N0 
= 
 0

J
(
M
)
 N
 qɺɺ=0 

J




0      γ sup 
 ⋮  + γ  = γ  =  
       
0      γ inf 
La partie supérieure de γ est l’accélération angulaire qu’aurait SN si :
γ sup = α N0
qɺ ≡ 0
La partie inférieure de γ est l’accélération qu’aurait M ∈ S N dans Ro si
{qɺɺ1 ,⋯ , qɺɺN } ≡ {0,⋯, 0}
γ inf = J N0 ( M ) ɺ
q≡0
Or nous avons établi précédemment un algorithme pour déterminer α N0 et J N0 ( M ) à partir
de la connaissance des grandeurs articulaires et leurs deux premières dérivées (vitesse
et accélération).
En appliquant cet algorithme pour le cas {qɺɺ1 ,⋯ , qɺɺN } ≡ {0,⋯ , 0} nous obtenons
directement γ .
Exercice : Déterminer γ pour le pendule orthogonal en 3.3.2.
43
4 – Equations de liaison
4.1 démarche générale
Nous avons vu précédemment qu’à coté des équations de la dynamique il était
nécessaire de connaître les équations de liaison.
Les équations de liaison traitées dans ce chapitre n’aborde pas les liaisons motorisées
dont la cinématique est décrite en fonction du temps ou défini par un asservissement :
elles ne présentent pas véritablement difficulté de traitement analytique ou numérique
lors de la résolution.
Ce chapitre traite des équations de liaisons issues des contacts entre solides.
Dans le cas du paramétrage absolu, chaque liaison Lij entre les solides Si et Sj de degré
de liberté lij donne lieu à 6-lij équations de liaisons scalaires indépendantes. Chaque
type de liaison fait donc appel à un traitement particulier, le logiciel a recours à une
bibliothèque.
Dans le cas du paramétrage relatif, les équations de liaison ne concernent plus toutes
les liaisons, mais une seule dans chaque boucle indépendante du système mécanique.
Dans le cas d’une chaîne ouverte (exemple : robot série), les paramètres relatifs ne sont
pas liés alors que les paramètres absolus le sont. C’est un des avantages du
paramétrage relatif : il réduit fortement le nombre d’équations de liaison.
44
Dans le cas de mécanisme à boucle, le système est ouvert « virtuellement » de façon à
conduire à un mécanisme non bouclé. Les liaisons Lij ouvertes sont traitées par 6-lij
équations de liaisons en utilisant une bibliothèque comme dans le cas du paramétrage
absolu. Le choix de la liaison à ouvrir se portera sur celle dont le degré de liberté est le
plus élevé (minimisation du nombre d’équation de liaison).
A défaut, la coupure s’opère à la première bifurcation rencontrée en descendant vers la
racine de l’arbre. (voir 3.2.4 Chaînes fermées)
Exemple :
S4
S5
S2
S3
S1
S0
Représentation topologique graphique :
Surface III
S1
Surface I
S0
S4
S2
Surface II
S3
S5
Dans le cas du paramétrage absolu les boucles ne nécessitent pas d’être repérées pour
procéder à la résolution.
45
Les équations de liaisons sous leur forme première portent exclusivement sur les
coordonnées sauf si elles traduisent le non glissement dans un couple supérieur
(linéique ou ponctuel) où leurs dérivées interviennent.
Comme nous l’avons vu précédemment, pour traiter les systèmes algébro-différentiels il
est nécessaire de connaître toutes les équations de liaison sous forme d’équations
différentielles du premier ordre puis du second ordre.
∑c qɺ =c (t)
ij
j
i
au premier ordre
j
∑c qɺɺ =cɺ (t)−∑ ∂∂qc
ij
j
ij
i
j
j, k
k
qɺ j qɺk au second ordre
Pour 2 solides Si et Sj ayant pour liaison Lij de degré de liberté lij, le torseur cinématique
et le torseur d’efforts (de liaison) s’expriment :
 Ωij 
Vi (O j )= j

Vi (O j )


Fij (O j )= Sij 
(
)
M
ij
O
j


j
Les torseurs compatibles avec une liaison peuvent s’exprimer dans une base de torseurs
géométriques Gk sous la forme :
Vi =∑qɺk Gk
j
k
Ils forment un sous-espace vectoriel V de dimension lij
Si la liaison est parfaite, la puissance dissipée est nulle pour tout mouvement compatible
avec la liaison et tout torseur d’action transmissible :
{
}
j
j
j
P{Lij }=c Fij,Vi = Sij.Vi (O j )+Ωi .M ij(O j )=0
Le comoment est une forme bilinéaire symétrique. L’ensemble des Fij vérifiant
l’équations précédente forme un sous espace vectoriel de dimension 6-lij comme s’il était
orthogonal de V.
Chaque élément de cet espace s’écrit :
6 − lij
Fij = ∑ f k Gk
*
k =1
Les composantes fk sont les inconnues dynamiques dans la liaison et les Gk* sont les
torseurs géométriques de base pour les torseurs des efforts.
46
vi
Sj
Si
Oi
M
ui
wi
Par exemple, pour la liaison cylindrique, une base possible pour exprimer les torseurs
transmissibles est :
*
*
*
  *
 
G1 (Oi )=vi  G2(Oi )=wi  G3 (Oi )= 0  G4(Oi )= 0 
0 
0
vi 
wi 
Tout torseur transmissible par cette liaison cylindrique parfaite s’écrit :
Fij = f1G1 + f 2G2 + f3G3 + f 4G4
*
*
*
*
Pour tous les torseurs Gk* constituant la base des torseurs transmissible par Lij la
puissance est nulle quelque soit fk : c{Gk*,Vi j }=0
Ces relations portent des informations purement géométriques et cinématiques et ne
dépendent pas des efforts. Elles restent vérifiées lorsque la liaison n’est pas parfaite.
Cette méthode conduit donc à des équations de liaison sous forme différentielle du
premier ordre. Les équations différentielles du second ordre sont obtenues par
dérivation.
47
4.2 Mise en œuvre
4.2.1 Couples inférieurs (contact surfacique)
4.2.1.1 Liaison hélicoïdale
yj
uj
xj
Oj
ui
Mj
zj
vj
vi
vi ⊥ui et v j ⊥u j
- wi et wj tels que (ui,vi,wi ) et (u j,v j,w j )
vi
Mi
- Les vecteurs ui et u j sont les vecteurs
directeurs unitaires de l’axe de la liaison Lij
-
yi
et v j tels que
forment des bases orthonormées directes
- Mi et Mj des points de l’axe
zi
Oi
xi
Ainsi, sur chaque solide sont défini de nouveaux
repères : (M i,ui,vi,wi ) et (M j,u j,v j,wj ) servant
à préciser la géométrie de la liaison. (Ce sont
les markers de liaison i et j dans ADAMS)
Les équations de liaisons s’exprime sous forme algébrique :
ui = u j
(
)
M i M j = λij vi , v j .ui
p
λij est le pas réduit de la liaison : λij = 2π
ou p est le pas de la surface hélicoïdale.
Les vecteurs ui et u j étant normé, la première équation vectoriel traduit 3 équations
scalaires dont seules 2 sont indépendantes.
Les 5 conditions scalaires indépendantes définissent cette liaison à 1 ddl.
La première écriture peut être remplacée par ui.v j =0 et ui.wj =0 afin d’obtenir des
équations indépendantes à priori.
48
(
)
L’angle vi , v j ne fait pas partie des coordonnées généralisées retenues. Il faudra donc
le déterminer à partir des relations :
sinψ ij =wi.v j =(ui ∧vi).v j =(ui,vi,v j )
cosψ ij =vi.v j
Les données constantes à fournir pour que le logiciel établisse ces équations de liaison
sont :
- Les coordonnées de Mi dans Ri et de Mj dans Rj :
 Xi 
X j


Oi M i = Yi
O j M j = Yj 
 Zi 
 Zj 
 Ri
 Rj
- Les composantes de ui et vi dans Ri et v j dans Rj :
 uxk   vxk 
uk = uyk
vk = vyk
 uzk 
 vzk  pour k=i,j
 Rk
 Rk
avec :
uxk.vxk +uyk.vyk +uzk.vzk =0
uxk2 +uyk2 +uzk2 =1

Dans de nombreux cas on peut choisir des coordonnées présentant des particularités :
Par exemple : ui = zi , vi = xi , M i =Oi
49
A partir de ces coordonnées, la traduction sous forme extrinsèque des relations doit se
faire en limitant le nombre d’opérations. Les vecteurs qui interviennent s’expriment le
plus simplement soit dans Bi soit dans Bj. La base qui conduira aux calculs en chaîne
les moins long est donc dans la base Bo :
ui =u j
[R0i ][ui ]i =[R0j ][u j ]j

⇔
M i M j =λij∠(vi,v j ).ui M iOi +OiO+OOj +O j M j −λij∠(vi,v j ).ui =0
[R0i ][ui ]i =[R0j ][u j ]j
⇔
 OOj 0 − OOi 0 +[R0j ]O j M j j −[R0i ] Oi M i i +[λij∠(vi,v j ).ui ]i =0
[ ][ ]
[
]
([ ]
)
Nous devons ensuite exprimer ces équations de liaisons algébriques sous une forme
différentielle du premier ordre. L’espace des torseurs transmissibles par une liaison
hélicoïdale supposée parfaite est défini par :
X
 
Y 
 
Z
*
Gk (M j )= 
L
 
 
M 
 
 N (ui ,vi, w j )
Or les torseurs cinématiques compatibles sont caractérisés par : Ωij =ωui et V ji(M j )=λijωui .
Les torseurs Gk* doivent être tels que :
 X  λijω   L  ω 
 
   
 Y . 0 + M . 0 =0⇔ Xλijω + Lω =0
 
   
 Z  0   N  0 
 
   
Xλij =−L
X ≡ui ⇒ L≡−λijui
50
Les 5 torseurs de base Gk*
 0  *
 0 
 ui  *
vi  *
wi  *
G (M j )=
 G2(M j )=  G3 (M j )=  G4(M j )=  G5 (M j )= 
−λijui 
 0 
 0 
vi 
wi 
*
1
Les comoments du type c{Gk*,T ji }=0 s’expriment :
(
)
i
i
ui. V j (M j )− λij Ω j = 0
i
vi.V j (M j ) = 0
i
wi.V j (M j ) =0
i
vi.Ω j = 0
i
wi.Ω j = 0
Les formes extrinsèques sont obtenues par les expressions dans la base Bo.
Notamment :
(
)(
i
0
0
0
0
0
0
V j (M j )=V j (M j)−Vi (M j)= V (O j)+Ω j ∧O j M j − V (Oi)+Ωi ∧Oi M j
)
51
4.2.1.2 Liaison Rotoïde (Pivot)
yj
Oj
xj
ui ;u j
zj
Mi
zi
Mj
vi
Oi
yi
xi
Il s’agit d’une liaison hélicoïdale de pas nul.
Les équations algébriques sont définies par :
 ui.v j =0
ui =u j ou  ui.wj =0
M i M j =0
Les équations différentielles s ‘expriment dans :
 0  *
 0 
ui  *
vi  *
wi  *
G (M j )=  G2(M j )=  G3 (M j )=  G4(M j )=  G5 (M j )= 
 0 
 0 
 0 
vi 
wi 
*
1
Les comoments du type c{Gk*,T ji }=0 s’expriment :
i
ui.V j (M j)=0
i
vi.V j (M j )=0
i
wi.V j (M j )=0
i
vi.Ω j =0
i
wi.Ω j =0
52
4.2.1.3 Liaison Prismatique (Glissière)
uj
yj
Oj
ui
xj
Mj
vj
zj
Mi
vi
zi
yi
Oi
xi
C’est une liaison hélicoïdale de pas infini
Les équations algébriques sont définies par :
 ui.v j =0
ui =u j ou  ui.w j =0
 M i M j.vj =0

M i M j.w j =0
Pour éviter que Sj ne tourne par rapport à Si autour de l’axe de la liaison il faut ajouter
par exemple :
vi.wj =0
M i M j ∧ui =0 ou
53
Les équations différentielles s ‘expriment dans :





v
i
w
i


0
0
0
  *
  *
  *
  *
 
*
G1 (M j )=  G2(M j )=  G3 (M j )=  G4(M j )=  G5 (M j )= 
 0 
 0 
ui 
vi 
wi 
Les comoments du type c{Gk*,T ji }=0 s’expriment :
i
ui.Ω j =0
i
vi.V j (M j )=0
i
wi.V j (M j )=0
i
vi.Ω j =0
i
wi.Ω j =0
54
4.2.1.4 Liaison cylindrique (Pivot-Glissant)
uj
yj
Oj
ui
xj
Mj
vj
zj
Mi
vi
zi
Oi
yi
xi
Les équations algébriques sont définies par :
ui =u j ou
 ui.v j =0
 ui.w j =0
M i M j ∧ui =0 ou
 M i M j.vj =0

M i M j.w j =0
Les équations différentielles s ‘expriment dans :
 0  *
 0 
vi  *
wi  *
G (M j )=  G2(M j )=  G3 (M j )=  G4(M j )= 
 0 
 0 
vi 
wi 
*
1
Les comoments du type c{Gk*,T ji }=0 s’expriment :
i
vi.V j (M j ) = 0
i
wi.V j (M j ) = 0
i
vi.Ω j = 0
i
wi.Ω j = 0
55
yj
4.2.1.5 Liaison Sphérique (Rotule)
ui
Oj
xj
zj
Mi
Mj
vi
yi
zi
xi
Oi
Les équations algébriques sont définies par :
MiM j = 0
Les équations différentielles s ‘expriment dans :
ui 
G (M j ) =  
0
*
1
vi 
G (M j ) =  
0 
*
2
 wi 
G (M j ) =  
 0i 
*
3
Les comoments du type c{Gk*,T ji }=0 s’expriment :
i
ui .V j ( M j ) = 0
vi .V ji ( M j ) = 0
wi .V ji ( M j ) = 0
56
4.2.1.6 Liaisons composées
La plupart des logiciels proposent des liaisons qui associent plusieurs des liaisons vues
précédemment tels que le joint de cardan (hook) en négligeant la masse de certains
composant du mécanisme (croisillon dans le cas du joint de cardan). Ces liaisons
composées conduisent à des équations de liaison entre les paramètres cinématiques.
Cette méthode peut également être utilisée pour simuler des mécanismes composés de
solides dont la masse doit être négligée.
57
4.2.2 Couples supérieurs (contact ponctuel ou linéique)
Les couples sont dits supérieurs lorsque le nombre de degré de liberté est plus grand
que le nombre des torseurs transmissibles.
Bien que le contact ait lieu en un point ou le long d'une courbe la nature des surfaces
régit le comportement cinématique de ces couples.
Actuellement, aucun logiciel ne traite correctement ce type de liaison. Seuls les cas
particuliers sont disponibles au sien des logiciels (cames, roulement sans glissement …).
58
5 – Equations et coordonnées généralisées
indépendantes
Actions de liaison
5.1 Démarche générale
59
5.2 Degré de liberté, liberté composée et mobilité
Nous avons déjà eu l'occasion d'utiliser les expressions degré de mobilité et degré de
liberté. On les rencontre fréquemment dans les ouvrages de Mécanique, sans qu'elles
soient toujours précisément définies. En particulier, on ne sait pas toujours si elles
concernent l'ensemble du mécanisme ou certaines de ses liaisons.
L'éclaircissement de ces notions est particulièrement important pour l'utilisation des
logiciels de simulation des mécanismes, pour certains joints et mécanismes, le nombre
de ces libertés ou mobilités peut évoluer au cours du fonctionnement. En l'occurrence, il
peut augmenter transitoirement dans une position donnée. Dans le cas de chaînes
ouvertes dans certaines positions, il peut diminuer. Ces positions sont dites singulières et
elles peuvent occasionner quelques problèmes dans la simulation.
L'hyperstatisme est étroitement lié à la cinématique et les logiciels de simulation des
mécanismes sélectionnent un certain nombre d'équations de liaison indépendantes et,
par conséquent, un jeu d'inconnues dynamiques principales et un jeu d'inconnues
hyperstatiques prises arbitrairement égales à 0. Cette sélection résulte du choix fait dans
ces logiciels d'une méthode automatique (Gauss, pivot...) et l'utilisateur n'a pas la
possibilité d'influer sur ce choix. Il peut se faire que ce choix ne corresponde pas à celui
qu'on aurait souhaité. Pour que l'utilisateur impose sa volonté dans ce domaine, il n'a
qu'un recours : celui de rendre le mécanisme isostatique selon ses propres critères.
Certains logiciels nécessitent d'ailleurs, pour fonctionner, que le mécanisme soit rendu
isostatique. Nous allons donc indiquer des méthodes qui permettent d'y parvenir.
60
5.2.1. DEGRE DE LIBERTE, DE LIBERTE COMPOSE ET DE MOBILITE
5.2.1.1 Définitions
Degré de liberté
Il est caractéristique d'une liaison (liaison simple, entre deux solides uniquement) prise
seule.
C'est le nombre de paramètres libres permettant de définir un solide par rapport à
l'autre . Il est invariant.
Exemple
Le degré de liberté de la liaison cylindrique de la figure 1 est deux, puisque le
mouvement de Sj par rapport à Si peut être décrit par le déplacement de Oj le long de
et par l'angle de rotation entre les solides. Nous n'insisterons pas plus sur ce
point.
Figure 1 - Liaison cylindrique
61
Degré de liberté composé
Comme ce degré de liberté composé peut connaître des variations transitoires dans
certaines configurations, il est défini à l'aide des torseurs cinématiques, caractéristiques
du mouvement instantané.
Ce degré de liberté composé est la dimension de l'espace des torseurs
cinématiques entre deux solides non contigus dans une chaîne ouverte ou entre
deux solides quelconques d'une chaîne fermée.
Ø Figure 1 - Liaison cylindrique
Nous utilisons l'adjectif « composé » du fait que le degré de liberté résulte d'un
assemblage de plusieurs liaisons.
Exemples
•
Dans la chaîne ouverte de la figure 2 , le degré de liberté composé entre S3
et S2 est en général 3 :
, car on peut écrire le torseur cinématique entre
ces deux solides comme la composition linéaire de trois torseurs géométriques
généralement indépendants :
Figure 2 - Assemblage de trois liaisons de
révolution
avec
où
sont successivement perpendiculaires.
62
Donc, en général, cet assemblage de trois liaisons de révolution se comporte
comme une liaison sphérique dont le degré de liberté est 3. Mais les vecteurs
et
peuvent se trouver alignés, et les trois vecteurs coplanaires. Dans ce cas, la
dimension de l'espace des 3 torseurs géométriques devient égale à 2, et
.
Le degré de liberté composé transitoire tombe localement à 2. Dans cette
configuration, le comportement n'est plus du tout le même que dans une liaison
sphérique. Plus précisément, le vecteur rotation ne peut être hors du plan défini
par les trois vecteurs
.
Ø Figure 2 - Assemblage de trois liaisons de révolution
Dans la suite, on écrira l'espace des torseurs cinématiques entre deux solides Sj
et Si : (V en écriture droite), alors que le torseur est désigné par
cursive).
en écriture
63
Ø Figure 3 - Chaîne fermée
Figure 3 - Chaîne fermée
Figure 4 - Système quatre barres à deux liaisons de révolution et deux liaisons
sphériques
Figure 4 - Système quatre barres à
deux liaisons de révolution et deux
liaisons sphériques
•
Dans le système de la figure 3 de la chaîne fermée , composée des seuls
solides S0 et S1 reliés par deux liaisons sphériques, il est clair que le degré de
liberté composé entre S1 et S0 est égal à
et ne peut changer. À la vérité,
ici, on peut considérer que la liaison entre les deux solides est une liaison de
révolution.
Cet exemple élémentaire permet surtout de bien distinguer degré de liberté et
degré de liberté composé : pour chacune des liaisons sphériques, le degré de
liberté est égal à 3, tandis que leur composition dans cet ensemble conduit à un
degré de liberté composé égal à 1.
64
Degré de mobilité
Le degré de mobilité m ne concerne plus, comme précédemment, deux solides, mais un
mécanisme dans son ensemble.
Il s'agit du nombre maximal de vitesses généralisées qui, dans ce mécanisme,
peuvent êtres choisies de façon arbitraire dans une configuration donnée.
Comme le degré de liberté composé, il peut varier avec les positions.
Exemples
•
Pour le mécanisme de la figure 4 , sans aucune démonstration, on peut
comprendre que le degré de mobilité est en général égal à 2 (m = 2), alors qu'on
peut faire l'inventaire des degrés de liberté composés suivants :
Et, par ailleurs, le degré de liberté dans L12 et L23 reste égal à 3.
Ø Figure 5 - Robot à sept liaisons de révolution
Figure 5 - Robot à sept liaisons de révolution
65
Pour une chaîne ouverte , le degré de mobilité sera toujours la somme des degrés
de liberté de chacune des liaisons. Pour le robot à sept liaisons de révolution de la
figure 5 , le degré de mobilité est 7, alors que le degré de liberté composé entre S7 et
S0 est au plus égal à 6, puisque la dimension de l'espace des torseurs est au plus
égale à 6.
Les exemples précédents n'ont nécessité aucun outil particulier. Mais, pour aller
plus loin, nous allons présenter quelques règles précises.
66
5.2.1.2 Détermination des degrés de mobilité et de liberté composé
Chaîne ouverte
Comme nous l'avons déjà vu, le degré de mobilité pour une chaîne ouverte est :
.
Pour déterminer le degré de liberté composé, intéressons-nous au mécanisme plan
de la figure 6 .
Ø Figure 6 - Mécanisme plan à trois liaisons de révolution d'axes parallèles
Figure 6 - Mécanisme plan à trois liaisons de
révolution d'axes parallèles
Dans cet exemple, le torseur cinématique s'écrit :
avec
Exprimons les vecteurs
dans la base
:
67
Alors
Dans ces conditions, la dimension de l'espace
est égale au rang de la plus
, c'est-à-dire :
grande matrice non nulle extraite des colonnes représentant
Donc, en général,
alignés. Alors
, sauf si y 2 x
3
– x 2 y 3 = 0, c'est-à-dire si O1 , O2 , O3 sont
. Mais ce degré de liberté est transitoire.
On vérifie que le degré de liberté composé dépend de la configuration. On dit que
lorsque O1 , O2 , O3 sont alignés, le mécanisme est dans une configuration singulière.
Notons que, en revanche, cette configuration singulière n'affecte pas le degré de mobilité
qui reste égal à 3.
Une conséquence pour les logiciels de simulation est que, dans le cas du paramétrage
relatif, les trois coordonnées qu'on choisirait, q 1 , q 2 , q 3 , resteraient toujours libres, y
compris dans la configuration singulière, tandis qu'avec le paramétrage absolu, en plus
des contraintes imposées aux paramètres du fait des liaisons, dans la configuration
singulière, les paramètres seraient encore plus contraints. Corrélativement, les équations
de liaison que le logiciel retiendra pour la résolution du problème du mouvement
changeront au cours de la simulation.
68
Ø Figure 7 - Robot à six liaisons de révolution
Figure 7 - Robot à six liaisons de révolution
Autre exemple : robot à six liaisons de révolution (figure 7 )
Le degré de liberté composé du dernier solide par rapport à la base peut être évalué à
partir du rang de la matrice J des torseurs géométriques associés à tous les degrés de
liberté et réduits en O5 . On notera que
et
sont égaux :
Or, cette matrice se présente sous la forme :
et, dans un tel cas, Det J = – DetB x DetC
Le robot étudié rencontrera donc des configurations singulières chaque fois que DetB=0
ou DetC=0.
Or
. Il y a donc singularité quand les trois vecteurs du produit mixte
précédent sont coplanaires, ou encore lorsque
et
sont colinéaires.
69
Par ailleurs :
Le robot rencontre donc de nouvelles configurations singulières pour :
•
, c'est-à-dire pour O5 sur l'axe
;
, c'est-à-dire pour O5 , O3 , O1 alignés.
•
Ø Figure 8 - Chaîne fermée
Figure 8 - Chaîne fermée
Si, par exemple, et sont colinéaires en même temps que O5 est sur l'axe
et O5 , O3 , O1 sont alignés, le degré de liberté composé transitoire de S6 par rapport à S0
sera 3.
On comprend d'ailleurs intuitivement que les deux nouvelles configurations singulières
trouvées introduisent des limitations du mouvement du dernier solide : si O5 est sur l'axe
, lorsqu'il y a rotation dans la première liaison de révolution, O5 ne bouge pas
alors que ce n'est pas le cas dans toute autre position. Et si O5 , O3 , O1 sont alignés, O5
ne peut plus avoir une vitesse de composante non nulle sur la droite qui joint ces points.
70
Chaîne fermée
Les équations de liaison s'écriront, pour la configuration de la figure 8 , sous forme
torsorielle :
où les sont les torseurs géométriques associés aux
vitesses généralisées dans toutes les liaisons.
qui, eux-mêmes, sont les
; alors, parmi les
, seuls les
Posons
d'autres termes, le degré de mobilité du mécanisme est :
sont libres, ou, en
(1)
Alors que, pour une chaîne ouverte, le degré de mobilité est invariant, pour les chaînes
fermées, celui-ci peut évoluer selon les configurations. Il peut garder la même valeur
pour des valeurs des coordonnées généralisées quelconques dans un domaine large et
augmenter pour des valeurs particulières de celles-ci. On parle, dans ce dernier cas, de
degré de mobilité transitoire, bien que l'expression puisse être contestée dans la mesure
où théoriquement, dès que le mécanisme quitte la configuration singulière, le degré de
mobilité rechute. Nous reviendrons sur ce point.
Ø Figure 9 - Chaîne fermée dont le total des degrés de liberté de toutes les liaisons est
égal à 8
Figure 9 - Chaîne fermée dont
le total des degrés de liberté de
toutes les liaisons est égal à 8
71
Ø Figure 10 - Système bielle-manivelle
Figure 10 - Système bielle-manivelle
De la relation (1) on peut déduire que, si
, le degré de mobilité est au moins égal à
et donc
. Pour cet
1. C'est le cas du mécanisme de la figure 9 pour lequel
exemple, on comprend rapidement que m = 2 (les rotations de S2 et S3 autour de leurs
axes sont libres).
Mais peut être inférieur à 6 sans que le degré de mobilité soit nul. C'est le cas de tous
les mécanismes plans comme le système bielle-manivelle de la figure 10 .
Réduits en O, les torseurs géométriques de tous les degrés de liberté forment la matrice
J :
avec x 1 , y 1 , et x 2 , y 2 coordonnées dans
de O1 et O2 respectivement.
Le rang de J est en général 3, sauf si y 1 ou x 2 sont nuls. Le degré de mobilité est
en général, comme on pouvait le penser.
On voit, sur cet exemple simple de mécanisme plan, que la géométrie des mécanismes
peut présenter des particularités qui expliquent son comportement. Ces particularités se
traduiront dans la dépendance des équations de liaison.
72
Ø Figure 11 - Joint de Koenigs
Figure 11 - Joint de Koenigs
La dépendance constante entre les torseurs géométriques associés aux degrés de
liberté apparaît aussi de façon évidente dans les mécanismes à point central (un point
commun est lié à tous les solides). Elle apparaît aussi de façon assez claire dans
d'autres combinaisons de liaison mises en évidence par la théorie des groupes de Lie
explorée de façon détaillée par J. Hervé [1] . Mais il existe aussi des mécanismes pour
lesquels cette dépendance continue ne peut être expliquée par des raisonnements
élémentaires. Ils échappent à la théorie des groupes de Lie. Il s'agit des mécanismes dits
paradoxaux, comme le mécanisme de Bennett à quatre liaisons de révolution d'axes ni
parallèles ni concourants, mais dont les paramètres de Denavit-Hartenberg de chacun
des solides sont liés par une relation que le simple examen visuel du mécanisme ne peut
laisser entrevoir. Cette dernière catégorie comprend un assez grand nombre
d'exemplaires, mais ils constituent plus des curiosités et leur application industrielle est
limitée.
73
Exemples
•
Joint de Koenigs
Reprenons l'exemple (figure 11 ) du joint de Koenigs de [AF 5 051]. La matrice
des torseurs géométriques associés à tous les degrés de liberté, réduits en O, est
la suivante :
Les colonnes 2 et 3 correspondent respectivement aux paramètres décrivant la
rotation et la translation dans la liaison cylindrique L12 . Il en est de même pour les
colonnes 5 et 4 relativement à la liaison L23 .
Le rang de cette matrice est au plus égal à 5 puisque seuls deux vecteurs non
nuls
apparaissent dans la partie supérieure. Il est en général
exactement 5, car on peut montrer rapidement que les cinq premières colonnes
sont indépendantes. Comme
, le degré de mobilité, en général, est 1.
Mais si P est sur l'axe
, les quatre vecteurs non nuls de la partie inférieure
de J sont dans un même plan et le rang de cette matrice tombe à 4. Le degré de
mobilité transitoire est alors 2.
74
Ø Figure 12 - Configuration singulière : P en P0 sur
Figure 12 - Configuration singulière : P en P0 sur
Insistons particulièrement, dans cet exemple, sur l'adjectif « transitoire ». En
effet, dans cette configuration singulière, la mobilité supplémentaire n'existe
réellement que pour une position. Ce qui est contradictoire avec l'idée de mobilité.
Et l'on pourrait, de ce fait, récuser l'idée de cette mobilité supplémentaire.
Néanmoins, assortie de l'adjectif « transitoire », on peut l'accepter, d'autant plus
que dans la pratique, en raison des jeux, le domaine de variation que ceux-ci
permettent aux paramètres, autour de leurs valeurs exactes, est très fortement
amplifié dans une configuration singulière comme celle-ci et précisément pour les
mobilités supplémentaires. Par ailleurs, du point de vue de la statique, son
comportement est le même que s'il y avait cette mobilité additionnelle. On pourrait
montrer, en effet, en isolant tous les solides successivement que, dans cette
position, quel que soit le couple exercé à l'une des sorties, aucun couple ne peut
équilibrer l'autre, comme s'il y avait bien deux degrés de mobilité.
On comprend, en tout cas, que dans cette position et même dès avant d'y être,
pour éviter les erreurs de troncature, les logiciels devront changer de jeux
d'équations et de coordonnées généralisées libres.
75
Si, de plus, dans une simulation, ce mécanisme est mis en position initiale de
repos dans la configuration singulière trouvée, la plupart des logiciels ne pourront
pas commencer les calculs. En effet, une analyse au-delà du premier ordre,
comme celle qui vient d'être faite, montrerait que le mécanisme peut évoluer
selon deux modes.
Ces deux modes apparaissent en s'intéressant à la trajectoire du point P
(figure 12 ). Cette trajectoire est l'intersection de deux cylindres d'axes
et
et de même rayon R , la longueur commune des bras de S1 et S3 . Or
l'intersection de ces cylindres est composée de deux ellipses 1 et 2 situées dans
les deux plans bissecteurs – orthogonaux –
, qui se coupent en P0 sur
Ø Figure 13 - Joint de Hooke
et
du dièdre
.
Figure 13 - Joint de Hooke
Cette intersection correspond précisément à la position de P lorsque le
mécanisme est dans sa configuration singulière. Dans cette configuration, le
logiciel analyse les premiers membres des équations de liaison au second ordre
qui sont les mêmes que ceux des équations de liaison au premier ordre. Il
retiendra donc la conclusion d'un mécanisme à deux degrés de mobilité ; or le
degré de mobilité large (par opposition à transitoire) est un : P peut évoluer sur
l'une des ellipses ou sur l'autre. Il sera donc confronté rapidement à une
impossibilité.
76
•
Joint de Hooke
Le joint de Hooke de la figure 13 est un mécanisme à point central puisque le
point O est fixe dans tous les solides S0 , S1 , S2 , S3 . Comme tous les
mécanismes de ce type, la matrice de ses torseurs géométriques, réduits en O et
associés à tous ses degrés de liberté, prend la forme très simple :
Toutes les parties inférieures (les moments) sont nulles. On n'a plus à raisonner
que sur des vecteurs de l'espace à trois dimensions. Le rang des torseurs
géométriques est donc au plus 3, comme pour le mécanisme plan. Dans le cas
présent, en général les quatre vecteurs ne sont pas coplanaires et sont donc
de rang 3. Le degré de mobilité est donc 1 en général. Cependant, si = , le
mécanisme peut se trouver dans une position telle que
soit confondu avec
et que
se trouve dans le plan
. Alors les quatre vecteurs sont
coplanaires et le degré de mobilité transitoire est 2. Comme pour l'exemple du
joint de Koenigs, ces deux degrés de mobilité transitoire correspondent à deux
modes de fonctionnement possibles.
1.2.2.2 Degré de liberté composé
Revenons à la figure 8 représentant un mécanisme quelconque en chaîne fermée ne
présentant qu'une seule boucle. Le degré de liberté composé entre les solides Sj et Si est
la dimension de l'espace des torseurs cinématiques entre ces deux solides compatibles
avec toutes les liaisons. Or ces solides sont les extrémités de la chaîne a :
Ø Figure 14 - Système bielle-manivelle en un point mort
Figure 14 - Système bielle-manivelle en un point
mort
77
À ce titre, les torseurs entre Sj et Si appartiennent à l'espace des torseurs cinématiques
compatibles avec les liaisons de cette chaîne ouverte :
Mais ces solides sont aussi les extrémités de la chaîne b :
et l'on a aussi :
En conséquence, l'espace des torseurs compatibles avec toutes les liaisons du
mécanisme, qu'on écrira
, est l'intersection des deux espaces précédents :
Dans ces conditions, le degré de liberté composé entre Sj et Si est :
Mais
est l'espace des torseurs compatibles avec a et b mises bout à bout sans
être refermées. Sa dimension n'est autre que r utilisé précédemment pour déterminer m .
D'où :
Dans l'expression précédente, il faut comprendre le degré de liberté composé de la façon
suivante :
et
sont les degrés de liberté composés entre les solides Sj et Si
considérés comme extrémités des chaînes simples a et b extraites du mécanisme à
boucle.
est le degré de liberté composé entre les mêmes solides inclus dans le mécanisme à
boucle initial.
Dans la suite, cette désignation sera systématiquement reprise.
78
Exemples
•
Système bielle-manivelle en un point mort (figure 14 )
Le point mort est caractérisé par l'alignement des points O1 , O2 , O3 .
Les torseurs géométriques associés aux degrés de liberté, réduits en O1 sont :
Les trois premiers sont dépendants, leur rang est 2. Mais c'est aussi le rang de
deux quelconques d'entre eux. Par ailleurs, et deux des trois premiers torseurs
géométriques sont toujours de rang 3. Dans ces conditions, on peut trouver les
degrés de liberté composé suivants :
l
avec
Or
d'où
l
avec
Or
d'où
Ces résultats sont conformes à l'idée intuitive qu'on a de ce mécanisme dans
cette position. Ils montrent aussi que, si le degré de mobilité est 1, celui-ci ne peut
être choisi arbitrairement. Par analyse de la dépendance des équations de liaison,
le logiciel de simulation fera automatiquement ce choix.
79
•
(figure 15 )
Joint de Hooke quand
Procédons à la même analyse pour le joint de Hooke dans le cas où
mais
hors du plan
,
.
Figure 15 - Joint de Hooke pour
Ø Figure 15 - Joint de Hooke pour
l
avec
Or
80
d'où
l
avec
Or
d'où
l
avec
Or
d'où
On peut en déduire que, dans ce cas, l'ensemble
solide.
se comporte comme un
l
avec
Or
d'où
81
La seule mobilité est la rotation de l'ensemble
.
Dans le cas où les quatre axes sont dans un même plan, m = 2. Si l'on reprenait
l'analyse
des
degrés
de
liberté
composés,
on
aurait :
. En fait, il y a deux modes, comme il a été indiqué :
rotation de l'ensemble
ou fonctionnement normal, c'est-à-dire
transmission de la rotation de S3 jusqu'à S1 .
Comme on le voit, ces méthodes d'analyse permettent d'éclairer les résultats
d'une simulation et les problèmes qu'on peut y rencontrer.
82
5.3 Torseur statiquement admissible et mouvements incompatibles
83
5.4 Détermination des actions de liaison
84
6 – Equations de la dynamique
85
7 – Résolution des équations
7.1 Mise en forme du système algébro – différentiel
7.1.1 réduction du système différentiel au premier ordre
Les chapitres précédents ont permis de mettre le système mécanique sous la forme :
A
 C
CT 
0 
 ɺqɺ 
 − λ 
 Q +B 
= d
 D(q, qɺ , t )
Les méthodes résolution numériques nécessite de réduire le système différentiel à un
système du premier ordre en augmentant la taille du système à traiter : le système initial
possède [ n (ddl) + L (liaisons)] équations ; l'introduction des vitesses articulaires en
variables intermédiaire conduit à un système à 2n+L équations.
[ x ] = [ qɺ ]
I
0
0
0
A
C
0
T
C 
0

 qɺ 
 xɺ 
 − λ 
 x 
= Qd + B
 D 


Le système est donc composé d'équations différentielles (2 premières lignes) et
d'équations algébrique qui ne font pas intervenir la dérivée des inconnues
(multiplicateurs de Lagrange λ).
La forme obtenue est implicite : les lignes 1 et 2 ne permettent pas d'exprimer [ qɺ ] et
[ xɺ ]
en fonction de [q] , [x] et [λ]. Le système différentiel peut être transformé en
explicite de la forme : Qɺ  = F ( Q, λ , t ) en inversant la matrice A :
 qɺ   I n
 xɺ  =  0
  
x
0  

.
A−1  Qd + B + C T .λ 
La tâche essentielle d'un solveur reste l'intégration numérique du modèle de simulation
sous sa forme implicite ou explicite. Cette tache consiste en une discrétisation dans le
temps des équations du modèle de simulation. L'intégration correspond alors au calcul
de proche en proche à partir des conditions initiales, des valeurs de la solution des
équations discrétisées.
86
Les méthodes numériques repose essentiellement sur l'approximation des dérivées des
variables à intégrer. Cette approximation permet de calculer numériquement les
variables à intégrer [yi+1] à l'instant ti+1 à partir des variables [yi+1] à l'instant ti.
Le pas d'intégration h est défini par ti+1 - ti . Les méthodes qui permettent la résolution
numérique sont abordées en 7.2.
Ces méthodes génèrent une erreur due à l'approximation et une erreur due à l'arrondi
machine. Ces erreurs sont à l'origine des divergences éventuelles par rapport à la
solution exacte.
87
7.1.2 Formulation différentielle des systèmes algébro - différentiels
7.1.2.1 Méthodes analytiques spécifiques
Le système est dit ordinaire lorsqu'il ne comporte que des équations différentielles
ordinaires.
Une première méthode consiste en un traitement analytique des équations de départ.
Cette démarche est classiquement utilisée en mécanique générale et conduit à ne retenir
que des variables différentielles indépendantes et des inconnues de liaison
indépendantes.
Dans le cas du pendule la résolution numérique pas à pas est entièrement déterminée
par une seule équation différentielle du second ordre qui peut être mise sous la forme de
2 équations différentielles du 2ème ordre :
g
αɺɺ = − sin(α )
L
αɺ = β


⇔ 
g
ɺ
 β = − L sin(α )
Bien que satisfaisante, cette méthode ne peut que difficilement être généralisé pour tout
mécanisme, chaque mécanisme faisant l'objet de traitements analytiques spécifiques.
Les développements actuels des logiciels multicorps portent sur cette automatisation du
traitement analytique des équations initiales et se base sur des moteurs symboliques qui
réalisent le traitement analytique à partir de bibliothèques.
88
7.1.2.2 Formulation différentielle des équations de liaison
La partie algébrique des systèmes algébro-différentiels provient des équations de
liaisons. La dérivation des équations de liaison conduit à une formulation différentielle qui
conduit à l'expression des inconnues de liaison (multiplicateurs de Lagrange λ) en
fonction des variables cinématique non dérivées (au sens du système différentiel d'ordre
1).
Le système différentiel est défini par :
x
0  

.
A−1  Qd + B + C T .λ 
 qɺ   I n
 xɺ  =  0
  
La 3ème ligne s'exprime sous forme différentielle :
[C ][ xɺ ] = [ D ]
La deuxième ligne conduit à :
[ xɺ ] =  A−1  [Qd ] + [ B ] + C T  [λ ]
les deux équations précédentes permettent d'établir :
[C ]  A−1  [Qd ] + [C ]  A−1  [ B ] + [C ]  A−1  C T  [λ ] = [ D]
λ est donc défini par :
[λ ] = [C ]  A
−1
−1
 C   [ D ] − [C ]  A−1  [Qd ] − [C ]  A−1  [ B ]
 

T
En introduisant les multiplicateurs de Lagrange dans le système différentiel, il suit :
[ xɺ ] =  A−1  [Qd ] + [ B ] + C T   [C ]  A−1  C T   [ D ] − [C ]  A−1  [Qd ] − [C ]  A−1  [ B ]  
−1


Le système complété de [C ][ xɺ ] = [ D ] constitue une système différentiel ordinaire
explicite du premier ordre dont la résolution numérique permet dans un deuxième temps
le calcul des inconnue de liaisons :
−1
[λ ] = [C ]  A−1  C T   [ D ] − [C ]  A−1  [Qd ] − [C ]  A−1  [ B ]
Cette méthode simple reste très sensible aux perturbations numériques et conduit à la
perte d'informations géométriques constitutives du système.
Exercice :
Dans le cas du pendule simple, définir le système différentiel ordinaire explicite du
premier ordre par la méthode la formulation différentielle des équations de liaison
89
7.1.3 Reformulation analytique des systèmes algébro - différentiels
Quatre méthodes sont présentées : les deux premières (partition des coordonnées et
méthode de projection) visent une formulation en coordonnées indépendantes avec
élimination des multiplicateurs de Lagrange. Les deux dernières, dons une formulation
en coordonnées indépendantes mettent en œuvre un relâchement des contraintes
cinématique pour la "stabilisation de Baumgarte", dynamique pour la méthode des
pénalités".
7.1.3.1 partition des coordonnées
Les coordonnées généralisée [q] sont partitionnées en coordonnées indépendantes [v] et
en cordonnées dépendantes [u] (dépendante de [v])
Le système algébro-différentiel est résolu numériquement sur les coordonnées
indépendantes. Les coordonnées dépendantes sont obtenue algébriquement à partir des
cordonnées indépendantes.
u 
q
=
[ ]  
v 
Les équations de liaison aux différents ordres s'expriment :
c ( u, v, t )  = [ 0]
[Cu ][uɺ ] + [Cv ][vɺ] = [ d ]
[Cu ][uɺɺ] + [Cv ][vɺɺ] = [ D]
Dans l'hypothèse ou la matrice Jacobienne [Cu] est non singulière sur un domaine de
l'espace vectoriel des variables indépendantes le système peut être exprimé par :
[u ] = h ( v, t )
−1
−1
[uɺ ] = [Cu ] [ d ] − [Cu ] [Cv ][vɺ]
−1
−1
[uɺɺ] = [Cu ] [ D ] − [Cu ] [Cv ][vɺɺ]
90
La formulation implicite de Jacobie devient alors :
 Auu

 Avu
 Cu

Auv
Avv
Cv
CuT   uɺɺ Qdu + Bu 

CvT   vɺɺ =  Qdv + Bv 
0  λ   D 
La première ligne conduit à une formulation explicite des multiplicateurs de Lagrange
([Cu] est supposée non singulière) :
[λ ] = CuT 
−1
([Q ] + [ B ] − [ A ][uɺɺ] − [ A ][vɺɺ])
du
u
uu
uv
En introduisant cette équation dans la deuxième ligne et en utilisant la relation de
dépendance entre [u] et [v] nous obtenons un système différentiel ordinaire du second
ordre en terme de cordonnées généralisées indépendantes [v] :
 Aˆ  [ vɺɺ] = Qˆ  avec ...
 
 
−1
 Aˆ  = [ Avv ] − [ Avu ][Cu ]−1 [Cv ] + CvT  CuT  [ Auu ][Cu ]−1 [Cv ] + [ Auv ]
  
 
(
(
)
−1
Qˆ  = [Qdv ] + [ Bv ] − [ Avu ][Cu ]−1 [ D ] − CvT  CuT  [Qdu ] + [ Bu ] − [ Auu ][Cu ]−1 [ D ]
  
 
La réduction du système différentiel du second ordre en un système du premier ordre
conduit à :
 [ vɺ ] = [ w]
 Aˆ  [ vɺɺ] = Qˆ  ⇔ 
−1
 
 
ˆ  Qˆ 

ɺ
w
=
A
[
]

   
Le conditionnement de la Jacobienne peut conduire à des singularités locales. La
solution consiste à réaliser d’autres partitions des variables indépendantes et de répartir
les domaines de simulation afin de disposer en toute configuration d’une matrice
Jacobienne non singulière. La résolution numérique impose alors de basculer d’un
système à un autre selon les domaines de simulation parcourus par le mécanisme.
Exercice :
Dans le cas du pendule simple, définir le système différentiel ordinaire explicite du
premier ordre par partition des coordonnées
91
)
7.1.3.2 méthode de projection
Cette méthode est très proche de la précédente. Les coordonnées dépendantes [q] sont
liées par une relation d’algèbre linéaire aux coordonnées indépendantes [z] :
[ qɺ ] = [ R][ zɺ ]
[R] est la matrice de projection
Les équations de liaison au premier ordre sont définies par :
[C ][ qɺ ] = [0]
⇔
[C ][ R][ zɺ ] = [0]
⇔
[C ][ R] = [0]
Le rang de [R] est la dimension de l’espace des solutions du système d’équations
linéaires [C ][ qɺ ] = [ 0] : les équations de liaison sont une application linéaire engendrée
par les vecteurs colonnes de la matrice [R].
L’objectif est alors de déterminer [R]. Pour cela, nous introduisons la matrice booléenne
d’extraction [IB] définie comme la juxtaposition d’une matrice nulle (non nécessairement
carrée) et d’une matrice identité (de la taille (Ni) du nombre de coordonnées
indépendante) :
0 ⋯
[ I B ] =  ⋮ ⋱
 0 ⋯
0
⋮
0
1 ⋯
⋮ ⋱
0 ⋯
0
⋮  [Ni x N]
1 
En distinguant les coordonnées indépendantes des coordonnées dépendantes nous
obtenons :
 qɺ 
 qind 
[ I B ]  ɺdép  = [ qɺind ] = [ zɺ ]
de plus :
qɺ 
 qind 
[C ]  ɺdép  = [C ][ qɺ ] = [ 0]
Les deux équations précédentes peuvent donc se regrouper sous une même forme :
C 
0 
ɺ
q
=
[
]
I 
 zɺ 
 
 B
C : [(N-Ni) x N]
En inversant cette relation et en utilisant la définition de la matrice R nous obtenons :
−1
 C  0
[ qɺ ] =    ɺ  = [ S ][0] + [ R][ zɺ ] = [ S ]
IB  z 
0 
z
[ R]  ɺ 
92
C 
L’inversion de la matrice I B  permet de déterminer la matrice [ S ] [ R ] qui est
 
utilisée pour exprimer le système d’équations par la méthode de projection.
C 
L’inversibilité de la matrice I B  ne dépend que de la matrice bloc diagonale supérieure
 
[Cdép].
 C  Cdép
 =
IB   0
Cind 
I 
Cette condition sur [Cdép] est tout à fait équivalente à la condition de régularité de la
Jacobienne [Cu] de la méthode précédente.
C 
C 
0
D
Par dérivation de   [ qɺ ] =   il suit :   [ qɺɺ] =  
z
 zɺ 
 ɺɺ
IB 
IB 
−1
 C  D
ɺɺ
q
=
[
]
Par inversion :
 I   ɺɺ
 = [ S ]
 B  z 
 D
z
[ R]  ɺɺ 
Par multiplication des équations différentielles par la matrice [R]T et en introduisant
l’équation précédente :
[ R] [ A][ qɺɺ] − [ R] [C ] [λ ] = [ R] ([Qd ] + [ B])
T
T
z ]) − [ 0][ λ ] = [ R ] ([Qd ] + [ B ])
⇔ [ R ] [ A] ([ S ].[ D ] + [ R ][ ɺɺ
T
T
T
⇔ [ R ] [ A][ R ][ ɺɺ
z ] = [ R ] ([Qd ] + [ B ]) − [ R ] [ A][ S ].[ D ]
T
T
T
T
Nous disposons donc d'un système différentiel ordinaire du second ordre explicite, la
résolution se conduit de façon similaire à la méthode précédente.
A chaque instant, à partir des coordonnées indépendantes les coordonnées
dépendantes sont calculée grâce aux équations de liaison à l'ordre 0 et 1. La matrice C
étant déterminée, les matrices [R] et [S] peuvent être calculées à partir de l'inversion de
C 
I B  . Les équations différentielle sont alors actualisées puis intégrée pour obtenir les
coordonnées indépendantes et leur vitesse à l'instant suivant.
Exercice :
Dans le cas du pendule simple, définir le système différentiel ordinaire explicite du
premier ordre par partition des coordonnées
Exercice :
Dans le cas du pendule simple, définir le système différentiel ordinaire explicite du
second ordre par la méthode de projection.
Rappels : déterminant et inversion de matrice en Annexe 1
93
7.1.3.3 stabilisation de Baumgarte
L'idée de Baumgarte est de réintroduire les information sur les contraintes géomètriques
et cinématique dans le système en remplaçant les équations de liaison au second ordre
par le schéma de contrôle suivant :
[ cɺɺ] + 2 [α ][cɺ] + [ β ] [ c] = 0
2
Rappel : [c] représente les équations de liaison.
Dans cette expression correspondant à des équations différentielles du second ordre en
termes des variables [c], les matrices [α ] et [ β ] diagonale définie positives.
Leurs éléments α k et β k représente respectivement les coefficients d'amortissement et
les pulsations naturelles des réponses impulsionnelles. Le choix de ces coefficients
détermine l'effet stabilisateur sur les réponses. Un bon compromis consiste à retenir les
régimes apériodiques critiques obtenus pour α k = β k ce qui évite des réponses avec
oscillation tout en préservant le temps de réponse. Classiquement, les valeurs sont
choisies entre 1 et 20. Par principe le schéma de stabilisation tend à respecter les
équations c et leurs 2 dérivées successives. Toutefois ces équations ne sont pas
strictement respectées : leur égalité à 0 n’est donc plus vraie contrairement aux
méthodes précédentes. En conséquence les coefficients multiplicateurs scalaires
résultants des dérivations successives ne doivent plus être simplifiés.
Par exemple : c = x 2 + z 2 − L2 (c → 0)
Devient après dérivation : cɺ = 2 xxɺ + 2 zzɺ avec (cɺ → 0) … cɺ ≠ xxɺ + zzɺ
Le système de Jacobie devient donc :
 A C T   qɺɺ
 Qd + B


   =
2 
 D − 2α cɺ − β c 
C 0   λ 
Soit :
 A.qɺɺ + C T .λ = Qd + B

2
C.qɺɺ = D − 2α cɺ − β c
D’où :
qɺɺ = A−1 ( Qd + B ) − C T .λ 
C. A−1 ( Qd + B ) − C. A−1C T .λ = D − 2α cɺ − β 2c
Donc :
−λ = ( C. A−1.C T ) ( D − 2α cɺ − β 2c ) − C. A−1 ( Qd + B ) 
−1
qɺɺ = A−1 Qd + B + C T . ( C. A−1.C T ) ( D − 2α cɺ − β 2 c ) − C. A−1 ( Qd + B )  


−1
Exercice :
Dans le cas du pendule simple, définir le système implicite du second ordre par
stabilisation de Baumgarte
94
7.1.3.4 Méthode des pénalités
Le principe de la méthode est de relâcher physiquement les contraintes en leur associant
des degrés de liberté. Des termes cinétiques, potentiel et dissipatifs sont alors ajoutés au
Lagrangien pour prendre en compte ces ddl supplémentaires. Il en résulte un système
différentiel ordinaire dû à la disparition des contraintes.
Les équations de liaisons nous ont permis d'établir :
c ( q, t ) = 0
cɺ ( qɺ , q, t ) = 0 ⇔ [C ][ qɺ ] − [ d ] = [ 0]
cɺɺ( qɺɺ, qɺ , q, t ) = 0 ⇔ [C ][ qɺɺ] − [ D ] = [ 0]
La méthode des pénalités considère des fonction fictives (virtuelles) en terme des
variables [ c ] et [ cɺ ] . Ainsi, des termes fictifs d'énergie cinétique Tɶ , d'énergie
ɶ sont ajoutés au lagrangien.
potentielle Vɶ et de fonction de Rayleigh (dissipation) Φ
a
Si nous considérons des systèmes masse, ressort et amortisseur associés à ces
fonctions fictives et installés sur les contraintes, [ Ω ] et [ µ ] sont des matrices
diagonales positives représentant respectivement les pulsations naturelles et
amortissements de ces systèmes. [α ] est une matrice diagonale à très grande valeurs
réelles : ce sont les pénalités. Ce point de vue correspond à une non idéalisation des
contraintes entre les coordonnées généralisées. Les pénalités sont choisies pour
conserver le caractère réaliste entre les amplitudes dynamiques observées et celles des
dynamiques introduites par les fonctions fictives.
Paramètres
[Ω]
[α]
[αΩ2]
[αΩµ]
Valeur initiale
conseillée
ε =1
ε =1
µ=1 (à ajuster)
Rad.s-1
kg.m2
N.m
N.m.s
Rad.s-1
kg
N.m-1
N.m-1.s
Ω =1 (à ajuster)
α =107(à ajuster)
Définition
Pulsation
Masse généralisée
Rigidité généralisée
Amortissement Généralisé
95
L'introduction des termes fictifs précédents amène à évaluer un terme contribuant au
lagrangien total du système :
Lɶ = Tɶ − Vɶ
Les équations de Lagrange conduisent alors à :
T
 ∂L~  =  ∂cɺ  [α ][cɺ]
 ∂qɺ   ∂qɺ 
[]
T
T
 d ∂L~  =  d ∂cɺ  [α ][cɺ]+  ∂cɺ  [α ][cɺɺ]= Cɺ T [α ][cɺ]+[C ]T [α ][cɺɺ]
 dt ∂qɺ   dt ∂qɺ 
 ∂qɺ 
[]
T
T
 ∂L~  =  ∂cɺ  [α ][cɺ]−  ∂c  [α ][Ω]2[α ]= Cɺ T [α ][cɺ]−[C ]T [α ][Ω]2[c]
 ∂q   ∂q 
 ∂q 
en utilisant les propriétés suivantes :
 ∂cɺ  = ∂c  =[C ]
 ∂qɺ   ∂q 
[]
 ∂cɺ  = ∂ dc  =  d ∂c  = Cɺ
 ∂q   ∂q dt   dt ∂q 
La fonction dissipative de Rayleigh intervient au niveau des forces généralisées. Ces
termes sont évalués par la puissance virtuelle développée par ces actions.
[]
~
T
T
T
T ~
P *=−2[cɺ*] [α ][Ω][µ ][cɺ]=−2[qɺ*] [C ] [α ][Ω][µ ][cɺ]=[qɺ*] Q
[Q~]=−2[C ] [α ][Ω][µ ][cɺ]
T
96
Dans le cas d’une résolution par la méthode des pénalités, les équations de Lagrange
deviennent :
[A][qɺɺ]+[C ]T [α ][( cɺɺ]+2[Ω][µ ][cɺ]+[Ω]2[c])=([Qd ]+[B])
Or,
c ( q, t ) = 0
cɺ ( qɺ , q, t ) = 0 ⇔ [C ][ qɺ ] − [ d ] = [ 0]
cɺɺ( qɺɺ, qɺ , q, t ) = 0 ⇔ [C ][ qɺɺ] − [ D ] = [ 0]
Comme dans le cas de la stabilisation de Baumgart, par principe le schéma de résolution
tend à respecter les équations c et leurs 2 dérivées successives. Toutefois ces équations
ne sont pas strictement respectées : leur égalité à 0 n’est donc plus vraie contrairement
aux méthodes de partition et de projection. En conséquence les coefficients
multiplicateurs scalaires résultants des dérivations successives ne doivent plus être
simplifiés.
Par exemple : c = x 2 + z 2 − L2 (c → 0)
Devient après dérivation : cɺ = 2 xxɺ + 2 zzɺ avec (cɺ → 0) … cɺ ≠ xxɺ + zzɺ Le système peut lors
se présenter sous une forme différentielle ordinaire : les contraintes ont été relâchées :
([A]+[C ] [α ][C ])[qɺɺ]=[Qd ]+[B]+[Q~]+[B~]
T
Avec...
[B~]=[C ] [α ][D]−[C ] [α ][Ω] [c]
[Q~]=−2[C ] [α ][Ω][µ ][cɺ]
T
T
2
T
Finalement …
[ qɺɺ] = ([ A] + [C ] [α ][C ]) ([Qd ] + [ B ] + Qɶ  +  Bɶ  )
T
−1
soit
qɺ = p
pɺ =
([ A] + [C ] [α ][C ]) ([Qd ] + [ B] + Qɶ  +  Bɶ  ) = [ AA] .[ BB ]
T
−1
−1
[Ω] et [µ ] correspondent respectivement aux pulsations naturelles et amortissement. Ces
coefficients sont choisis de sorte à limiter les transitoires qui leurs sont inhérents.
[α ] est choisi de l’ordre de 107 fois plus grand que le plus grand des terme de [A].
Exercice :
Appliquer la méthode des pénalités au cas du pendule pour obtenir un système
différentiel ordinaire du second ordre
97
7.2 Résolution numérique du système algébro – différentiel
98
8 – Conclusion
99
Annexe 1
Déterminant et inversion d'une matrice carrée
Pour une matrice 2 × 2, on montre que la matrice inverse est donnée par :
Le nombre ad - bc est appelé déterminant de la matrice A, noté :
La matrice inverse A-1 n'existe donc que si det A est différent de zéro.
La matrice A est singulière si det A = 0, régulière dans le cas contraire. Ce résultat
se généralise à une matrice de dimension quelconque.
Le déterminant peut se calculer de manière récursive. Par exemple, pour n = 3, on a
, en développant par rapport à la première ligne :
Dans ce développement, chaque déterminant d'ordre 2 est appelé mineur du terme
qui le précède. Par exemple, le mineur de a est :
On peut développer le déterminant par rapport à n'importe quelle ligne ou colonne.
Pour chaque élément aij de la ligne ou colonne choisie :
•
le mineur est le déterminant de la sous-matrice obtenue en supprimant la ligne
i et la colonne j
•
le signe du produit est donné par le tableau :
+-+
-++-+
Cette méthode est valable pour un déterminant de taille quelconque. En fait pour n >
3, il vaut mieux utiliser un algorithme spécifique tel que l'algorithme de décomposition
LU.
100
Propriétés des déterminants :
•
det(AT) = det(A)
•
det(AB) = det(A) × det(B)
•
Le déterminant d'une matrice triangulaire ou diagonale est égal au produit des
éléments diagonaux. En particulier, det(I) = 1 (si I est la matrice unité)
•
Si A est régulière, det(A-1) = 1 / det(A)
puisque det(AA-1) = det(A) × det(A-1) = det(I) = 1
•
Si A est orthogonale, det(A) = ±1
puisque det(AAT) = [det(A)]2 = det(I) = 1
101
Download