Tabla de contenido:
- Suministros
- Paso 1: diseño
- Paso 2: ¡Imprime tu creación
- Paso 3: preparación de su placa prototipo
- Paso 4: Opcional: arregle la carcasa de su controlador
- Paso 5: Ensamblaje final
- Paso 6: programa tu Arduino
- Paso 7: ¡Juega tus juegos
- Paso 8: lecciones aprendidas
Video: Controlador en movimiento: 8 pasos
2024 Autor: John Day | [email protected]. Última modificación: 2024-01-30 08:41
¿Te gusta jugar juegos en tu teléfono inteligente? ¿Estás cansado de jugar con torpes controles de pantalla táctil? ¿Odias olvidarte de cargar tu controlador Bluetooth? ¿Necesita usar ese cable para llevar que compró pero que nunca usó?
¿Por qué no crear el tuyo propio sobre la marcha?
Estoy seguro de que llego bastante tarde al juego (juego de palabras), pero recientemente descubrí que mi antiguo teléfono inteligente era capaz de jugar juegos retro a través de la emulación. Al crecer, era un gran fanático de los sistemas Game Boy y tengo buenos recuerdos de jugar durante horas y forzar la vista en largos viajes en automóvil tratando desesperadamente de encontrar un punto de guardado antes de que mi batería se agotara o el sol estuviera demasiado lejos del horizonte para ver mi pantalla. Ahora puedo jugar en mi teléfono y ceder a la nostalgia pero con una bonita pantalla retroiluminada. Gracias tecnología!
Descargo de responsabilidad: la emulación de juegos es un tema delicado y elude la línea de la piratería en algunos casos. ¡Infórmense y jueguen responsablemente!
Fondo:
Decidí seguir con este proyecto después de hacer un teclado de atajo. Mientras aprendía la biblioteca de teclado arduino y creaba atajos, enlacé algunos de los botones de prueba a WASD. Inmediatamente comenzó a trabajar con mis juegos de PC y eso hizo que las ruedas giraran. Casi al mismo tiempo, me quedé sin espacio en mi teléfono para libros de audio y busqué cómo usar una unidad flash USB con mi teléfono, ya que mi modelo no permite tarjetas microSD. Fue entonces cuando supe sobre OTG. OTG utiliza la carga de la batería de su teléfono para alimentar el dispositivo conectado a él. Esto incluye teclados, ratones y unidades flash, por nombrar algunos. El teléfono puede alimentar dispositivos de 5v y ¿adivinen qué requiere el micro arduino para funcionar? Fue una pareja hecha en el cielo.
Suministros
Arduino Micro
Tablero prototipo
Botones de 12 x 6 mm (utilicé interruptores momentáneos táctiles de tablero de pruebas clásicas)
Soldador y soldadura
impresora 3d
Cable sobre la marcha (OTG); Yo hice el mío
Cable de carga micro USB
Paso 1: diseño
Quería que mi controlador fuera portátil y ofreciera todos los botones que necesitaría para jugar juegos hasta la era de Super Nintendo. Esto significaba que necesitaría 12 botones. Cuatro para el pad direccional (d-pad) y ocho para A, B, X, Y, Start, Select, Left Trigger y Right Trigger. También tenía un requisito adicional de que quería que fuera simétrico para poder jugar con una mano con cualquiera de las dos. Ese requisito adicional puede parecer extraño, pero para dar un poco de contexto, debo mencionar que recientemente me encuentro sosteniendo a un bebé dormido y solo puedo usar una mano durante mi tiempo limitado de juego.
Con los requisitos definidos me propuse diseñar mi controlador en CAD. Yo personalmente uso OnShape, pero sé que muchas personas también tienen éxito con Fusion360. Me gustaría agradecer rápidamente a las demás personas de este sitio que diseñan sus propias creaciones. ¡Es un trabajo duro! El diseño que se me ocurrió fue súper simple, pero aún me tomó muchas horas estar satisfecho. Incluso mientras escribo esto, noto muchas mejoras que me gustaría hacer.
(Planeo guardar los archivos.stl en Thingiverse cuando el tiempo lo permita. Los archivos estarán allí para poder actualizarlos sin tener que cargar archivos aquí constantemente).
Paso 2: ¡Imprime tu creación
Tengo una impresora Ender 3 que solo he tenido durante unos meses. Es una gran impresora para comenzar si desea comenzar con la impresión 3D. No me di cuenta de lo fuera de control que estaba hasta que medí mis piezas para este proyecto. Hasta este proyecto, solo lo había usado para imprimir minis para juegos de mesa. Los minis salieron muy bien y no me importaron demasiado las dimensiones. Se necesitaron varios cubos de calibración y un nuevo rollo de filamento antes de que estuviera contento con los resultados.
Paso 3: preparación de su placa prototipo
Antes de soldar botones a una placa prototipo, probé todos los botones en una placa y probé mi código arduino al mismo tiempo. Revisaré el código en un paso posterior.
Ahora es el mejor momento para cortar su placa prototipo a medida. Utilice la carcasa del controlador impresa como guía y ajuste en seco los botones para asegurarse de que todo esté alineado. Solo tomé unas tijeras de alambre y corté el exceso de tabla, luego lijé los bordes con papel de lija de grano 150.
El cableado para el controlador es realmente sencillo ya que estamos usando las resistencias internas de pull up del arduino micro. Todos los botones van a una entrada y a tierra. Los botones que estoy usando son interruptores momentáneos táctiles genéricos de 6 mm.
Soldar los botones al arduino fue un pequeño rompecabezas divertido de resolver. Algunos de los botones estaban debajo del arduino y tuve que pasar cables por debajo antes de soldar el arduino a la placa prototipo. Si miras de cerca en el lado del botón del tablero, me perdí la izquierda y la derecha para el teclado direccional.
Para mi diseño específico, soldé los botones de la almohadilla direccional hacia arriba y hacia abajo (me perdí los botones de la almohadilla direccional izquierda y derecha) a la placa prototipo junto con algunos cables extra largos, luego volteé la placa y soldé el arduino. No tengo un diagrama porque en su mayoría soldé los botones uno a la vez al azar (podría subir uno si hay suficiente interés). Una vez asegurado el arduino, volteé la placa hacia el lado del botón y soldé el resto de los botones y sus cables.
Paso 4: Opcional: arregle la carcasa de su controlador
Antes del montaje final es un buen momento para lijar, rellenar los huecos y pintar la carcasa del controlador. Opté por omitir este paso para mi prototipo porque quería tener algo para usar de inmediato. Cuando inevitablemente mejore mi diseño a algo más pulido, le daré el doloroso trabajo que se merece.
Paso 5: Ensamblaje final
Ahora es el momento de colocar todos los botones y la placa prototipo completa en la carcasa. Usé tornillos para láminas de metal # 4-24 x 1/2 para mi diseño. Hacen el trabajo pero no encajan tan bien como me gustaría.
Paso 6: programa tu Arduino
Es posible que desee realizar este paso antes cuando todavía esté diseñando la placa o después de haber soldado todo a la placa prototipo. Simplemente me gusta tener esto en su propia sección.
El código es muy simple en relación con la mayoría de los programas arduino que he visto. Solo necesitamos asignar a cada botón un valor de teclado y el arduino recorrerá para verificar qué botones están presionados y enviar esa información a nuestro teléfono.
Para los interesados, utilizo la aplicación retroArch para jugar a mis juegos retro. Las teclas que utilicé están configuradas con la distribución de teclado predeterminada utilizada para 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' // hombro izquierdo = 'q' // hombro derecho = 'w' // seleccionar = 'rshift '// start =' enter '// up =' key: up '// down =' key: down '// left =' key: left '// right =' key: right 'const char BUTTON_KEYS [NUM_BUTTONS] = {KEY_RIGHT_ARROW, KEY_RIGHT_SHIFT, 'z', 'x', 's', 'a', 'q', 'w'}; Botones de rebote * = nuevo rebote [NUM_BUTTONS]; configuración vacía () {para (int i = 0; i <NUM_BUTTONS; i ++) {botones .attach (BUTTON_PINS , INPUT_PULLUP); botones .intervalo (25); } // inicializar el control sobre el teclado: Keyboard.begin (); } void loop () {// verifica si el valor cambió para (int i = 0; i <NUM_BUTTONS; i ++) {botones .update (); if (botones .fell ()) {Keyboard.press (BUTTON_KEYS ); } if (botones .rose ()) {Keyboard.release (BUTTON_KEYS ); }}}
Paso 7: ¡Juega tus juegos
Alternativamente, este controlador se puede usar con una PC sin el cable OTG para enviar pulsaciones de teclas o macros. También tuve un amigo que dijo que un controlador como este también podría ser útil para dibujar tabletas, aunque nunca antes me había metido con uno.
Espero que haya encontrado útil este Instructable. A continuación se muestra una sección de lecciones aprendidas para aquellos que tengan curiosidad sobre lo que aprendí durante el proceso y lo que me hubiera gustado haber hecho de manera diferente.
Paso 8: lecciones aprendidas
CANALLA:
Nunca me he metido mucho con el software CAD en el pasado y tuve que aprender sobre la marcha con este diseño. Originalmente, opté por un diseño más vertical que encajaría en tus manos como un Wii Nunchuk. Mi limitado conocimiento del diseño con formas orgánicas fue mi perdición. Tal vez debería tomar Intructables en su clase de diseño CAD.
Botones:
Los botones que utilicé eran más ruidosos de lo que me gustaría (especialmente cuando intentabas evitar que alguien se despertara). Me gustaría encontrar algunos botones más silenciosos. La incorporación de resortes entre los botones y las tapas de los botones sería de gran ayuda para que la construcción se sienta más pulida. Los botones están demasiado flojos para mi gusto.
Soldadura:
Soy un novato en la soldadura y no tengo manos muy firmes. Soldar todos esos pequeños cables por todo el lugar tomó mucho más tiempo de lo que había anticipado. Si tuviera que hacerlo todo de nuevo, definitivamente trazaría un mapa por donde pasarían mis cables antes de agarrar la plancha. Eso mitigaría los errores que descubrí después de colocar el arduino en la placa prototipo y me habría ahorrado tiempo.
Recomendado:
Controlador de movimiento de salto. (Progetto Arduino): 4 pasos
Controlador de movimiento de salto. (Progetto Arduino): L'intento di questo progetto è quello di utilizzare il Leap Motion per controllare l'intensità di luce ei colori di un led RGB in relazione al movimento delle mani nello spazio.Referencia: Leap Motion SDK: https: // developer-archive.leapmotion.com/doc
Monitoreo de un terrario de lagarto con el controlador Adosia IoT WiFi + Detección de movimiento: 17 pasos (con imágenes)
Monitoreo de un terrario de lagarto usando el controlador Adosia IoT WiFi + Detección de movimiento: en este tutorial, le mostraremos cómo construir un terrario de lagarto simple para un puñado de huevos de eslizón que encontramos y perturbamos accidentalmente mientras hacíamos jardinería al aire libre. así que todo lo que haremos es crear un espacio seguro usando un plast
Controlador de juegos de bricolaje basado en Arduino - Controlador de juegos Arduino PS2 - Jugar a Tekken con el gamepad DIY Arduino: 7 pasos
Controlador de juegos de bricolaje basado en Arduino | Controlador de juegos Arduino PS2 | Jugar a Tekken con DIY Arduino Gamepad: Hola chicos, jugar juegos siempre es divertido, pero jugar con su propio controlador de juego personalizado DIY es más divertido. Así que haremos un controlador de juego usando arduino pro micro en este instructivo
YABC - Otro controlador Blynk más - Controlador de temperatura y humedad en la nube de IoT, ESP8266: 4 pasos
YABC - Otro controlador Blynk más - Controlador de temperatura y humedad de la nube de IoT, ESP8266: Hola fabricantes, recientemente comencé a cultivar hongos en casa, hongos ostra, pero ya tengo 3x de estos controladores en casa para el control de temperatura del fermentador para mi cerveza casera, esposa también está haciendo esto de Kombucha ahora, y como termostato para calor
Salida controlada por movimiento: desde una luz de detección de movimiento: 6 pasos
Salida controlada por movimiento: desde una luz de detección de movimiento: Imagina que eres un truco o trato que va a la casa más aterradora de la cuadra. Después de pasar todos los demonios, fantasmas y cementerios, finalmente llegas al último camino. ¡Puedes ver los dulces en un tazón delante de ti! Pero luego, de repente, un gho