Talaan ng mga Nilalaman:

Homemade Game Console- "NinTIMdo RP": 7 Mga Hakbang (na may Mga Larawan)
Homemade Game Console- "NinTIMdo RP": 7 Mga Hakbang (na may Mga Larawan)

Video: Homemade Game Console- "NinTIMdo RP": 7 Mga Hakbang (na may Mga Larawan)

Video: Homemade Game Console-
Video: CS50 2013 - Week 10, continued 2024, Nobyembre
Anonim
Image
Image
Homemade Game Console
Homemade Game Console

Mag-link sa webpage na may mas malalim na mga paliwanag, listahan ng mga bahagi at mga file

timlindquist.me

Ang proyektong ito ay upang lumikha ng isang portable gaming system na maaari ring doble bilang isang portable computer. Ang layunin ay upang lumikha ng isang console na gumagana pati na rin ang aesthetically nakalulugod.

Listahan ng Mga Bahagi:

docs.google.com/spreadsheets/d/1Ay6-aW4nAt…

Hakbang 1: I-print ang Kaso

Kaso sa Pag-print
Kaso sa Pag-print
Kaso sa Pag-print
Kaso sa Pag-print

Upang mai-print ang aparato i-download ang aking mga file na modelo ng 3D at ipadala ang mga ito sa iyong 3D printer. Ang ginamit kong printer ay isang Prusa i3 Mk2 kasama ang itim na plastic filament. Ang kalidad ng pag-print ay napatunayan na pinakamahusay sa isang setting ng medium na resolusyon. Tiyaking magdagdag ng materyal na pang-istruktura sa ilalim ng aparato (Ang paghawak ng kamay ay magmumukhang mahirap kung wala ito). Ang mga back piraso ay naka-print na may back flush gamit ang pinggan. Ang mga piraso ng harapan ay naka-print na may harap na mukha na mapula sa pinggan. Kung mag-print ako ng isa pang kaso nais kong gumamit ng isang bagong kulay tulad ng atomic purple upang maipakita ang mga panloob. Kung katulad mo ako at magkaroon ng isang 8inch print bed upang gumana kakailanganin mong i-print ang bersyon ng 4 na piraso kung saan tipunin pagkatapos ng pagpi-print. Gayunpaman, kung ang iyong kama ay sapat na malaki upang gawin bilang isang solong piraso, i-print ang plato sa harap at likod bilang isang solong yunit at iwasan ang sakit ng pagdugtong sa kanila.

Mga Modelong File:

github.com/timlindquist/Nintimdo-RP_3D_mod…

Hakbang 2: Case Assembly

Kaso Assembly
Kaso Assembly
Kaso Assembly
Kaso Assembly

Upang tipunin muna sumali sa harap na kanan at kaliwang mga piraso sa pamamagitan ng pagpasok ng isang metal dowel sa mga butas ng pagkakahanay. Susunod na ilagay ang sobrang pandikit sa mga kasukasuan at i-secure ang kalahati nang magkasama. Ulitin ang proseso para sa kanang ibaba at kaliwang mga mayroon. Pagkatapos nito dapat kang iwanang may naka-ipon na harap at likod na kalahati. Ngayon ay oras na upang ilakip ang 5 mga standoff ng metal para sa pagsasama sa mga plato sa harap at likod. Ang pinakamadaling paraan upang gawin ito ay ang unang makuha ang mga stand off sa tamang haba. 13 mm ang lalim sa likod na 5 mm ang lalim sa harap. Kaya gawin ang mga standoff na 18mm o mas kaunti nang kaunti. Ginawa ko ito sa pamamagitan ng paglalagay ng mas mahabang standoff sa isang vice grips at paggamit ng isang gilingan upang mag-ahit ang laki. Siguraduhin na gilingin lamang ang isang panig dahil kakailanganin mo ang mga thread sa kabilang panig. Matapos mong makuha ang tamang pandikit sa haba ang lahat ng gilingan mula sa mga gilid sa harap ng mukha gamit ang regular na kola ng gorilla at hayaang matuyo ito. Tiyaking lahat sila ay nakatayo nang tuwid sa prosesong ito. Sa sandaling tuyo ang pag-scrape ng mahusay na pandikit na binula upang ang mga mukha ay maaaring mapula kapag pinagsama. Ngayon tingnan kung maaari mong ipasok ang back plate sa mga standoff upang sumali sa harap. Sama-sama sa tornilyo sa likod ng plato upang ma-secure. Ang pandikit ay naka-on sa pamamagitan ng paglalagay ng frame sa duel tube na Gorilla Epoxy. Naglagay ako ng labis kapag ginawa ko ito at umapaw ito sa screen. Sa kabutihang-palad ito rubs off! I-clamp at hayaang matuyo nang ilang sandali pagkatapos ay i-linya ang likuran sa regular na Gorilla glue.

** Tandaan: Subukang huwag makakuha ng manipis na kola ng CA (sobrang pandikit) sa panlabas dahil "susunugin" nito ang PLA at mantsahan ang isang puting kulay.

Hakbang 3: Circuitry

Circuitry
Circuitry
Circuitry
Circuitry
Circuitry
Circuitry

Button Circuitry:

Ang pagkuha ng lahat ng mga pagpindot sa pindutan ay tapos na gamit ang isang Teensy ++ 2.0. Ginagamit ang mga digital na pin sa microcontroller para sa anumang mga pindutan ng binary press. Ginagamit ang mga analog na pin para sa mga pindutan na mayroong maraming mga estado tulad ng mga joystick. Upang i-wire ang mga digital na pin na simpleng kawad ang digital pin sa switch, gawin ang iba pang dulo ng switch na naka-wire sa lupa. Kapag pinindot ang pindutan ay hilahin nito ang pin na mataas na boltahe pababa para maunawaan ng controller. Hindi mo kailangang magalala tungkol sa mga resistors dahil kasama ang mga ito sa board na Teensy. Upang i-wire ang mga analog pin ay kakailanganin mong bias ang iyong aparato sa analog na may mataas at mababang boltahe at basahin ang isang antas ng boltahe sa saklaw na iyon sa analog pin. Para sa mga joystick mayroong 3 mga input para sa bawat axis. Magtustos ng isang 5V sa isa sa mga pin, GND sa isa pa at ang linya ng pagbasa ng boltahe hanggang sa huli. Siguraduhin na mai-hook ito nang tama o hindi ito gagana (gumamit ng isang multimeter upang makita kung ang output boltahe ay nagbabago sa tamang pin.) Mahalaga na ang joystick ay isang variable na risistor na gumagana tulad ng isang divider ng boltahe. Ang boltahe ng output sa read pin ay magkakaiba sa pagitan ng 0 at 5V depende sa posisyon ng mga joystick. (Karaniwan ang bias 5V at GND ay nasa panlabas na mga pin ng pag-input ng joystick at ang gitna ay ang iyong variable na mabasa na pin. Kung ang 5V at GND ay naiiba kaysa sa minahan ang iyong mga kontrol ay mababaligtad, maaari itong maayos sa software o rewiring).

Power Circuitry:

Ang tatlong cell Anker na baterya ay nagbibigay ng lakas sa buong aparato. Upang i-on / i-off ang aparato, ang output ng regulator ng baterya ay naka-wire sa isang switch at pagkatapos ay ang Raspberry Pi. Dahil ang aparato ay maaaring gumuhit ng hanggang sa 2A isang simpleng 250mA toggle switch ay hindi maaaring hawakan ang kasalukuyang kinakailangan. Sa halip maaari mong gamitin ang switch upang makontrol ang boltahe ng gate sa isang PMOS transistor upang maihatid ang layunin ng isang switch. I-wire ang 5V ng baterya sa mapagkukunan ng isang PMOS transistor at ang switch. Ang kabilang dulo ng switch ay naka-wire sa gate ng PMOS transistor at sa isang resistor na 10K na konektado sa GND (kapag bukas ang switch upang maiwasan ang paglutang ng gate ay tinali nito ito sa GND sa pamamagitan ng resistor). Ang Drain ay naka-wire sa 5V input sa Raspberry Pi kasama ang lupa. Upang singilin ang baterya ay kawad lang ang micro USB female breakout board sa tamang pagsingil ng mga pin (umaabot sa input sa case). Itinago ko ang switch na ito sa paggamit ng hangin sa likod ng aparato. Orihinal na pinaplano ko na sa halip ay i-on at i-off ng pindutan ng baterya ang aparato sa pamamagitan ng paghawak nito sa isang tiyak na tagal, sa kasamaang palad ay naubusan ako ng silid at kailangang gawin ang simpleng pagpapatupad. Ang alternatibong disenyo na ito ay ipinapakita sa eskematiko sa ibaba.

Circuitry ng Audio:

Para sa audio na gusto ko ng tunog na natural na mag-play sa labas ng mga speaker (kung hindi naka-mute) at mag-redirect sa mga headphone kung naka-plug in sila. Sa kasamaang palad, marami sa mga babaeng 3.5mm na head ng jack ng telepono ay may kakayahang gawin ito. Kapag ang isang lalaki na plug ay naipasok ang speaker humantong ay liko at lumikha ng isang bukas na circuit, kaya pinipigilan ang signal mula sa maabot ang mga nagsasalita. Dahil ang mga nagsasalita ay isang mas malaking karga ang signal ng audio ay dapat na amplified upang marinig ito. Ginagawa ito gamit ang isang stereo class D amplifier na nakita ko sa adafruit. Basta bias ang amplifier gamit ang 5V at GND. Wala kaming mga kaugalian na audio input kaya wire ang kaliwa at kanang speaker sa mga positibong terminal at itali ang mga negatibong terminal sa GND. Naayos ang pakinabang gamit ang jumper. Itinakda ko ang pakinabang sa maximum at binabago ko ang output ng mga signal ng audio amplitude sa pamamagitan ng software upang ayusin ang dami. Upang i-mute ang aparato Mayroon akong isang NMOS transistor na kumokontrol sa 5V bias. Ang NMOS transistors gate na ito ay kinokontrol ng Teensy. Ang isang isyu na mayroon ako ay isang pare-pareho ang ingay ng mataas na dalas ay naroroon sa mga panlabas na speaker. Susuriin ko ito sa isang oscilloscope, maaaring nagmula sa bias ng 5V dahil sa ilang paglipat ng regulator sa baterya o ang mga linya ay maaaring pumili ng RF sa kung saan. Gayundin, tiyaking iikot ang kanan at kaliwang linya upang mabawasan ang pagkagambala ng electromagnetic (EMI).

Hakbang 4: Peripheral Circuitry

Peripheral Circuitry
Peripheral Circuitry
Peripheral Circuitry
Peripheral Circuitry

Kasama sa circuitry na ito ang mga USB mount at tagapagpahiwatig ng LED. Mag-order ng PCB sa aking link at gupitin sa kalahati kasama ang tuldok na linya gamit ang band saw. Sa panig ng USB lahat ng panghinang ang dalawang babaeng USB port papunta sa board. Sa LED side solder ang 5 LED's at 5 resistors sa serye. Ang 5V, GND, D +, D-ay maaaring mapalawak gamit ang mga wires mula sa natiwangwang na USB ng Raspberry PI sa PCB. Ang LED PCB ay maaaring mailagay upang ang ilaw ay lumiwanag sa mga butas sa tuktok ng kaso. Ang mga output ng Wire 5 PWM ng Teensy sa mga LED kasama ang GND. Sa pamamagitan ng pag-iiba ng cycle ng tungkulin maaari mong baguhin ang ningning ng mga LED.

Bumili ng PCB:

Hakbang 5: Programming

Programming
Programming
Programming
Programming
Programming
Programming

Malabata:

Kung na-wire mo ito nang eksaktong kapareho sa akin maaari mo lamang gamitin ang code na ibinigay ko sa Github. Gayunpaman, inirerekumenda kong isulat ito sa iyong sarili dahil mauunawaan mo ang system nang mas mahusay at madali mong manipulahin at ipasadya ito ayon sa gusto mo. Napakadali ng pagprograma, bumababa talaga ito sa pagsusulat ng isang bungkos ng kung mga pahayag upang suriin kung pinindot ang iyong mga pindutan. Isang nakatutulong na tagubilin na itinakda mula sa PJRC. Maaari mong gamitin ang Arduino IDE upang isulat ang iyong code pati na rin i-upload sa Teensy.

CODE:

github.com/timlindquist/Nintimdo-RP

Mga Digital Buttons: Ipinapakita sa akin ng halimbawang ito ang pagsuri upang makita kung ang digital pin 20 ay pinindot at pagkatapos ay naglalabas ng tamang serial command na joystick. Maaari kang pumili ng anumang 1 hanggang 32 para sa pindutan dahil ang Retropie ay gumagawa ng isang pag-setup ng pagmamapa ng controller sa simula. Joystick.button (mga pindutan: 1-32, Pinindot = 1 Inilabas = 0)

Mga Pindutan ng Analog:

Sa halimbawa, ang tamang patayo ng joystick ay naka-wire sa analog pin 41. Ang pagpapaandar ng analogRead (pin) ay tumatanggap ng antas ng boltahe sa pagitan ng 0 at 5V at nagbabalik ng halagang 0 hanggang 1023. Ang isang perpektong posisyon ng sentro ay tumutugma sa 2.5V o 512, subalit hindi ito ang kaso para sa aking analog stick kaya kailangang gawin ang pagsasaayos. Ginawa ito sa pamamagitan ng isang muling pagpapakita na ipinakita sa ibaba. Pagkatapos nito kailangan kong suriin kung ang mga hangganan ay hindi lumampas sa 0 hanggang 1023. Panghuli ang utos ng analog na joystick ay ipinadala sa serial upang maging analog button na Z gamit ang Joystick. Z (halaga 0 hanggang 1023).

Hakbang 6: Opsyonal na Dock

Opsyonal na Dock
Opsyonal na Dock
Opsyonal na Dock
Opsyonal na Dock
Opsyonal na Dock
Opsyonal na Dock

Pantalan:

Ang konstruksyon na ito ay hindi magiging kumpleto nang walang dock para sa pag-charge at madaling TV hookup kaya dinisenyo ko ang isa sa mga larawan sa ibaba. Magagamit ang mga modelo ng 3D kasama ng iba pa sa aking pakete ng Github.

Mga Modelong:

github.com/timlindquist/Nintimdo-RP_3D_mod…

Hakbang 7: Mga Resulta

Mga Resulta
Mga Resulta
Mga Resulta
Mga Resulta
Mga Resulta
Mga Resulta
Mga Resulta
Mga Resulta

Sa pag-isipan nais kong gawin ang port sa labas ng HDMI na may isang PCB sa halip na isang paunang binili na mounting pader ng babae. Ito ay makatipid sa maraming espasyo sa totoo lang kailangan kong i-tuck ang cable sa isang spiral upang maiwasan ang pagputol nito at muling pag-solder ng 19 na mga wire. Napunit ako tungkol sa pagpunta sa isang mas maliit na baterya dahil ang taas ng cell ang aking nililimitahan na kadahilanan sa kapal ng buong aparato. Gayunpaman, ang pagbawas nito ay maaaring makaapekto sa negatibong buhay ko sa baterya.

Sa kabuuan nagkakahalaga ito sa akin ng humigit-kumulang na $ 350 upang makamit. Hindi kasama rito ang raspberry pi na sinira ko sa pagsubok na ahitin ang laki … Masaya pa rin Sinubukan ko ito. Ito ay isang nakakatuwang proyekto sa tag-init upang makita kung magagawa ko ito bilang compact hangga't maaari habang kasabay ng pag-aakma ng maraming mga cool na tampok sa loob.

Inirerekumendang: