Kinematika Kinematika studuje geometrii pohybu robotu a trajektorie, po kterých se pohybují jednotlivé body. Klíčový pojem je poloha. Statika studuje vliv sil působících na robota v klidu a jejich vliv na jeho deformace. Klíčový pojem je pružnost. Dynamika analyzuje vliv sil a momentů na robota za pohybu. Použité pojmy a zákony mohou být použity na jakékoliv mechanické stroje.
Terminologie Vazba je omezení vzájemného pohybu dvou těles. Kinematická dvojice je dvojice těles spojených vazbou. Kloub je technické provedení vazby. Rám je část robotu nebo mechanismu, která je nepohyblivá, zpravidla spojená se zemí. Chapadlo je část robotu, která je určena k manipulaci nástrojem nebo předmětem. Kinematický řetězec je soustava kinematických dvojic. Otevřený kinematický řetězec je soustava, kterou lze popsat acyklickým grafem.
Obrázek 1: Smíšený kinematický řetězec Další pojmy Smíšený kinematický řetězec je soustava kinematických dvojic, kde existuje smyčka. Viz Obr. 1. Pracovní prostor je množina všech bodů, kam je možné nastavit chapadlo robota. Viz Obr. 3. Operační prostor je prostor, kam zasahuje robot nějakou svou částí při manipulaci. Viz Obr. 17. Stupeň volnosti (DOF): Těleso má tolik stupňů volnosti v daném bodě, kolik je dimenze prostoru, kam se může v daném bodě pohnout. 2-1
Symbol Název má/odnímá DOF Druhy kinematických dvojic sférická 3 / 3 rotační 1 / 5 posuvná 1 / 5 válcová 2 / 4 plochá 3 / 3 Obrázek 2:
Typická struktura manipulátoru Pravoúhlá struktura Válcová (cylindrická) Sférická Angulární Obrázek 3:
Těleso v souřadném systému Obrázek 4:
Těleso v souřadném systému Těleso v rovině má 3 DOF. Těleso v prostoru má 6 DOF. Kontrolní otázky: Kolik stupňů volnosti má skládací metr na stole? Kolik stupňů volnosti má gumička? Zvolíme souřadný systém rámu O xyz, viz Obr. 4. S tělesem svážeme souřadný systém O x b y b z b. Popis souřadného systému O x b y b z b v souřadném systému rámu je: OO = x o = x o y o z o (n, t, b). R je ortonor- Utvořme matici R = (n, t, b), n, t, b jsou jednotkové a ortogonální vektory, matice mální, tedy R 1 = R T. Známe polohu bodu v souřadném systému O x b y b z b : x b = u v w a hledáme polohu v souřadném systému O xyz: x = x y z. Viz Obr. 5. OP = OO + O A + AB + BP Obrácená transformace: x = x o + un + vt + wb x = x o + Rx b x b = R T x o + R T x Eulerovy úhly Matice R má devět koeficientů, ale má hodnost pouze tři. Je tedy redundantní reprezentací, omezující podmínky jsou právě jednotkovost a kolmost vektorů n, t, b: n T t = 0 t T b = 0 b T n = 0 n = 1 t = 1 b = 1 Matici R lze snadno zkonstruovat pomocí Eulerových úhlů, viz Obr. 6: 1. Otočme souřadný systém O xyz okolo osy z o úhel φ. Dostaneme O x y z. 2. Otočme souřadný systém O x y z okolo osy x o úhel θ. Dostaneme O x y z. 3. Otočme souřadný systém O x y z okolo osy z o úhel ψ. Dostaneme O x b y b z b. R = R z (φ)r x (θ)r z (ψ) R z (φ) = R x (θ) = R z (ψ) = cos φ sin φ 0 sin φ cos φ 0 0 0 1 1 0 0 0 cos θ sin θ 0 sin θ cos θ cos ψ sin ψ 0 sin ψ cos ψ 0 0 0 1 (1) (2) (3) 5-1
R = cos φ cos ψ cos θ sin φ sin ψ cos θ cos ψ sin φ cos φ sin ψ sin φ sin θ cos ψ sin φ + cos φ cos θ sin ψ cos φ cos θ cos ψ sin φ sin ψ cos φ sin θ sin θ sin ψ cos ψ sin θ cos θ (4) Trojice Eulerových úhlů dává jednoznačně otočení v prostoru, poloha v prostoru nedává jednoznačně trojici úhlů. Existují další podobné definice, které mají podobné vlastnosti, ale jiné rovnice. Jestliže je dána matice R, lze Eulerovy úhly vypočítat z porovnání prvků r 33, r 32, r 23. Homogenní souřadnice Zaveďme homogenní souřadnice takto: Euklidovské (metrické) Homogenní - projektivní x = x x y x = y z z x = x/w y/w z/w neexistuje (nevlastní bod) x = x y z w x = 1 w 0 x y z 0 Lze snadno ukázat, že v homogenních souřadnicích: x = Ax b, kde A je matice 4x4: Inverzní matice: A = A 1 = [ R xo 0 0 0 1 ] [ R T R T x o 0 0 0 1 Transformace přes více souřadných systémů viz Obr. 7: ] x 0 = A 0 1A 1 2A 2 3A 3 4... A n 1 n x n. (5) 5-2
Transformace souřadnic x = x 0 + un + vt + wb Obrázek 5: Transformace bodu z jedné souřadné soustavy do jiné.
Definice Eulerových úhlů Obrázek 6:
Posloupnost transformací souřadnic Obrázek 7:
Otevřený kinematický řetězec Obrázek 8:
Modelování otevřeného kinematického řetězce Otevřený kinematický řetězec je tvořen posloupností těles spojených klouby. Známe-li popis klouby dovolených pohybů pomocí geometrických transformací, můžeme snadno nalézt transformace bodu ze souřadnic chapadla do souřadnic rámu a naopak. Jde o takzvanou přímou kinematickou úlohu. Jednoznačný a efektivní popis jednotlivých transformací můžeme nalézt metodou Denavitovou Hartenbergovou (Denavitova Hartenbergova notace). Viz Obr. 9. Popisujeme kloub i. 1. Nalezneme osy otáčení kloubů i 1, i, i + 1. 2. Nalezneme příčku (společnou normálu) os kloubů i 1 a i a os kloubů i a i + 1. 3. Nalezneme body O i 1, H i, O i. 4. Osu z i položme do osy kloubu i + 1. 5. Osu x i položme do prodloužení příčky H i O i. 6. Osa y i tvoří s ostatními pravotočivou soustavu. 7. Označme vzdálenost bodů O i 1, H i = d i. 8. Označme vzdálenost bodů H i, O i = a i. 9. Označme úhel mezi příčkami θ i. 10. Označme úhel mezi osami kloubů i, i + 1 α i. 11. Pro rám je možné zvolit polohu bodu O o kdekoliv na ose kloubu a osu x 0 orientovat libovolně. Například tak, aby d 1 = 0. 12. Pro chapadlo je možné opět zvolit bod O n a orientaci osy z n při dodržení ostatních pravidel. 13. Jsou-li osy dvou po sobě jdoucích kloubů rovnoběžné, je možné polohu příčky zvolit, například tak, že d i = 0. 14. Pro posuvné klouby lze polohu osy kloubu zvolit. Transformace v kloubu je zcela popsána čtyřmi parametry a i, d i, α i, θ i. Parametry a i, α i jsou konstanty, jeden z parametrů d i, θ i se mění s pohybem kloubu. Klouby jsou většinou: Otočné, pak je d i konstanta a θ i se mění, Posuvné, pak je θ i konstanta a d i se mění. Transformační matici A pak vypočteme jako A i 1 i = A i 1 int Aint i, kde Snadno zjistíme, že: A i 1 i = A i 1 int = A int i = cos θ i sin θ i 0 0 sin θ i cos θ i 0 0 0 0 1 d i 0 0 0 1 1 0 0 a i 0 cos α i sin α i 0 0 sin α i cos α i 0 0 0 0 1,. cos θ i sin θ i cos α i sin θ i sin α i a i cos θ i sin θ i cos θ i cos α i cos θ i sin α i a i sin θ i 0 sin α i cos α i d i 0 0 0 1. 9-1
Označme q i ten z parametrů θ i, d i, který se mění. Výraz 5 pak můžeme přepsat na x 0 = A 0 1(q 1 )A 1 2(q 2 )A 2 3(q 3 )A 3 4(q 4 )... A n 1 n (q n )x n. Pro každou hodnotu vektoru q = (q 1, q 2, q 3, q 4,... q n ) Q = R n pak můžeme vypočítat souřadnice bodu P v souřadnicích rámu ze zadaných souřadnic v souřadné soustavě chapadla a naopak.. Přímá kinematická úloha pro otevřený kinematický řetězec je tedy vždy řešitelná analyticky. Inverzní kinematická úloha Inverzní kinematickou úlohou nazýváme problém, kdy je dána matice T(q) = A 0 1(q 1 )A 1 2(q 2 )A 2 3(q 3 )A 3 4(q 4 )... A n 1 n (q n ). (6) a hledáme hodnoty koeficientů q. Obecně se jedná o soustavu nelineárních (většinou trigonometrických) rovnic, která není analyticky řešitelná. Řešení inverzní kinematické úlohy: Analyticky, pokud to lze, neexistuje obecný návod, jak úlohu řešit. Existuji dílčí navody, jak řešit některé speciální roboty. Numericky. Tabulkou, předpočítanou pro pracovní prostor W Q. Existují struktury robotu, které lze řešit analyticky, takové struktury nazýváme řešitelné. Postačující podmínka pro řešitelnost struktury je např. to, že pro robota se šesti stupni volnosti tři po sobě jdoucí rotační klouby mají osy protínající se v jednom bodě nezávisle na pohybu nebo tři po sobě jdoucí osy musí být rovnoběžné. Jinou vlastností IKM je její nejednoznačnost v singulárních bodech. Často existuje podprostor Q s prostoru Q, který dává stejné T. q Q s : T(q) = T Pro rozhodnutí, kterou z n-tic q řešících rovnici 6 zvolíme, se bere v úvahu zejména: 1. Jsou uvažované hodnoty vektoru q přípustné, robot typicky nemůže zdaleka dosáhnout všech hodnot z prostoru kloubových souřadnic? 2. Jak se do singulárního bodu dostaneme (z kterého směru jsme přišli). Z požadavku spojitého pohybu po trajektorii plyne, že i n-tice q musí být spojitou funkcí času. 3. Jakým směrem se ze singulárního bodu dostaneme (kam pokračuje trajektorie). 4. Nedostaneme se volbou q během dalšího pohybu do situace, kdy nepůjde splnit předchozí body? 5. Samotný operační prostor nás omezuje při volbě q. Příkladem je montáž sedadla do automobilu robotem. Někdy navrhujeme takzvaně redundantního robota (například s osmi stupni volnosti), abychom zvětšili prostor Q s, z kterého vybíráme q a tak mohli lépe vyhovět výše uvedeným požadavkům. Úlohy k zamyšlení : Lze sestrojit robota pouze s posuvnými klouby, který by mohl obecně manipulovat s tělesem v prostoru? Proč? Vyberte si nějakou montážní úlohu a navrhněte pro ni vhodnou strukturu redundantního robota. 9-2
Denavitova-Hartenbergova notace Obrázek 9:
Sousední souřadné systémy v DH Obrázek 10:
Poloha chapadla v souřadném systému rámu Obrázek 11:
Souřadné systémy rámu a chapadla Obrázek 12:
5-R-1-P manipulátor Obrázek 13:
Struktura 5-R-1-P manipulátoru Obrázek 14:
Nejednoznačnost inverzní kinematické úlohy Obrázek 15:
PUMA Obrázek 16:
Pracovní prostor Obrázek 17:
Obrázek 18: Smíšený kinematický řetězec Obrázek 19: Smíšený kinematický řetězec
Diferenciální kinematika Diferenciální kinematika zkoumá pohyb v malém okolí chapadla. Zabývá se rychlostí pohybu chapadla a jejím vlivem na rychlosti a zrychlení v kloubech a naopak. Na příkladu manipulátoru z Obr. 20lze ukázat motivaci analýzy. Závislost souřadnic chapadla na kloubových souřadnicích je: [ ] [ ] [ ] x(θ1, θ 2 ) x l1 cos θ = = 1 + l 2 cos(θ 1 + θ 2 ). y(θ 1, θ 2 ) y l 1 sin θ 1 + l 2 sin(θ 1 + θ 2 ) Infinitesimální změnu polohy chapadla v závislosti na infinitesimální změně kloubových souřadnic vypočteme: [ ] [ ] x(θ1,θ dx 2) x(θ 1,θ 2) [ ] θ = 1 θ dθ1 2 = dy dθ 2 Matici J = y(θ 1,θ 2) θ 1 y(θ 1,θ 2) θ 2 [ ] [ ] l1 sin θ = 1 l 2 sin(θ 1 + θ 2 ) l 2 sin(θ 1 + θ 2 ) dθ1. l 1 cos θ 1 + l 2 cos(θ 1 + θ 2 ) l 2 cos(θ 1 + θ 2 ) dθ 2 ] [ x(θ1,θ 2) θ 1 x(θ 1,θ 2) θ 2 y(θ 1,θ 2) θ 1 y(θ 1,θ 2) θ 2 okamžité poloze kloubů (a tedy i chapadla). Píšeme tedy Lze snadno ukázat, že pro rychlost platí nazýváme jakobiánem manipulátoru. Její hodnota závisí na dx = Jdθ. dx dt = Jdθ dt, v = J θ. Jakobián manipulátoru můžeme rozdělit na podjakobiány jednotlivých souřadnic: v = J θ = J 1 θ1 + J 2 θ2. Každý z podjakobiánů v sobě nese vliv jedné kloubové souřadnice na výslednou rychlost chapadla. Infinitesimální rotace Infinitesimální rotace mají zcela odlišné chování od rotací konečné velikosti. S odvoláním na rovnice 3 můžeme psát: R x (dφ x ) = R y (dφ y ) = R z (dφ z ) = 1 0 0 0 cos dφ x sin dφ x 0 sin dφ x cos dφ x cos dφ y 0 sin dφ y 0 1 0 sin dφ y 0 cos dφ y cos dφ z sin dφ z 0 sin dφ z cos dφ z 0 0 0 1 1 0 0 0 1 dφ x 0 dφ x 1 1 0 dφ y 0 1 0 dφ y 0 1 1 dφ z 0 dφ z 1 0 0 0 1 (7) (8). (9) Zde jsme použili přibližnou rovnost cos(dφ) = 1 a sin(dφ) = dφ. V dalším použijeme dφdφ = 0. R x (dφ x )R y (dφ y ) = = 1 0 dφ y dφ x dφ y 1 dφ x dφ y dφ x 1 1 0 dφ y 0 1 dφ x dφ y dφ x 1 = (10) = (11) = R y (dφ y )R x (dφ x ). (12) 19-1
Skládání infinitesimálních rotací je tedy komutativní a lze je zaměňovat. Toto nelze provádět u rotací konečné velikosti, kde záleží na pořadí. Matice infinitesimálních rotací je ve tvaru: 1 dφ z dφ y R x (dφ x )R y (dφ y )R z (dφ z ) = dφ z 1 dφ x. (13) dφ y dφ x 1 Infinitesimální rotace lze sčítat, jak snadno nahlédneme: R(dφ x, dφ y, dφ z )R(dφ x, dφ y, dφ z) = 1 (dφ z + dφ z) (dφ y + dφ y) (dφ z + dφ z) 1 (dφ x + dφ x) (dφ y + dφ y) (dφ x + dφ x) 1 = R(dφ x + dφ x, dφ y + dφ y, dφ z + dφ z). Výpočet Jakobiánu manipulátoru Jakobián manipulátoru můžeme při použití Denavitovy-Hartenbergovy notace vypočítat z následujících úvah (viz Obr. 22). Označme vektor infinitesimálního posunu chapadla dx e a vektor infinitesimálních rotací chapadla dφ e. Složení těchto vektorů označme dp. ( ) dxe dp =. dφ e Rychlost můžeme psát jako: ( ) dve dṗ = = J q. dω e Jakobián manipulátoru, který je v trojrozměrném případě rozměru 6n, kde n je počet kloubů manipulátoru, můžeme psát: [ ] JL1 J J = L2... J Ln. (14) J A1 J A2... J An Rychlost pak můžeme psát ve tvaru: v e = J L1 q 1 + J L2 q 2 + + J Ln q n. Pro posuvný kloub se infinitesimální posuv kloubu přímo přenáší na infinitesimální posuv chapadla, takže: Posuvný kloub neindukuje žádnou rotaci, takže: J Li q i = b i 1 d i. J Ai = 0. Rotační kloub vyvozuje infinitesimální posun chapadla, jehož velikost je dána vektorovým součinem vektoru osy rotace kloubu b i 1 a ramenem mezi osou kloubu a chapadlem r i 1,e : J Li q i = ω i r i 1,e = (b i 1 r i 1,e ) θ i. Rotaci chapadla způsobená rotací kloubu je možné přímo přenést z kloubu: ω i = b i 1 θi. = Shrnuto pro posuvný kloub: Pro otočný kloub: [ JLi [ JLi ] = J Ai ] = J Ai [ bi 1 0 ]. (15) [ ] bi 1 r i 1,e. (16) b i 1 19-2
Pomocí Denavitovy-Hartenbergovy notace snadno odvodíme, jak vypočítat b i 1. Vektor kloubu i v souřadném systému i 1 je b = [0, 0, 1] T. Do souřadného systému rámu ho převedeme posloupností násobení rotačními maticemi: b i 1 = R 0 1(q 1 ) R i 2 i 1 (q i 1) b. Vektor r i 1,e vypočítáme jako vektor mezi body chapadla a kloubu transformací do souřadné soustavy rámu. Oba jsou počátky příslušných souřadných soustav zapsaných X = [0, 0, 0, 1] T. Nechť funkce, která převede homogenní na Euklidovské souřadnice je nazvána e. Pak: r i 1,e = e(a 0 1(q 1 ) A n 1 n (q n ) X) e(a 0 1(q 1 ) A i 2 i 1 (q i 1) X). Příklad: Nalezněte jakobián manipulátoru z Obr. 23. 19-3
Diferenciální kinematika Obrázek 20: 2 DOF manipulátor Obrázek 21: Infinitezimální rotační vector
Diferenciální kinematika Obrázek 22:
Diferenciální kinematika Obrázek 23: Příklad.
Rychlost v okolí singulárního bodu Obrázek 24: 2 DOF planární manipulátor Obrázek 25: Trajektorie, průběh rychlostí