perjantai 22. tammikuuta 2016

Valopistooli tietokoneeseen

Sain jostain idean tutkailla olisiko mahdollista rakentaa oma pistooliohjain tietokoneeseen. Siis sellainen, kuin aikoinaan oli mm. Nintendon Zapper -pistooli.

Nintendo Zapper -valopistooli (Kuva Wikipediasta)

Löysin netistä Instructables -sivustolta malliksi yhden hyvän ohjeen josta katsoin vinkkejä. Eniten minua askarrutti, miten olisi mahdollista toteuttaa tähtäyksen tunnistaminen. Siihen löytyi yksinkertainen konsti webbikameran, ledien ja FreeTrack -ohjelman avulla. FreeTrack seuraa webbikameran kuvasta jotain tiettyä pistettä ja muuttaa pisteen liikkeen hiiren liikkeiksi ruudulla.  Ohjelma on tarkoitettu ilmeisesti lähinnä pään liikkeiden seuraamiseen esimerksiksi erilaisia simulaattoripelejä varten eikä varsinaisesti mihinkään fps-tyyliseen kädellä tähtäämiseen, mutta ajattelin kokeilla miten se toimisi tässä tarkoituksessa.

Piste pitää olla tarpeeksi kirkas, joka pomppaa selkeästi esiin muusta kuvasta. Pieni kameraan suunnattu ledi toimii vallan mainiosti tässä tarkoituksessa. Huoneen valaistuksen täytyy olla tarpeeksi hämärä jotta ledi erottuisi ympäröivästä valaistuksesta. Optimaalisin onkin käyttää inrapunalediä, jonka voi suodattaa muusta valosta, joten se toimii myös valoisassa huoneessa. Minulla ei ollut infrapunalediä saatavilla, niin tein nopean testin punaisella ledillä. FreeTrackin asentamisen jälkeen ei tarvinnut ihmeemmin säädellä ja olin jo heti ohjaamassa tietokonettani ledin avulla kuten alla olevassa videossa näkyy:

Video, jonka @luomisenvimma julkaisi

Instructablesin ohjeessa pistoolin nappulat oli toteutettu vanhan hiiren avulla jonka nappien rinnalle oli kytketty omat painonapit. Ohjeessa pistooliin on asennettu iso liuta nappuloita, jotta sillä voisi ohjata erilaisia toimintoja peleissä. Minulle riitti tässä vaiheessa mahdollisimman yksinkertainen toteutus ja ajattelin vain laittaa yhden napin liipaisimeen. Sain kämppikseltäni vanhan langattoman hiiren ja kirpputorilta ostin vesipyssyn ja kaukosäätimen. Näiden lisäksi tarvitsi vielä hieman johtoja ja painonappeja, jotka kaivelin omista miljoonalaatikoistani.

Valopistoolin perustarvikkeet: vesipyssy, hiiri ja kaukosäädin.
Aloitin avaamalla hiiren päästäkseni tutkimaan miten saisin omat kytkimeni hiireen liitettyä. Ruuvit olivat piilotettu hiiressä pohjaan kumitassujen alle. Sen jälkeen kuori lähti nostamalla ja piirilevy paljastui. Ruuvien irroittelusta huolimatta piirilevy ei oikein tuntunut irtoavan. En kehdannut sitä jäädä liian pitkäksi aikaa rassailemaan, koska sain piirilevyä sen verran nostettua, että pääsisin tinaamaan hiiren vasemman painikkeen liitoksiin omat piuhani.

Hiiri avattuna sen verran, että sain vasemma painikkeen mikrokytkimen juotoksiin (nuolet) liitettyä kiinni oman painikkeeni
Langaton hiiri ei ole enää ihan niin langaton
Kytkin vielä johdot paristoliittimeen ottaakseni sieltä virran ledille. Ruuvailin hiiren takaisin kasaan, tökkäsin paristot pesään ja vastaanottimen tietokoneeseen testatakseni hiirtä. Se toimi aivan kuin pitääkin. Kun yhdistin npin rinnalle kytkemäni johdot yhteen, tietokone tunnisti klikkauksen. Nyt ei enää tarvitsisi muuta kuin tehdä kytkennät pistooliin.

Avasin vesipyssin, mutta se ei ollut erityisen helppo homma, koska siinä ei ole mitään ruuveja, vaan tussari on liitetty kaikista saumoistaan tiiviisti yhteen liimaamalla tai sulattamalla. Sain sen väännettyä auki ensin nitkuttamalla auki muutamat kiinnikekohdat ja sitten kampeamalla kaikki saumat. Jos mahdollista, niin kannattaa tällaisia projekteja varten hommata joku ruuveilla kasattu kuulapyssy.
Vesipyssy avattuna
Kaukosäädin avattuna ja siinä infrapunaledi.
Onnistuin testatessani käräyttämään infrapunaledin jo ennen aikojaan. Mutta ei se mitään, käytin sen sijaan tavallista punaista ledia. Pistoolin liipasimen taakse ajattelin liimata jonkun pienen painonapin, joka menisi pohjaan kun taakse vedetty liipaisin siihen osuisi. Satuin kuitenkin löytämään romujeni seasta juuri sopivan painonapin joka kävi itsessään täydellisesti liipaisimeksi. Liimasin sen päähän kiinni vesipyssyn liipaisimen. Kytkimessä oli johdotkin valmiina ja samassa setissa oli myös pitkien johtojen päissä oleva ledikanta. Kävi tuuri, koska nämä olivat kuin tehtyjä osia tätä projektia varten ja niiden asentamisessa minun ei tarvinnut edes kolvia käyttää.

Elektroniikat asennettu pistoolin sisään

Punainen ledi kiinni kannassaan. Tarvittaessa on helppo vaihtaa uusi ledi vain vetämällä entinen pois kannastaan ja työntämällä uusi tilalle,

Liipaisin

Pistooli kasattu ja yhdistetty hiireen


Siinäpä se oli sitten täysin toimintavalmiina. En heti tiennyt sille vielä oikein sopivaa sovellusta jolla sitä testata, niinpä väänsin vielä hyvin nopeasti Clickteam Fusionilla vanhan Duck Hunt tyylisen testipelin:

Video, jonka @luomisenvimma julkaisi

Tämä oli aika hauska projekti ja yllättävää kuinka helppo se olikaan toteuttaa. Ohjain ei ole tietenkään erityisen tarkka ja sillä ei varsinaiseti voi tähdätä kohti ruutua kuten oikealla aseella, koska webbikamera ei pysty yhden pisteen perusteella päättelemään mihin aseen piippu on suunnattu. Se olettaa aina piipun suun olevan suoraan ruutua kohti. Kuitenkin ihan hauska vimpain se on ja varsinkin hauskinta oli sen väkertely. Jatkan ehkä joskus projektia eteenpäin. Ledin tilalle voisi vaihtaa infrapunaledin ja voisin koodailla jotain simppeleitä ja hauskoja kyseiselle aseelle räätälöityjä pelejä jos jotain hyviä ideoita mieleen tulee. Mutta se taas on sitten ihan oma projektinsa kokonaan.

torstai 21. tammikuuta 2016

Hauska askarteluvinkki lapsille: Makaronikorut

Tarvikkeet: makaroneja ja joustolankaa (sekä maalia ja lakkaa).

Pujottele makaronit nauhaan. Yhteen rannekkeeseen tarvitaan noin 20 makaronia.

 Makaronihelmissä parasta on niiden käyrä muoto, jonka vuoksi ne pysyvät korunauhassa paikoillaan eivätkä karkaile kuten normaalien helmien kanssa saattaa toisinaan käydä.

Makaronit kannattaa maalata ennen naruihin pujottelua. Maalasin makaronit akryylimaaleilla. Värjäykseen voi käytttää myös elintarvikeväriä laittamalla makaronit yöksi suljettuun muovipussiin elintarvikevärin kanssa. Ravistele pussia huolellisesti jotta maali leviää kauttaaltaan.


Sanomalehden päällä maalissa pyöritellen on helppo maalata iso määrä makaroneja kerralla.
Levittele makaryllit irti toisistaan kuivumaan.

Eri väreillä maalattuja ja lakattuja makaronikoruja kuivumassa. Lakkaukseen käytin Fimo Gloss Varnish -lakkaa.

Valmiit ihanat korut ranteessa

keskiviikko 6. tammikuuta 2016

Kissat ruokkiva robotti

Mainitsin toissaviikolla Arduino viritelmästäni, jossa oli lähestymisanturi ja servo joka liikauttaa sarviaan kun jotakin osuu lähestymisanturin ulottuville. Nyt olen saanut vekottimen muiltakin osin valmiiksi ja tässä on lopputulos:




Kyseessä on  kissanruoka-automaatti. Ei sillä, että laite olisi välttämättä aivan tarpeellinen ja toisi suurta helpotusta arkeen, vaan rakentelin laitteen vain ihan rakentelemisen ilon vuoksi. Tutkiskelin yksi päivä elektroniikkarojujani ja jostain keksin, että tuollaisen vekottimenhan niistä saisi aikaiseksi. Toki laite voi toimia myös muunakin annostelijana, esimerkiski karkkiautomaatiina. Käsi vain alle ja laite annostelee namuja kouraan pienen annoksen.Tässä videota kuinka vehje toimii käytännössä ja kuinka kissat siitä tykkäsivät:


Toimintaperiaate on lyhyesti selostettuna se, että kun kissa saapuu tarpeeksi lähelle ultraäänitutkaan, servo pyörähtää ja kiskaisee narua, joka avaa luukun ja säiliöstä pääsee tipahtamaan raksuja kuppiin. Ruokasäiliönä toimii tyhjä Pringles -purkki jonka pohja on leikattu auki.

Jos nyt aivan vakavissaan olisin vehkeen rakentanut, niin raksujen ei tietenkään pitäisi päästä tippumaan suoraan kissojen niskaan ja ruokaa pitäisi tulla isompi annos kerrallaan. Laitteessa pitäisi olla myös jonkinlainen jumiutumisen estämismekanismi, koska nyt raksut jumittuvat luukun suulle muutaman annostelukerran jälkeen. Mutta en tehnyt tätä niin vakavissani, vaan ihan hupiprojektina tämän veivailin. Tämä oli hauska projekti opiskella arduinoa ja hieman puutöitäkin pääsin tekemään pitkästä aikaa.