Taula de continguts:
- Subministraments
- Pas 1: disseny
- Pas 2: imprimiu la vostra creació
- Pas 3: Preparació del prototip de tauler
- Pas 4: Opcional: avanceu la carcassa del controlador
- Pas 5: Assemblea final
- Pas 6: programa el teu Arduino
- Pas 7: Juga als teus jocs
- Pas 8: lliçons apreses
Vídeo: Controlador On Go: 8 passos
2024 Autora: John Day | [email protected]. Última modificació: 2024-01-30 08:12
T’agrada jugar al teu telèfon intel·ligent? Esteu cansats de jugar amb uns controls de pantalla tàctil maldestres? Odio oblidar carregar el controlador Bluetooth? Necessiteu un ús per a aquest cable que heu comprat però que no utilitzeu mai?
Per què no fer el vostre propi controlador de desplaçament?
Estic segur que arribo bastant tard al joc (joc de paraules), però recentment he descobert que el meu vell telèfon intel·ligent era capaç de jugar a jocs retro mitjançant emulació. Al créixer, era un gran fan dels sistemes de Game Boy i tinc bons records de jugar durant hores i d’estirar els ulls en llargues passejades en cotxe intentant desesperadament trobar un punt d’estalvi abans que la meva bateria mori o el sol estigués molt més enllà de l’horitzó per veure la meva pantalla. Ara puc jugar al telèfon i deixar-me nostàlgic, però amb una bonica pantalla retroil·luminada. Gràcies tecnologia!
Exempció de responsabilitat: l’emulació de jocs és un tema delicat i, en alguns casos, voreja la línia de la pirateria. Educeu-vos i jugueu amb responsabilitat.
Antecedents:
Vaig decidir continuar aquest projecte després de fer una drecera de teclat. Mentre aprenia la biblioteca de teclat arduino i arribava amb dreceres, he lligat alguns dels botons de prova a WASD. Immediatament va començar a treballar amb els meus jocs de PC i això va fer girar les rodes. Al mateix temps, em vaig quedar sense espai al telèfon per a llibres d’àudio i vaig examinar com fer servir una unitat flash USB amb el telèfon, ja que el meu model no permet les targetes microSD. Va ser llavors quan vaig conèixer OTG. OTG utilitza la càrrega de la bateria dels telèfons per alimentar el dispositiu que hi està connectat. Això inclou teclats, ratolins i unitats flash per nomenar alguns. El telèfon pot alimentar dispositius de 5 V i endevinar què necessita el micro arduino per funcionar? Va ser un partit fet al cel.
Subministraments
Arduino Micro
Tauler prototip
Botons de 12 x 6 mm (he utilitzat clàssics interruptors momentanis tàctils)
Soldador i soldador
Impressora 3D
Cable on the go (OTG); Vaig fer la meva
Cable de càrrega micro USB
Pas 1: disseny
Volia que el meu controlador fos portàtil i oferís tots els botons que necessitaria per jugar a jocs fins a l'era de Super Nintendo. Això significava que necessitaria 12 botons. Quatre per al teclat de direcció (d-pad) i vuit per al A, B, X, Y, Start, Select, Left Trigger i Right Trigger. També tenia un requisit addicional que volia que fos simètric per poder tocar-lo amb una sola mà amb qualsevol de les dues mans. Aquest requisit addicional pot semblar estrany, però, per donar un cert context, he de mencionar que recentment em trobo regularment amb un bebè adormit i només faig servir una mà durant el meu temps de joc limitat.
Amb els requisits definits em vaig proposar dissenyar el meu controlador en CAD. Personalment utilitzo OnShape, però sé que molta gent també té èxit amb Fusion360. M'agradaria fer un crit ràpid a les altres persones d'aquest lloc que dissenyin les seves pròpies creacions. És un treball dur! El disseny que vaig plantejar era molt senzill, però em va costar moltes hores satisfer-me. Tot i que escric això, veig moltes millores que voldria fer.
(Tinc previst fer només els fitxers.stl de Thingiverse quan el temps ho permeti. Els fitxers hi seran per poder actualitzar-los sense haver de carregar-los constantment aquí).
Pas 2: imprimiu la vostra creació
Tinc una impressora Ender 3 que només tinc des de fa uns mesos. És una impressora fantàstica per començar si voleu imprimir en 3D. No em vaig adonar del desconcertat que va ser fins que vaig mesurar les meves parts per a aquest projecte. Fins aquest projecte només l’havia utilitzat per imprimir minis per a jocs de sobretaula. Els minis van sortir genials i no m’importaven massa les dimensions. Vaig necessitar diversos cubs de calibratge i un nou rotllo de filament abans de quedar satisfet amb els resultats.
Pas 3: Preparació del prototip de tauler
Abans de soldar els botons a un tauler prototip he provat tots els botons d’una taula de proves i he provat el meu codi arduino alhora. Revisaré el codi en un pas posterior.
Ara és el millor moment per reduir la mida del vostre prototip de tauler. Utilitzeu la carcassa del controlador imprès com a guia i ajusteu els botons en sec per assegurar-vos que tot estigui alineat. Acabo d’agafar uns retalls de filferro i vaig tallar l’excés de taulers i després vaig lijar les vores quadrades amb una mica de paper de vidre de sorra de 150 graus.
El cablejat del controlador és realment senzill, ja que estem fent servir les resistències internes de pujada del micro arduino. Tots els botons van a una entrada i a terra. Els botons que faig servir són interruptors momentanis tàctils genèrics de 6 mm.
Soldar els botons a l’arduino era un petit trencaclosques divertit per resoldre. Alguns dels botons es trobaven sota l’arduino i vaig haver d’executar cables per sota abans de soldar l’arduino a la placa prototip. Si mireu amb deteniment el botó del tauler, he trobat a faltar l’esquerra i la dreta del coixinet direccional.
Per al meu disseny específic, heu soldat els botons del coixinet direccional amunt i avall (he trobat a faltar els botons del coixinet direccional esquerre i esquerre) al tauler prototip, juntament amb alguns cables extra llargs, i després he capgirat el tauler i heu soldat l’arduino. No tinc cap diagrama perquè he soldat sobretot els botons d’un en un a l’atzar (podria penjar-ne un si hi ha prou interès). Després d'assegurar l'arduino, vaig donar la volta al tauler al costat del botó i vaig soldar la resta de botons i els seus cables.
Pas 4: Opcional: avanceu la carcassa del controlador
Abans del muntatge final és un bon moment per esmaltar, omplir buits i pintar la carcassa del controlador. Vaig optar per ometre aquest pas pel meu prototip perquè volia tenir alguna cosa que utilitzar immediatament. Quan, inevitablement, millori el meu disseny per aconseguir quelcom més polit, li donaré el dolor que es mereix.
Pas 5: Assemblea final
Ara és el moment de posar tots els botons i el tauler prototip complet a la carcassa. Vaig utilitzar cargols de xapa # 4-24 x 1/2 per al meu disseny. Aconsegueixen la feina, però no encaixen tan bé com voldria.
Pas 6: programa el teu Arduino
És possible que vulgueu fer aquest pas abans quan encara esteu dissenyant el tauler o després d’haver soldat tot al tauler prototip. M'agrada tenir-ho a la seva secció.
El codi és molt senzill en relació amb la majoria de programes arduino que he vist. Només hem d’assignar a cada botó un valor de teclat i l’arduino farà un bucle per comprovar quins botons es premen i enviar aquesta informació al nostre telèfon.
Per als interessats, faig servir l’aplicació retroArch per jugar als meus jocs retro. Les tecles que he fet servir estan configurades al disseny de teclat per defecte utilitzat per 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' // espatlla esquerra = 'q' // espatlla dreta = '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'}; Botons de rebot * = Rebot nou [NUM_BUTTONS]; void setup () {for (int i = 0; i <NUM_BUTTONS; i ++) {botons .attach (BUTTON_PINS , INPUT_PULLUP); botons .interval (25); } // inicialitzar el control sobre el teclat: Keyboard.begin (); } void loop () {// comproveu si el valor ha canviat per a (int i = 0; i <NUM_BUTTONS; i ++) {botons .update (); if (botons .fell ()) {Keyboard.press (BUTTON_KEYS ); } if (botons .rose ()) {Keyboard.release (BUTTON_KEYS ); }}}
Pas 7: Juga als teus jocs
Com a alternativa, aquest controlador es pot utilitzar amb un PC sense el cable OTG per enviar premudes de tecles o macros. També tenia un amic que deia que un controlador com aquest també podria ser útil per dibuixar tauletes, encara que mai no m’hi he ficat mai.
Espero que us sigui útil aquesta instrucció. A continuació es mostra una secció de lliçons apreses per a aquells curiosos sobre el que vaig aprendre durant el procés i el que m’hauria agradat haver fet de manera diferent.
Pas 8: lliçons apreses
CAD:
Mai no m’he embolicat gaire amb el programari CAD i he hagut d’aprendre sobre la marxa amb aquest disseny. Originalment, anava amb un disseny més vertical que s’adaptava a les teves mans de la mateixa manera que un Wii Nunchuk. El meu coneixement limitat de dissenyar amb formes orgàniques va ser la meva caiguda. Potser hauria de tenir Intructables en la seva classe de disseny CAD.
Botons:
Els botons que vaig fer servir eren més alts del que voldria (sobretot quan intentaves evitar que algú es despertés). M'agradaria trobar alguns botons més silenciosos. La incorporació de molles entre els botons i les tapes dels botons ajudaria molt a fer que la construcció se sentís més pulida. Els botons tenen massa fluix per al meu gust.
Soldadura:
Sóc novell en soldar i no tinc les mans molt estables. Soldar tots aquests petits cables de tot el lloc va trigar molt més del que havia previst. Si hagués de fer-ho tot de nou, definiria definitivament per on anirien els cables abans d’agafar el ferro. Això mitigaria els errors que vaig descobrir després d’enganxar l’arduino a la placa prototip i m’hauria estalviat temps.
Recomanat:
Com instal·lar, executar i connectar un controlador a un emulador: 7 passos
Com instal·lar, executar i connectar un controlador a un emulador: Alguna vegada us heu assegut i recordeu la vostra infantesa com a jove jugador i, de vegades, voleu tornar a visitar aquelles velles joies del passat? Bé, hi ha una aplicació per a això … més concretament hi ha una comunitat de jugadors que fan programes
Construeix un controlador MIDI Arduino: 5 passos (amb imatges)
Construeix un controlador MIDI Arduino: Hola a tothom! En aquest instructiu us mostraré com construir el vostre propi controlador MIDI alimentat per Arduino. MIDI significa Interfície digital d’instruments musicals i és un protocol que permet comunicar ordinadors, instruments musicals i altre maquinari
Controlador de jocs DIY basat en Arduino - Controlador de jocs Arduino PS2 - Jugar a Tekken amb el bricolatge Arduino Gamepad: 7 passos
Controlador de jocs DIY basat en Arduino | Controlador de jocs Arduino PS2 | Jugar a Tekken amb el bricolatge Arduino Gamepad: Hola nois, jugar sempre és divertit, però jugar amb el vostre propi controlador de jocs de bricolatge és més divertit
YABC - Un altre controlador Blynk - Controlador de temperatura i humitat al núvol IoT, ESP8266: 4 passos
YABC - Encara un altre controlador Blynk: controlador de temperatura i humitat del núvol IoT, ESP8266: Hola, fabricants, recentment he començat a cultivar bolets a casa, bolets ostres, però ja tinc 3 vegades aquests controladors a casa per al control de temperatura de fermentació per a la meva cervesa, esposa ara també fa això de Kombucha i com a termòstat de calor
NESblinky - Controlador de flaix de controlador de Nintendo: 12 passos (amb imatges)
NESblinky - Nintendo Controller Bike Flasher: vaig veure el missatge "Light Up Your Ride" i vaig reflexionar sobre què es podria tornar a proposar per augmentar la visibilitat de la meva moto, tot esperant que encegés un motorista o dos en un atac de ràbia retro. Vaig passar amb una vella Nintendo trencada