Turinys:

„USB Paddle“žaidimų valdiklis: 7 žingsniai (su paveikslėliais)
„USB Paddle“žaidimų valdiklis: 7 žingsniai (su paveikslėliais)

Video: „USB Paddle“žaidimų valdiklis: 7 žingsniai (su paveikslėliais)

Video: „USB Paddle“žaidimų valdiklis: 7 žingsniai (su paveikslėliais)
Video: PXN V10 vs V9: Entry-level steering wheel SHOWDOWN 2024, Lapkritis
Anonim
USB irklų žaidimų valdiklis
USB irklų žaidimų valdiklis
USB irklų žaidimų valdiklis
USB irklų žaidimų valdiklis
USB irklų žaidimų valdiklis
USB irklų žaidimų valdiklis

Mano sūnui gimtadienio proga buvo surengtas retro vaizdo žaidimų vakaras, o dienos rytą nusprendžiau išsiaiškinti, ar galėčiau pagaminti porą USB irklenčių žaidimų valdiklių, skirtų „Pong“, padedant 3D spausdintuvui ir elektroninei įrangai. Nors man pavyko priversti juos iš esmės veikti laiku, galų gale žmonės buvo per daug užsiėmę kitais „Pong“žaidimais.

Kontrolieriai gali būti naudojami „Pong“su DICE grandinės lygio emuliatoriumi arba su mano gana tikslia „pygame“versija, „Atari 2600“žaidimams su emuliatoriumi ir „Etch-a-Sketch“tipo funkcijoms su dažymo programa, tokia kaip „Tux Paint“.

Yra trys perjungiami režimai:

  • „Stelladaptor“irklų emuliacija: jie turėtų veikti su visa „Atari 2600“emuliacine programine įranga, kuri palaiko „Stelladaptor“; „Stelladaptor“režimu irklai veikia kaip dviejų ašių dviejų mygtukų vairasvirtė, kiekviena irklentė valdo vieną ašį ir vieną mygtuką
  • dviguba vairasvirtės emuliacija: kiekvienas irklas veikia kaip vairasvirtė su vienu mygtuku (irklo judesys reiškia judėjimą abiejose vairasvirtės ašyse)
  • pelė: kiekvienas irklas valdo vieną absoliučios pelės judėjimo kryptį, o mygtukai yra pelės mygtukai; kartu su dažymo programa galite įsigyti aukštųjų technologijų įrenginį, panašų į „Etch-a-Sketch“.

Prekės

Jums reikės:

  • stm32f103c8t6 mėlyna piliulė
  • 2x linijinis potenciometras (rekomenduočiau 20K-100K)
  • 2x 12 mm pločio mikro jungiklis su mygtuku
  • 3D spausdintuvas
  • įvairūs (siūlai, laidai, lydmetalis, lituoklis, karšti klijai)

1 žingsnis: Paruoškite lentą ir „Arduino“aplinką

Paruoškite lentą ir „Arduino“aplinką
Paruoškite lentą ir „Arduino“aplinką
Paruoškite lentą ir „Arduino“aplinką
Paruoškite lentą ir „Arduino“aplinką
  1. Lituokite šešis antraštės kaiščius stm32f103c8t6 plokštės viduryje.
  2. Patikrinkite atsparumą tarp A12 ir 3.3V. Jis turėtų būti 1,5K, kad būtų galima visiškai suderinti USB. Daugelis plokščių turi 10K. Jei jūs esate vienas iš tų, idealiu atveju lituokite 1,8 K rezistoriuje nuo A12 iki 3,3 V, nors jums gali pasisekti ir jūsų kompiuteriai veikia su 10K.
  3. Įdiekite įkrovos tvarkyklę. Šios instrukcijos 2 veiksme yra instrukcijos. Reikėtų atkreipti dėmesį į tai, koks yra blykstės dydis, apie kurį pranešė STM demonstrantas. Jei tai 32K, turite suklastotą stm32f103c8, kuris tikriausiai yra peržymėtas stm32f103c6. Šis projektas vis tiek turėtų veikti, tačiau atkreipkite dėmesį, kad ateityje turėsite netikrą lentą.
  4. Įdiekite „Arduino“, „Arduino Zero“ir „Roger“„libmaple“pagrindą, vadovaudamiesi „Instructable“, kurį naudojote ankstesniame veiksme, 3 veiksmo instrukcijomis. Šiame etape ignoruokite bibliotekos instrukcijas.
  5. Atsisiųskite naujausią mano „USB Composite“bibliotekos leidimą ir išpakuokite jį savo aplanke „Arduino/Libraries“.
  6. Atsisiųskite mano „paddlecontrollers“eskizą ir išpakuokite jį savo „Arduino“aplanke.
  7. „Arduino“eikite į Įrankiai | Lenta | Bendra STM32F103C serija, nebent turite netikrą c6 plokštę, tokiu atveju rinkitės Generic STM32F103C6/netikrą STM32F103C8. Jei nesate tikri, ką turite, pasirinkti padirbtą variantą iš tikrųjų yra saugiau.

2 veiksmas: įkelkite

Įkelti
Įkelti

Prijunkite plokštę prie kompiuterio USB adapterio, įkelkite irklentės eskizą ir spustelėkite mygtuką Įkelti (rodyklė dešinėn). Jei viskas gerai, eskizas turėtų būti įkeltas, o lenta jūsų kompiuteryje turėtų būti rodoma kaip dviejų ašių dviejų mygtukų vairasvirtė, vadinama „Stelladaptor“. „Windows“galite tai patikrinti naudodami „Windows-R“, joy.cpl [įvesti].

Žinoma, tai nieko nepadarys, kol nesurinksite likusios aparatūros.

3 žingsnis: spausdinkite

Spausdinti
Spausdinti
  1. Atsisiųskite „stl“ir (arba) „scad“failus iš šio „Thingiverse“puslapio. Atkreipkite dėmesį, kad irklo rankenėlė čia pakeista.
  2. Jei jūsų mikro jungiklio korpuso plotis skiriasi nuo 12 mm, turėsite pakoreguoti mygtuko pločio parametrą faile paddlemain-standalone.scad. Tai galite padaryti naudodami „OpenSCAD“arba „Thingiverse Customizer“.
  3. Jums gali tekti koreguoti paddleknob.scad failo matavimus, kad jie atitiktų jūsų potenciometrą.
  4. Spausdinkite šiuos failus (darykite tik vieną „2x“failų kopiją, jei norite tik vieno irklentės). Aš naudoju PLA, bet ABS taip pat turėtų gerai veikti.

    • 2x paddlemain.stl
    • 2x paddleknob.stl
    • 1x irklentės keitiklis.stl
    • 1x pcbholdernarrower.stl
    • 2x buttoncap110.stl (neprivaloma)
    • 1x 12.stl (neprivaloma; atspausdinkite kita spalva ir klijuokite, kad pažymėtumėte abu irklus)

4 žingsnis: laidų prijungimas

Laidai
Laidai
Laidai
Laidai
Laidai
Laidai

Jums reikės paleisti keturis laidus nuo plokštės stm32f103c iki kiekvieno irklo valdiklio. Šiems laidams galite naudoti senus USB laidus. Atsitiktinai turėjau gražius atskirus laidus iš eterneto kabelio, kurį sujungiau su susitraukiančia plėvele.

Kiekvienoje irklentėje yra vienas mikro jungiklis ir vienas potenciometras. Naudokite multimetrą, kad nustatytumėte porą gretimų (ne įstrižų) kaiščių ant mikro jungiklio, kurie yra prijungti/atjungti paspaudus mygtuką. Aš pažymėsiu šiuos kaiščius S1 ir S2 diagramoje. Trys potenciometro kaiščiai pažymėti P1, P2 ir P3 iš viršaus į apačią, žiūrint iš potenciometro apačios, o smeigtukai nukreipti į dešinę.

Išstumkite keturis laidus nuo plokštės per skylę irklo korpuso šone (paddlemain.stl).

Prijungdami laidus prie mikro jungiklio, pirmiausia stumkite laidus per skylutes mentės korpuso šone ir lituokite prie jungiklio, kol jungiklis yra korpuso išorėje. Tada patraukite jungiklį prie korpuso, kad kaiščiai ir pritvirtinti laidai tilptų į skyles. Nupjoviau nereikalingus smeigtukus.

Abu irklai:

  • P1 - S1
  • P1 į plokštę 3.3V (3.3)
  • P3 įlipti į GND (G)

Irklas 1:

  • P2 į lentą A1
  • S2 į lentą A2

2 irklas:

  • P2 į lentą A3
  • S2 į lentą A4

Dabar patikrinkite ryšius prisijungę prie kompiuterio ir naudodami vairasvirtės testavimo programą. „Windows“, „Windows-R“, joy.cpl [įveskite], pasirinkite „Stelladaptor“, spustelėkite „Ypatybės“. Irklentė 1 turėtų valdyti X ašį ir pirmąjį mygtuką; 2 irklas turi valdyti Y ašį ir antrą mygtuką.

5 žingsnis: galutinis surinkimas

Galutinis surinkimas
Galutinis surinkimas
Galutinis surinkimas
Galutinis surinkimas
Galutinis surinkimas
Galutinis surinkimas
Galutinis surinkimas
Galutinis surinkimas

Mikro jungiklius galima klijuoti (karštas klijai man padarė darbą) savo vietose irklentės šone. Stabilumui galima užsisegti mygtukų dangtelius su trupučiu karštų klijų.

Potenciometras pritvirtinamas prie didelės skylės irklentės viršuje. Rankenėlė turi slysti ir prilipti. Jei reikia, padidinkite skyles gręžtuvu. Uždėkite apatinį dangtelį, jei norite, įpilkite šiek tiek karštų klijų.

Mėlyna tablečių plokštė telpa į PCB skaidrę, kuri tada prisukama prie keitiklio dėžutės apačios, kuri taip pat turi dangtelį, kuris gali jį uždengti.

Pridėjau šiek tiek „Shoe Goo“, kur laidai susitinka su korpusu, kad apsaugotų laidus. Ir ant menčių klijavau „1“ir „2“etiketes.

6 žingsnis: veikimo režimai

Veikimo režimai
Veikimo režimai
Veikimo režimai
Veikimo režimai

Irkliukai turi tris veikimo režimus. Galite perjungti veikimo režimą paspausdami tam tikrą mygtukų derinį, kai prijungiate juos prie USB prievado, atleisdami, kai plokštės šviesos diodai nustoja mirksėti. Kai perjungsite darbo režimą, jis bus išsaugotas „flash“atmintyje ir liks tol, kol kitą kartą jį pakeisite. (Taigi, jei nenorite keisti režimo, nespauskite jokių mygtukų, kai prijungiate irklus prie USB prievado.) Štai šios parinktys:

  • Tik kairysis irklentės mygtukas: viena dviejų ašių dviejų mygtukų vairasvirtė, kiekvieną ašį ir mygtuką valdo vienas irklas. Be to, irklentės yra „Stelladaptor“, nutrauktas „Atari 2600“valdiklių USB adapteris, todėl „Atella 2600“emuliatoriai, tokie kaip „Stella“ir „Z26“, suderinami su „Stelladapter“, turėtų veikti puikiai.
  • Abu irklentės mygtukai: kiekviena irklentė rodo atskirą vairasvirtę. Vairasvirtėje yra vienas veikimo mygtukas, o pasukant irklą, vairasvirtė pasislenka įstrižai, todėl irkliui tinka X arba Y ašis.
  • Tik dešinysis irklentės mygtukas: irklai rodomi kaip dviejų mygtukų absoliuti pelė. Dabar galite tai naudoti panašiai kaip „Etch-a-Sketch“su piešimo programa.

7 žingsnis: tenisas

Tenisas
Tenisas
Tenisas
Tenisas

„Pong“buvo puikus originalus irklenčių žaidimas. Rekomenduoju originalią versiją, nes į klonus dažnai neįtraukiamos visos malonios subtilios funkcijos, pvz., Greičio pokyčiai pakartojant smūgius, kampas keičiasi priklausomai nuo irklo dalies, kuri pataiko į kamuolį, arba subtiliai, bet ne lengvai nuspėjamos padėties servo po praleidimo. Norėdami atidžiai išanalizuoti originalą, žiūrėkite čia.

Vienas iš geriausių būdų žaisti „Pong“yra DICE grandinės lygio emuliatorius, jei jūsų kompiuteris yra pakankamai greitas, kad galėtų juo naudotis visu greičiu. (Mano „Windows“nešiojamasis kompiuteris yra, bet „Raspberry PI 3+“yra per lėtas.) Rekomenduoju 0.8 versiją.

Jei irkluose naudojate „Stelladaptor“režimą, eikite į Nustatymai | Konfigūruokite įvestis… DICE ir pasirinkite „Joystick 1“ir „Absolute“1 žaidėjo irklu, ir nustatykite „Horizontal“ir „Vertical“į „Joy 1 X-Axis“. Tada darykite tą patį su „Player 2 Paddle“, išskyrus Y ašį.

Jei jūsų kompiuteris yra per lėtas DICE, aš sukūriau „Python3+pygame“versiją, kurios laikas ir funkcionalumas turėtų būti labai artimi originaliam „Pong“(esu dėkingas už pagalbą šiuo klausimu dr. Hugo Holden).

Rekomenduojamas: