Talaan ng mga Nilalaman:

Sa Go Controller: 8 Hakbang
Sa Go Controller: 8 Hakbang

Video: Sa Go Controller: 8 Hakbang

Video: Sa Go Controller: 8 Hakbang
Video: Камера ANBIUX ДВУГЛАЗКА УДИВИЛА после ОБНОВЛЕНИЯ!!! 2024, Hulyo
Anonim
Sa Go Controller
Sa Go Controller
Sa Go Controller
Sa Go Controller
Sa Go Controller
Sa Go Controller

Gusto mo ba ng paglalaro ng mga laro sa iyong smart phone? Sawa ka na ba sa paglalaro ng mga clunky touchscreen control? Kinamumuhian na kinakalimutan na singilin ang iyong Bluetooth controller? Kailangan mo ba ng isang paggamit para doon sa go cable na iyong binili ngunit hindi kailanman ginagamit?

Bakit hindi gumawa ng iyong sarili on the go controller?

Sigurado ako na huli na ako sa laro (pin sadya) ngunit natuklasan ko kamakailan ang aking lumang smartphone ay may kakayahang maglaro ng mga retro game sa pamamagitan ng pagtulad. Lumalaki, ako ay isang malaking tagahanga ng mga sistema ng Game Boy at may mga magagandang alaala sa paglalaro ng maraming oras at pinipilit ang aking mga mata sa mahabang pagsakay sa kotse na desperadong sinusubukan upang makahanap ng isang save point bago namatay ang aking baterya o ang araw ay masyadong malayo sa abot-tanaw upang tingnan ang aking screen. Ngayon ay maaari ko nang i-play sa aking telepono at magbigay sa nostalgia ngunit may magandang back-lit na screen. Salamat sa teknolohiya!

Pagwawaksi: Ang pagtulad sa laro ay isang nakakaantig na paksa at inilalagay ang linya ng pandarambong sa ilang mga kaso. Mangyaring turuan ang inyong sarili at maglaro nang responsable!

Background:

Napagpasyahan kong ituloy ang proyektong ito pagkatapos gumawa ng isang shortcut keyboard. Habang natututunan ang arduino keyboard library at nagmumula sa mga shortcut na nakagapos ko ang ilan sa mga pindutan ng pagsubok sa WASD. Agad itong nagsimulang magtrabaho kasama ang aking mga laro sa PC at na nakabukas ang mga gulong. Sa paligid ng parehong oras ay naubusan ako ng puwang sa aking telepono para sa mga audio book at tiningnan kung paano gumamit ng USB flash drive gamit ang aking telepono dahil hindi pinapayagan ng aking modelo ang mga microSD card. Doon ko nalaman ang tungkol sa OTG. Ginagamit ng OTG ang pagsingil mula sa baterya ng iyong mga telepono upang mapagana ang aparato na nakakonekta dito. Kasama rito ang mga keyboard, mouse, at flash drive upang pangalanan ang ilan. Ang kapangyarihan ng telepono ay 5v aparato at hulaan kung ano ang kinakailangan ng arduino micro upang mapatakbo? Ito ay isang laban na ginawa sa langit.

Mga gamit

Arduino Micro

Prototype Board

12 x 6mm na mga pindutan (Gumamit ako ng klasikong breadboard tactile pansamantalang switch)

Panghinang na Bakal at Maghinang

3d printer

On the go (OTG) cable; Gumawa ako ng sarili ko

Kable ng singilin ng micro USB

Hakbang 1: Disenyo

Disenyo
Disenyo
Disenyo
Disenyo
Disenyo
Disenyo

Nais kong maging portable ang aking controller at mag-alok ng lahat ng mga pindutan na kakailanganin kong maglaro ng mga laro hanggang sa panahon ng Super Nintendo. Nangangahulugan ito na kakailanganin ko ng 12 mga pindutan. Apat para sa direksyon pad (d-pad) at walo para sa A, B, X, Y, Start, Select, Left Trigger, at Right Trigger. Mayroon din akong isang karagdagang kinakailangan na nais kong maging simetriko upang maaari kong i-play ito ng isang kamay gamit ang alinmang kamay. Ang karagdagang kinakailangang iyon ay maaaring kakaiba ngunit upang magbigay ng kontekstong kailangan kong banggitin na kamakailan lamang ay regular kong hinahawakan ang isang natutulog na sanggol at mayroon lamang paggamit ng isang kamay sa aking limitadong oras ng paglalaro.

Sa tinukoy na mga kinakailangan na itinakda ko upang idisenyo ang aking controller sa CAD. Personal kong ginagamit ang OnShape ngunit alam kong maraming tao ang may tagumpay sa Fusion360 din. Nais kong magbigay ng isang mabilis na sigaw sa ibang mga tao sa site na ito na nagdidisenyo ng kanilang sariling mga nilikha. Mahirap na trabaho! Ang disenyo na naranasan ko ay sobrang simple ngunit tumagal pa rin ng maraming oras upang ako ay nasiyahan. Kahit na nai-type ko ito napapansin ko ang maraming mga pagpapabuti na nais kong gawin.

(Plano ko ngunit ang.stl na mga file sa Thingiverse kapag pinahihintulutan ng oras. Ang mga file ay nandiyan upang ma-update ko sila nang hindi kinakailangang i-upload ang mga file dito.)

Hakbang 2: I-print ang Iyong Paglikha

I-print ang Iyong Paglikha!
I-print ang Iyong Paglikha!

Mayroon akong isang Ender 3 na printer na mayroon lamang ako ng ilang buwan. Mahusay na printer upang makapagsimula kung nais mong makapasok sa 3D na pag-print. Hindi ko namalayan kung paano sa labas nito hanggang sa nasukat ko ang aking mga bahagi para sa proyektong ito. Hanggang sa proyektong ito ginamit ko lang ito upang mag-print ng mga mini para sa paglalaro ng tabletop. Ang mga mini ay lumabas na mahusay at wala akong masyadong pakialam sa mga sukat. Tumagal ito ng maraming cubes ng pagkakalibrate at isang bagong rolyo ng filament bago ako nasisiyahan sa mga resulta.

Hakbang 3: Paghahanda ng Iyong Prototype Board

Paghahanda ng Iyong Prototype Board
Paghahanda ng Iyong Prototype Board
Paghahanda ng Iyong Prototype Board
Paghahanda ng Iyong Prototype Board

Bago ang mga pindutan ng paghihinang sa isang prototype board sinubukan ko ang lahat ng mga pindutan sa isang breadboard at sinubukan ang aking arduino code nang sabay. Pupunta ako sa code sa isang susunod na hakbang.

Ngayon ang pinakamahusay na oras upang gupitin ang laki ng iyong prototype board sa laki. Gamitin ang iyong naka-print na pabahay ng controller bilang isang gabay at matuyo na magkasya sa mga pindutan upang matiyak na ang lahat ng mga linya. Kumuha lang ako ng ilang mga snip ng kawad at pinutol ang labis na board at pagkatapos ay pinaso ang mga gilid na parisukat na may 150 grit na liha.

Ang mga kable para sa controller ay talagang prangka dahil ginagamit namin ang panloob na mga pull up resistors ng arduino micro. Ang lahat ng mga pindutan ay pumunta sa isang input at ground. Ang mga pindutan na ginagamit ko ay generic na 6mm pandamdam sandali switch.

Ang paghihinang ng mga pindutan sa arduino ay isang kasiya-siyang maliit na palaisipan upang malutas. Ang ilan sa mga pindutan ay nasa ilalim ng arduino at kailangan kong patakbuhin ang mga wire mula sa ilalim nito bago i-solder ang arduino sa prototype board. Kung titingnan mo nang mabuti ang gilid ng pindutan ng board na-miss ko ang kaliwa at kanan para sa directional pad.

Para sa aking tukoy na disenyo ay hinangin ko ang pataas at pababang mga pindutan ng pad ng direktoryo (napalampas ko ang kaliwa at kanang mga pindutan ng dirong pad) sa prototype board kasama ang ilang labis na mahahabang mga wire pagkatapos ay binaligtad ang board at solder ang arduino. Wala akong diagram sapagkat karamihan ako ay naghinang ng mga pindutan nang paisa-isa nang random (maaaring mag-upload ako ng isa kung mayroong sapat na interes). Matapos ma-secure ang arduino ay ibinalik ko ang board pabalik sa gilid ng pindutan at hinangin ang natitirang mga pindutan at ang kanilang mga wire.

Hakbang 4: Opsyonal: Spruce Up Ang iyong Controller Housing

Bago ang panghuling pagpupulong ay isang magandang panahon sa buhangin, punan ang mga puwang, at pintura ang iyong tirahan ng tagapag-kontrol. Pinili kong laktawan ang hakbang na ito para sa aking prototype dahil nais kong magkaroon ng isang bagay na magagamit agad. Kapag hindi ko maiwasang mapabuti ang aking disenyo sa isang bagay na mas pinakintab ay bibigyan ko ito ng sakit na trabaho na nararapat.

Hakbang 5: Pangwakas na Assembly

Huling pagtitipon
Huling pagtitipon

Ngayon ang oras upang ilagay ang lahat ng iyong mga pindutan at nakumpleto ang prototype board sa pabahay. Gumamit ako ng # 4-24 x 1/2 sheet metal screws para sa aking disenyo. Natapos nila ang trabaho ngunit hindi umaangkop ayon sa nais ko.

Hakbang 6: I-program ang Iyong Arduino

Maaaring gusto mong gawin ang hakbang na ito nang mas maaga kapag nagdidisenyo ka pa rin ng board o pagkatapos mong na-solder ang lahat sa prototype board. Gusto ko lang magkaroon nito sa sarili nitong seksyon.

Ang code ay napaka-simple na may kaugnayan sa karamihan sa mga programa ng arduino na nakita ko. Kailangan lamang naming italaga ang bawat pindutan ng isang halaga ng keyboard at ang arduino ay loop sa pamamagitan ng upang suriin kung anong mga pindutan ang pinindot at ipadala ang impormasyong iyon sa aming telepono.

Para sa mga interesado, ginagamit ko ang retroArch app upang i-play ang aking mga larong retro. Ang mga key na ginamit ko ay nakatakda sa default na layout ng keyboard na ginamit para sa retroArch.

#include #include "Keyboard.h" #define NUM_BUTTONS 12 const uint8_t BUTTON_PINS [NUM_BUTTONS] = {2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13}; // a = 'x' // b = 'z' // x = 's' // y = 'a' // left shoulder = 'q' // kanang balikat = 'w' // select = 'rshift '// start =' enter '// up =' key: up '// down =' key: down '// left =' key: left '// right =' key: right 'const char BUTTON_KEYS [NUM_BUTTONS] = {KEY_RETURN, KEY_DOWN_ARROW, KEY_UP_ARROW, KEY_LEFT_ARROW, KEY_RIGHT_ARROW, KEY_RIGHT_SHIFT, 'z', 'x', 's', 'a', 'q', 'w'}; Mga pindutan ng Bounce * = bagong Bounce [NUM_BUTTONS]; void setup () {para (int i = 0; i <NUM_BUTTONS; i ++) {mga pindutan .attach (BUTTON_PINS , INPUT_PULLUP); mga pindutan .interval (25); } // ipasimulan ang kontrol sa keyboard: Keyboard.begin (); } void loop () {// suriin kung nagbago ang halaga para sa (int i = 0; i <NUM_BUTTONS; i ++) {mga pindutan .update (); kung (mga pindutan .fell ()) {Keyboard.press (BUTTON_KEYS ); } kung (mga pindutan .rose ()) {Keyboard.release (BUTTON_KEYS ); }}}

Hakbang 7: Maglaro ng Iyong Mga Laro

Maglaro ng Iyong Mga Laro!
Maglaro ng Iyong Mga Laro!

Bilang kahalili, ang controller na ito ay maaaring magamit sa isang PC nang walang OTG cable upang magpadala ng mga key press o macros. Mayroon din akong isang kaibigan na nagsabing ang isang controller na tulad nito ay maaari ding maging kapaki-pakinabang para sa pagguhit ng mga tablet kahit na hindi pa ako nagkagulo dati.

Inaasahan kong natagpuan mong kapaki-pakinabang ang Tagubilin na ito. Nasa ibaba ang isang seksyon na natutunan para sa mga nagtataka tungkol sa kung ano ang natutunan ko sa proseso at kung ano ang gusto kong gawin nang iba.

Hakbang 8: Mga Natutuhan sa Aralin

CAD:

Hindi pa ako nagulo sa software ng CAD noong nakaraan at kailangang malaman on the go gamit ang disenyo na ito. Orihinal na nagpunta ako kasama ang isang mas patayo na disenyo na magkasya sa iyong mga kamay tulad ng isang Wii Nunchuk. Ang aking limitadong kaalaman sa pagdidisenyo na may mga organikong hugis ang aking pagbagsak. Marahil ay dapat kong kunin ang Infectables sa klase ng disenyo ng CAD.

Mga Pindutan:

Ang mga pindutan na ginamit ko ay mas malakas kaysa sa gusto ko (lalo na kapag sinusubukan mong pigilan ang isang tao mula sa paggising). Nais kong makahanap ng mas tahimik na mga pindutan. Ang pagsasama ng mga bukal sa pagitan ng mga pindutan at mga takip ng pindutan ay malayo pa upang makaramdam ng mas pinakintab ang build. Ang mga pindutan ay may labis na katamaran para sa aking panlasa.

Paghihinang:

Ako ay isang baguhan sa paghihinang at walang masyadong matatag na mga kamay. Ang paghihinang ng lahat ng maliliit na mga wire sa buong lugar ay tumagal nang mas matagal kaysa sa inaasahan ko. Kung kailangan kong gawin itong muli muli kong tiyak na ilalagay kung saan tatahakin ang aking mga wire bago makuha ang bakal. Iyon ay magpapagaan ng mga pagkakamali na natuklasan ko matapos ang pagdikit ng arduino sa prototype board at makatipid sa akin ng oras.

Inirerekumendang: