DEPLACEMENT INFINITESIMAL DANS L’ESPACE DE LA TACHE
avec :
• La matrice des rotations infinitésimales
• Le vecteur δvtel que:
Le vecteur déplacement infinitésimal de l’organe terminal est défini par:
±T =
· ±R ±r 0T 0
¸
±T¢T¡1=
· ±®~ ±v 0T 0
¸
±®~=±R¢RT = 2
4 0 ¡±®z ±®y
±®z 0 ¡±®x
¡±®y ±®x 0 3 5
±r=±®~r+±v
±x=
· ±®
±r
¸
5.13 CALCUL EFFECTIF DE LA MATRICE JACOBIENNE
DEPLACEMENT INFINITESIMAL DANS L’ESPACE DES COORDONNES ARTICULAIRES
• T(q)est une fonction des coordonnées articulaires telles que
• La différentielle de T(q)
• De manière analogue à l’opérateur différentiel des vitesses ou des accélérations, on peut exprimer les dérivées partielles de matrices de transformations sous la forme
• Pour un joint rotoïde, on peut montrer que l’on a
• Pour un joint prismatique, on a:
où kest l’axe du joint (axe z = [0 0 1]T)
T =A1(q1)¢A2(q2):::Am(qm)
±T= Xm i=1
A1(q1)¢A2(q2):::@Ai
@qi
:::Am(qm)±qi
@Ai
@qi
=¢iAi
¢i=
· k~ 0 0T 0
¸
¢i=
· 0 k 0T 0
¸
de T
La définition chaque contribution Cisous la forme Ci= δiT T-1permet encore une fois de procéder par analogie avec l’opérateur différentiel des vitesses!
• Détaillons la valeur de Ci:
• Tous calculs faits, on obtient:
• Ses composantes (de rotation et de déplacements) peuvents être rassemblées dans le vecteur
A1(q1)¢A2(q2):::@Ai
@qi
:::Am(qm)=Ci¢T
Ci =(A1¢A2:::Ai¡1)@Ai
@qi
(A1¢A2:::Ai)¡1
=(A1¢A2:::Ai¡1)¢i(A1¢A2:::Ai¡1)¡1 Ci=
· c~i vi
0T 0
¸
di=
· ci
vi+c~ir
¸
5.13 CALCUL EFFECTIF DE LA MATRICE JACOBIENNE
• Mettons en connexion les expressions de la variation infinitésimale de la position de l’effecteur et la variation de la matrice de transformation homogéne en fonction des variation des variables articulaires
• On obtient l’expression de la matrice Jacobienne
±x= Xm
i=1
di±qi
J=
· c1 c2 ::: cm
v1+c~1r v2+c~2r ::: vm+c~mr
¸
• Pour un joint rotoïde
• Soit Ri-1 la matrice de rotation du système du corps i-1 par rapport au système absolu.
On trouve la composante de rotation et la composante de translation
• Soit la contribution du joint i à la matrice jacobienne
• Remarques:
– ciest la direction de l’articulation dans les axes absolus
– dans DH, l’axe du joint i est repéré par l’axe z du système du corps i-1 Ci=0Ai¡1¢¢i¢0A¡i¡11
~
ci=Ri¡1¢k~¢RTi¡1 vi=¡c~iri¡1
di=
· ci
~
ci(r¡ri¡1)
¸
5.13 CALCUL EFFECTIF DE LA MATRICE JACOBIENNE
• Pour un joint prismatique Soit Ri-1 la matrice de
rotation du système du corps i-1 par rapport au système absolu.
On trouve la composante de translation
• Soit la contribution du joint à la matrice jacobienne
• Remarques:
– ciest la direction de l’articulation dans les axes absolus
– dans DH, l’axe du joint i est repéré par l’axe z du système du corps i-1 vi=Ri¡1k=ci
di=
· 0 ci
¸
• La matrice Jacobienne J relie les vitesses de l’effecteur aux vitesses articulaires
• Où on a les contributions suivantes
• Avec
– zi-1la position de joint i
– pi-1,6la position de la main dans le repère i-1 positionné sur le joint i
·! v
¸
= J(q) = [J1(q);J2(q);:::J6(q)]q_(t)
Ji (q) = 8>
>>
>>
><
>>
>>
>>
:
"
zi¡1
zi¡1£ p(i¡1 );6
#
ifjointiisrotational;
"
0 zi¡1
#
ifjointiistranslational:
5.13 MATRICE JACOBIENNE DU PUMA
• Pour le PUMA qui est un robot 6R, il vient:
J(µ) =
· z0 z1 z2 z3 z4 z5
z0£ p0;6 z1£ p1;6 z2 £ p2;6 z3£ p3;6 z4£ p4;6 z5£ p5;6
¸
JOINT 1
• Orientation du joint
• Partie translation
z0 = k = 2 40
0 1 3 5
z0£ p0;6
0p6 = 2
4C1[C23C4S5d6+S23(d4+C5d6) +a2C2]¡S1(S4S5d6+d2) S1[C23C4S5d6+S23(d4+C5d6) +a2C2] +C1(S4S5d6+d2)
(¡S23C4S5+C23C5)d6+C23d4¡a2S2
3 5 =
2 4(0p6)x
(0p6)y
(0p6)z
3 5
k£ 0p6=k~0p6= 2 4
0 ¡1 0
1 0 0
0 0 0
3 5 2 4
(0p6)x (0p6)y (0p6)z 3 5 =
2 4¡(0p6)y
(0p6)x 0
3 5
5.13 MATRICE JACOBIENNE DU PUMA
• Contribution du joint 1
J1(µ) = 2 66 66 66 4
0 0 1
¡S1[C23C4S5d6+S23(d4+C5d6) +a2C2]¡C1(S4S5d6+d2) C1[C23C4S5d6+S23(d4+C5d6) +a2C2]¡S1(S4S5d6+d2)
0
3 77 77 77 5
JOINT 2
• Partie rotation
• Partie translation z1=0R1
2 4 0 0 1 3 5 =
2
4C1 0 ¡S1
S1 0 C1 0 ¡1 0
3 5 2 4 0 0 1 3 5 =
2 4¡S1
C1 0
3 5
z1£p1;6 = 0R1(k£ 1p6)
1
p
6= 2
4 C
23C
4S
5d
6+ S
23( d
4+ C
5d
6) + a
2C
2S
23C
4S
5d
6¡ C
23( d
4+ C
5d
6) + a
2S
2S
4S
5d
6+ d
23 1 A 6 5
5.13 MATRICE JACOBIENNE DU PUMA
• Partie translation
• Contribution joint 2 z1 £p1 ; 6 =
2
4C1 0 ¡S1 S1 0 C1
0 ¡1 0 3 5 2
4¡(S23C4S5d6¡C23(d4+C5d6) +a2S2 ) C23C4S5d6+S23(d4+C5d6) +a2C2
0
3 5
= 2
4¡C1 [S23C4S5d6¡C23(d4+C5d6) +a2S2]
¡S1 [S23C4S5d6¡C23(d4+C5d6) +a2S2]
¡[C2 3C4S5d6+S23(d4+C5d6) +a2C2] 3 5
J2(µ) = 2 66 66 66 4
¡S1
C1
0
¡C1[S2 3C4S5d6¡C23(d4+C5d6)+a2S2]
¡S1[S2 3C4S5d6¡C23(d4+C5d6)+a2S2]
¡[C2 3C4S5d6+S2 3(d4+C5d6)+a2C2] 3 77 77 77 5
JOINT 3
• Partie orientation
• Partie translation
0 R2 = 0 R1 1 R2
= 2
4C1 0 ¡S1 S1 0 C1
0 ¡1 0 3 5 2
4C2 ¡S2 0 S2 C2 0
0 0 1
3 5 =
2
4C1C2 ¡C1S2 ¡S1 S1C2 ¡S1S2 C1
¡S2 ¡C2 0 3 5
z2 =0R2k = 2 4¡S1
C1
0 3 5
z2£ p2;6 = 0R2(k~2p6)
5.13 MATRICE JACOBIENNE DU PUMA
• Partie translation
2p6 = 2
4C3C4S5d6+S3(d4+C5d6) S3C4S5d6¡C3(d4+C5d6)
S4S5d6
3 5
k£ 2p6 = 2
4¡[S3C4S5d6¡C3(d4+C5d6)] C3C4S5d6+S3(d4+C5d6)
0
3 5
z2 £ p2 ; 6 = 2
4C1 C2 ¡C1S2 ¡S1 S1 C2 ¡S1S2 C1
¡S2 ¡C2 0 3 5 2
4¡[S3C4S5d6¡C3(d4+C5d6 )] C3C4S5d6+S3(d4+C5d6)
0
3 5
= 2
4¡C1 [S23C4S5d6¡C23(d4+C5d6)]
¡S1 [S23C4S5d6¡C23(d4+C5d6)]
C2 3C4S5d6¡S23(d4+C5d6)]
3 5
• Contribution du joint 3
J3(µ) = 2 66 66 66 4
¡S1
C1
0
¡C1[S23C4S5d6¡C23(d4+C5d6)]
¡S1[S23C4S5d6¡C23(d4+C5d6)] C23C4S5d6¡S23(d4+C5d6)]
3 77 77 77 5
5.13 MATRICE JACOBIENNE DU PUMA
JOINT 4
• Contribution en orientation
0R3 = 0R22R3
= 2
4C1C2 ¡C1S2 ¡S1
S1C2 ¡S1S2 C1
¡S2 ¡C2 0 3 5 2
4C3 0 S3
S3 0 ¡C3
0 1 0
3 5 =
2
4C1C2 3 ¡S1 C1S23
S1C2 3 C1 S1S23
¡S2 3 0 C23
3 5
z3=0R3k = 2 4C1S23
S1S23
C23
3 5 J4 =
· z3
z3£ p3;6
¸
• Contribution en translation
z3£ p3;6 = 0R3(k£ 3p6) = 0R3 2
4¡C4S5d6 S4S5d6
0 3 5
= 2
4C1C23 ¡S1 C1S2 3
S1C23 C1 S1S2 3
¡S2 3 0 C23
3 5 2
4¡S4S5d6
C4S5d6
0 3 5
= 2
4¡C1C23S4S5d6¡S1C4S5d6
¡S1C23S4S5d6+C1C4S5d6
s23S4S5d6
3 5
5.13 MATRICE JACOBIENNE DU PUMA
• Contribution joint 4
J4(µ) = 2 66 66 66 4
C1S23
S1S23
C23
¡C1C23S4S5d6¡S1C4S5d6
¡S1C23S4S5d6+C1C4S5d6
s23S4S5d6
3 77 77 77 5
JOINT 5
• Contribution en orientation
0 R4 = 0 R3 3 R4
= 2 4
C1 C23 ¡S1 C1S23
S1 C23 C1 S1S23
¡S2 3 0 C23
3 5 2 4
C4 0 ¡S4
S4 0 C4
0 ¡1 0 3 5
= 2
4C1 C23C4¡S1S4 ¡C1S23 ¡C1C23S4¡S1C4
S1 C2 3C4+C1S4 ¡S1S23 S1C2 3S4+C1C4
¡S23C4 C2 3 S23S4
3 5
z4=0R3k = 2
4¡C1C23S4¡S1C4
S1C23S4+C1C4
S23S4
3 5 J5 = z4
z4£ p4;6
5.13 MATRICE JACOBIENNE DU PUMA
• Contribution en translation
z4 £ p4;6 = 0 R4 (k£ 4p6) = 0R4 2 4¡C5d6
S5d6 0
3 5
= 2
4C1 C2 3 C4¡S1S4 ¡C1S23 ¡C1C23S4¡S1C4 S1 C2 3 C4+C1S4 ¡S1S23 S1C23S4+C1C4
¡S23C4 C23 S23S4 3 5 2 4¡C5 d6
S5 d6 0
3 5
= 2
4(¡C1 C23C5¡S1S5)d6 (¡S1 C23C5+C1S5)d6
s23C5d6
3 5
• Contribution du joint 5
J5(µ) = 2 66 66 66 4
¡C1C23S4 ¡S1C4
S1C23S4+C1C4
S23S4
(¡C1C23C5 ¡S1S5)d6
(¡S1C23C5+C1S5)d6
s23C5d6
3 77 77 77 5
5.13 MATRICE JACOBIENNE DU PUMA
• JOINT 6
• Contribution en orientation J6 =
· z5
z5£ p5;6
¸
0R5 = 0R44R5
= 2
4C1C23C4¡S1S4 ¡C1S23 ¡C1C23S4¡S1C4
S1C23C4+C1S4 ¡S1S23 S1C23S4+C1C4
¡S23C4 C23 S23S4
3 5 2
4C5 0 S5
S5 0 ¡C5
0 1 0
3 5
=
"[C1C 23C 4¡S 1S 4 ] C 5¡C1S2 3S5 ¡C1C23S4¡S1C4 [C1C23C4¡S1S4]S5+ C 1S 23C 5
[S1C 23 C 4 + C 1S 4] C 5 +S1S2 3S5 S1C23S4+C1C4 [S1C23C4+C1S4]S5+ S 1 S 23 C 5
¡S 23 C 4 C 5¡C 23S5 S23S4 ¡S23C4S5+C23C 5
#
z5 =0R5 k = 2 4
C1C23C4S5 ¡S1S4S5 +C1S23C5 S1C23C4S5+C1S4S5+S1S23C5
¡S23C4S5+C23C5
3 5
• Contribution en translation
• Contribution du joint 6
z5 £ p5;6 = 0R5(k£ 5p6) = 0
J6(µ) = 2 66 66 66 4
C1C23C4S5¡S1S4S5+C1S23C5
S1C23C4S5+C1S4S5+S1S23C5
¡S23C4S5+C23C5
0 0 0
3 77 77 77 5
5.14 SOLUTION NUMERIQUE EFFICACE DU PROBLEME DE CINEMATIQUE INVERSE
• Problème: trouver les (q1, q2, … qm) à partir d’une solution initiale (q1*, q2*, … qm*) donnée de telle sorte que
• Soit T*
• Soit le résidu sur la matrice de transformation
• En développant en série le résidu de la matrice de transformation
• On obtient l’équation permettant de calculer la correction des variables articulaires T =A1(q1)¢A2(q2):::Am(qm)
T¤=A1(q1¤)¢A2(q2¤):::Am(qm¤)
±T=T¡T¤
±T = Xm
i=1
(Ci±qi)¢T+O(±q2)
±T¢T¡1= Xm
i=1
(Ci±qi)
DE CINEMATIQUE INVERSE
• Six quantités scalaires indépendantes peuvent être extraites
• Soit le vecteur collectant les corrections des paramètres
• L’équation itérative permettant de déterminer les corrections des paramètres est:
• L’équation est invertible si n=6 et si la matrice Jest de rang complet
• Rappelons que les quantités δαsont des quasi-coordonnées, car il ne s’agit pas de quantité intégrables
8<
:
±®x =(±T¢T¡1)32'¡(±T¢T¡1)23
±®y =(±T¢T¡1)13'¡(±T¢T¡1)31
±®z =(±T¢T¡1)21'¡(±T¢T¡1)12
8<
:
±rx =(±T¢T¡1)14¡±®zry+±®yrz
±ry =(±T¢T¡1)24+±®zrx¡±®xrz
±rz =(±T¢T¡1)34¡±®yrx+±®xry
±xT =[±®x±®y ±®z ±rx ±ry ±rz]
Jq=±x
5.15 CALCUL RECURSIF DES VITESSES EN COORDONNES DU REPERE ABSOLU
• Objectif:
– calculer
– Pour l ’efficacité, on veut tirer parti de la structure en chaîne ouverte
• A l’étape i:
– Tranformation du repère i par rapport au repère absolu 0
– Matrice différentielle des vitesses
¢_=T_¢T¡1
Ti=0Ai=0A1¢1A2:::i¡1Ai
0¢_i=T_i¢Ti¡1
• A l’étape i+1
– Transformation du repère i au repère i+1
– Matrice différentielle des vitesses
soit
Ti+1=Ti¢iAi+1
0¢_i+1=T_i+1¢Ti¡+11
=(Ti¢iA_i+1+T_i¢iAi+1)¢Ti¡+11
0
¢ _
i+1=
0¢ _
i+ T
i i¢ _
i+1T
i¡15.15 CALCUL RECURSIF DES VITESSES EN COORDONNES DU REPERE ABSOLU
• Pour un joint rotoïde
– La matrice différentielle des vitesses en coordonées locales
– Le vecteur vitesse angulaire – Le vecteur vitesse linéaire
– Interprétation:
• La vitesse angulaire du repère i+1 est la vitesse angulaire du repère i augmentée de la vitesse angulaire relative produire par le joint i
• La vitesse linéaire du repère i+1 est la vitesse linéaire du repère i à laquelle vient s’ajouter la contribution due à la vitesse angulaire du repère i+1 multiplié par la distance entre le repère i et le repère i+1
¢_i+1=q_i+1
· ~k 0 0T 0
¸
!i+1 =!i+q_i+1ci+1
vi+1=vi¡q_i+1c~i+1ri
_
ri+1=r_i+!~i+1(ri+1¡ri)
_ ri+1
!i+1
(ri+1¡ri
!i
_ ri
_ qi+1ci+1
COORDONNES DU REPERE ABSOLU
• Pour un joint prismatique
– La matrice différentielle des vitesses en coordonées locales
– Les vecteurs vitesse angulaire et vitesse linéaire
– Interprétation:
• La vitesse angulaire du repère i+1 est la vitesse angulaire du repère i
• La vitesse linéaire du repère i+1 est la vitesse linéaire du repère i à laquelle vient s’ajouter deux contributions. La première est due à la vitesse angulaire du repère i multiplié par la distance entre le repère i et le repère i+1. La seconde est due à l’accroissement de vitesse donnée par le joint prismatique.
¢_i+1=q_i+1
· 0 k 0T 0
¸
!i+1 =!i
_
ri+1 =r_i+!~i+1(ri+1¡ri)+q_i+1ci+1
5.16 CALCUL RECURSIF DES ACCELERATIONS EN COORDONNES DU REPERE ABSOLU
• Objectif:
– Calculer en tirant parti de la structure en chaîne ouverte
• A l’étape i:
– Matrice différentielle des accélérations
• A l’étape i+1:
– Soit
¢Ä=TÄ¢T¡1
0¢Äi=TÄi¢Ti¡1
0¢Äi+1= ÄTi+1¢Ti¡+11
= (Ti¢iAÄi+1+2T_i¢iA_i+ 1+ ÄTi¢iAi+1)Ti+1¡1
= ÄTi¢Ti¡1+Ti¢iAÄi+1¢iA¡i+ 11 ¢Ti¡1+ 2 _Ti¢Ti¡1¢Ti¡1¢iA_i+ 1¢iA¡i+ 11 ¢Ti¡1
0 ¢Äi + 1 = 0 ¢Äi +20¢_ ¢T ¢i¢_ ¢T¡1+T ¢i¢Ä ¢T¡1
• Pour un joint rotoïde:
– Les matrices différentielles en axes locaux
– Les accélérations angulaire et linéaire
– Après quelques (!) transformations algébriques, il vient i¢_i+1 = q_i+1
· k~ 0 0T 0
¸
i¢Äi+1 = qÄi+1
· k~ 0 0T 0
¸
¡q_i2+1
· ~kk~T 0 0T 0
¸
¯i+1=¯i+2q_i+ 1!~ic~i+ 1+qÄi+ 1~ci+ 1¡q_2i+ 1c~i+ 1c~Ti+ 1 ai+1 =ai¡(2q_i+1!~i+qÄi+1¡q_i2+1c~i+1)c~i+1ri
_
!i+1=!_i+q_i+1!~ici+1+qÄi+1ci+1
Ä
ri+1 =rÄi+(!~_i+1¡!~i+1!~iT+1)(ri+1¡ri)
5.16 CALCUL RECURSIF DES ACCELERATIONS EN COORDONNES DU REPERE ABSOLU
• Pour un joint prismatique:
– Les matrices différentielles en axes locaux
– Les accélérations angulaire et linéaire
– Après quelques (!) transformations algébriques, il vient i¢_i+1=q_i+1
· 0 k 0T 0
¸
i¢Äi+1=qÄi+1
· 0 k 0T 0
¸
¯i+1=¯i
v
i+1= v
i+ c
i+1q Ä
i+1+ 2 ! ~
ic
i+1q _
i+1_
!i+1=!_i
Ä
ri+ 1 =rÄi +(!~_i ¡!~i!~iT)(ri+1¡ri)+ci+ 1qÄi+ 1+2!~ici+ 1q_i+1
ACCELERATIONS EN COORDONNES ABSOLUES
• Les matrices différentielles
• Pour un joint rotoïde
• Pour un joint prismatique
0¢_i+1=0¢_i+Ti¢i¢_i+ 1¢Ti¡1
0¢Äi+1=0¢Äi+20¢_i¢Ti¢i¢_i+ 1¢Ti¡1+Ti¢i¢Äi+ 1¢Ti¡1
!i+1=!i+q_i+1ci+1
_
ri+1=r_i+!~i+1(ri+1¡ri) _
!i+1=!_i+qÄi+1ci+1+q_i+1!~ici+1
Ä
ri+1=rÄi+(!~_i+1¡!~i+1!~Ti+1)(ri+1¡ri)
!i+1 =!i
_
ri+1 =r_i+!~i+1(ri+1¡ri)+q_i+1ci+1
_
!i+1 =!_i
rÄi+1 =rÄi+(!~_i+1¡!~i+ 1!~i+1T )(ri+1¡ri)+ci+1qÄi+1+2!~i+ 1ci+1q_i+1
5.17 CALCUL RECURSIF DES VITESSES EN COORDONNES RELATIVES
• Objectif:Calculer l’opérateur différentiel des vitesses dans les axes liés aux corps
• Signification de la matrice des vitesses en coordonnées relatives
avec les vecteurs vitesse angulaire et linéaire rapportés dans les axes du corps
¡_=T¡1¢T_
¡_=
· !~0 v0 0T 0
¸
~
!0=RTR_ v0=RTr_
• Matrice des vitesses du repère i dans les axes du corps i
• Transformation du repère i au repère i+1
• Il vient
• La formule de récursion
¡_i=Ti¡1¢T_i
Ti+1=Ti¢iAi+1
¡_i+1 = iA¡i+11¢T_i¢iAi+1+iA¡i+11¢iA_i+1
¡_i+1 =Ti¡+11(Ti¢iA_i+1+T_i¢iAi+1)
¡_i+1 = iA¡i+11[¡_i+i¢_i+1]iAi+1
5.17 CALCUL RECURSIF DES VITESSES EN COORDONNES RELATIVES
• Définissons:
– La matrice de rotation pour passer du repère i au repère i+1: Ri+1
– La vitesse angulaire du repère i+1 exprimée dans les axes du repère i: ωi+1* – La vitesse angulaire du repère i exprimée dans son propre repère i: ωi’ – La position de l’origine du repère i+1 dans le repère i : di+1* – Le type de joint σ=0 si rotoïde et σ=1 si prismatique
• Lla vitesse angulaire du repère i+1 exprimée dans le repère i
Les formulation de propagation des vitesses ramenées dans le repère i+1
!?i+1=!i0+(1¡¾)q_i+1k
!i0+1 =RTi+1!?i+1
vi0+1 =RTi+1[vi0+!~i?+1d?i+1+¾kq_i+1]
COORDONNES RELATIVES
• Objectif:Calculer l’opérateur différentiel des accélérations dans les axes liés au corps
• Signification de la matrice des accélérations en coordonnées relatives
avec les vecteurs accélérations angulaire et linéaires rapportés dans les axes du corps
¡Ä=T¡1¢TÄ
¡Ä=
· ¯0 a0 0T 0
¸
a0=RTrÄ ¯0=RTRÄ=!~_0¡(!~0)T!~0
5.18 CALCUL RECURSIF DES ACCELERATIONS EN COORDONNES RELATIVES
• Matrice des accélérations du repère i dans les axes du corps i
• Il vient
• La formule de récursion
• L’accélération angulaire du repère i+1 dans le repère i
• La formule de propagation de l’accélération
¡Äi=Ti¡1¢TÄi
¡Äi+1=Ti¡+11(TÄi¢iAi+1+2T_i¢iA_i+1+Ti¢iAÄi+1)
¡Äi+1 =iA¡i+11[¡Äi+2¡_i¢i¢_i+1+i¢Äi+1]iAi+1
_
!?i+1 =!_i0+(1¡¾)[q_i+1!~0i+qÄi+1]k
_
!i0+1=RTi+1!_i?+1
0 T 0 _? ? T ? ? 0