Taula de continguts:

Controlador de jocs de pàdel USB: 7 passos (amb imatges)
Controlador de jocs de pàdel USB: 7 passos (amb imatges)

Vídeo: Controlador de jocs de pàdel USB: 7 passos (amb imatges)

Vídeo: Controlador de jocs de pàdel USB: 7 passos (amb imatges)
Vídeo: Праздник. Новогодняя комедия 2024, Desembre
Anonim
Controlador de jocs de pàdel USB
Controlador de jocs de pàdel USB
Controlador de jocs de pàdel USB
Controlador de jocs de pàdel USB
Controlador de jocs de pàdel USB
Controlador de jocs de pàdel USB

El meu fill tenia una nit de videojocs retro pel seu aniversari i, al matí del dia, vaig decidir veure si podia fer un parell de controladors de jocs de pàdel USB per a Pong amb l’ajut d’una impressora 3D i electrònica de la meva reserva. Tot i que vaig aconseguir que bàsicament treballessin a temps, la gent estava massa ocupada amb altres jocs de Pong al final.

Els controladors es poden utilitzar per Pong amb l’emulador de nivell de circuit DICE o amb la meva versió pygame bastant precisa, per als jocs Atari 2600 amb un emulador i per a la funcionalitat similar a Etch-a-Sketch amb un programa de pintura com Tux Paint.

Hi ha tres modes commutables:

  • Emulació de pàdel Stelladaptor: haurien de funcionar amb tot el programari d'emulació Atari 2600 que admeti Stelladaptor; en mode Stelladaptor, les pales funcionen com a joystick de dos eixos de dos botons, cada paleta controla un eix i un botó
  • emulació de joystick doble: cada paleta funciona com un joystick amb un botó (amb el moviment de la paleta que es tradueix en moviment en els dos eixos del joystick)
  • ratolí: cada paleta controla una direcció de moviment per a un ratolí absolut i els botons són botons del ratolí; juntament amb un programa de pintura, podeu obtenir un dispositiu d'alta tecnologia similar a un Etch-a-Sketch.

Subministraments

Necessitarà:

  • stm32f103c8t6 pastilla blava
  • 2x potenciòmetre lineal (recomanaria 20K-100K)
  • Microinterruptor de 2x 12mm d'amplada amb botó
  • Impressora 3D
  • diversos (filament, cables, soldadura, soldador, cola calenta)

Pas 1: prepareu l'entorn Arduino i Board

Prepareu l'entorn Arduino i Board
Prepareu l'entorn Arduino i Board
Prepareu l'entorn Arduino i Board
Prepareu l'entorn Arduino i Board
  1. Soldeu els sis passadors de capçalera al mig del tauler stm32f103c8t6.
  2. Comproveu la resistència entre A12 i 3,3V. Hauria de ser 1,5K per a una compatibilitat USB més completa. Molts taulers tenen 10K. Si és d’aquests, idealment es pot soldar en una resistència d’1,8K des d’A12 fins a 3,3V, tot i que és possible que tingueu sort i que els vostres ordinadors funcionin amb el 10K.
  3. Instal·leu un carregador d’arrencada. Hi ha instruccions al pas 2 d’aquest instructable. Una cosa a tenir en compte és quina és la mida del flaix comunicada pel demostrador STM. Si són 32K, teniu un stm32f103c8 fals, que probablement sigui un stm32f103c6 rellotjat. Aquest projecte encara hauria de funcionar amb això, però anoteu que teniu el tauler fals per a un futur pas.
  4. Instal·leu Arduino, Arduino Zero i el nucli basat en libmaple de Roger seguint les instruccions del pas 3 de la instrucció que heu utilitzat al pas anterior. Ignoreu les instruccions de la biblioteca en aquest pas.
  5. Descarregueu la versió més recent de la meva biblioteca USB Composite i descomprimiu-la a la carpeta Arduino / Libraries.
  6. Descarregueu el meu esbós de controladors de pales i descomprimiu-lo a la vostra carpeta Arduino.
  7. A Arduino, aneu a Eines | Junta | Sèrie STM32F103C genèrica, tret que tingueu la placa c6 falsa, en aquest cas trieu Generic STM32F103C6 / fake STM32F103C8. Si no esteu segur de quines les teniu, és més segur triar l’opció falsa.

Pas 2: pengeu

Pujar
Pujar

Connecteu la placa a l'adaptador USB de l'ordinador, carregueu l'esbós del controlador de pales i feu clic al botó Puja (fletxa cap a la dreta). Si tot va bé, l’esbós s’hauria de carregar i el tauler hauria d’aparèixer a l’ordinador com un joystick de dos eixos de dos botons anomenat "Stelladaptor". Al Windows, podeu verificar-ho amb Windows-R, joy.cpl [enter].

Per descomptat, això no farà res fins que no tingueu la resta del maquinari muntat.

Pas 3: imprimiu

Imprimir
Imprimir
  1. Baixeu-vos els fitxers stl i / o scad de la meva pàgina de Thingiverse per a aquest projecte. Tingueu en compte que el botó de pàdel es modifica a partir d’aquí.
  2. Si l'amplada de la carcassa del microinterruptor és diferent de 12 mm, haureu d'ajustar el paràmetre d'amplada del botó al fitxer paddlemain-standalone.scad. Podeu fer-ho a OpenSCAD o al Thingiverse Customizer.
  3. És possible que hàgiu de modificar les mesures del fitxer paddleknob.scad per adaptar-les al vostre potenciòmetre.
  4. Imprimiu aquests fitxers (feu només una còpia dels fitxers "2x" si només voleu un pal). Jo feia servir PLA, però l’ABS també hauria de funcionar bé.

    • 2x paddlemain.stl
    • 2x paddleknob.stl
    • 1x paddleconverter.stl
    • 1x pcbholdernarrower.stl
    • 2x buttoncap110.stl (opcional)
    • 1x 12.stl (opcional; imprimeix en un altre color i enganxa’l per etiquetar les dues paletes)

Pas 4: cablejat

Cablejat
Cablejat
Cablejat
Cablejat
Cablejat
Cablejat

Haureu d’executar quatre cables des de la placa stm32f103c a cada controlador de pàdel. Podeu utilitzar cables USB antics per a aquests cables. Vaig tenir uns bonics cables independents d’un cable ethernet que vaig lligar amb un embolcall retràctil.

Cada paleta té un microinterruptor i un potenciòmetre. Utilitzeu un multímetre per identificar un parell de pins adjacents (no diagonals) al microinterruptor connectats / desconnectats prement el botó. Etiquetaré aquests pins S1 i S2 al diagrama. Els tres pins del potenciòmetre els he etiquetat P1, P2 i P3 de dalt a baix, mirant des de la part inferior del potenciòmetre, amb els pins apuntats cap a la dreta.

Premeu els quatre cables del tauler pel forat del costat de la carcassa de la paleta (paddlemain.stl).

Quan connecteu els cables al microinterruptor, primer empenyeu els cables pels orificis del costat de la carcassa de la pala i soldeu-lo a l'interruptor mentre l'interruptor es troba a l'exterior de la carcassa. A continuació, estireu l'interruptor cap a la carcassa fent que els passadors i els cables connectats s'adaptin als forats. Vaig tallar els passadors innecessaris.

Ambdues pales:

  • P1 a S1
  • P1 a bord 3.3V (3.3)
  • P3 per pujar a GND (G)

Pàdel 1:

  • P2 a bord A1
  • S2 a bord A2

Pàdel 2:

  • P2 a bord A3
  • S2 a bord A4

Ara proveu les connexions connectant-vos a l'ordinador i utilitzant un programa de proves del joystick. A Windows, Windows-R, joy.cpl [enter], seleccioneu Stelladaptor, feu clic a Propietats. El pàdel 1 hauria de controlar l’eix X i el primer botó; la pala 2 hauria de controlar l'eix Y i el segon botó.

Pas 5: Assemblea final

Assemblea final
Assemblea final
Assemblea final
Assemblea final
Assemblea final
Assemblea final
Assemblea final
Assemblea final

Els microinterruptors es poden enganxar (la cola calenta em va ajudar) a les seves ubicacions al costat de la caixa de pàdel. Els taps de botó es poden encloure, amb una mica de cola calenta per a més estabilitat.

El potenciòmetre s’uneix al gran forat de la part superior de la caixa de pàdel. El pom hauria de lliscar-se i enganxar-se. Amplieu els forats amb un trepant segons sigui necessari. Premeu la tapa inferior, afegint una mica de cola calenta si voleu.

El tauler de pastilles blau s’adapta a la diapositiva del PCB, que es cargola a la part inferior de la caixa del convertidor, que també té una tapa que el pot tapar.

Vaig afegir una mica de Shoe Goo, on els cables es troben amb la carcassa per protegir-los. I vaig enganxar etiquetes "1" i "2" a les paletes.

Pas 6: modes d'operació

Modes de funcionament
Modes de funcionament
Modes de funcionament
Modes de funcionament

Les pales tenen tres modes de funcionament. Podeu canviar el mode de funcionament prement una combinació particular de botons mentre els connecteu a un port USB, deixant-los anar un cop els LED de la placa deixin de parpellejar. Un cop canvieu el mode de funcionament, es desarà a la memòria flash i es mantindrà fins al següent canvi. (Per tant, si no voleu canviar de mode, no premeu cap botó mentre connecteu les pales a un port USB.) A continuació, es detallen les opcions següents:

  • Només botó esquerre de pàdel: un joystick de dos eixos de dos botons, amb cada eix i botó controlats per una paleta. A més, les paletes s’identifiquen com un Stelladaptor, un adaptador USB discontinu per als controladors Atari 2600, de manera que els emuladors Atari 2600 com Stella i Z26 que són compatibles amb Stelladapter haurien de funcionar perfectament.
  • Tots dos botons de paleta: cada paleta mostra un joystick separat. El joystick té un botó operatiu i girar la paleta mou el joystick en diagonal, de manera que l’eix X o l’eix Y funcionen per a la paleta.
  • Només botó dret de pàdel: les paletes apareixen com un ratolí absolut de dos botons. Ara podeu utilitzar-lo de manera similar a un Etch-a-Sketch amb un programa de dibuix.

Pas 7: Pong

Pong
Pong
Pong
Pong

El Pong era el gran joc original de pàdel. Recomano la versió original, perquè els clons sovint no inclouen totes les funcions subtils encantadores, com ara els canvis de velocitat amb cops repetits, l'angle canvia en funció de la part del pal que colpeja la pilota o la posició subtil però no fàcilment predicible del servei després d’una falta. Per obtenir una anàlisi acurada de l'original, vegeu aquí.

Una de les millors maneres de jugar a Pong és amb l’emulador de nivell de circuit DICE si l’ordinador és prou ràpid per utilitzar-lo a tota velocitat. (El meu ordinador portàtil de Windows és, però el Raspberry PI 3+ és massa lent.) Recomano la versió 0.8.

Si utilitzeu el mode Stelladaptor a les pales, aneu a Configuració | Configureu les entrades … a DICE i trieu Joystick 1 i Absolute per a Player 1 Paddle i configureu Horitzontal i Vertical a Joy 1 Eix X. A continuació, feu el mateix amb el jugador 2 Paddle, excepte amb l'eix Y.

Si el vostre ordinador és massa lent per a DICE, he creat una versió de Python3 + pygame, els temps i la funcionalitat dels quals estan molt a prop del Pong original (agraeixo l’ajuda del Dr. Hugo Holden en aquest sentit).

Recomanat: