Kluci z časopisu Computer odjakživa rádi ničí věci a ještě se tím chlubí. Ostatně, pravidelní čtenáři Živě.cz to dobře vědí, pitvy vyřazené elektroniky totiž najdou ve stejnojmenné rubrice u nás na webu. Za oběť vědy tam už padl třeba ohebný telefon, projektor a co nevidět vyjde i pitva herního volantu s pedály a s komentářem kolegy Kuby Michlovského.
Mnohé z vás jistě napadne otázka, co se pak s tímto harampádím děje a zdali jej řádně likvidujeme dle aktuálních ekologických směrnic EU. Samozřejmě! Všechny součástky, kovové díly, čočky a další elektroodpad totiž končí u mě v kanceláři.
Kutilové mi jistě rozumějí, každého makera totiž musí napadnout zcela přirozená myšlenka: Vždyť to všechno by se dalo určitě ještě nějak využít.
Naposledy se mi zželelo oněch herních pedálů, a tak jsem několik dnů dumal, v jakou pitomost bych je tak mohl proměnit.
Video: Herní pedál jako kolečko počítačové myši
Herní pedál jako rolovací kolečko myši
Nedávno jsem si do redakce pořídil novou myš MX Master 3 od Logitechu a celé dopoledne poslouchal oslavné ódy Tomáše Holčíka na její skvěle zpracované rolující kolečko. To zní jako plán!
Zkusím dva z pedálů proměnit v USB zařízení typu HID (Human Interface Device) – tedy v počítačovou myš a klávesnici.
Trojice vyřazených herních pedálů. Dva z nich poslouží jako kolečko myši
Vize je taková: První pedál bude emulovat otáčení kolečka jedním směrem, no a ten druhý opačným. Síla stisku pak bude odpovídat rychlosti otáčení virtuálního kolečka.
Knihovna Mouse promění Arduino v USB myš
Celá legrace se přitom vejde na pár směšných řádků v Arduinu, populární jednoduché vývojové prostředí totiž obsahuje vestavěnou knihovnu Mouse pro emulaci myši na vybraných mikrokontrolerech s nativní podporou USB.
Jedním z těchto čipů je rodina armových procesorů Microchip SAM, které najdete na deskách Arduino Due, Arduino Zero a na jejich asijských (a výrazně levnějších) klonech. Já nakonec vytáhl ze skříně právě Arduino Due (řídící čip AT91SAM3X8E, ARM Cortex-M3), oba pedály připojil k 3V napájení a jejich analogové výstupy na piny A0 a A1.
Pedál je vlastně otočný potenciometr
Podobný pedál je ve své podstatě naprosto primitivní analogový elektrický obvod s otočným potenciometrem, který je skrze ozubené kolečko připojený na páku. Potenciometr se chová jako odporový napěťový dělič s třemi vodiči pro napájení +/- a výstup.
Páka pedálu je připojená k potenciometru
Vodiče +/- připojíme k vhodnému zdroji napětí, no a podle stlačení páky se pak změnou elektrického odporu v obvodu sníží napětí na výstupu.
Pedál napájí laboratorní zdroj vpravo (napětí 3,3V). Výstupní vodič pedálu je připojený k multimetru vlevo. V klidovém stavu ukazuje napětí 3,1V, při středním stisku klesne napětí na 1,1 V a při plném až k zemi na 0,3V
Napětí přečteme pomocí A/D převodníku
Armové prototypovací desky zpravidla pracují s napětím okolo 3,3V, potenciometr pedálu proto připojím k 3,3V zdroji na desce Arduino Due. Výstupní vodič přivedu k jednomu z analogových vstupů (A0-A11), které jsou napojené na vnitřní A/D převodník čipu a spojité napětí vyjádří číselnou hodnotu podle rozlišení převodníku.
A/D převodník vyjádří spojité napětí diskrétním celým číslem. Čím větší rozlišení převodníků, tím více zubů a přesnější převod
Mikrokontroler na Arduino Due disponuje 12bitovým převodníkem, ten je ale v Arduinu ve výchozím stavu nastavený na 10 bitů, a vstupní napětí proto vyjádří celočíselnou hodnotou v rozpětí 0 až 1 023. Pro naše účely to bohatě stačí. Hodnota 0 bude odpovídat napětí 0 V a hodnota 1 023 pak zhruba 3,3V.
Pokračování článku patří k prémiovému obsahu pro předplatitele
Chci Premium a Živě.cz bez reklam
Od 41 Kč měsíčně