3
Laboratorium Podstaw Robotyki - 5
gdzie nx,ny,nz stanowią składowe wersora n wzdłuż odpowiednich osi układu {B}. Powyższe równania można zapisać w postaci następującej ortonormalnej macierzy rotacji:
Ttx Ox Ux |
nTi oTi aTi | ||
O a] = |
ny °y ay |
= |
nTj oTj aTj |
nz oz az |
nrk o1 k aTk |
Powyższa macierz może być interpretowana na trzy sposoby [4]:
• jako reprezentacja orientacji osi układu {A} względem osi układu {B},
• jako operator obrotu wektora d w nowy wektor Rd w tym samym układzie współrzędnych,
• jako operator przekształcenia współrzędnych punktu dA we współrzędne w układzie {i?} (po uzgodnieniu początków układów {.A} i {B}).
Macierz rotacji (1) jest nadmiarową (redundantną) reprezentacją rotacji. Minimalna reprezentacja rotacji w przestrzeni 3D składa się z trzech niezależnych parametrów zwanych kątami Eulera odpowiadających złożeniu sekwencji trzech elementarnych obrotów układu {A} względem wybranych osi w przestrzeni. Reprezentacja taka zwana jest także lokalną parametryzacją grupy SO(3), której elementami są macierze rotacji1. Opis taki nie jest jednoznaczny - istnieje dwanaście różnych zbiorów kątów Eulera odpowiadających możliwym sekwencjom rotacji elementarnych. W robotyce najbardziej popularne są następujące dwie kowencje:
1. kąty XYZ (zwane kątami RPY z ang. Roll-Pitch- Yaw - kołysanie boczne, kołysanie wzdłużne, zbaczanie): wyjściowa macierz rotacji wynika ze złożenia następującej sekwencji obrotów realizowanych wokół osi ustalonego układu odniesienia {B}: obrót o kąt ip wokół osi Xb, obrót o kąt d wokół osi Yg, obrót o kąt p wokół osi Zb-
Ra R= RazMRayMRaxM) = (2)
cos p — sin 95 0 |
COSI? |
0 |
sini? |
'1 0 |
0 | ||
sin 1p cos |
p 0 |
0 |
1 |
0 |
0 cos ip |
— sin ip |
= |
0 0 |
1 |
— sini? |
0 |
COSI? |
0 sin^> |
cos ip | |
cos p cos d |
cos p sin dsinip - |
sin p cos ip cos p sin |
d cos ip |
sin p sin ip | |||
sin p cos d |
sin p sin d sin rp + |
cos ip cos 1/ |
sin p sin |
d cos ip — |
cos p sin ip | ||
— sini? |
cos d sin |
cos 1? cos |
2. kąty ZYZ (zwane kątami precesji, nutacji, obrotu własnego): wyjściowa macierz rotacji Rą wynika ze złożenia następującej sekwencji obrotów realizowanych wokół osi bieżącego układu odniesienia {A}: obrót o kąt p wokół osi Za, obrót o kąt d wokół osi Ya', obrót o kąt ip wokół osi Z a"'-
Ra z=z RAzAv)RAYA,mRAzA„('l>) = (4)
cosp |
— sin p 0 |
COSI? |
0 sini? |
cos ip — sin ip |
0' | ||||
sin p |
cosip 0 |
0 |
1 0 |
sin ip cos ip |
0 |
= | |||
0 |
0 1 |
- sini? |
0 cosi? |
0 0 |
1 | ||||
cos p cos 1? cos ip — |
sin p sin ip |
— cos pcos |
1? sin ip — sin p cos ip |
cos p sin 1? | |||||
sin p c |
isdcosip + |
p sin ip |
— sinęjc |
d sin ip + cos p c |
os ip |
sin p sin 1? | |||
— sin 1? cos |
sin 1? sin ip |
COSI? |
Chodzi tutaj o grupę w sensie struktury algebraicznej. Symbol SO(3) oznacza grupę specjalnych macierzy ortogonalnych o wymiarze 3 x 3 (z ang. Special Orthogonal Group)