1. Proč je orientace těžká
Poloha v prostoru jsou tři čísla a nikdo se u nich nikdy nepohádal. Orientace je taky tři stupně volnosti — a je to jeden z nejčastějších zdrojů chyb v robotice vůbec.
Důvod je matematický, ne nedbalostní: množina rotací není plochý prostor. Je to grupa SO(3), zakřivená a bez okrajů, a neexistuje způsob, jak ji pokrýt třemi čísly tak, aby to nikde neselhalo. To není nedostatek Eulerových úhlů, to je vlastnost té množiny. Každá reprezentace tedy něco obětuje:
| Reprezentace | Čísel | Za co se platí | K čemu je dobrá |
|---|---|---|---|
| Matice rotace | 9 | šest vazeb navíc, drift | počítání, skládání, transformace vektorů |
| Osa a úhel | 4 | singularita při 0 a π | intuice, „o kolik a kolem čeho“ |
| Kvaternion | 4 | jedna vazba, dvojité pokrytí | interpolace, integrace, ukládání |
| Eulerovy úhly | 3 | gimbal lock, 12 konvencí | čtení člověkem, zadávání |
Pravidlo, které z toho plyne a kterého se drží skoro celá robotika: počítej s maticemi nebo kvaterniony, ukazuj Eulerovy úhly. Nikdy naopak.