Pojďme programovat elektroniku | Arduino

Programování elektroniky: Proměníme staré herní pedály v bizarní počítačovou myš

  • Kuba Michlovský rozpitval herní pedály
  • Dnes jim znovu vdechneme život
  • V Arduinu z nich uděláme kolečko virtuální myši

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.

fe5ba9c8-10d6-4764-bfb6-c4b33104234404ac1e65-5be8-4c3c-a290-e5b082825cbdd032fa67-7984-410a-b7ff-31e82099af5f
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.

c0c91176-1e45-418d-b924-05c5163ea494
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.

f1e0e7da-47d9-48c5-9497-2ca833416b360a0cb6df-06db-456e-9d08-75ef4c4edd1f5bf5b98d-9fb7-4d47-bd17-14b00ab8b156
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.

c8e2d80b-5ee4-425a-a045-4deade9cc0c2
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ě
Váš názor Další článek: Zelená je dobrá. Windows se budou aktualizovat, když počítač poběží z obnovitelných zdrojů

Témata článku: , , , , , , , , , , , , , , , , , , , , , , , , ,