Tabla de contenido:
- Paso 1: las herramientas
- Paso 2: Partes y diseño básico
- Paso 3: crea un prototipo (opcional)
- Paso 4: Consejos sobre cableado
- Paso 5: obtener el corte láser de la placa frontal
- Paso 6: Conexión de botones e interruptores
- Paso 7: Conexión de los joysticks y la pantalla LCD
- Paso 8: Indicadores de combustible de la barra LED
- Paso 9: construcción del recinto
- Paso 10: software y pruebas
- Paso 11: ¡A la Luna
Video: KerbalController: un panel de control personalizado para el programa espacial Kerbal de Rocket Game: 11 pasos (con imágenes)
2024 Autor: John Day | [email protected]. Última modificación: 2024-01-30 08:44
¿Por qué construir un KerbalController?
Bueno, porque presionar botones y lanzar interruptores físicos se siente mucho más sustancial que hacer clic con el mouse. Especialmente cuando se trata de un gran interruptor de seguridad rojo, donde primero tienes que abrir la cubierta, presionar el interruptor para armar tu cohete, iniciar la cuenta regresiva y 3.. 2.. 1.. ¡tenemos el despegue!
¿Qué es un KerbalController?
Un KerbalController, también conocido como Panel de control, Simpit (cabina simulada), DSKY (teclado de pantalla) o joystick personalizado, es un dispositivo de entrada personalizado para controlar el popular cohete construir y volar y, con suerte, no explotar. juego Kerbal Space Program combinado con salida opcional del juego, como luces de estado, pantallas de telemetría y / o indicadores de combustible.
Esta construcción específica incluye entradas como controles de rotación y traslación a través de joysticks, un control deslizante del acelerador, un montón de botones con luces de estado, indicadores de combustible LED y una pantalla LCD de telemetría con múltiples modos.
Esta guía incluirá todo lo que necesita para crear una copia idéntica o realizar ajustes y mejoras a lo largo del camino, como mejor le parezca. Se incluyen:
- una lista de piezas
- dibujos de diseño digital listos para el corte por láser
- Instrucciones de cableado
- Código Arduino
- Código para el complemento KSP adjunto
- Muchas fotos
¿Listos para despegar? ¡Vamos!
Paso 1: las herramientas
La herramienta más importante que debe tener para esta construcción es un soldador. Eso incluye algo de soldadura, una esponja limpiadora de metales para limpiar la punta del soldador y una "tercera mano".
Otras herramientas son un pelacables, un cortador de cables, pinzas y algunos destornilladores pequeños.
Paso 2: Partes y diseño básico
Hacer el mejor controlador posible para usted significa seleccionar exactamente qué botones e interruptores desea implementar. Porque todos juegan el juego de manera diferente. Algunas personas vuelan aviones y construyen SSTO (etapa única a órbita). Otros prefieren rovers de estaciones espaciales. ¡Y algunos solo quieren que las cosas exploten espectacularmente!
Ayuda a dibujar todas las partes en su tamaño aproximado y arrastrarlas en un programa de dibujo vectorial (como Affinity Designer o Inkscape) o un programa de dibujo 3D (como SketchUp).
Si desea una construcción más fácil, puede simplemente copiar mi controlador y obtener las piezas que se enumeran en la lista de piezas adjunta.
Paso 3: crea un prototipo (opcional)
Si está copiando mi controlador, puede omitir este paso.
Si opta por un diseño personalizado, le recomiendo usar una caja de zapatos primero para crear un prototipo funcional con los controles principales. Realmente ayuda a ajustar la posición de los controles principales. También es bueno tener la confianza de que puede hacer que funcione antes de continuar invirtiendo tiempo y dinero en la construcción final. De hecho, jugué el juego durante bastante tiempo con el controlador de mi caja de zapatos. ¿No es la forma Kerbal de usar partes recuperadas para hackear algo?
Paso 4: Consejos sobre cableado
Al crear un prototipo, no suelde todos los botones a menos que desee desoldarlos cuando llegue al recinto final. Soldé algunos cables a los botones y usé una placa de prueba sin soldadura para hacer las conexiones temporales al Arduino.
Al conectar todos los componentes electrónicos a la placa frontal final, puede reducir el desorden creando bucles para 5V y tierra. No conecta todos los pines de tierra directamente al Arduino, sino que conecta a tierra en un botón a tierra en el siguiente botón y hace un bucle alrededor. Finalmente, te conectas al Arduino.
Después de crear bucles de alimentación y tierra, todas las conexiones a los pines Arduino permanecen. Recomiendo obtener algunas tiras de clavijas de encabezado y soldar los cables a ellas. Puede usarlos como un conector grande, por lo que aún puede desconectar su Arduino para probar.
La longitud de los cables es un acto de equilibrio entre lo suficientemente corto para mantener el gabinete libre de exceso de enredos de cable (lo que podría evitar que pueda cerrar la caja) y lo suficientemente largo para poder mover las piezas fuera del camino para soldar otras partes adentro, apriete los tornillos y hurgue con su multímetro mientras depura.
Paso 5: obtener el corte láser de la placa frontal
Lograr un aspecto limpio y profesional es muy difícil cuando se corta y pinta a mano. Afortunadamente, el corte por láser ya no es muy caro. Permite una precisión extrema, siempre que su diseño sea exacto.
Se adjunta el diseño de mi placa frontal, en formatos apropiados para Affinity Designer y otros programas de dibujo vectorial como el InkScape gratuito.
Me corté con láser la placa frontal en los Países Bajos en Lichtzwaard. Desde entonces han cerrado y las actividades han sido asumidas por Laserbeest, donde hice cortar la caja con láser. Cada tienda puede tener diferentes requisitos para el diseño, así que consulte con su tienda antes de enviar. También casi siempre ofrecen ayuda de diseño a una tarifa por hora.
Cosas importantes a tener en cuenta:
- Todo debe estar basado en vectores. Es por eso que el logotipo en el diseño de mi placa frontal no se grabó. Tenga en cuenta que esto no se fija en los diseños adjuntos.
- Incluso el texto se basa en vectores. ¡Así que convierte esas letras en curvas!
- La medida. La medida. La medida. No tomé en cuenta el tamaño requerido para montar los joysticks y tuve que piratearlo. Resultó bien, afortunadamente. Tenga en cuenta que esto se fija en los diseños adjuntos.
Después de revisar todo a fondo, envíelo al taller de corte por láser. ¡Espere pagar entre 40 y 50 euros en los Países Bajos y obtenga este hermoso resultado en el correo al día siguiente!
Paso 6: Conexión de botones e interruptores
La mayoría de los interruptores y botones tienen conectores etiquetados como C, NO, NC, +, -. Aquí se explica cómo conectarlos al Arduino.
Interruptor o pulsador simple:
- Tierra C (común)
- Pin digital Arduino NO (normalmente abierto)
Configuraremos el pin digital como INPUT_PULLUP, lo que significa que Arduino mantendrá el pin a 5V y detectará cuando el pin se conecta a tierra y lo tratará como una entrada. El conector NO en el interruptor o botón está normalmente abierto, por lo que el circuito no está conectado. Cuando presiona el botón o cambia el interruptor, el circuito se cierra y el pin se conecta a tierra.
Pulsador con LED:
La parte del botón es la misma que la anterior. Para el LED, conecte cables adicionales:
- Tierra - (negativo)
- Pin digital Arduino + (positivo)
Esta parte es bastante sencilla. Usaremos el pin Arduino en modo SALIDA normal.
Interruptores de seguridad con LED:
Estos son un poco diferentes y no permiten el control del LED independientemente de la posición del interruptor. El LED siempre solo se iluminará cuando el interruptor esté encendido. Tienen un +, - y conector de señal.
- Tierra - (negativo)
- 5V + (positivo)
- Pin digital Arduino S (señal)
Usaremos el pin Arduino en modo INPUT. Cuando el interruptor está encendido, el LED se enciende y el pin de señal sube.
Paso 7: Conexión de los joysticks y la pantalla LCD
LCD
La pantalla LCD es muy sencilla. Solo necesita energía, tierra y serial.
- VDD de 5 V
- Tierra GND
- Arduino Tx PIN RX
Puede utilizar un conector JST o soldar los cables a la placa directamente.
Joysticks
Los joysticks pueden parecer desalentadores al principio, pero son bastante fáciles de conectar. Hay tres ejes que están conectados de la misma forma. Dos de ellos utilizan los conectores en la parte inferior del joystick. El tercero usa algunos cables.
- Suelo
- Pin de entrada analógica Wiper Arduino
- 5V
Los conectores se pueden colocar en este orden. No se preocupe por ponerlo al revés, el limpiaparabrisas siempre es el del medio. Si se intercambian la energía y la tierra, podemos voltear el eje en el código Arduino más tarde.
Los cables pueden tener un esquema de colores diferente en su joystick, pero en general: los dos cables con colores idénticos son para el botón de la parte superior. Rojo o naranja es 5V, negro o marrón es tierra. El cable restante es el limpiaparabrisas.
Paso 8: Indicadores de combustible de la barra LED
Bueno. Esta es la parte más difícil de toda la construcción. ¡Siéntete libre de omitir esto en tu primera compilación o mejorarlo y avísame!
Obtuve estas excelentes barras de LED que quiero usar como indicadores de combustible. El LED superior es azul, luego verde, luego naranja y finalmente rojo. Si podemos encender un LED a la vez, podemos dejar que represente el nivel de combustible en nuestra nave espacial.
Inicialmente ordené IC de conductor con ellos. ¡Funcionan muy bien! Puede seleccionar el modo de puntos o el modo de barra y mostrará un voltaje de entrada analógica como un solo LED (punto) o un rango de LED (barra). ¡Pero un Arduino no emite un voltaje analógico! Y la función PWM que le permite atenuar un LED emulando un voltaje analógico, no funciona con estos controladores IC.
En el plan 2: registros de cambios. Puedes trabajar con estos en cada kit de inicio de Arduino. Y puede obtener más información sobre ellos aquí:
El plan es convertir de alguna manera los niveles de combustible en la cadena adecuada de bits que representarán los niveles de combustible en las barras LED. Con 5 indicadores de combustible, todos los niveles de combustible llenados tendrían que ser 10000000001000000000100000000010000000001000000000. Con monopropelente vacío, sería: 10000000001000000000100000000010000000000000000001.
Suena bastante simple. Hay algunas complicaciones. Los registros de desplazamiento tienen 8 pines, mientras que las barras LED tienen 10 LED. Utilizo 7 registros de desplazamiento para obtener 56 salidas. Al conectarlos, me salté un pin IC en alguna parte (lo ajustaremos en el código). Y conecto una barra LED comenzando en el otro extremo (lo arreglaremos en el código). Ah, y las matemáticas de Arduino que necesitamos a veces usan aritmética de punto flotante que causa errores de redondeo (lo arreglaremos en el código). Tenga en cuenta que comparto el código en un paso posterior.
Mi compilación final no coincidía con el diagrama de cableado adjunto, por lo que si reconstruye este controlador, se requieren algunas actualizaciones del código. Comente a continuación si necesita ayuda.
Cada LED requiere su propia resistencia. Pruebe algunos valores diferentes para igualar el brillo. El verde parece mucho más brillante que el rojo con las mismas resistencias, por lo que ayuda a equilibrarlo.
Resultado final: en lugar de 50 pines digitales necesarios para alimentar las 5 barras LED, eso se reduce a 3: una señal de reloj, una señal de pestillo y una señal de datos.
Paso 9: construcción del recinto
¡Es hora de vengarme con esos logotipos!
Convertí los logotipos en dibujos vectoriales adecuados para que se graben bien. Esta vez, tengo un problema diferente. Los orificios de los tornillos no están en los lugares correctos para un correcto montaje de la caja. Usé MDF de 6 mm para la caja. Desafortunadamente, atornillar o clavar en los bordes hace que se partan. Lo corté junto con trozos de madera adicionales y pegamento. Mucho pegamento.
Para aquellos de ustedes que son mejores con madera, pegamento y / o clavos, he adjuntado una versión de los diseños sin los orificios de los tornillos.
A pesar de las dificultades, el resultado final es bastante hábil.
Paso 10: software y pruebas
Descargue el siguiente software para que el controlador funcione con Kerbal Space Program:
Complemento KSP:
El archivo ZIP es el complemento compilado. El resto es código fuente que puede utilizar para modificar el complemento y compilar su propia versión. Desempaquete el complemento en el directorio GamaData.
Código Arduino:
Utilice el IDE de Arduino para cargar el código en el Arduino Mega en su controlador.
Mire la parte inferior derecha del IDE de Arduino para averiguar en qué puerto serie está el controlador (por ejemplo, /dev/cu.usbmodem1421). Abra el archivo config.xml del directorio de complementos y asegúrese de que su puerto esté completo. ¡Ahora está listo para comenzar!
Puede usar el modo de depuración colocando el pequeño interruptor de encendido / apagado en la parte superior izquierda en la posición de ENCENDIDO. La pantalla LCD debe mostrar una cadena de letras. Cada letra representa un botón o interruptor y cambia entre mayúsculas y minúsculas cuando presiona el botón o cambia el interruptor. Al configurar los interruptores xyz en Xyz (encendido / apagado / apagado) también se mostrarán los valores del control deslizante del acelerador. xYz muestra los valores del joystick para el joystick de Traducción (izquierda). xyZ para el joystick de Rotación (derecha).
Modos LCD
Los siguientes modos de visualización se pueden seleccionar para visualizarlos en la pantalla LCD mediante los interruptores x, y y z
Modo de despegue: velocidad superficial / aceleración (G)
Modo Órbita: Apoapsis + Tiempo hasta Apoapsis / Periapsis + Tiempo hasta Periapsis
Modo de maniobra: tiempo hasta el siguiente nodo de maniobra / Delta-V restante para el siguiente nodo
Modo de encuentro: distancia al objetivo / velocidad relativa al objetivo
Modo de reentrada: porcentaje de sobrecalentamiento (máx.) / Desaceleración (G)
Modo de vuelo: altitud / número de Mach
Modo de aterrizaje: altitud de radar / velocidad vertical
Modo extra: no implementado (todavía)
Para ver los diferentes modos en acción, mire el video al final del instructivo.
Paso 11: ¡A la Luna
¡Encienda KSP, cargue su embarcación favorita o construya una nueva y listo!
Consejos:
- Utilice el grupo de acción personalizado 5 para sus escaleras
- Utilice el grupo de acción personalizado 6 para sus paneles solares
- Utilice el grupo de acción personalizado 7 para paracaídas o toboganes
- Asignar el sistema de escape de lanzamiento y los desacopladores adecuados al grupo de acción Abortar
- No olvide que necesita armar el botón de puesta en escena
Finalista en el Concurso Arduino 2017
Finalista en el Concurso de Autor por Primera Vez 2018
Recomendado:
Montaje en pared para iPad como panel de control de automatización del hogar, usando un imán controlado por servo para activar la pantalla: 4 pasos (con imágenes)
Soporte de pared para iPad como panel de control de automatización del hogar, usando un imán controlado por servo para activar la pantalla: Últimamente he pasado bastante tiempo automatizando cosas dentro y alrededor de mi casa. Estoy usando Domoticz como mi aplicación de automatización del hogar, consulte www.domoticz.com para obtener más detalles. En mi búsqueda de una aplicación de panel que muestre toda la información de Domoticz junta
Panel de control de nave espacial - Juguete Arduino cortado con láser: 11 pasos (con imágenes)
Panel de control de nave espacial - Juguete Arduino cortado con láser: Hace unos meses decidí convertirme en miembro del espacio de fabricantes locales, ya que he querido aprender las herramientas del comercio de fabricantes durante años. Tenía un poco de experiencia con Arduino y había tomado un curso Fusion aquí en Instructables. Sin embargo yo h
Luz de bicicleta muy brillante con PCB de panel de luz personalizado: 8 pasos (con imágenes)
Luz de bicicleta muy brillante con PCB de panel de luz personalizado: si tiene una bicicleta, entonces sabe cuán desagradables pueden ser los baches en sus neumáticos y su cuerpo. Ya tuve suficiente de volar mis neumáticos, así que decidí diseñar mi propio panel LED con la intención de usarlo como luz de bicicleta. Uno que se enfoca en ser E
Actualice su lanzamiento espacial con un botón de puesta en escena física para el programa espacial Kerbal: 6 pasos
Actualice su lanzamiento espacial con un botón de puesta en escena física para el programa espacial Kerbal: Hace poco compré la versión de demostración del programa espacial Kerbal. Kerbal Space Program es un juego de simulación que te permite diseñar y lanzar cohetes y navegar hacia lunas y planetas distantes. Todavía estoy tratando de aterrizar con éxito en la luna (o
Panel de luz personalizado para usar (Curso de exploración tecnológica - TfCD - Tu Delft): 12 pasos (con imágenes)
Panel de luz personalizado para usar (Curso de exploración de tecnología - TfCD - Tu Delft): ¡En este Instructable, aprenderá cómo hacer su propia imagen iluminada que puede usar! Esto se hace usando tecnología EL cubierta con una calcomanía de vinilo y colocándole bandas para que pueda usarla alrededor de su brazo. También puede cambiar partes de este p