17. 2. 2016

USB kontestová klávesnice / USB Contest Keyboard

Mírné fyziologické obtíže na levé ruce (skutečně způsobené loňskou kontestovou sezónou) a nápad na optimalizaci ergonomie kontestového SO2R pracoviště mě přivedly na myšlenku konstrukce externí nebo doplňkové kontestové klávesnice. Tato klávesnice by měla obsahovat základní a nejčastěji používané klávesy v optimálním rozmístění tak abych je mohl ovládat pravou rukou, stejně jako myš a mohl jsem tak levou ruku maximálně šetřit.

Po nějaké době přemýšlení vznikla následující konstrukce.


Klávesnice má 16 tlačítek s vysokým zdvihem a velmi měkkým chodem. Protože pouzdro má obdélníkový obrys, musel jsem namalovat výkres otvorů v CADu a ze souboru DXF ho nechat v blízké firmě vypálit laserem do víka hliníkové krabičky. Tlačítka mají dvojité hmatníky takže pod průhlednou krytku lze bez problému vložit papír s popisem funkce.

Dalším problémem byla volba řídícího obvodu. Samozřejmě by to šlo udělat z obvodů CMOS, ale to by asi bylo dříve po kontestech než bych to dokončil. Proto jsem musel použít nějaký mikrokontrolér s USB rozhraním. Již jednou jsem experimentoval s procesory AVR a emulovaným USB rozhraním V-USB, ale naprosto mě nepřesvědčila stabilita tohoto řešení. Proto jsem se rozhodl pro mikrokontrolér s HW implementací USB rozhraní. Volba nakonec padla na Atmel AtMega32U4, který je osazen v Arduino MicroPro deskách. Použití vývojového prostředí Arduino velice usnadnilo celou SW část. Toto prostředí obsahuje přímo knihovny pro USB HID zařízení, takže naprogramovat obsluhu klávesnice bylo otázkou asi půl hodiny. 

Klávesnice se normálně připojí do USB portu, přihlásí se jako HID vstupní zařízení a pracuje paralelně se standardní klávesnicí. Výhoda toho řešení je možnost naprogramovat si i kombinace kláves, které se normálně musí aktivovat dvěma prsty a nejlépe ještě na dvou rukách... 

Obsluhované klávesy jsem vybral dle mých potřeb pro N1MM+  a SO2R režim. Jak se klávesnice osvědčí uvidím hned o tomto víkendu v ARRL DX kontestu.




Žádné komentáře:

Okomentovat