Close

Krokový motor použitý jako enkodér

Arduino: Krokový motor jako enkodér

Krokové motory pro svoji činnost využívají cívky, které jsou rozmístěné po obvodu motoru. Tyto cívky je možné střídavě spínat a vypínat. Když takto přepínáme sousední cívky, magnet na ose motoru se postupně otáčí a motor tak provádí jednotlivé kroky. Pokud osou motoru otáčíme rukou, dochází k opačnému jevu – magnet se pohybuje kolem cívek a indukuje v nich proud. Pokud sledujeme signály z jednotlivých cívek, jsme pak schopni určit, jakým směrem a jak rychle se osa otáčí.

Ve videu níže můžete vidět enkodér vyrobený z krokového motoru a ovládaný levným klonem Arduino UNO. Více informací o projektu a také kód použitý pro jeho ovládání (včetně řízení LED kroužku NeoPixel) naleznete na serveru Instructables.

Chtěl jsem použít starý krokový motor a udělat z něj enkodér. Ten pracuje na jednoduchém principu. Když pohybujete magnetem kolem cívky, generuje se v cívce elektrický proud. Protože se pole mění, elektrický proud pulzuje. Po mírné úpravě těchto signálů jsme schopni získat stejný výstup, jako z klasických enkodérů. Nevýhodou je, že při malé rychlosti otáčení se generuje jen slabý proud, který už nemusí připojená elektronika detekovat. Pro většinu projektů je ale můj enkodér použitelný.

Přeloženo z https://blog.arduino.cc/2018/07/16/stepper-motor-utilized-as-a-rotary-encoder-with-arduino/ a upraveno.

Zbyšek Voda

Napsat komentář