vbstudio.hu

Nagy Piros Gomb™

This article has since become obsolete by A Big Red Button Acting as a Keyboard Using Arduino.

Az ötlet onnan jött, hogy mindig is akartam egy nagy piros gombot, mert az tök jó, meg egy nagy gomb és piros (szóval hát mert miért ne). Egy gomba formájú gomb lett volna a legjobb, mint amivel a rakétákat lövik ki, de olyat csak nagyon ipari árkategóriában találtam, a célnak pedig ez is megfelelt.

A megvalósításhoz egy régi leselejtezett USB-s billentyűzetet szedtem szét és annak az elektronikáját építettem be. A nagy gombot eBay-en rendeltem kínából [1], a doboz pedig egy univerzális műszerdoboz a Lomex [2] elektronikai alkatrész szaküzletből.

A nagy gombbal a billentyűzet egy gombja nyomható meg, és hogy a felhasználási mód ne legyen túlzottan kötött, az alján két rejtett kapcsolóval állítható, hogy ez négy lehetséges billentyű közül melyik legyen. Egy logikus választás a Space gomb, ami pl. prezentációkhoz jó, vagy filmek szüneteltetéséhez, a többi gombnak pedig érdemes valami ritkán használt gombot beállítani, mint a Pause, vagy a Function gombok, amiket aztán egy háttérben futó programmal lehet figyelni, és valami funkciót beprogramozni rá. Az én esetemben a választott gombok: SpacePauseF11 és a Scroll Lock.

Közös mozizások elengedhetetlen kelléke pl. a sitcom nevetés vagy Wilhelm Scream generátor, de akár beprogramozható party-indító gombnak, ami a világítástechnikát vezérli. A lehetőségeknek csak a képzelet szab határt, ez az eszköz viszont minden esetben teljesen univerzális. A Vasparittya nevű programomat pontosan ilyen célra készítettem, és le is töltheted ingyen!

A nagy gomb bekötése

A billentyűzetekről azt kell tudni, hogy nincs minden gomb egyesével bekötve, hanem egy 2D rácsot kell elképzelni, ahol csak a sorok és oszlopok végei vannak a vezérlőre kötve, és a billentyűk ezen tengelyeket kötik össze a metszéspontokon. A vezérlő elektronikán a két tengelyhez tartozó érintkezők általában láthatóan elkülönülnek egymástól.

Ahhoz, hogy egy billentyűlenyomást érzékeltessünk vele, össze kell kötni két eltérő tengelyről való érintkezőt egymással. Hogy melyik páros milyen gomb lesz, azt végig kell próbálgatni. Ne lepődj meg, ha közben egyszer csak kikapcsol vagy hibernál a számítógép, mert egyes billentyűzeteken arra is van gomb.

A billentyűzet vezérlő elektronika a billentyűmátrix két tengelyének érintkezőivel (elnevezve X és Y tengelynek). (A képen egy félkész összeállítási állapot látható.)

A billentyűzet vezérlő elektronika a billentyűmátrix két tengelyének érintkezőivel (elnevezve X és Y tengelynek). (A képen egy félkész összeállítási állapot látható.)

Miután megvan a páros, jöhet a forrasztás, ami a legkritikusabb része az egésznek. Egyrészt mert az érintkezők be vannak vonva egy oxidációt gátló anyaggal, ami egyúttal a forraszthatóságát is meggátolja, ezt késsel óvatosan le kell kaparni, vigyázva, hogy ne kaparjuk le magát a vezető réteget is, amire forrasztanánk. Másrészt a forrasztás után is vigyázni kell, ugyanis ez a réteg le is szakad könnyedén, és akkor buktuk. Ezzel én is megjártam, és egyre feljebb kellett kapirgálni, már a vékony elvezetésnél, de ilyenkor egyre nehezebb jól megforrasztani, és még könnyebben leszakad. Érdemes a forrasztás után ragasztópisztollyal, vagy valami hasonlóval fixálni.

Váltogatás több lehetséges billentyű között

Hogy ne csak egyetlen gombra legyen használható az eszköz, raktam a doboz aljára két darab kétáramkörös kétállású tolókapcsolót, amiket 4 féle állapotba lehet kapcsolni és mind a négy állapotra egy másik billentyűt állít be.

A billentyű választó kapcsolás. Egy billentyű „lenyomásához“ egy X és Y tengelybeli érintkezőpáros összeérintése szükséges. A közös azt jelenti, hogy ott az egyik tengelyen levő lábra ugyanazt az érintkezőt használja mindkét billentyű.

A billentyű választó kapcsolás. Egy billentyű „lenyomásához“ egy X és Y tengelybeli érintkezőpáros összeérintése szükséges. A közös azt jelenti, hogy ott az egyik tengelyen levő lábra ugyanazt az érintkezőt használja mindkét billentyű.

Noha ez a bináris elgondolás, hogy két kapcsoló = négy féle állapot, logikusnak tűnik, a gyakorlatban viszont ahhoz, hogy ezt pusztán mechanikus módon oldjuk meg, muszáj két olyan billentyű párost keresni, ahol mindkét párnak van egy közös vezetéke a másik tengelyről.

Élesítés jelző LED

Csak a poén kedvéért kapott egy lassan villogó LED-et, ami olyan hatást kelt, mintha a szerkezet be lenne élesítve. Tekintve, hogy az állandó villogás bizonyos esetekben zavaró is lehet, ezért a Caps Lock-al kapcsolható.

Élesítés jelző LED vezérlő elektronika. A táp és a föld ugyanaz, mint amit a billentyűzet kap. Az NPN transzisztorok típusa lehet úgynevezett „mindegy” típusú, pl. BC338.

Élesítés jelző LED vezérlő elektronika. A táp és a föld ugyanaz, mint amit a billentyűzet kap. Az NPN transzisztorok típusa lehet úgynevezett „mindegy” típusú, pl. BC338.

A villogást egy CD4060-as IC vezérli, ami egy 14 fokozatú frekvenciaosztó, beépített oszcillátorral. Ebből az első négy kivezetett osztást egy 4 darab NPN tranzisztorból épített ÉS-kapura kötöttem rá (4-5-6-7 láb), ezek villogtatják a LED-et, ami így egy teljes ciklus 1/16 része alatt világít. Ennek a sebességét az oszcillátorra kötött ellenállások és kondenzátor értéke szabja meg (9-10-11 láb). Jelen értékek mellett körülbelül 1,2 másodperc a ciklusidő.

A ki-be kapcsoláshoz a Caps Lock LED pozitív lábát rákötöttem az IC reset lábára (12-es láb). Amire oda kell figyelni, hogy a reset láb mindig legyen valahova kötve (vagy a földre, vagy a tápra), így ha a billentyűzet szakadással kapcsolná a LED-jeit (pl. egy tranzisztorral), akkor itt a reset lábra szükségessé válna egy 10-20 kΩ körüli lehúzó ellenállás.

A nagy gomb saját LED-jének bekötése

A nagy gombba lehetett rakni egy LED-et, így azt bekötöttem a Scroll Lock LED helyére, mivel a Scroll Lock egy olyan gomb, amit manapság nem nagyon használunk, így senkit nem zavar, ha be van kapcsolva.

A Scroll Lock LED bekötése. A billentyűzet vezérlőjén eleve kell hogy legyen egy ellenállás a LED előtt, így a rajzon látható ellenállás el is hagyható.

A Scroll Lock LED bekötése. A billentyűzet vezérlőjén eleve kell hogy legyen egy ellenállás a LED előtt, így a rajzon látható ellenállás el is hagyható.

Végső összeállítás

A végső fizikai összeállítást az alábbi ábra szemlélteti:

A végső fizikai összeállítás. A műszerdoboz csavarhelyeit fel tudtam használni az áramköri lapok rögzítésére.

A végső fizikai összeállítás. A műszerdoboz csavarhelyeit fel tudtam használni az áramköri lapok rögzítésére.

A két kapcsoló a doboz alján, amivel a billentyűk között lehet váltani.

A két kapcsoló a doboz alján, amivel a billentyűk között lehet váltani.

Szemléltető videók

A korábban említett Vasparittya program pont az ilyen nagy gombokhoz lett kitalálva, illetve kapott egy új funkciót is, ami mint a videón is látszik, bármelyik gomb megnyomására felvillantja a Scroll Lock LED-et a billentyűzeten. Ennek az időtartama állítható, vagy ki is lehet kapcsolni teljesen.

(A videón felhasznált szoftver a Vasparittya, amit innen letölthetsz ingyen)

Most pedig valami extrémebb :D (a videón nem én nevetek eszelősen, ez egy mém :D én egyelőre maradok a néma protagonista szerepében)

Források

  1. Gomb: "arcade video game player push button switch red" - eBay
  2. Alkatrészek: LOMEX Kft.