Académique Documents
Professionnel Documents
Culture Documents
M1 EEAII
Parcours ViRob
Fabio MORBIDI
Laboratoire MIS !
Équipe Perception et Robotique!
E-mail: fabio.morbidi@u-picardie.fr!
1.1 Définitions
2.1 Positionnement
• Rotation et représentation de la rotation
• Attitude et matrices homogènes
2
Plan du cours
2.2 Cinématique
• Vitesse d’un solide
• Vecteur vitesse de rotation
• Mouvement rigide
• Torseur cinématique
θ1
base
La pose d'un solide (ou corps rigide) dans l'espace 3-D peut être
complètement décrite par 6 paramètres indépendants:
solide
z y� z�
x�
y O�
O x
6
solide
repère fixe
• Ces vecteurs sont exprimés par rapport au repère O-xyz par les équations:
R T R = I3
Si on multiplie à droite chaque côté de l’équation précédente par R−1
on trouve que
RT = R−1
c’est-à-dire, la transposée d’une matrice de rotation est égale à son inverse
10
Rotations élémentaires
• Les vecteurs unitaires de O-x’y’z’ peuvent être
exprimés par rapport au repère O-xyz comme:
cos α − sin α 0
x� = sin α , y� = cos α , z� = 0
0 0 1
Remarque: ces matrices seront très utiles pour décrire des rotations
dans l’espace 3D autour d’axes arbitraires
11
Rotations élémentaires: sommaire
1 0 0
Matrice de rotation autour
Rx (γ) = 0 cos γ − sin γ
de l’axe x d’un angle
γ
0 sin γ cos γ
cos β 0 sin β
Matrice de rotation autour
Ry (β) = 0 1 0
de l’axe y d’un angle β
− sin β 0 cos β
cos α − sin α 0
Matrice de rotation autour
Rz (α) = sin α cos α 0
de l’axe z d’un angle
α
0 0 1
Remarque:
Pour les rotations élémentaires, la propriété suivante est vérifiée:
et
p�x
p� = p�y par rapport à O-x’y’z’
p�z
13
Représentation d’un vecteur
Mais p et p� sont deux représentations du même point P, donc
� �
p = p�x �
x + p�y �
y + p�z �
z = � �
x y z �
p�
p = R p�
p � = RT p
14
Représentation d’un vecteur
Exemple:
Deux repères avec la même origine et une rotation relative d’un angle α
autour de l’axe z
On trouve que:
Remarque:
La matrice Rz (α) représente non seulement l'orientation d'un repère par
rapport à un autre, mais elle décrit également la transformation d'un vecteur
dans un repère en un autre avec la même origine
15
Composition de matrices de rotation
Problème: comment composer plusieurs rotations ?
Considérons trois repères O-x0 y0 z0, O-x1 y1 z1 , O-x2 y2 z2 avec la même origine O
O-x2 y2 z2 O-x1 y1 z1
P
O
O-x0 y0 z0
16
Composition de matrices de rotation
Donc
p1 = R12 p2
p0 = R01 p1
p0 = R02 p2
Mais alors:
17
Composition de matrices de rotation
Remarque:
• La rotation d'ensemble peut être exprimée comme une séquence
de rotations partielles
• Chaque rotation est définie par rapport à la précédente
• Le repère par rapport à lequel la rotation se produit est appelé repère courant
• La composition de rotations successives est obtenue par multiplication à droite
des matrices de rotation en suivant l'ordre donné des rotations
• Avec notre notation, on a que:
19
Composition de matrices de rotation
• Rotations successives d'un objet autour des axes du repère courant
a)
�=
b)
20
Composition de matrices de rotation
• Rotations successives d'un objet autour des axes du repère fixe
a)
�=
b)
21
Représentations de la rotation: introduction
• Les matrices de rotation fournissent une description redondante
de l’orientation d’un corps
23
Représentation roulis-tangage-lacet
• Représentation de l'orientation utilisée en aéronautique pour décrire
l’attitude d’un avion
T
• Les angles φ = [ϕ, θ, ψ] représentent des rotations définies dans
un repère fixe attaché au centre de masse de l’avion
x
lacet
ψ (yaw)
θ ϕ
y z
tangage
(pitch)
roulis (roll)
24
Représentation roulis-tangage-lacet
La rotation décrite par les angles de roulis, tangage et lacet est obtenue
comme composition de 3 rotations élémentaires:
cϕ = cos ϕ , sθ = sin θ
25
Représentation roulis-tangage-lacet
Problème inverse: determiner les angles de roulis, tangage et lacet qui
correspondent à une matrice de rotation donnée:
r11 r12 r13
R = r21 r22 r23
r31 r32 r33
ψ = Atan2(r32 , r33 )
ϕ = Atan2(−r21 , −r11 )
� � �
2 2
θ = Atan2 − r31 , − r32 + r33
ψ = Atan2(−r32 , −r33 )
26
Représentation roulis-tangage-lacet
Remarque 1:
• Si cos θ = 0 les solutions précédentes sont dégénerés: dans ce cas on peut
seulement déterminer la somme ou difference de ϕ et ψ
Remarque 2:
• Atan2(y, x) est la fonction arctangente à 2 arguments
• Cette représentation est utile, par ex. pour planifier la trajectoire de l’effecteur
d’un manipulateur
z r = [rx , ry , rz ]T
θ
Vecteur unitaire (�r� = 1 )
r de l’axe de rotation dans le
repère O-x y z
O y
L’angle θ est considéré comme positif
si la rotation autour de l’axe r est faite
dans le sens anti-horaire
x
28
Représentation angle/axe
rx2 (1 − cθ ) + cθ rx ry (1 − cθ ) − rz sθ rx rz (1 − cθ ) + ry sθ
R(θ, r) = rx ry (1 − cθ ) + rz sθ ry2 (1 − cθ ) + cθ ry rz (1 − cθ ) − rx sθ
rx rz (1 − cθ ) − ry sθ ry rz (1 − cθ ) + rx sθ rz2 (1 − cθ ) + cθ
Proprieté
R(−θ, −r) = R(θ, r)
• Une rotation d’un angle −θ autour de l’axe −r ne peut pas être distinguée
d’un rotation d’un angle θ autour de l’axe r
29
Représentation angle/axe
Problème inverse: determiner l’angle et l’axe qui correspondent à une matrice
de rotation donnée:
r11 r12 r13
R = r21 r22 r23
r31 r32 r33
Si sin θ �= 0 on obtient:
� �
r11 + r22 + r33 − 1
θ = arccos angle
2
r32 − r23
1
r = r13 − r31 axe
2 sin θ
r21 − r12
30
Représentation angle/axe
• Si sin θ = 0, les équations précédentes ne sont pas définies
Pour resoudre le problème inverse, il faut travailler avec l’expression
spécifique de la matrice R et trouver des formules de resolution pour
les deux cas θ = 0 et θ = π