Enkodéry
senzory pro detekci pohybu kol
Robot nám vesele náhodně pobíhá po podlaze, ale přitom o tom vůbec neví. Vysvětlíme si tedy, jak může detekovat, zda (a případně jak rychle a na jakou stranu) se mu točí kolečka. Nejčastěji používaným zařízením pro tento účel jsou optické enkodéry. Jak fungují, či jak si takový enkodér postavit doma, se dozvíte právě dnes.
Enkodér z počítačové myši |
Signál jednoduchého enkodéru |
Signál dvojtého enkodéru |
V případě, že infomaci o směru otáčení nemáme, z výše popsaného enkodéru ji
nezískáme. Pro zjištění směru otáčení potřebujeme na kolečku ještě jeden
senzor, který je v ideálním případě namontován tak, že jeho signál je s
původním signálem fázově posunut a to nejlépe o 90°.
Odrazivý optický enkodér |
Mimo výše popsaných inkrementálních enkodérů existují i tzv. absolutní.
Zatím co inkrementální enkodéry pouze detekují změnu polohy o pevně daný minimální
krok, absolutní enkodéry nám říkají přímo polohu v rámci 360 stupňů.
Absolutní enkodér |
Další, běžnější variantou, je použití potenciometru. Poloha se pak jednoduše
určí pomoci A/D převodníku. Toto řešení je například použito snad ve všech
levných modelářškých servech.
Co se použití týče, jsou v mnoha případech enkodéry záměnné: máme-li absolutní
enkodér tak z rozdílu dvou poloh zjistíme o kolik se pootočil. Opačným směrem
to není už tak jednoduché, protože je třeba někde definovat nulu, od které
budeme počítat. To lze i pomocí obyčejného tlačítka (limit switch) a dělala to
tak většina starých jehličkových tiskáren. Jinou možností je speciální signál
index, který je aktivován pouze v jedné poloze. Polohu si je třeba si pamatovat
a po resetu jí znovu ověřit.
Související literatura
- http://en.wikipedia.org/wiki/Rotary_encoder
- http://en.wikipedia.org/wiki/Potentiometer
- http://en.wikipedia.org/wiki/Synchro
Závěr
Po přečtení tohoto články byste měli mít tak zhruba představu o tom, co to
jsou enkodéry, jaké informace poskytují, a jak je zpracovávat.
2013-07-11 (neznámý autor)
Pro absolutní enkodér je vhodnější zvolit Grayův kód (než prostý binární
kód, jak je uveden na obrázku). U Greyova kódu se sousední polohy liší
vždy jen jedním bitem. U prosté binární posloupnost se sousední polohy
zpravidla liší více až všemi bity (při přetočení se o jednu otáčku, tj.
přes konec k začátku). To přináší problém spočívající v tom, že se
kolečko s kódem může zastavit tak, že se pod snímači bude nalézat
hranice mezi sousedními (binárně odlišenými) polohami. Malá změna polohy
(třeba chvění) pak může způsobit změny hodnot víceméně náhodných bitů a
tedy poskytnout zcela nesmyslné údaje.
http://en.wikipedia.org/wiki/Gray_code