Robotika Kinematika Magyar Attila amagyar@almos.vein.hu
Miről lesz szó? Bevezetés Merev test pozíciója és orientációja Rotáció Euler szögek Homogén transzformációk Direkt kinematika Nyílt kinematikai lánc Denavit-Hartenberg jelölés
Pozíció és orientáció Merev test egyértelműen leírható: Pozíció Orientáció Referencia koordinátarendszer Pozíció: Orientáció:
Forgatási mátrix Az orientációt leíró (O -x y z ) koordinátarendszer egységvektorai forgatási mátrixot alkotnak: kihasználva, hogy x y z ortogonálisak: R ortogonális: R T R = I azaz R T =R -1 és det(r) = ± 1 (+1, ha jobb, -1, ha bal)
1. Elemi forgatások O-xyz elforgatása z tengely körül α szöggel O -x y z Hasonlóan: y tengely körül β, és x tengely körül γ: Invertálás:
2. Vektor reprezentáció O-xyz, O-x y z elforgatott koordinátarendszerek, P pont p és p ugyanazon P pont reprezentációi Koordináta transzformáció
3. Vektor forgatás Egy p vektor elforgatása egy adott szöggel egy tetszőleges tengely körül (közös bázis!) R ortogonalitása miatt p = R p : Elforgatott helyzet p = p : p T p = p T R T R p = p T I p = p T p Inverz: p = R T p
Forgatás összegezve Leírja két bázis egymáshoz képesti helyzetét: Megmutatja az egy adott pont különböző (közös origójú) bázisokban való ábrázolásához szükséges koordinátatranszformációt Közös bázisban leírja a vektorok forgatását
Összetett forgatások Legyenek O-x 0 y 0 z 0, O-x 1 y 1 z 1, és O-x 2 y 2 z 2 közös origójúak p legyen egy pont, a fenti bázisokban kifejtve p 0, p 1, p 2 R i j : i bázis forgatási mátrixa j-re nézve, azaz p 1 = R 1 2 p 2 illetve p 0 = R 0 1 p 1 és p 0 = R 0 2 p 2. Ebből R 0 2 = R 0 1 R 1 2 Nem kommutatív!
Összetett forgatások Forgatás az aktuális bázisban: R 0 2 = R 0 1 R 1 2
Összetett forgatások Forgatás rögzített bázisban: R 0 2 =R 1 2 R 0 1
Euler szögek Rotációs mátrixok redundáns módon írják le az orientációt 9 elemű mátrix 6 korlátozás: 3 paraméter minimális reprezentáció 3 szöggel leírható : [φ,θ,ψ] R z (φ): egyparaméteres forgatás egy tengely körül Tetszőleges 3 megfelel, ha egymásután nincs párhuzamos tengely körüli forgatás Összesen 3 2 2=12 megengedett a 3 3 =27-ből Euler szögek Leggyakrabban: ZYZ, ZYX (vagy Roll-Pitch-Yaw) szögek
ZYZ szögek Egymás utáni forgatás az aktuális bázisban: R z (φ) R Y (θ) R z (ψ) Inverz probléma: adott egy R forgatási mátrix, határozzuk meg a hozzátartozó Euler szögeket
Roll-Pitch-Yaw szögek Egymás utáni forgatás egy rögzített bázisban: R X (ψ) (yaw) R Y (θ) (pitch) R z (φ) (roll) Inverz probléma: adott egy R forgatási mátrix, határozzuk meg a hozzátartozó Euler szögeket
Szög + tengely Egy nem-minimális reprezentáció: 4 paramétert használ: Forgatás egy adott szöggel (θ) Egy adott tengely körül: r = [r x,r y,r z ] T R(θ,r)= R Z (α) R Y (β) R Z (θ) R Y (-β) R Z (-α) Belátható, hogy R(θ,r)=-R(-θ,-r)
Homogén transzformáció P pont, O 0 -x 0 y 0 z 0 és O 1 -x 1 y 1 z 1 koordinátarendszerek Ekkor p 0 = o 10 +R 1 0 p 1 Koordináta transzformáció (eltolás + forgatás) Inverze: p 1 = -R 1 0T o 10 +R 1 0T p 0 = -R 01 o 10 +R 0 1 p 0
Homogén transzformáció Tömörebb reprezentáció: homogén transzformációs mátrix Ekkor Továbbá Nem ortogonális!
Homogén transzformáció Speciális esetek: Azonos origók esetében forgatássá fajul Koordináta-transzformációk sorozata
Direkt kinematika Cél: A végszerszám pozíciójának és orientációjának meghatározása a csuklóváltozók függvényeként O b -x b y b z b -ra vonatkozólag q csuklóváltozók n e, s e, a e : végszerszámhoz rögzített koordinátarendszer p e : origóba mutató helyvektor Homogén transzformációs mátrix
Példa Kétszegmensű síkbeli kar direkt kinematikai modellje Jelölje s ij = sin(θ i + θ j ) c ij = cos(θ i + θ j ) Probléma: bonyolult kinematikai struktúra, illetve zárt kinematikai lánc esetén nehéz, vagy lehetetlen analitikus megoldást adni A homogén transzformációs mátrix
Nyílt kinematikai lánc n+1 szegmens, és n ízület nyílt lánc Először két egymást követő szegmens közti kinematikai kapcsolat Rekurzív módon felépíteni a teljeset
Denavit-Hartenberg jelölés Koordinátarendszerek orientációja Jelölje Tengely i a i-1 és i szegmenset összekötő tengelyt z i essen egybe az i+1 ízület tengelyével O i legyen a z i és z i-1 közös normálisának z i -vel alkotott metszete, O i pedig a z i és z i-1 közös normálisának z i-1 -vel alkotott metszete x i -t úgy válasszuk meg, hogy a közös normális irányában mutat az i-edik ízülettől az i+1-edikig y i -t úgy válasszuk, hogy x i y i z i egy jobbsodrású koordinátarendszert alkosson Mikor nem egyértelmű: ha két egymást követő tengely párhuzamos, nem egyértelmű a közös normális ilyenkor úgy kell választani, hogy minél egyszerűbb legyen
Denavit-Hartenberg jelölés Az i koordinátarendszer i-1-re vonatkozó pozíciója és orientációja megadható: a i : O i és O i közti távolság d i : az O i pont z i-1 irányába eső koordinátája α i : z i-1 és z i tengelyek szöge x i tengely körül θ i : x i-1 és x i tengelyek szöge z i-1 tengely körül a i és α i konstans, és csak a geometriától függ Ha az i-1 és i szegmens közti ízület rotációs, akkor θ i a változó transzlációs, akkor d i a változó
Denavit-Hartenberg jelölés Az i és i-1 koordinátarendszerek közti homogén transzformáció Válasszuk ki az i-1 koordinátarendszert Transzformáljuk i -be: eltolás d i -vel és forgatás θ i -vel Transzformáljuk i -t i-be: eltolás a i -vel és forgatás α i -vel
Denavit-Hartenberg jelölés Az i és i-1 koordinátarendszerek közti homogén transzformáció Mivel az aktuális koordinátarendszerben forgattunk: Csak egy csuklóváltozótól függ θ i -től, ha forgó ízület d i -től, ha prizmatikus A különálló koordináta transzformációkból felépíthető a teljes direkt kinematikai kapcsolat
Denavit-Hartenberg algoritmus 1. Ízületi tengelyek megszámozása és a z 0,,z n-1 tengelyek irányának felvétele 2. 0. koordinátarendszer megválasztása, origó kiválasztása z 0 -n 3 5 lépések ismétlése i = 1,,n-1 3. Az Oi origó legyen z i-1 és z i közös normálisának és z i -nek metszetében. Ha z i- 1 és z i párhuzamosak és az i ízület forgó, akkor válasszuk O i -t úgy, hogy d i = 0. Ha prizmatikus, akkor valamilyen referenciapozícióban legyen. 4. Válasszuk meg x i -t a közös normális mentén úgy, hogy az i-edik ízülettől az i+1-edik felé mutasson. 5. Válasszuk meg y i -t úgy, hogy x i y i z i egy jobbos koordinátarendszer legyen Befejezés: 6. Válasszuk ki az n-edik koordinátarendszert. Ha az n-edik ízület forgó, akkor z n essen z n-1 irányába, ha prizmatikus, akkor tetszőleges. x n -et 4. alapján. 7. határozzuk meg a i,d i,α i,θ i paramétereket, i = 1,,n. 8. Számítsuk ki az A i-1 i (q i ) homogén transzformációs mátrixokat, i = 1,,n. 9. Számítsuk ki a T n0 (q)= A 10 A n-1 n homogén transzformációt 10. Adott T 0b (q) és T en (q), számítsuk ki T eb (q)=t 0b T n0 T en homogén transzformációt az alap és a végszerszám között
Példák