Elementy składowe i struktura robotów cz 2


y
 = tan-1 (14)
x
A następnie skorzystamy z twierdzenia sinusów, postaci
a b c
= = = 2R (15)
siną sin  sin ł
w wyniku czego mo\emy napisać, \e
a2 sin(Ą -2 ) a2 sin2
siną = = (16)
x2 + y2 x2 + y2
Wykonując następnie proste przekształcenia, otrzymujemy następujące zale\ności
2
x2 - y2 - a2 sin2
cosą = ą (17)
x2 + y2
a2 sin2
tgą = ą (18)
2
x2 + y2 - a2 sin2 2
Jeśli teraz poni\szą zale\ność
x2 + y2 = a12 + a22 + 2a1 a2 cos2 (19)
podstawimy do wzoru (18), wówczas otrzymamy
a2 sin2 a2 sin2
tgą = ą = ą (20)
2 2 2
a1 + a2 + 2a1a2 cos2 - a2 sin2 2 (a1 + a2 cos2 )2
a zatem
a2 sin2
ą = tg-1 (21)
a1 + a2 cos2
Podstawiając teraz zale\ności (14) i (21) do wzoru (13) otrzymamy zale\ności na wartość
kąta 1, określoną wzorem
y a2 sin2
1 =  -ą = arctg - tg-1 (22)
x a1 + a2 cos2
Na zakończenie powy\szych rozwa\ań zauwa\my jeszcze, \e kąt 1 zale\y od kąta 2.
Ma to znaczenie fizyczne, gdy\ oczekujemy ró\nych wartości kąta 1 w zale\ności od tego,
które rozwiązanie wybierzemy dla kąta 2.
3. Pozostałe kwestie związane ze sterowaniem manipulatorem
3.1. Kinematyka prędkości
W celu śledzenia konturu ze stałą prędkością lub z określoną daną prędkością musimy
znać zale\ności między prędkością narzędzia a prędkościami przegubowymi. Po
zró\niczkowaniu równań (1) i (2) otrzymujemy
&- &+&)
&
x = -a1 sin1 "1 a2 sin(1 +2 )(1 2 (23)
&- &+&)
&
y = a1 cos1 "1 a2 cos(1 +2 )(1 2 (24)
x 1
ł łł ł łł
Zastosowanie zapisu wektorowego x = i  = pozwala przedstawić te zale\ności w
łyśł ł śł
ł ł ł 2 ł
postaci wyra\onej zapisem
ł- a1 sin1 - a2 sin(1 +2 ) - a2 sin(1 +2 ) ł łł
łł & &
1
&
x = ł " = J (25)
a1 cos1 + a2 cos(1 +2 ) a2 cos(1 +2 śł ł 2 śł
ł ł
ł&ł
Macierz J zdefiniowana w równaniu (25) jest nazywana jakobianem manipulatora i
jest podstawowym obiektem określanym dla ka\dego manipulatora.
Wyznaczenie prędkości przegubowych na podstawie prędkości końcówki roboczej jest
koncepcyjnie proste, poniewa\ mamy tu zale\ność liniową. Zatem prędkości przegubowe
obliczamy z prędkości końcówki roboczej, stosując odwrotność jakobianu
&= &
 J-1x (26)
W celu wyznaczenia macierzy odwrotnej do macierzy Jacobiego skorzystamy ze
wzoru
1
J-1 = (JD )T (27)
det J
Po wykonaniu prostych, otrzymujemy
det J = a1 a2 sin2 (28)
oraz
a2 cos(1 +2 ) - a1 cos1 - a2 cos(1 +2 )
ł łł
JD = ł (29)
śł
a2 sin(1 +2 ) - a1 sin1 - a2 sin(1 +2 )
ł ł
A zatem podstawiając zale\ność (28) i (29)  po transponowaniu, do wzoru (27) otrzymujemy
&
ł łł a2 cos(1 +2 ) a2 sin(1 +2 ) x
& ł łł ł łł
1
1
= " (30)
ł śł
&
a1a2 sin2 ł- a1 cos1 - a2 cos(1 +2 ) - a1 sin1 - a2 sin(1 +2 )śł łyśł
ł ł ł ł
ł&ł
2
Zauwa\my, \e jeśli wyznacznik det J jakobianu z wzoru (25) jest równy a1 a2 sin2.
Jakobian nie będzie więc miał odwrotności, gdy 2 = 0 lub 2 = Ą. W takim przypadku mówi
się, \e manipulator ma konfigurację osobliwą, taką jak pokazano na rys. 27 dla 2 = 0.
Rys. 27. konfiguracja osobliwa manipulatora
Wyznaczenie konfiguracji osobliwych jest wa\ne z kilku powodów. W konfiguracji
osobliwej mamy do czynienia z pewnymi nieskończenie małymi ruchami, które są
niewykonalne. Oznacza to, \e końcówka robocza manipulatora nie mo\e wykonywać ruchów
w pewnych kierunkach. W przedstawionym przykładzie końcówka robocza nie mo\e
poruszać się z konfiguracji osobliwej w kierunku równoległym do a1. Konfiguracje osobliwe
są tak\e związane z niejednoznacznością rozwiązań kinematyki odwrotnej. W omawianym
przykładzie dla danej pozycji końcówki roboczej, mamy w ogólności dwa mo\liwe
rozwiązania. Zauwa\my, \e konfiguracja osobliwa oddziela te dwa rozwiązania w takim
sensie, \e manipulator nie mo\e przejść z jednej konfiguracji do drugiej bez przejścia przez
osobliwość. Dlatego w wielu zastosowaniach bardzo wa\ne jest takie zaplanowanie ruchów
manipulatora, które pozwala ominąć konfiguracje osobliwe.
3.2. Problem dynamiki
Manipulator robota jest przede wszystkim urządzeniem pozycjonującym. Jeśli chcemy
sterować pozycją, to musimy znać właściwości dynamiczne manipulatora, \eby wiedzieć, jak
du\ą siłę nale\y wywrzeć w celu spowodowania ruchu. Gdy sita ta będzie za mała,
manipulator będzie zbyt wolny. Po przyło\eniu za du\ej siły mo\e nastąpić zderzenie z
obiektem lub oscylowanie wokół zadanej pozycji.
Wyprowadzenie dynamicznych równań ruchu dla robota nie jest zadaniem łatwym z
powodu du\ej liczby stopni swobody i występujących w układzie nieliniowości. W celu
realizacji tego zagadnienia (wyprowadzenia równań ruchu takiego systemu) stosuje się tzw.
metodykę wykorzystującą równania dynamiczne Lagrange'a. Dodatkowo dla członów
sztywnych pełny opis dynamiki robota obejmuje dynamikę silników, które są zródłem sił i
momentów, oraz dynamikę zespołów napędowych, które przenoszą moc z silnika do członu
manipulatora. Dlatego te\ zagadnienia dynamiki silników i zespołów napędowych oraz ich
wpływ na problemy sterowania nie mogą zostać pominięte.
3.3. Zagadnienie sterowania pozycyjnego
Do zaprojektowania algorytmów sterowania w celu wykonania zaprogramowanego
zadania wykorzystuje się niejednokrotnie teorię sterowania. Problem sterowania ruchem
składa się z problemu śledzenia i tłumienia zakłóceń. Polega on na określeniu wejścia
sterującego potrzebnego do śledzenia trajektorii, która została zaplanowana dla manipulatora,
przy równoczesnym tłumieniu zakłóceń, spowodowanych niemo\liwymi do modelowania
zjawiskami dynamicznymi, takimi jak tarcie i szum. Standardowe podejścia do sterowania
robota oparte są na metodzie analizy częstotliwościowej. Istotnymi zagadnieniami
dotyczącymi tych kwestii są tak\e pojęcia sterowania wyprzedzającego oraz techniki
obliczanego momentu dynamiki odwrotnej w celu uproszczenia zło\onych nieliniowych sił
oddziaływania między członami manipulatora. Ponadto przy u\yciu drugiej metody
Lapunowa korzysta się często z tzw. sterowania krzepkiego. inne dodatkowe zaawansowane
metody nieliniowej teorii sterowania, są niejednokrotnie przydatne do sterowania robotów o
du\ych mo\liwościach funkcjonalnych.
3.4. Sterowanie siłą
Gdy manipulator raz osiągnie pozycję B, musi odtwarzać kontur powierzchni S, zapewniając
stałą siłę prostopadłą do powierzchni. Mo\liwe jest, \e znając lokalizację obiektu i kształt
konturu, rozwią\emy to zadanie tylko za pomocą sterowania pozycyjnego. W praktyce trudno
to jednak zrealizować. Poniewa\ sam manipulator ma du\ą sztywność, ka\dy błąd pozycji
spowodowany nieznajomością dokładnej lokalizacji powierzchni lub narzędzia mo\e
wywołać na końcówce roboczej wzrost sił do wartości ekstremalnych, które mogą zniszczyć
narzędzie, powierzchnię lub robota. Lepszym rozwiązaniem jest bezpośredni pomiar
działających sił i wykorzystanie schematu sterowania sitowego. W celu realizacji zagadnienia
sterowania siłą powszechnie stosowane są dwa rozwiązania: sterowanie hybrydowe i
sterowanie impedancyjne.
4. Ruchy sztywne i przekształcenie jednorodne
4.1. Wprowadzenie
Znaczna część kinematyki robota jest poświęcona ró\nym układom współrzędnych,
potrzebnym do przedstawienia poło\eń i orientacji obiektów sztywnych, oraz
przekształceniom tych układów współrzędnych. Rzeczywiście, geometria przestrzeni
trójwymiarowej i ruchów sztywnych odgrywa główną rolę we wszystkich aspektach
manipulacji robota. W tej części wykładu omówimy obroty (rotacje) i przesunięcia
(translacje) oraz wprowadzimy pojęcie przekształceń jednorodnych. Przekształcenie
jednorodne mo\na traktować jako operację, wyra\ającą jednocześnie obroty i przesunięcia za
pomocą jednej macierzy. W dalszej części wykładów zostanie to wykorzystane do
wyprowadzenia tzw. równań kinematyki prostej manipulatorów sztywnych.
4.2. Obroty
Rozpatrzmy zatem następującą sytuację: rys. 28 przedstawia sztywny obiekt S, do
którego przyło\ono układ współrzędnych Ox1y1z1.
Rys. 28. Układ współrzędnych związany z ciałem sztywnym
Załó\my, \e chcemy znalezć zale\ność pomiędzy współrzędnymi punktu P na
obiekcie S w układzie współrzędnych Ox1y1z1 a współrzędnymi tego punktu w stałym (nie
obróconym) układzie odniesienia Ox0y0z0. Niech {i0, j0, k0} oznacza standardową bazę
ortonormalną w układzie Ox0y0z0; wówczas i0, j0, k0 są wektorami jednostkowymi
odpowiednio wzdłu\ osi x0, y0, z0. Podobnie niech {i1, j1, k1} będzie standardową bazą
ortonormalną w układzie Ox1y1z1. Wektor od wspólnego początku O obu układów do punktu
P na obiekcie mo\e być przedstawiony w układzie Ox0y0z0 jako
p0 = p0x i0 + p0y j0 + p0z k0 (31)
albo w układzie Ox1y1z1 jako
p1 = p1x i1 + p1y j1 + p1z k1 (32)
Poniewa\ p0 i p1 są reprezentacjami tego samego wektora p, więc związki między
składowymi wektora p w obu układach współrzędnych mo\na zapisać w postaci
p0x = p0 i0= p1 i0 = p1x i1 i0 + p1y j1 i0+ p1z k1 i0 (33)
p0y = p0 j0= p1 j0 = p1x i1 j0 + p1y j1 j0+ p1z k1 j0 (34)
p0z = p0 k0= p1 k0 = p1x i1 k0 + p1y j1 k0+ p1z k1 k0 (35)
p0 x p1x
ł łł ł łł
ł ł
Jeśli przyjąć p0 = p0 y śł i p1 = p1y śł , to równania (33)  (35) mo\emy zapisać jako równanie
ł śł ł śł
ł śł ł śł
p0z p1z
ł ł ł ł
wektorowe
p0 = R01 p1, (36)
w którym
i1 "i0 j1 "i0 k1 "i0
ł łł
łi
R1 = " j0 j1 " j0 k1 " j0 śł (37)
0 1
ł śł
ł śł
"k0 j1 " k0 k1 " k0 ł
łi1
Macierz 3 x 3 reprezentuje przekształcenie punktu P ze współrzędnych w układzie
Ox1y1z1 na współrzędne w układzie Ox0y0z0. Je\eli punkt w układzie Ox1y1z1 jest określony za
pomocą wektora p1, wówczas R01 p1 reprezentuje ten sam wektor w układzie współrzędnych
Ox0y0z0.
Podobnie mo\emy napisać
p1x = p1 i1= p0 i1 = p0x i0 i1 + p0y j0 i1+ p0z k0 i1 (38)
p1y = p1 j1= p0 j1 = p0x i0 j1 + p0y j0 j1+ p0z k0 j1 (39)
p1z = p1 k1= p0 k1 = p0x i0 k1 + p0y j0 k1+ p0z k0 k1 (40)
gdzie
i0 "i1 j0 "i1 k0 "i1
ł łł
0 łi
R1 = " j1 j0 " j1 k0 " j1 śł (41)
0
ł śł
ł śł
" k1 j0 " k1 k0 " k1ł
łi0
Macierz R10 reprezentuje przekształcenie odwrotne do przekształcenia R01. Poniewa\ iloczyn
skalamy jest przemienny, tzn. i0 j0 = j0 i0 itd., więc
0 1 1
R1 = (R0 )-1 = (R0 )T (42)
Taka macierz, której odwrotność jest macierzą transponowaną, nazywa się macierzą
ortogonalną. Wektory kolumnowe macierzy R01 mają długość jednostkową i są wzajemnie
ortogonalne. Mo\na tak\e pokazać, \e det R01 = ą1. Je\eli ograniczymy się natomiast do
prawoskrętnego układu współrzędnych (rys. 29), wtedy det R01 = +1.
Macierze ortogonalne o wyznaczniku +1 są nazywane macierzami obrotów lub
rotacji. Zbiór wszystkich macierzy obrotów o wymiarze 3x3 określa się symbolem SO(3).
z
y

x
Rys. 29. Prawoskrętny układ współrzędnych
Przykład 1.
Załó\my, \e układ Ox1y1z1 obrócono o kąt  wokół osi z0 (rys. 30). Chcemy znalezć
macierz R01 tego przekształcenia. Zwróćmy uwagę, \e (zgodnie z konwencją) dodatni
kierunek kąta  jest określony regułą prawej ręki, tzn. dodatni obrót o kąt  wokół osi z dałby
przesunięcie śruby prawoskrętnej wzdłu\ dodatniego kierunku osi z.
Rys. 30. Obrót wokół osi z0
Z rys. 30 widać, \e
i0 i1 = cos  (43)
j1 i0 = -sin  (44)
j0 j1 = cos  (45)
i1 j0 = sin  (46)
k0 k1 = 1 (47)
a wszystkie pozostałe iloczyny są równe 0. Wówczas to przekształcenie R01 jest postaci
cos
ł -sin 0
łł
łsin cos 0śł
R1 = (48)
0
ł śł
ł śł
0 0 1ł
ł
Macierz (48) jest nazywana podstawową macierzą obrotu lub rotacji (wokół osi z). W
takim przypadku bardziej przydatny jest opisowy zapis Rz, zamiast R01 do oznaczenia tej
macierzy. Aatwo sprawdzić, \e podstawowa macierz obrotu Rz, ma następujące własności
Rz,0 = I (49)
Rz, Rz,Ć = Rz, + Ć (50)
z czego wynika kolejna własność
Rz,-1 = Rz,- (51)
Podobnie podstawowe macierze obrotów reprezentujące obroty wokół osi x i y są równe
1 0 0
ł łł
ł0 śł
R1 = R = cos -sin (52)
0 x,
ł śł
ł
ł0 sin cos śł
ł
cos 0 sin
ł łł
ł śł
R1 = R = 0 1 0 (53)
0 y,
ł śł
ł-sin 0 cos
śł
ł ł
i spełniają własności analogiczne do wyra\onych wzorami (49)  (51).
Mo\emy tak\e interpretować daną macierz obrotu jako macierz wyznaczającą
orientację układu współrzędnych Ox1y1z1 względem układu Ox0y0z0. Rzeczywiście, kolumny
macierzy R01 są cosinusami kierunkowymi osi układu Ox1y1z1 w stosunku do osi układu
Ox0y0z0. Na przykład pierwsza kolumna (i1 i0, i1 j0, i1 k0)T macierzy R01 opisuje kierunek osi x1
względem układu Ox0y0z0.
Przykład 2.
Rozwa\my układy Ox0y0z0 i Ox1y1z1 pokazane na rys. 31.
Rys. 31. określenie wzajemnej orientacji dwóch układów współrzędnych
Rzutowanie wektorów jednostkowych i1, j1, k1 na i0, j0, k0 daje współrzędne wektorów
i1, j1, k1 w układzie Ox0y0z0. Widzimy, \e współrzędne wektora i1 są równe (l/ 2 , 0, l/ 2 )T,
współrzędne wektora j1 są równe (l/ 2 , 0, -l/ 2 )T i współrzędne wektora k1 są równe (0, 1,
0)T. Macierz obrotu R01 określająca orientację układu Ox1y1z1 względem układu Ox0y0z0
zawiera te współrzędne jako kolumny, tzn.
1 1
ł
0łł
ł śł
2 2
ł
R1 = 0 0 1śł (54)
0
ł śł
1 -1
ł
0śł
ł śł
2 2
ł ł
W trzeciej interpretacji macierz obrotu R " SO(3) jest operatorem działającym na
wektory w ustalonym układzie współrzędnych Ox0y0z0. Inaczej mówiąc, zamiast odnoszenia
współrzędnych ustalonego wektora do dwóch ró\nych układów współrzędnych, wyra\enie
(41) mo\e reprezentować współrzędne punktu P1 w układzie Ox0y0z0 otrzymanego z punktu
P0 przez dany obrót.
Przykład 3.
Obracamy wektor p0 = (l, l, 0)T wokół osi y0 o kąt Ą/2, jak pokazano na rys. 32.
Rys. 32. Obrót wektora wokół osi
Otrzymany wektor p1 jest dany wzorem
0 0 1 1 0
ł łł ł łł ł łł
ł ł1śł ł śł
p1 = R " p0 = 0 1 0śł " = 1 (55)
y,Ą / 2
ł śł ł śł ł śł
ł-1 0 0ł ł0śł ł
śł ł ł-1ł
śł
ł ł
Podsumowanie:
W tym dziale zobaczyliśmy, \e macierz obrotu R " SO(3) mo\e być interpretowana na
trzy ró\ne sposoby:
1) reprezentuje przekształcenie współrzędnych punktu P w dwóch ró\nych układach,
2) wyznacza orientację przekształconego układu współrzędnych w odniesieniu do ustalonego
układu współrzędnych,
3) jest operatorem przekształcającym wektor p przez obrót w nowy wektor Rp w tym samym
układzie współrzędnych.
Konkretna interpretacja danej macierzy obrotu R zastosowanej w problemie musi być
sprecyzowana w kontekście tego problemu.
4.3. Składanie obrotów
W tym rozdziale omówimy składanie obrotów. Dla zrozumienia treści następnych
wykładów wa\ne jest, aby Czytelnik dobrze przyswoił sobie materiał z tej części, przed
przejściem dalej. Przypomnijmy, \e macierz R01 w równaniu (36) reprezentuje obrót między
układami współrzędnych Ox0y0z0 i Ox1y1z1. Załó\my, \e dokładamy trzeci układ
współrzędnych Ox2y2z2 powiązany z układami Ox0y0z0 i Ox1y1z1 przez obroty. Dany punkt P
mo\e być wtedy reprezentowany na trzy sposoby przez wektory: p0, p1, p2 w trzech układach
współrzędnych. Związki między tymi trzema reprezentacjami punktu P są następujące
p0 = R01 p1 (56)
p1 = R02 p2 (57)
p1 = R12 p2 (58)
gdzie ka\da macierz Rij jest macierzą obrotu. Zauwa\my, \e macierze R01 i R02 reprezentują
obroty względem osi układu Ox0y0z0, podczas gdy R12 reprezentuje obrót względem układu
Ox1y1z1. Jeśli podstawimy wzór (58) do równości (56), to otrzymamy
p0 = R01 R12 p2 (59)
a po porównaniu zale\ności (57) i (59) dostajemy równość
R02 = R01 R12 (60)
Równanie (60) jest prawem składania dla obrotów. Oznacza, \e aby przekształcić
współrzędne punktu P z jego reprezentacji p2 w układzie Ox2y2z2 na reprezentację p0 w
układzie Ox0y0z0, mo\emy ją najpierw przekształcić na jego reprezentację p1, w układzie
Ox1y1z1, u\ywając macierzy R12, a potem przekształcić p1 na p0 u\ywając macierzy R01.
Natomiast równanie (59) mo\emy interpretować następująco. Załó\my początkowo,
\e wszystkie trzy układy pokrywają się. Najpierw obracamy układ Ox1y1z1 względem układu
Ox0y0z0 zgodnie z przekształceniem R01. Potem, przy pokrywających się układach Ox1y1z1 i
Ox2y2z2 obracamy układ Ox2y2z2 względem Ox1y1z1 zgodnie z przekształceniem R12. W
ka\dym przypadku układ, względem którego odbywa się obrót, nazywamy układem
bie\ącym.
Uwaga! Odtąd dla wygody będziemy stosować skrócone zapisy funkcji
trygonometrycznych: c = cos, S = sin.
Przykład 4.
Załó\my, \e macierz R reprezentuje obrót o kąt Ć wokół bie\ącej osi y z następnym
obrotem o kąt  wokół bie\ącej osi z. Wówczas macierz R jest określona wzorem
ł cĆ 0 sĆ c - s 0 cĆ "c - cĆ "s sĆ łł
łł ł
ł łł
ł śł ł śł
łs
R = R " R = 0 1 0 " c 0śł = s c 0 (61)
y,Ć z, 
ł śł ł śł
ł śł
ł- sĆ 0 cĆ śł
ł śł
0 0 1ł ł-sĆ "c sĆ "s cĆ śł
ł
ł ł ł ł
Nale\y pamiętać, \e kolejność wykonywania obrotów, a co za tym idzie kolejność
mno\enia macierzy obrotów, jest decydująca. Obrót, w przeciwieństwie do poło\enia, nie jest
wielkością wektorową i nie podlega prawu dodawania wektorów, wobec tego składanie
obrotów na ogół nie jest przemienne.
Przykład 5.
Załó\my, \e poprzednio opisane obroty są wykonywane w odwrotnej kolejności, tzn.
najpierw obrót wokół bie\ącej osi z, potem obrót wokół bie\ącej osi y.
Wówczas macierz obrotu jest określona wzorem
c ł łł ł
ł -s 0 cĆ 0 sĆ cĆ "c - s sĆ "c łł
łł
ł śł łs
łs
R' = R " R = c 0śł " 0 1 0 = "cĆ c s "sĆ śł (62)
z, y,Ć  
ł śł ł śł
ł śł
ł śł
0 0 1ł ł- sĆ 0 cĆ śł ł - sĆ 0 cĆ śł
ł
ł ł ł ł
Po porównaniu wzorów (61) i (62) wyraznie widać, \e R `" R'.
Często jest po\ądane wykonanie raczej ciągu obrotów, ka\dego wokół danego
ustalonego układu współrzędnych, ni\ wokół kolejnych bie\ących układów. Przykładowo
mo\emy chcieć dokonać obrotu wokół osi X0, a następnie obrotu wokół osi y0 (nie zaś y1).
Wtedy układ Ox0y0z0 jest tzw. układem ustalonym. W tym przypadku wcześniej określone
prawo składania nie jest prawdziwe, natomiast właściwym prawem składania jest po prostu
mno\enie kolejnych macierzy obrotów w kolejności odwrotnej do podanej wzorem (60).
Zauwa\my, \e same obroty nie są wykonywane w odwrotnej kolejności. Raczej są one
wykonywane wokół układu ustalonego ni\ wokół bie\ącego.
Przykład 6.
Załó\my, \e macierz obrotu R reprezentuje obrót o kąt Ć wokół osi y0, a następnie
obrót o kąt  wokół ustalonej osi Z0. Odnieśmy to do rys. 33. Niech p0, p1 i p2 będą
reprezentacjami wektora p.
Rys. 33. Składanie obrotów
Początkowo osie ustalone i bie\ące są te same, mianowicie Ox0y0z0, i dlatego mo\emy
napisać jak poprzednio
p0 = Ry,Ć p1 (63)
gdzie Ry,Ć jest podstawową macierzą obrotu wokół osi y. Teraz, poniewa\ drugi obrót odbywa
się wokół ustalonego układu Ox0y0z0, a nie bie\ącego układu Ox1y1z1, nie mo\emy stwierdzić,
czy
p1 = Rz, p2 (64)
poniewa\ to wymagałoby interpretacji Rz, jako obrotu wokół osi z1. Aby móc u\yć naszego
wcześniejszego prawa składania, musimy mieć układy: ustalony i bie\ący. W tym przypadku
osie z0 i z1 nało\one na siebie. Dlatego trzeba najpierw  cofnąć" poprzedni obrót, następnie
wykonać obrót wokół osi z0 i na koniec przywrócić wyjściowe przekształcenie, czyli
p1 = Ry,-Ć Rz, Ry,Ć p2 (65)
To jest właściwe wyra\enie, a nie zale\ność (64). Teraz podstawiając je do wzoru (63),
otrzymujemy
P0 = Ry,Ć p1 = Ry,Ć Ry,-Ć Rz, Ry,Ć p2 (66)
Nie musimy pamiętać powy\szego wyprowadzenia; wystarczy zauwa\yć przez
porównanie wzorów (61) i (66), \e otrzymujemy te same podstawowe macierze obrotów w
odwrotnej kolejności.
Prawo składania obrotów mo\emy podsumować następującą obserwacją. Dla danego
układu ustalonego Ox0y0z0, układu bie\ącego Ox1y1z1 i macierzy obrotu R01 wią\ącej te
układy, je\eli trzeci układ Ox2y2z2 jest otrzymany przez obrót R12 wykonany względem
układu bie\ącego, to aby otrzymać obrót R02 mno\ymy prawostronnie macierz R01 przez R12,
czyli
R02 = R01 R12 (67)
Je\eli drugi obrót ma być wykonany względem układu ustalonego, to mno\ymy
lewostronnie macierz R01 przez R12, i otrzymujemy
R02 = R12 R01 (68)
W ka\dym przypadku macierz R02 reprezentuje przekształcenie między układami Ox0y0z0 i
Ox2y2z2. Jednak\e układ, który powstaje z zale\ności (67), będzie inny od powstałego z
zale\ności (68).
4.4. Obrót wokół dowolnej osi
Obroty nie zawsze są wykonywane wokół osi układu współrzędnych. Często jesteśmy
zainteresowani obrotem wokół dowolnej osi w przestrzeni. Niech k = (kx, ky, kz)T będzie
wyra\onym w układzie Ox0y0z0 wektorem jednostkowym, definiującym pewną oś. Chcemy
wyprowadzić macierz obrotu Rk, reprezentującą obrót o kąt  wokół tej osi (rys. 34).
Rys. 34. Obrót wokół dowolnej osi
Istnieje kilka sposobów otrzymania macierzy Rk,. Najłatwiejszym jest obrócenie
wektora k na jedną z osi układu, np. z0, potem obrócenie wokół osi z0 o kąt  i wreszcie
obrócenie wektora k z powrotem do jego wyjściowego poło\enia. Na rys. 34 pokazano, \e
mo\emy obrócić wektor k na oś z0, obracając najpierw wokół osi z0 o kąt -ą, potem zaś
obracając wokół osi y0 o kąt -. Poniewa\ wszystkie obroty są wykonywane względem
ustalonego układu Ox0y0z0, więc macierz Rk, otrzymamy jako zło\enie
Rk, = Rz,ą Ry, Rz, Ry,- Rz,-ą (69)
Na podstawie rys. 34 widzimy, \e jeśli k jest wektorem jednostkowym, to
ky
siną = (70)
2 2
kx + ky
kx
cosą = (71)
2 2
kx + ky
2 2
sin  = kx + ky (72)
cos = kz (73)
Po podstawieniu równań (70)-(73) do zale\ności (69) i dość długich lecz niezbyt
zło\onych obliczeniach otrzymujemy
2
ł łł
kx v + cos kxkyv - kz sin kxkzv + ky sin
ł śł
2
R = (74)
k,
łkxkyv + kz sin ky v + cos kykzv - kx sin śł
2
łkxkzv - ky sin kykzv - kx sin kz v + cos śł
ł ł
Gdzie v = 1  cos .
4.4. Dalsze własności obrotów
Dziewięć elementów rij dowolnej macierzy obrotów R jak we wzorze (37) nie jest
wielkościami niezale\nymi. Rzeczywiście, ciało sztywne ma co najwy\ej trzy obrotowe
stopnie swobody i dlatego co najwy\ej trzy wielkości są potrzebne do wyznaczenia jego
orientacji. W tej części wykładu omówimy trzy sposoby reprezentacji dowolnego obrotu przy
u\yciu tylko trzech niezale\nych wielkości. Pierwszym jest tzw. reprezentacja  os-kąt Drugi
to reprezentacja za pomocą kątów Eulera, a trzeci  reprezentacja  obrót-nachylenie-
odchylenie".
Reprezentacja  oś-kąt
Macierz obrotu R " SO(3) mo\na zawsze przedstawić w postaci pojedynczego obrotu
wokół odpowiedniej osi o odpowiedni kąt jako
R = Rk, (75)
gdzie k jest wektorem jednostkowym definiującym oś obrotu, a  jest kątem obrotu wokół tej
osi. Równanie (75) jest nazywane reprezentacją  oś-kąt macierzy R. Jeśli zatem mamy
dowolną macierz obrotu R o elementach (rij), to kąt  i oś wektora k odpowiadające tej
macierzy są dane wyra\eniami
r11 + r22 + r33 -1
Tr(R) -1 ł ł
ł
 = cos-1ł = cos-1 (76)
ł ł ł ł
2 2
ł łł ł łł
Gdzie Tr(R) oznacza ślad macierzy R oraz
r32
ł - r23
łł
1
łr - r31 śł
k = (77)
13
ł śł
2sin
ł - r12 ł
śł
łr21
Reprezentacja  oś-kąt" nie jest jednoznaczna, poniewa\ obrót o kąt -  wokół osi wektora  k
jest taki sam, jak obrót o kąt  wokół osi wektora k, tzn.
Rk, = R-k,- (78)
Je\eli  = 0, to R jest macierzą jednostkową, a oś obrotu nie jest określona.
Przykład 7.
Załó\my, \e macierz R została utworzona przez obrót o 90 wokół osi z0, następnie
przez obrót o 30 wokół osi y0, a w końcu przez obrót o 60 wokół osi x0. Wówczas
1 0 0 cos30 0 sin 30
ł łł ł łł
ł0 ł śł
R = R R R = cos60 - sin 60śł " 0 1 0 "
x,60 y,30 z,90
ł śł ł śł
ł śł
ł0 sin 60 cos60 śł ł- sin 30 0 cos30ł
ł ł
ł łł
3 1
0 -
ł śł (79)
2 2
cos90 - sin 90 0
ł łł
ł śł
1 3 3śł
łsin
ł
" 90 cos90 0śł = - -
ł śł
ł
2 4 4śł
ł śł
0 0 1ł ł śł
ł
3 1 3
ł śł
2 4 4
ł śł
ł ł
Widzimy, \e Tr(R) = 0 i stąd odpowiedni kąt ze wzoru (76) jest równy
1
 = cos-1(- ) =120 (80)
2
Natomiast z wzoru (77) oś jest określona przez wektor
T
ł łł
3 1 1 1 1
k = , - , + (81)
ł śł
3 2 2
2 3 2 3
ł ł
Powy\sza reprezentacja  oś-kąt" charakteryzuje dany obrót za pomocą czterech
wielkości, a mianowicie trzech składowych osi wektora k oraz kąta . Jednak, poniewa\ oś
wektora k jest wyznaczona przez wektor jednostkowy, tylko dwie z jej składowych są
niezale\ne. Trzecia jest narzucona przez warunek, \e wektor k ma długość jednostkową.
Dlatego tylko trzy niezale\ne wielkości są wymagane w tej reprezentacji obrotu R. Mo\emy
przedstawić reprezentację  kąt-oś" za pomocą pojedynczego wektora r postaci
r = (rx ,ry ,rz )T = ( "kx, " ky , " kz )T (82)
Zauwa\my, \e poniewa\ k jest wektorem jednostkowym, więc długość wektora r jest równa
mierze kąta , a kierunek jest ten sam co osi k.
Kąty Eulera
Bardziej ogólną metodą wyznaczania macierzy obrotu w zale\ności od trzech
niezale\nych wielkości jest u\ycie tzw. kątów Eulera. Rozwa\my ponownie ustalony układ
współrzędnych Ox0y0z0 i układ obrócony Ox1y1z1 pokazane na rys. 35. Mo\emy wówczas
określić orientację układu Ox1y1z1 względem układu Ox0y0z0 za pomocą trzech kątów (, Ć, )
znanych jako kąty Eulera, a otrzymanych przez trzy kolejne, następujące obroty: najpierw
obrót wokół osi z o kąt Ć, następnie obrót wokół bie\ącej osi y o kąt , na końcu zaś obrót
wokół bie\ącej osi z o kąt .
Rys. 35. Reprezentacja kątów Eulera
W terminologii podstawowych macierzy obrotów wynikowy obrót R01 mo\e być
otrzymany jako iloczyn
cosĆ
ł - sinĆ 0 cos 0 sin cos - sin 0
łł ł łł ł łł
łsinĆ cosĆ 0śł " ł śł łsin cos 0śł =
R1 = R " R " R = 0 1 0 "
0 z,Ć y, z,
ł śł ł śł ł śł
ł śł ł-
śł ł śł
0 0 1ł ł sin 0 cos 0 0 1ł
ł ł ł
(83)
cosĆ cos cos - sinĆ sin - cosĆ cos sin - sinĆ cos cosĆ sin
ł łł
łsinĆ śł
= cos cos + cosĆ sin - sinĆ cos sin + cosĆ cos sinĆ sin
ł śł
ł śł
- sin cos sin sin cos
ł ł
Kąty obrotu, nachylenia i odchylenia
Macierz obrotu R mo\e tak\e być określona jako iloczyn kolejnych obrotów wokół osi
układu współrzędnych x0, y0, z0 wziętych w określonej kolejności. Obroty te określają tzw. kąty
obrotu, nachylenia i odchylenia, które mo\emy tak\e zapisać jako Ć, , . Zilustrowano je na
rys. 36.
Rys. 36. Kąty obrotu, nachylenia, odchylenia (RPY  Roll, Pitch, Yaw)
Określamy kolejność obrotów jako x-y-z, innymi słowy najpierw odchylenie wokół osi
x0 o kąt , potem nachylenie wokół osi y0 o kąt  i ostatecznie obrót wokół osi Z0 kąt Ć.
Poniewa\ kolejne obroty są odnoszone do układu ustalonego, wynikowa macierz
przekształcenia jest dana przez iloczyn
cosĆ
ł - sinĆ 0 cos 0 sin 1 0 0
łł ł łł ł łł
łsinĆ cosĆ 0śł " ł śł ł0 śł
R1 = R " R " R = 0 1 0 " cos - sin =
0 z,Ć y, x,
ł śł ł śł ł śł
ł śł ł-
śł ł śł
0 0 1ł ł sin 0 cos sin cos
ł ł ł0 ł
(84)
cosĆ cos - sinĆ cos + cosĆ sin sin sinĆ sin + cosĆ sin cos
ł łł
łsinĆ śł
= cos cosĆ sin + sinĆ sin sin - cosĆ sin + sinĆ sin cos
ł śł
ł - sin cos sin cos cos
śł
ł ł
Oczywiście zamiast odchylenia-nachylenia-obrotu względem układów ustalonych
mo\emy tak\e interpretować powy\sze przekształcenie jako obrót-nachylenie-odchylenie, w
tej kolejności, rozpatrując ka\de w stosunku do układu bie\ącego. Końcowym rezultatem jest
ta sama macierz (84).


Wyszukiwarka

Podobne podstrony:
Elementy składowe i struktura robotów cz 1
CHRAPEK,podstawy robotyki, elementy sk?owe i struktura robotów
610 Elementy składowe rocznego sprawozdania finasowego
Lojalnosc pracownikow wspolczesnych organizacji Istota i elementy skladowe e0y
Wyklad4 PARAMETRY PRZESTRZENNE STANOWISKA PRACY I JEGO ELEMENTÓW SKŁADOWYCH
Fra Gaga Elementy Skladowe Zaklecia
03 Instalacje elementy skladowe
3 1 Dla TR Sem3 Elementy Niezawodnosci Strukturalnej [9]
Elementy struktury organizacyjnej i zarządzanie projektowaniem organizacji
A Biegus Cz 6 Elementy zginane 2013 11 27
Siły zbrojne jako element struktury państwa
Wytrzymałość szybkościowa z elementami techniki – cz 3
Struktura plików INF cz II

więcej podobnych podstron