Beruflich Dokumente
Kultur Dokumente
Benoı̂t Magnain
benoit.magnain@ensi-bourges.fr
Préambule
Introduction
Paramétrage en robotique
Paramétrage des solides rigides
Changement de base
Matrices de passage homogènes
Paramétrage de DH et DHKK
Idée :
Pour le calcul automatique des modèles nous avons besoin d’un
outil de description systématique et minimale des morphologies.
Paramétrage de Denavit-Hartenberg
Paramètres de Denavit-Hartenberg
1. θi : angle entre →
−xi et −
x− →
i +1 autour de zi
→
−
2. ri : distance signée entre −
→xi et −
x− → →
−
i +1 le long de zi
3. d : distance signée entre −
i
→
z et −z−→ le long de −
i x−→
i +1 i +1
4. αj : angle entre →
−
zi et −
z− → −−→
i +1 autour de xi +1
Paramétrage de Denavit-Hartenberg
di
−
z−→ αi
i +1
x−−→
i +1
y−−→
i +1
ri
−
→
zi
−
→
yi
θi
−
→
xi
Application
(S3 ) (S4 )
(S2 )
(S5 )
(S1 )
(S0 )
(S6 )
Application
(S3 ) (S4 )
(S2 )
(articulation 2,q2 ) (articulation 3,q3 )
(articulation 1,q1 )
(articulation 4,q4 )
(S5 )
(S1 )
(articulation 5,q5 )
(S0 )
(articulation 0,q0 )
(S6 )
Application
(S3 ) (S4 )
(S2 )
(articulation 2,q2 ) (articulation 3,q3 )
(articulation 1,q1 )
(articulation 4,q4 )
(S5 )
(S1 )
−
→
z0
−
→
y0
O0
−
→ (articulation 5,q5 )
x0
(S0 )
(articulation 0,q0 )
(S6 )
Application
−
→ (S3 ) (S4 )
z1
(S2 )
(articulation 2,q2 ) (articulation 3,q3 )
(articulation 1,q1 )
(articulation 4,q4 )
(S5 )
(S1 )
−
→
z0
−
→
y0
O0
−
→ (articulation 5,q5 )
x0
(S0 )
(articulation 0,q0 )
(S6 )
Application
−
→ (S3 ) (S4 )
z1
−
→
z2
(S2 )
(articulation 2,q2 ) (articulation 3,q3 )
(articulation 1,q1 )
(articulation 4,q4 )
(S5 )
(S1 )
−
→
z0
−
→
y0
O0
−
→ (articulation 5,q5 )
x0
(S0 )
(articulation 0,q0 )
(S6 )
Application
−
→ (S3 ) −
→
z3 (S4 )
z1
−
→
z2
(S2 )
(articulation 2,q2 ) (articulation 3,q3 )
(articulation 1,q1 )
(articulation 4,q4 )
(S5 )
(S1 )
−
→
z0
−
→
y0
O0
−
→ (articulation 5,q5 )
x0
(S0 )
(articulation 0,q0 )
(S6 )
Application
−
→ (S3 ) −
→
z3 (S4 )
z1
−
→
z2
−
→
z4
(S2 )
(articulation 2,q2 ) (articulation 3,q3 )
(articulation 1,q1 )
(articulation 4,q4 )
(S5 )
(S1 )
−
→
z0
−
→
y0
O0
−
→ (articulation 5,q5 )
x0
(S0 )
(articulation 0,q0 )
(S6 )
Application
−
→ (S3 ) −
→
z3 (S4 )
z1
−
→
z2
−
→
z4
(S2 )
(articulation 2,q2 ) (articulation 3,q3 )
(articulation 1,q1 )
(articulation 4,q4 )
(S5 )
(S1 )
−
→
z0
−
→
y0 −
→
z5
O0
−
→ (articulation 5,q5 )
x0
(S0 )
(articulation 0,q0 )
(S6 )
Application
−
→ (S3 ) −
→
z3 (S4 )
z1
−
→
z2
−
→
z4
(S2 )
(articulation 2,q2 ) (articulation 3,q3 )
(articulation 1,q1 )
(articulation 4,q4 )
(S5 )
(S1 )
−
→
z0
−
→
y0 −
→
z5
O0
−
→ (articulation 5,q5 )
x0
(S0 )
(articulation 0,q0 )
(S6 ) −
→
z6
Application
−
→
y1
−
→ (S3 ) −
→
z3 (S4 )
z1
−
→ −
→
z2
x1
−
→
z4
(S2 )
(articulation 2,q2 ) (articulation 3,q3 )
(articulation 1,q1 )
(articulation 4,q4 )
(S5 )
(S1 )
−
→
z0
−
→
y0 −
→
z5
O0
−
→ (articulation 5,q5 )
x0
(S0 )
(articulation 0,q0 )
(S6 )
Application
−
→
y1 −
→
y2
−
→ (S3 ) −
→
z3 (S4 )
z1
−
→ −
→
z2 −
→
x1 x2
−
→
z4
(S2 )
(articulation 2,q2 ) (articulation 3,q3 )
(articulation 1,q1 )
(articulation 4,q4 )
(S5 )
(S1 )
−
→
z0
−
→
y0 −
→
z5
O0
−
→ (articulation 5,q5 )
x0
(S0 )
(articulation 0,q0 )
(S6 )
Application
−
→
y1 −
→
y2 −
→
x3
−
→ (S3 ) −
→
z3 (S4 )
z1
−
→ −
→
z2 −
→
x1 x2 −
→
y3
−
→
z4
(S2 )
(articulation 2,q2 ) (articulation 3,q3 )
(articulation 1,q1 )
(articulation 4,q4 )
(S5 )
(S1 )
−
→
z0
−
→
y0 −
→
z5
O0
−
→ (articulation 5,q5 )
x0
(S0 )
(articulation 0,q0 )
(S6 )
Application
−
→
y1 −
→
y2 −
→
x3 −
→
x4
−
→ (S3 ) −
→
z3 (S4 ) −
→
y4
z1
−
→ −
→
z2 −
→
x1 x2 −
→
y3
−
→
z4
(S2 )
(articulation 2,q2 ) (articulation 3,q3 )
(articulation 1,q1 )
(articulation 4,q4 )
(S5 )
(S1 )
−
→
z0
−
→
y0 −
→
z5
O0
−
→ (articulation 5,q5 )
x0
(S0 )
(articulation 0,q0 )
(S6 )
Application
−
→
y1 −
→
y2 −
→
x3 −
→
x4
−
→ (S3 ) −
→
z3 (S4 ) −
→
y4
z1
−
→ −
→
z2 −
→
x1 x2 −
→
y3
−
→
z4
(S2 )
(S5 )
(S1 )
−
→
z0
−
→
y0 −
→
z5
O0 −
→
y5
−
→
x0 −
→
x5
(S0 )
(S6 )
Application
−
→
y1 −
→
y2 −
→
x3 −
→
x4
−
→ (S3 ) −
→
z3 (S4 ) −
→
y4
z1
−
→ −
→
z2 −
→
x1 x2 −
→
y3
−
→
z4
(S2 )
(S5 )
(S1 )
−
→
z0
−
→
y0 −
→
z5
O0 −
→
y5
−
→
x0 −
→
x5
(S0 )
−
→
z6
(S6 )
−
→
y6
−
→
x6
Application
i σi Rot(→
−
zi , θi ) Tr(→
−
zi , ri ) Tr(x−
− →
i +1 , di ) Rot(x−
− →
i +1 , αi ) Fig.
−
→ −
→ −
→ −
→
T01 0 z0 z0 x1 x1
−
→ −
→ −
→ −
→
T12 1 z1 z1 x2 x2
−
→ −
→ −
→ −
→
T23 2 z2 z2 x3 x3
−
→ −
→ −
→ −
→
T34 3 z3 z3 x4 x4
−
→ −
→ −
→ −
→
T45 4 z4 z4 x5 x5
−
→ −
→ −
→ −
→
T56 5 z5 z5 x6 x6
Application
i σi Rot(→
−
zi , θi ) Tr(→
−
zi , ri ) Tr(x−
− →
i +1 , di ) Rot(x−
− →
i +1 , αi ) Fig.
−
→ −
→ −
→ −
→
T01 0 1 ✔ z0 z0 x1 x1
−
→ −
→ −
→ −
→
T12 1 1 ✔ z1 z1 x2 x2
−
→ −
→ −
→ −
→
T23 2 1 ✔ z2 z2 x3 x3
−
→ −
→ −
→ −
→
T34 3 1 ✔ z3 z3 x4 x4
−
→ −
→ −
→ −
→
T45 4 1 ✔ z4 z4 x5 x5
−
→ −
→ −
→ −
→
T56 5 1 ✔ z5 z5 x6 x6
Application
−
→
y1 −
→
y2 −
→
x3 −
→
x4
−
→ (S3 ) −
→
z3 (S4 ) −
→
y4
z1
−
→ −
→
z2 −
→
O1 x1 x2 −
→
y3
−
→
z4
(S2 )
(S5 )
(S1 )
−
→
z0
−
→
y0 −
→
z5
O0 −
→
y5
−
→
x0 −
→
x5
(S0 )
−
→
z6
(S6 )
−
→
y6
−
→
x6
Application
−
→
y1 −
→
y2 −
→
x3 −
→
x4
−
→ (S3 ) −
→
z3 (S4 ) −
→
y4
z1
−
→ −
→
z2 −
→
O1 x1 O2 x2 −
→
y3
−
→
z4
(S2 )
(S5 )
(S1 )
−
→
z0
−
→
y0 −
→
z5
O0 −
→
y5
−
→
x0 −
→
x5
(S0 )
−
→
z6
(S6 )
−
→
y6
−
→
x6
Application
−
→
x3
−
→
y1 →
−
y2 −
→
x4
−
→ (S3 ) (S4 ) −
→
y4
z1 →
−
y3
−
→ −
→
z2 −
→
O1 x1 O2 = 0 3 x2
→
−
z3 −
→
z4
(S2 )
(S5 )
(S1 )
−
→
z0
−
→
y0 −
→
z5
O0 −
→
y5
−
→
x0 −
→
x5
(S0 )
−
→
z6
(S6 )
−
→
y6
−
→
x6
Application
−
→
x3
−
→
y1 →
−
y2 −
→
x4
−
→ (S3 ) (S4 ) −
→
y4
z1 →
−
y3
−
→ −
→
z2 O4
O1 x1 O2 = 0 3 →
−
x2
→
−
z3 −
→
z4
(S2 )
(S5 )
(S1 )
−
→
z0
−
→
y0 −
→
z5
O0 −
→
y5
−
→
x0 −
→
x5
(S0 )
−
→
z6
(S6 )
−
→
y6
−
→
x6
Application
−
→
x3 −
→
−
→
y1 →
− z5
y2 −
→
x4 −
→
y5
−
→ (S3 ) (S4 ) −
→
y4
z1 −
→
y3
→
−
z2
O1 −
→
x1 O2 = 0 3 →
−
x2 O4 = O5 −
→
x5
→
−
z3 −
→
z4
(S2 )
(S5 )
(S1 )
−
→
z0
−
→
y0
O0
−
→
x0
(S0 )
−
→
z6
(S6 )
−
→
y6
−
→
x6
Application
−
→
x3 −
→
−
→
y1 →
− z5
y2 −
→
x4 −
→
y5
−
→ (S3 ) (S4 ) −
→
y4
z1 −
→
y3
→
−
z2
O1 −
→
x1 O2 = 0 3 →
−
x2 O4 = O5 −
→
x5
→
−
z3 −
→
z4
(S2 )
(S5 )
(S1 )
−
→
z0
−
→
y0
O0
−
→
x0
(S0 )
−
→
z6
(S6 )
−
→
y6
−
→
x6
O6
Application
i σi Rot(→
−
zi , θi ) Tr(→
−
zi , ri ) Tr(x−
− →
i +1 , di ) Rot(x−
− →
i +1 , αi ) Fig.
−
→ −
→ −
→ −
→
T01 0 1 q0 z0 l1 z0 0 x1 π
2
x1 π
2
−
→ −
→ −
→ −
→
T12 1 1 q1 z1 0 z1 l2 x2 0 x2 0
−
→ −
→ −
→ −
→
T23 2 1 q2 z2 0 z2 0 x3 π
2
x3 π
2
−
→ −
→ −
→ −
→
T34 3 1 q3 z3 l3 + l4 z3 0 x4 − π2 x4 0
−
→ −
→ −
→ −
→
T45 4 1 q4 z4 0 z4 0 x5 − π2 x5 − π2
−
→ −
→ −
→ −
→
T56 5 1 q5 z5 −(l5 + l6 ) z5 0 x6 0 x6 0
1. αi : angle entre −
z− → → − −−→
i −1 et zi autour de xi −1
2. di : distance signée entre −z− → − → −−→
i −1 et zi le long de xi −1
3. θ : angle entre −
i x−→ et − →x autour de −
i −1 i
→
z i
4. ri : distance signée entre −
x− → → − →
−
i −1 et xi le long de zi
−
→
zi
−
z−→ −
→
i −1 yi
−
→
xi
−
y−→ θi
i −1
−
x−→
i −1 αi
ri
di
Application
−
→
z0
−
→
y0
O0
−
→
x0
(S0 )
Application
(S3 ) (S4 )
(S2 )
(S5 )
(S1 )
−
→
z0
−
→
y0
O0
−
→
x0
(S0 )
(S6 )
Application
(S3 ) (S4 )
(S2 )
(articulation 3,q3 ) (articulation 4,q4 )
(articulation 2,q2 )
(articulation 5,q5 )
(S5 )
(S1 )
−
→
z0
−
→
y0
O0
−
→ (articulation 6,q6 )
x0
(S0 )
(articulation 1,q1 )
(S6 )
Application
(S3 ) −
→ (S4 )
z4
−
→
z2 −
→ −
→
z5
z3
(S2 )
(S5 )
(S1 )
−
→
z0 = −
→
z1
−
→
y0
O0 −
→
z6
−
→
x0
(S0 )
(S6 )
Application
−
→ −
→
x4
x3
(S3 ) −
→ (S4 )
z4
−
→
x2 −
→
−
→
z2 −
→
z3 −
→
z5 x5
(S2 )
(S5 )
(S1 )
−
→
z0 = −
→
z1
→
−
y0
O0 −
→
x1 −
→
z6
−
→
x0
−
→
x6
(S0 )
(S6 )
Application
−
→
y5
−
→
y2 −
→ −
→
x3 x4
−
→
y3 (S3 ) −
→ (S4 )
z4
−
→
x2 −
→
−
→
z2 −
→
z3 −
→
z5 x5
−
→
y4
(S2 )
(S5 )
(S1 )
−
→
z0 = −
→
z1
−
→
y1
→
−
y0
O0 −
→
x1 −
→
z6
−
→
x0 −
→
y6
−
→
x6
(S0 )
(S6 )
Application
i σi Rot(x−i−→
−1 , αi ) Tr(x−− →
i −1 , di ) Tr(→
−
zi , ri ) Rot(→
−
zi , θi ) Fig.
−
→ −
→ −
→ −
→
T01 1 x0 x0 z1 z1
−
→ −
→ −
→ −
→
T12 2 x1 x1 z2 z2
−
→ −
→ −
→ −
→
T23 3 x2 x2 z3 z3
−
→ −
→ −
→ −
→
T34 4 x3 x3 z4 z4
−
→ −
→ −
→ −
→
T45 5 x4 x4 z5 z5
−
→ −
→ −
→ −
→
T56 6 x5 x5 z6 z6
Application
i σi Rot(x−i−→
−1 , αi ) Tr(x−− →
i −1 , di ) Tr(→
−
zi , ri ) Rot(→
−
zi , θi ) Fig.
−
→ −
→ −
→ −
→
T01 1 1 x0 x0 z1 ✔ z1
−
→ −
→ −
→ −
→
T12 2 1 x1 x1 z2 ✔ z2
−
→ −
→ −
→ −
→
T23 3 1 x2 x2 z3 ✔ z3
−
→ −
→ −
→ −
→
T34 4 1 x3 x3 z4 ✔ z4
−
→ −
→ −
→ −
→
T45 5 1 x4 x4 z5 ✔ z5
−
→ −
→ −
→ −
→
T56 6 1 x5 x5 z6 ✔ z6
Application
−
→
y5
−
→
y2 −
→ −
→
x3 x4
−
→
y3 (S3 ) −
→ (S4 )
z4
−
→
x2 −
→
−
→
z2 −
→
z3 −
→
z5 x5
−
→
y4
(S2 )
(S5 )
(S1 )
−
→
z0 = −
→
z1
−
→
y1
→
−
y0
O0 = 0 1 −
→
x1 −
→
z6
−
→
x0 −
→
y6
−
→
x6
(S0 )
(S6 )
Application
→
−
z1 −
→
y5
−
→
y2 −
→ −
→
x3 x4
−
→
y1 −
→
y3 (S3 ) −
→ (S4 )
z4
→
−
x2 −
→
−
→
x1 O1 = O2 −
→ −
→ −
→ x5
x2 z3 −
→ z5
y4
(S2 )
(S5 )
(S1 )
−
→
z0
→
−
y0
O0 −
→
x1 −
→
z6
−
→
x0 −
→
y6
−
→
x6
(S0 )
(S6 )
Application
−
→
y5
−
→
y2 −
→ −
→
x3 x4
−
→
y3 (S3 ) −
→ (S4 )
z4
→
− −
→
−
→
z2 O1 = O2 x 2 −
→ O3 −
→ x5
z3 −
→ z5
y4
(S2 )
(S5 )
(S1 )
−
→
z0 = −
→
z1
−
→
y1
→
−
y0
O0 −
→
x1 −
→
z6
−
→
x0 −
→
y6
−
→
x6
(S0 )
(S6 )
Application
−
→
y5
−
→
y2 −
→ −
→
x3 x4
−
→
y3 (S3 ) −
→ (S4 )
z4
→
− −
→
−
→
z2 O1 = O2 x 2 −
→ O3 O4 −
→ x5
z3 −
→ z5
y4
(S2 )
(S5 )
(S1 )
−
→
z0 = −
→
z1
−
→
y1
→
−
y0
O0 −
→
x1 −
→
z6
−
→
x0 −
→
y6
−
→
x6
(S0 )
(S6 )
Application
−
→
y5
−
→
y2 −
→ −
→
x3 x4
−
→
y3 (S3 ) −
→ (S4 )
z4
→
− O4 = O5 −
→
−
→
z2 O1 = O2 x 2 −
→ O3 −
→ x5
z3 −
→ z5
y4
(S2 )
(S5 )
(S1 )
−
→
z0 = −
→
z1
−
→
y1
→
−
y0
O0 −
→
x1 −
→
z6
−
→
x0 −
→
y6
−
→
x6
(S0 )
(S6 )
Application
−
→
y5
−
→
y2 −
→ −
→
x3 x4
−
→
y3 (S3 ) −
→ (S4 )
z4
→
− O4 = O5 −
→
−
→
z2 O1 = O2 x 2 −
→ O3 −
→ x5
z3 −
→ z5
y4
(S2 )
(S5 )
(S1 )
−
→
z0 = −
→
z1
−
→
y1
→
−
y0
O0 −
→
x1 −
→
z6
−
→
x0 −
→
O6 y6
−
→
x6
(S0 )
(S6 )
Application
i σi Rot(x−i−→
−1 , αi ) Tr(x−− →
i −1 , di ) Tr(→
−
zi , ri ) Rot(→
−
zi , θi ) Fig.
−
→ −
→ −
→ −
→
T01 1 1 0 x0 0 x0 l1 z1 q1 z1 π
2
−
→ −
→ −
→ −
→
T12 2 1 π
2
x1 0 x1 0 z2 q2 z2 0
−
→ −
→ −
→ −
→
T23 3 1 0 x2 l2 x2 0 z3 q3 z3 π
2
−
→ −
→ −
→ −
→
T34 4 1 π
2
x3 0 x3 l3 + l4 z4 q4 z4 0
−
→ −
→ −
→ −
→
T45 5 1 − π2 x4 0 x4 0 z5 q5 z5 − π2
−
→ −
→ −
→ −
→
T56 6 1 − π2 x5 0 x5 −(l5 + l6 ) z6 q6 z6 − π2