a,0,0
Transkrypt
a,0,0
Ćwiczenia nr 3 z “Robotyki 1” W SE(3) Bazowe translacje opisujemy macierzami: " # I (a, 0, 0)T , T ran(x, a) = 3 0 1 " # I (0, b, 0)T , T ran(y, b) = 3 0 1 # " I (0, 0, c)T , T ran(z, c) = 3 0 1 a rotacje macierzami: " # rot(x, α) 0 T , Rot(x, α) = 0 1 " # rot(y, β) 0 T , Rot(y, β) = 0 1 " # rot(z, γ) 0 T . Rot(z, γ) = 0 1 1. Pokazać, że złożenie translacji wzdłuż dowolnych osi jest przemienne. 2. Dla jakich sytuacji złożenie translacji z obrotem (i vice versa) wzdłuż wybranych osi jest (nie-)przemienne. 3. Dla parametryzacji oś-kąt (kk , θ) macierz R ∈ SO(3) jej odpowiadająca ma postać: rot(kk , θ) = R = I 3 + sin(θ)[kk ] + (1 − cos(θ))[kk ]2 , (1) gdzie [kk ] jest znaną operacją tworzenia macierzy skośniesymetrycznej ze znanego wektora k . Pokazać, korzystając z (1), że macierz R odpowiadająca (kk , θ) jest identyczna z tą dla (−kk , −θ). r11 r12 r13 4. Na podstawie wzoru poprzedniego określić, jak dla danej macierzy R = r21 r22 r23 ∈ r31 r32 r33 SO(3) wyznaczyć wektor k i kąt θ przy pomocy elementów składowych macierzy R . Zastanowić się, dla jakich macierzy Państwa pomysł jest dobrze, a dla jakich źle, uwarunkowany numerycznie. (czyli mogą wystąpić kłopoty z akceptowalnie dokładnym określeniem tych danych) 5. Potrenować kolejne przemieszczanie układów współrzędnych np. przy transformacji: rot(x, π/2)rot(z, π)rot(y, −π/2)rot(x, −π)rot(z, π/2) zwracając szczególną uwagę jak określamy kąty obrotu dodatnie, a jak ujemne. Można także dodać translacje wzdłuż osi x, y, z w różnych miejscach. 6. (*) Pokazać (korzystając z zależności i rysunku z wykładu), że R = rot(z, α)rot(y, β)rot(z, θ)rot(y, −β)rot(z, −α) z jednostkowym wektorem k = (kx , ky , kz )T = (cα sβ , sα sβ , cβ )T opisuje obrót dookoła osi k o kąt θ, zgodnie z zależnością (1). Uwaga: sporo liczenia. Podpowiedź: wyliczyć R jako funkcję sinusów i kosinusów α, β, θ, a potem to co się da wyrazić przez składowe wektora k . 7. (*) Niech będzie dany wektor v ∈ R3 obracany wokół wektora jednostkowego k ∈ R3 o kąt θ. Pokazać, że wynikiem będzie v rot = cos(θ)vv + sin(θ)kk × v + (1 − cos(θ))hkk , v ikk Podpowiedź, a może rozbić wektor v na składowe? 1