Radio

O Como añadir hasta 14 botones a tu Joystick

Introduccion


Momento de la primera prueba del panel, aun sin caja.

Hace mucho tiempo visite la pagina del Panel de Tasin que me dejo muy impresionado, me dije: Tengo que hacer uno igual o mejor.
No es el unico que ha echo un panel, Panel de J. Lopez.

Ne centrare ahora en el panel, y luego me enrollare con la historia de su construcion, que no he acabado y ya llevo 2 o 3 años intentandolo.

Todo el truco de este panel se resume en dos cosas:

Tras un poco de investigacion (que describo mas adelante) descubri que el truco del CH VP consistia en que cada boton era una conbinacion de los 4 basicos, asi que a base de diodos, se podia hacer lo mismo, y aprobechar las teclas del joystick para otra cosa.

El panel

Este panel consta de 3 piezas: Empecemos a describir las cosas por el final:

El ladron es un poco mas complicado de lo que deberia, pero esta pensado para futuras ampliaciones, consta de dos conectores DB15, con todos los pines unidos uno a uno, de estos salen ademas dos conectores DIN-5, uno esta destinado al panel de radio del que aqui hablo, y el otro esta pensado para poner en el futuro unos pedales, uno es macho y otro hembra para evitar conectarlos al reves por error , los otros DB15 se colocaran entre el PC y el Joystick.

La "logica electronica" es en si una placa de circuito uniprint, sobre la que por un lado se conecta el cable acabado en un conector DIN-5 que ira al ladron, por el otro al panel en si, y sobre el una serie de diodos que permite simular la pulsacion de varios botones con un solo pulsador o interuptor.
He utilizado un circuito uniprint, ya que la disposicion de las pistas que tiene es ideal para este circuito, y acababa mucho antes que haciendo la placa.

Por ultimo esta el panel en si, una tabla de ocumen, sobre la que se pego un papel imprimido con el dibujo de la radio del cessna, y sobre esta un plastico de forrar libros para darle un aspecto mas duradero.
Sobre este conjunto se hicieron una serie de agujeros donde se colocaron pulsadores de tipo palanca y boton ( no se pueden usar interuptores, solo pulsadores) sobre el panel tambien hay diales, que son un tipo de pulsadores especiales de construcion casera, de los que luego hablare.

Antes de empezar la construccion de todo esto tenia que pensar a que dedicar cada uno de los botones, ya que no son tantos como parecen, asi que decidi que se usasen en lugar de las siguientes teclas del FS:
A,T,C,N,1,2,+,-, L,O,H, y CTRL-L,
quedan aun 2 teclas, pero aparte de no saber para que usarlas, se me habian acabado los diodos, pero con estas teclas se puede controlar todo el panel de radios, las luces y el calentador del pilot.

Aqui es donde surge la primera gran limitacion del FS98, no es posible asignar un boton a aumentar frecuencia de NAV1, por ejemplo, y la parte decimal y entera se controlan de manera separada, asi que para hacer eso es necesario tocar en este orden N,1,N,+ o para subir el 3º digito del transpondedor hay que pulsar T,T,T,+ aunque lioso es posible desde el panel, se tiene mas facil acesso y no hay que recordar tantas teclas

Lo monte sobre una caja de zapatos, configure el Joystick en el PC, configure los botones del Joystick en el FS98 y lo probe, el resultado no me gusta (es mas lento que desde el teclado) asi que no lo uso, pero hay esta construido.

En estos momentos estoy modificandolo para que acione directamente las teclas del ordenador, gracias a un circuito que encontre en esta pagina, y que permite conectar dos teclados, a uno de ellos le hare el 3º grado, tal como explican en esta otra pagina

Pasare ahora a esplicar la construcion de los diales y otros detalles:

Contruccion de los diales

Los diales es la parte de la que estoy mas orgulloso, ya que la idea era imitar a los de una radio real, y por otro lado debian ser pulsadores, ya que en la zona en la que vivo, las tiendas de electronica son penosas, y no tienen ninguna variedad de componentes tube que ingeniarmelas con microinteruptores.

Compre unos embellecedores de potenciometro, los cuales sujete a un palito de madera (de los que se usan para encolar tablones de madera) y que atraviesa el panel, por el otro lado pege al palito una pequeña chapa recortada de una lata de cocacola, esta chapa tiene forma de U para darle un poco mas de consistencia y que no doble.

Ademas cerca del agujero coloque dos microinteruptores, de manera que cuando se gira el dial en un sentido se aciona uno de ellos, y cuando se gira en sentido contrario se acciona el otro, en la foto no se aprecia por que estan pegados uno sobre otro.

Destripando un Virtualpilot Pro

El Virtualpilot Pro es un yoke ("Cuernos") de CH, con unas caracteristicas bastante interesantes, 3 ejes analogicos, los 2 del cuerno mas mando de gases, ademas de 6 botones y dos PADs de vistas (tambien llamados POV o HAT).
En total 14 botones, y total compatibilidad con todo el software existente.

Como es posible?

Si observamos un Joystick compatible Thursmarter, veremos que tiene cuatro botones (el maximo segun el standar IBM) y un hat de 4 posiciones, las 4 posiciones del hat se obtienen por combinacion de los diferentes botones, supone que el boton A y B nunca estan pulsados a la vez, asi que cuando el ordenador lee que le boton A y B estan pulsados sabe que en realidad estan moviendo el hat, y las cuatro posibles posiciones del hat son codificadas en los botones C y D
4 botones, si suponemos que ningun boton va a estar pulsado simultaneamente, nos da un total de 15 botones (2^4=16=15+ninguno pulsado).
Esa es la tactica utilizada por CH con su virtual Pilot, el por que solo 14 botones, no lo se, pero es tambien un gran fallo de diseño de este joystick.
Un buen aficionado a los simuladores de vuelo ademas de los cuernos tendra pedales, y si son unos pedales de vuelo buenos, tendran frenos diferenciales, estos frenos estaran mapeados sobre los botones C y D, asi que es logico pensar que la combinacion de C y D no se utilice para permitir frenar con los dos frenos a la vez, desgraciadamente esto no es asi, y en el virtualpilot la combinacion no utilizada es A,C y D.

Los 14 botones

Si eres el afortunado poseedor de un joystick programable (esos que se enchufan ademas al teclado, y que puedes hacer que los botones equivalen a teclas del teclado), como es el caso de mi gravis firebird 2, puedes programar todos los botones del Joystick a teclas, quedando los botones libres.
Te haces un circuito con los botones y diodos, lo enchufas entre el joystick y el ordenador.
Ahora nos bamos a la pagina de CH y nos bajamos el driver para Win98 del VirtualPilot Pro, lo instalamos y voila, 14 botones mas.
En mi caso esto a tenido el beneficioso efecto secundario de mejorar muchisimo la estabilidad del driver del joystick, ahora no me vibran los ejes.

Si tu joystick es de los normales (Maximo 4 botones y un hat) no tendras los 14 botones, pero si puedes añadirle 6 mas.
Si tu joystick es de solo 2 ejes, es posible que el driver te diga que el virtualpilot no esta conectado, esto se soluciona colocando una resistencia de 47K-50Kohm entre las patillas de 5Vcc y Eje Y del joystick 2, mas abajo hay un esquema de las conexiones del puerto de joystick.

Construcion

Primero veamos el esquema de los botones:
Puero de Joystick  .-----------------------.
                   \ 8 7  6  5  4  3  2  1 /
                    \ 9 10 11 12 13 14 15 /
                     ~~~~~~~~~~~~~~~~~~~~~

Pin     Funcion                 Pin     Funcion
1      +5v                       9      +5v (SB midi)
2      Joy A, Boton 1           10      Joy B, Boton 1 (multiboton 3)
3      Joy A, Direccion X       11      Joy B, Direccion X
4      Gnd                      12      Gnd (SB midi)
5      Gnd                      13      Joy B, Direccion Y
6      Joy A, Direccion Y       14      Joy B, Boton 2 (multiboton 4)
7      Joy A, Boton 2           15      +5v
8      +5v

Botones del CH Virtualpilot pro y F-16 comp.stick:

        A B C D  Funcion
        X        Boton 1
          X      Boton 2
            X    Boton 3
              X  Boton 4
        X   X    Boton 5
        X     X  Boton 6
        X X X X  Hat 1 Up
        X X X    Hat 1 Down
        X X   X  Hat 1 Right
        X X      Hat 1 Left
          X X X  Hat 2 Up
          X X    Hat 2 Down
          X   X  Hat 2 Right
            X X  Hat 2 Left

Donde:
A = pulsador conectado al pin  2 atraves de un diodo.
B = pulsador conectado al pin  7 atraves de un diodo.
C = pulsador conectado al pin 10 atraves de un diodo.
D = pulsador conectado al pin 14 atraves de un diodo.

Ejemplo:  ``Hat 1 Left'' es "A" + "B"

        S1 ___     D1
GND o------o o--+----|<|----o Pin 2 (Boton 1)
                |  D2
                +----|<|----o Pin 7 (Boton 2)
                |
                V  Puedes usar lo anterior para otros botones "Hat 1" 
                ~  tambien, colocando diodos aqui.

Diodos D1,D2: cualquera que tengas, e.g. 1N 4002 (para uso pesado ;)
Yo he utilizado diodos 1N4148 (20 o 30 no me acuerdo, pero se que los solde todos al reves y tube que desoldar y soldar otra vez) y una placa d prototipos del tipo uniprint, que trae tiras de cobre con agujeros, lo que lo hace ideal para este montaje.

Hice tambien un ladron para el joystick, este tenia dos conectores sub D de 15 pines uno macho y otro hembre, con todos los hilos unidos (1 con 1, 2 con 2,etc...) que se enchufaba entre el joystick y el ordenador.
Ademas salia un enchufe DIM hembra de 5 pines, donde conecte la masa y los cuatro botones, que seria el que conectase al circuito anterior y este al panel de radio, y otro DIM hembra de 6 pines, donde conecte +5V, masa, los botones C y D, y el eje X del 2º Joystick, para unos posibles pedales.

La historia

Desde el principio tube claro que el sistema de se debe adaptar al metodo que utiliza el simulador de microsoft, es decir para por ejemplo la radio NAV1 hace falta: Con esto en mente y la idea de imitar al panel de radios del Cessna, me puse manos a la obra y dibuje el panel, situando los componetes a tamaño real y lo imprimi.
La siguiente parte consitio en decidir el metodo para usar con los diales, por que no queria colocar botones.
Compre embellecedores de potenciometro, unos palitos que se utilizan para unir tablones de maderas en carpinteria, y microinteruptores, ademas cogi un trozo de lata de bebida, y corte tiras de metal, a las que les di forma de U para aumentar su resistencia, como queda todo lo puedes ver en el diagrama inferior.

Lo siguiente era montar la parte fisica, en principio pensaba hacer un sandwich de metracrilato, la hoja imprimida y una tabla de ocumen, al final sustitui el metracrilato por plastico adesivo de forrar libros.
Sobre esto, una vez que habia echo los agujeros para los diferentes componentes, pegue trozos de circuito impreso donde habia soldado los diferentes pulsadores.

Ahora tocaba decidir el metodo con el que conectarlo al ordenador.
Pense en usar el mismo metodo que tasin, aprobechado que tenia un teclado que no funcionaba bien.
La idea no me gustaba mucho, ya que tengo un teclado muy mono y no me apetecia tener que andar cambiando de teclado cada vez que quisiese volar.

Otra idea surgio cuando visite esta pagina Construir un MDF que me venia de maravilla, ya que estaba empezando a utilizar el microcontrolador pic, era mas versatil, permitiendome programar secuencias de teclas a los botones (N1N, N2, AAA, etc...) y no tenia que hacer cirugia al ordenador.

Cuando estaba haciendo el grabador para el PIC, encontre otra pagina Controlador de PADs para Windows98 que permitia conectar cualquier pad de consola al ordenador, y utilizarlo como joystick de windows, rapidamente hice el adaptador para mi pad de NES y tras comprobar que funcionaba, busque el esquema de los pad de supernintendo, que sabia que era muy sencillo, mucho mas barato que el PIC, me daba cuantos botones necesitaba (hasta 4 pads, con al menos8 botones cada uno).

Mientras hacia fallidas pruebas (como diseñar la placa de circuito impreso al reves, y romper fisicamente varios chips) encontre de casualidad las espeficaciones tecnicas del Cuerno de Vuelo CH VirtualPilot Pro, y me dije, esta es la mia, eso fue hace dos dias, y aqui estoy con el panel casi terminado.

Aqui estaban las espeficicaciones
Y aqui una pagina que encontre despues donde esplican lo de los 14 botones.


[ Pagina Principal ] [ Pagina Anterior ]
(C) 2001 Alvaro Alea. Si ties algo que falar: Email ALEAsoft@yahoo.com
Actualizado a lunes, 18 de junio de 2001, 21:16+0200 CEST