Talaan ng mga Nilalaman:

Wireless 4 Player Family Game Controller: 3 Hakbang
Wireless 4 Player Family Game Controller: 3 Hakbang

Video: Wireless 4 Player Family Game Controller: 3 Hakbang

Video: Wireless 4 Player Family Game Controller: 3 Hakbang
Video: How to Pair PS4 Controller to PC Using Bluetooth 2024, Nobyembre
Anonim
Wireless 4 Player Family Game Controller
Wireless 4 Player Family Game Controller
Wireless 4 Player Family Game Controller
Wireless 4 Player Family Game Controller
Wireless 4 Player Family Game Controller
Wireless 4 Player Family Game Controller

Ito ay isang wireless arcade style controller na maaaring i-laro ng 4 na tao nang sabay-sabay. Wireless ito upang hindi mo ma-tether ang iyong pc sa isang controller na ginagamit ng 5 taong gulang. Bumagsak sila sa lahat ng oras at hindi ko nais na sirain nila ang lahat ng aking mga laruan kapag hindi nila maiiwasan ang paglalakbay sa isang kawad. Kamakailan lamang bumili kami ng isang bagong monitor ng computer at dumating ito sa isang napakalakas na kahon na may talagang siksik na styrofoam sa loob. Tulad ng isang bagay mula sa isang sitcom, patuloy akong nakikipagtalo sa aking asawa tungkol sa pag-iingat ng kahon. Sa akin ito ay tila nagmamakaawa na gawing isang bagay samantalang sa kanya ito ay pangit na basura. Pagkatapos, sa labas ng asul, ang Mga Instructable ay nagpatakbo ng isang paligsahan sa bilis batay sa karton. At sa gayon sa isang hapon ay naayos ang pagtatalo at isinilang ang proyektong ito.

Gumamit kami ng mga end end odds na mayroon kami sa paligid ng bahay upang mabuhay ang proyekto. Ang ideya ay gamitin lamang kung ano ang mayroon na kaming pag-upo upang gumawa ng isang bagay na cool - sa kabutihang-palad mayroon kaming isang hanay ng mga arcade button at isang raspberry pi na binili namin ng mga nakaraang taon upang makagawa ng isang arcade cabinet. Para sa paggupit ginamit namin ang isang lagari at ang aking mapagkakatiwalaang lumang bulsa na kutsilyo.

Mga gamit

1. Kahon ng karton2. Styrofoam o iba pang siksik na tagapuno 3. Mga pindutan ng arcade mula sa Ali Express o Amazon 4. Raspberry Pi 3B + 5. Ilang iba pang screen ng computer +. 6. Kutsilyo o kung ano upang maputol ang mga butas sa karton 7. Masking tape8. Pag-spray ng Pinta

Hakbang 1: Ang Konstruksiyon

Ang Konstruksiyon
Ang Konstruksiyon
Ang Konstruksiyon
Ang Konstruksiyon
Ang Konstruksiyon
Ang Konstruksiyon

Mabilis kaming gumuhit ng isang sketch ng kung ano ang nais namin na magmukhang bagay, pagkatapos ay gumamit ng isang kutsilyo at kahoy na gabas upang i-cut ang karton at styrofoam sa tamang sukat. Minarkahan namin ang karton na may isang mahusay na layout ng button / joystick at gupitin nang maingat ang mga butas gamit ang isang kutsilyo. Ito ay isang mahusay na ehersisyo sa pangunahing matematika para sa mga bata. Kapag naputol ang carboard ay ipininta namin ito at pagkatapos ay ilagay ang lahat ng mga pindutan sa lugar. Ang pangunahing kagiliw-giliw na bagay na ginawa namin ay ang pandikit ng tatlong mga layer ng karton para sa tuktok ng controller upang bigyan ito ng mas mahigpit. Ginawa nitong medyo mahirap na gupitin ngunit nagtrabaho ng perpekto para sa paggawa ng tuktok na halos kasing solid ng kahoy.

Ang Raspberry Pi 3B + ay may apat na USB port. Mayroon kaming isang pamilya ng apat at 4 na mga hanay ng mga arcade button! Ito ang predestinasyon.

Hakbang 2: Ang Programming

Ang Programming
Ang Programming
Ang Programming
Ang Programming
Ang Programming
Ang Programming
Ang Programming
Ang Programming

Ang code para sa proyektong ito ay simple at maraming surot. Maaari itong matagpuan dito:

github.com/melvyniandrag/SuperTuxJunkKartAng 4 na mga tagakontrol ay konektado sa pamamagitan ng usb sa isang raspberry pi. Sa Raspberry pi, mayroong isang maliit na script ng sawa na tumatakbo. Ginamit ko ang library ng mga input ng Python upang makuha ang mga signal mula sa mga pindutan at joystick. Pagkatapos ay binago ng programa ang signal sa isang maikling ASCII code at ipinapadala ito sa pamamagitan ng isang socket ng TCP sa paglipas ng wifi sa isang PC na nagpapatakbo ng isang laro (Titingnan ko ito bilang ang server ng laro). Halimbawa, kapag inilipat ng manlalaro 0 ang joystick na natitira, ang mga character na '0XL' ay ipinapadala sa socket ng TCP sa server ng laro. Para sa pagsubok pinatakbo ko ang SuperTuxKart sa aking thinkpad. Ang isang maliit na application ng server ay tumatakbo sa thinkpad at nakikinig sa socket ng TCP. Ang mga code na nagmula sa raspberry pi sa paglipas ng wifi ay isinalin sa mga pagpindot sa pindutan sa keyboard sa pamamagitan ng pyautogui library. Kaya, kapag inilipat ng manlalaro 0 sa cardboard controller ang joystick na natitira at ang controller ay naglalabas ng 'OXL', iniisip ng server na nagpapatakbo ng laro na pinindot ng manlalaro ang pindutan na '1' sa keyboard. Ang laro ay dapat na naka-configure upang makilala ang mga pagpindot sa keyboard na maaaring ipakita sa screen ng mga pagpipilian dito. Ang larong ito ay tumatakbo nang maayos sa isa o dalawang mga manlalaro, ngunit kapag 4 na tao ang agresibong naglaro ng SuperTuxKart ang server ay nagsimulang mawala ang ilang data mula sa controller. Hindi ako sigurado kung ito ay isang error: 1. Sa panig ng client (controller)2. Sa server (thinkpad) na bahagi3. Itinayo sa pagpapaandar ng Linux. Marahil ay hindi makikilala ng aking Ubuntu laptop ang isang malaking bilang ng mga sabay na keypress. Kaya't kung ang manlalaro 0, 1, at 2 ay lahat ng pagpipiloto pataas at pakaliwa, nangangahulugan iyon na 2 * 3 = 6 na mga pindutan ay pinindot nang sabay-sabay. Hindi ako sigurado kung ang aking computer (o anumang computer) ay idinisenyo upang hawakan iyon. Karaniwan ang mga hot key ay 3 o mas kaunti mga pindutan hal. CTRL + ALT + DEL. Sa hinaharap susubukan ko ang pagsisimula ng 4 na mga socket ng tcp, isa para sa bawat controller, at pagkatapos ay sa panig ng server na lumilikha ng isang virtual game pad. Wala pang oras upang makita kung paano gawin iyon sa pagitan ng pagiging magulang, pagtatrabaho at pagputol ng mga kahon ng karton.

Hakbang 3: Ang Kinabukasan

Ito ay isang simpleng Katibayan ng Konsepto. Sa hinaharap, ang code ay kailangang maging mas mahusay. Nais kong i-code ang koneksyon bilang isang aparato ng Bluetooth HID, ngunit ang bluez5 sa Linux ay isang kaunting oras na lumubog upang gumana - iyon ang dahilan kung bakit ako nagpunta sa isang socket ng TCP + Python. Gayundin - harapin natin ito - mukhang nakikita ng controller parang ano ba Sa mas maraming oras, mamumuhunan ako ng kaunting lakas sa paggupit nang mas maingat. Pagkatapos maglalagay ako ng higit pang mga suporta-ang mga gilid ng kahon ay nagsisimulang mag-warp nang kaunti. Para sa kung ano ito at kung ano ang gastos, ang bagay na ito ay mukhang sapat na. Patuloy akong tinker dito habang nanonood kami ng mga pelikula sa gabi.

Inirerekumendang: