KineLab kinematika ramene
Otevřít interaktivní verzi →

Tohle je statická kopie kapitoly pro vyhledávače. Interaktivní verze má animované obrázky, kontrolní otázky a tlačítka, která příklad načtou do kalkulačky.

1. Rámce a řetěz transformací

Kinematika odpovídá na dvě otázky, které vypadají symetricky a symetrické vůbec nejsou:

  1. Dopředná: znám úhly kloubů, kde je nástroj? Vždycky jedno řešení, vždycky snadné — je to jen součin matic.
  2. Inverzní: chci nástroj tady, jaké mají být úhly? Může mít nula, jedno, osm nebo nekonečně mnoho řešení, a u obecného ramene neexistuje uzavřený vzorec.

Ta asymetrie je celý předmět. Kapitoly 3–5 jsou o té snadné otázce, kapitoly 7–8 o té těžké.

Homogenní transformace

Rotaci a posuv se vyplatí nosit v jedné matici 4×4:

T = ⎡ R   p ⎤
⎣ 0   1 ⎦
    T−1 = ⎡ RT   −RTp ⎤
⎣ 0    1 ⎦

Inverze není obecná inverze matice 4×4 — je to transpozice rotace a otočený posuv. Rychlejší i přesnější, a nástroj to tak počítá.

Řetěz

0Tn = 0T1 · 1T2 · … · n−1Tn

Indexy se krátí přesně jako u samotných rotací (viz RotLab, kapitola 4). Když se nekrátí, je součin obráceně.

Matice rotace: sloupce jsou to podstatné

Než půjdeme dál, jedna věc, kterou se vyplatí mít v ruce a ne jen v hlavě. Matice rotace vypadá jako devět čísel bez ladu a skladu. Není. Každý sloupec je místo, kam se dostane jedna osa. První sloupec je nový směr x̂, druhý ŷ, třetí ẑ.

xyzsloupec 1 — kam se dostane x̂( 0.77, 0.54, -0.34 )sloupec 2 — kam se dostane ŷ( -0.57, 0.82, 0.00 )sloupec 3 — kam se dostane ẑ( 0.28, 0.20, 0.94 )
0.770-0.5740.2800.5390.8190.196-0.3420.0000.940
det R = 1.0000 — vždycky přesně 1, ať posuneš cokoliv. Sloupce zůstávají jednotkové a navzájem kolmé; to je celá podmínka SO(3).
Táhni yaw a dívej se na první sloupec matice: je to přesně ten červený vektor na obrázku. Otoč jen kolem z a třetí sloupec se nehne — ẑ zůstává, kde byl. To je celý vztah mezi maticí a obrázkem a od téhle chvíle se dá matice číst.
Orientace je samostatná disciplína. Všechno o maticích rotace, kvaternionech, Eulerových úhlech a gimbal locku je v RotLabu. Tenhle nástroj to používá jako hotovou věc a soustředí se na řetěz.

Vzorce v této kapitole

T — homogenní transformace a její inverze
T = [R p; 0 1]; T⁻¹ = [Rᵀ −Rᵀp; 0 1] [—] rigid-body kinematics
⁰Tₙ — řetěz transformací
⁰Tₙ = ⁰T₁ · ¹T₂ · … · ⁿ⁻¹Tₙ [—] composition