Optické senzory toku poskytují extrémně přesné měření rychlosti (a tedy i poloha) UAV systémů nebo počítačové myši. PX4FLOW je nejvíce požívané zařízení, ale existuje jich mnoho dalších.
Jak to funguje
Senzor optického toku umožňuje měření 2D úhlové rychlosti obrazu, který se pohybuje přes jeho zorné pole. Toho se využívá například v optické myši, ale není to zcela vhodné pro volně létací roboty. Optický tok musí být integrován s jinými druhy senzorů tak, aby byl získán pojem o 3D prostoru.
Obr. 1.
S ohledem na trigonometrii, tento obrázek (obr. 1.) ukazuje způsob, jak jsou jednotlivé senzory integrovány a jak se může vypočítat neznámá hodnota ze známých veličin.
- Bod C představuje střed optického toku s pohledu senzoru.
- Délka b je aktuální nadmořská výška nad terénem (AGL) ze sonaru.
- Úhel α je hrubý optický tok, mínus aktuální rychlost stoupání podle údajů gyroskopu.
- Délka a je rychlost letadla.
Takže výška ze sonaru, rychlost stoupání z IMU a optický tok umožňuje vypočítat rychlost.
Uvedený vzorec je užitečný pro jednoduchou vizualizaci a bude fungovat pouze při α=0. Pokud α=90, potom A a h budou v nekonečnu a to je nesmysl.Pro výpočet aktuální vzdálenosti se musí použít součet přes bod C, který odpovídá vzorci pro výpočet délky zakřiveného úseku kruhového segmentu (obrázek 2).
Obr. 2.
Mohlo by se zdát, že přidání křivky povede ke komplikovanějšímu vypočtu, ale ve skutečnosti to je jednodušší rovnice a to bez trigonometrické funkce.
Pozemní rychlost=(optický tok - rychlost náklonu) x výška
Problém a řešení
Ve výše uvedeném vzorci je výškou hodnota přímo naměřená sonarem. Sonar funguje dobře u multikoptér a jiných leteckých zařízení, které létají ve visu, ale má tendenci být mnohem méně spolehlivý v místech, kde přesné měření AGL je velmi důležité a tím je například přistávání.
Naštěstí letová rychlost není neznámou. Pomocí GPS a rychlost letu dostaneme vysoce přesné hodnoty.
výška = rychlost letu/(optický tok - rychlost náklonu)
PX4FLOW
Nová kamera PX4FLOW má vlastní sonar a gyroskop a ty provedou sběr všech dat interně. Pokud chceme přidat rychlost letu jako vstupní údaj pro zjištění výšky musí:
- autopilot zjistit rychlost letu na PX4FLOW, které ji dále integruje s vlastními senzory a odešle zpět do autopilota vypočtenou výšku, nebo
- PX4FLOW poskytne hrubá data optického toku autopilotovy. Všechny ostatní senzory jsou vypnuty. Autopilot integruje optický tok do vlastních zjištěných údajů ze svých senzorů, které poskytnou lepší přesnost o výšce, rychlost vůči zemi, polohu a rychlost větru.
Druhá možnost se jeví jako lepší, protože lze využít jednoduššího snímače optického toku bez ostatních senzorů.