Zona Arcade. Construye, Restaura y Decora tu Máquina Arcade y Pinball.

Tutorial: Construcción sencilla de interface de puerto paralelo (IPP) para panel de control arcade

« Older   Newer »
  Share  
view post Posted on 17/8/2007, 11:18     +1   -1
Avatar

Restless in Peace

Group:
Administrator
Posts:
42,770
Location:
Alcobendas (Madrid)

Status:


Tutorial: Construcción sencilla de la interface de puerto paralelo o LPT para el panel de control de la máquina recreativa. (Por Mikonos)

- Introducción

Una de las cosas que más insatisfecho me dejaba de mi etapa anterior de forero era el hecho de que no consiguiésemos popularizar aún más la interface de puerto paralelo o LPT.

Creo que mucha de la responsabilidad fue nuestra debido al documento que en su momento perfilamos de cara al aficionado. Quizá por su complejidad, este hacía que se percibiese como una solución muy avanzada para los controles arcade; una alternativa no apta para un neófito en la materia.En absoluto esto era así, la interfase resultaba mucho más sencilla de lo que se pudiese creer. Y es que algunos de nosotros alcanzamos a simplificar el modelo bastante y nunca lo llegamos a explicar con el suficiente detalle.

A día de hoy, me frustra ver a algunos aficionados que llegaron a comprender el modelo expuesto en su día y exhiben planchas enormes de clemas y diodos difíciles de situar y gestionar para con la labor de cableado.

A mí no me preocupa que comprendáis el modelo, me preocupa más que aprendáis a construirlo de forma fácil, y eso es en lo que voy a centrar mis esfuerzos, en exponer el ejercicio práctico para que lo repitáis vosotros con la "fe" de que funcionará.

Vamos a usar un ejemplo real, crearemos una interface de puerto paralelo para la "Space Ace cabinet "que me estoy construyendo en el momento actual, y que llevará pinball también.


- Ventajas de usar la interface de puerto paralelo o IPP

- Es la interface para los controles de nuestra máquina recreativa más rápida, mucho más rápida que otras soluciones comerciales, como el jpac.

- Su construcción es barata y sencilla, la que más.

- A través de su programa de gestión (el ppjoy) podemos indicarle a la interface que orden de botones y plancas queremos para nuestra cabina arcade.

- Es la interface que permite mayor número de botones por jugador: 60 para un sólo jugador y 30 para dos.

- La interface puede resultar muy ergonómica a pesar de poseer muchas entradas de botones y palancas (lo vamos a ver en el presente tutorial).

- Nos permite precisamente tener 2 joysticks de juegos y no un teclado transformado. Es decir, tenemos la función joy de la que nos provee Windows.

- Junto con la aplicación "joytokey" o similar que nos permite transformar los botones de los joys en teclas (hasta 3 teclas por botón) se convierte en una interface de juego insuperable para realizar ciertos automatismos y configuraciones imposibles con otro tipo de interface. Es decir, mantenemos las funciones de los joysticks y sumamos las funciones de teclado multiplicando x3 sus posibilidades.

- Se puede usar en en versiones de Windows de la 98 en adelante y con MS-DOS con el driver del usuario Manofwar. El link para bajarse el driver es el siguiente:

Link original de descarga:www.ual.es/personal/salguero/DosJoy2K/DOSJOY2K.COM


Para usar el driver DosJoy2k hay que añadir una línea en el "autoexec.bat" con la ruta del driver antes de la carga del emulador o front end. Por ejemplo: C:dosjoy2k


- Consideraciones previas: ¿Cómo es nuestro panel de control?

Una de las cosas que vamos a tener que saber cuando nos pongamos a hacer nuestro Lpt personalizado es cómo será nuesto panel de control, deberemos saber cuántos botones tiene y cómo se disponen. El ejemplo práctico que vamos a seguir es el de esta imagen.

db25


Os decribo la imagen un poco: Lo que véis es el panel de controles de la "Space Ace Cabinet", donde podemos encontrar: 2 palancas, 6 botones de acción por jugador, 2 botones "start", el botón de "exit" casi sobre la palanca del primer jugador, 3 botones marginales de gestión lateralizados bajo la zona del pliegue (pause, config, credits) y los 5 botones de pinball (fliper izq, sacudida izq, fliper der, sacudida der, sacudida central).


- Dos cosas obligatoriamente sobre la teoría que hay que saber sobre el DB25 o cable paralelo de impresora

- La primera de estas cosas es que no todos los pines del cable paralelo de impresora o DB25 son iguales. Nosotros vamos a diferenciar sólo entre los pines de estado (10, 11, 12, 13 y 15) y los pines de datos (2 al 9, 1 ,14, 16, 17).

Nota: Realmente hay 4 tipos de pines: Los pines de datos van del 2 al 9 (sólo escriben), los pines de estado son el 10, 11, 12, 13 y 15 (sólo leen); los pines de control son el 1, 14, 16 y 17 (leen/escriben); y las masas, que van del pin 18 al 25.


- La segunda de estas cosas importantes que debéis saber es que el 1er y 2º jugador tienen unos pines de datos fijos asignados. Si queréis que salgan los joysticks equilibrados en cuanto a botones para cada jugador deberéis tener en cuenta esto. Para el 1er jugador serán los pines de datos del 2 al 7 y para el 2º jugador el 1, 8, 9, 14, 16, 17.


En la imagen los pines a identificar en el conector macho del cable de puerto paralelo o DB25.

db25


- Diseño de la Matriz de conexiones del LPT

Os decía antes que debíamos tener claro qué controles tendrá nuestro panel arcade y qué posición ocuparían. Lo de la posición de los botones es sólo importante para ahorrar cable. Este conocimiento no es vital.

A continuación, decidiremos qué controles van a ser gestionados por el jugador 1 y cuáles por el jugador 2. Yo he decidido lo siguiente:

- Jugador 1: Palanca de control izq, sus 6 botones de acción, el botón “Start P1”, el botón de “Escape” o “Exit” de los juegos y los botones de control de pinball del lado izq. (Fliper izq y sacudida lateral izq).

- Jugador 2: Palanca de control der, sus 6 botones de acción, el botón “Start P2”, 3 pequeños botones de gestión (pause, config, credits), los botones de control de pinball del lado derecho (fliper der, sacudida central, sacudida lateral der.).

Ahora crearemos en un papel o en el ordenador una tabla de cuadrículas de 6 filas x 13 columnas. Yo lo hago así a diferencia de lo que podáis encontrar en otros documentos. Creo que se ve mucho mejor lo que queremos representar.

En la fila superior nos pondremos los pines de datos del cable paralelo (2 al 9, 1 ,14, 16, 17), en la columna más a la izquierda los pines de estado (10, 11, 12, 13 y 15).

En la imagen una tabla mucho más elaborada de las que suelo crearme para que veáis más gráficamente la distribución que hemos hecho. En azul los pines de datos, en la que incluso os he dividido los que corresponderían al jugador 1 (del 2 al 7) y los que pertenecen al jugador 2 (1, 8, 9, 14, 16, 17). En rojo los pines de estado.

db25

- Rellenando las cuadrículas de la Matriz

Habremos de empezar a rellenar de arriba abajo, es decir, por columnas. Aquí es cuando debemos fijarnos en nuestro panel de control para rellenar las celdillas y ser coherentes con la disposición de palancas y botones.

Un truco: Debemos pensar siempre que las columnas son como los cables “masa” que van uniendo las “pestañas destinadas a masa” de nuestros switches de botones y palancas.

db25

Por ejemplo, tomemos la masa 2. Ese cable “masa” saldrá de nuestro Lpt e irá hacia el “switch derecho” del jugador 1, que es la dirección izquierda de la palanca (espero que hayáis caído en la cuenta que cuando movemos el stick del mando hacia la izquierda lo que hace ésta es pulsar el switch que está a la derecha, y así con todas las direcciones), continua hasta el “switch arriba” (movimiento de la palanca hacia abajo), switch izquierdo (mov. derecha) y “switch abajo” (mov. arriba), y, por último irá hacia el switch del botón “salir de juegos”.

Sigamos con el ejemplo, la representación gráfica de los recorridos de los cables es la siguiente para las masas 2 y 3. A partir de ahora a los cables de los “pines de datos” los vamos a llamar “masas”.

db25


Os adjunto una imagen más, esta vez de las conexiones de los "pines de estado" (representados en color rojo) a los switchs de nuestros botones y palancas. En el ejemplo he cogido el "pin 10" y he representado sus conexiones. Si os fijáis, ya nos funcionaría uno de los swiches de la palanca del jugador 1 y el botón 4.

db25


- Contrucción de la interface de puerto paralelo o LPT

A partir de este momento, y si os ha parecido muy complejo la teoría anterior, podéis ignorarla y limitaros a reproducir el ejemplo que vamos a ver a continuación.


LOS MATERIALES:

- Necesitaremos una tabla de contrachapado de como mínimo 15,5 x 21,6 cms.

db25

La dividiremos en 3 pequeñas tablas tal y como se indica en el siguiente esquema. Las medidas responden a una necesidad concreta que ya os explicaré.

db25

- Compraremos diodos de la clase 1N4148, tantos como celdillas de nuestra matriz de datos se hayan rellenado. Es decir, compraremos 31 diodos. Comprad de sobra, son muy baratos.

db25

- Compraremos 4 filas de clemas pequeñas (vienen 12 en cada fila).

db25

- Necesitaremos un tornillo de métrica 10 de 5 cms de largo con su tuerca.

db25

- Y por fin un cable de puerto paralelo o DB25 con, al menos, un conector macho. El conector macho es el que irá a nuestro PC, el otro extremo lo cortaremos.

db25


MONTAJE DEL LPT:

Con las maderas cortadas, lo primero que haremos será alinear las tablas tal y como se ve en la imagen y hacer una perforación que esté centrada y a la altura que véis. Esta perforación la he realizado con broca para madera de 10 mm, y es para poder introducir el tornillo.

db25

Ahora vamos a dibujar unas líneas en nuestras tablas a 1 cm de los bordes para pegar las clemas detrás de esa línea.

- Pegaremos 14 clemas en fila en la 1ª tabla, la mayor. Es decir, una fila de 12 y otras 2 clemas más porque el 1er y 2º cable de los "pines de estado" (10, 11) llevan asignados cada uno 7 switches entre palancas y botones (7+7=14). Ver la 1ª y 2ª fila en nuestra tabla-matriz de controles más arriba.

- En la segunda tabla, la mediana, pegaremos 13 clemas (7+6=13) que son las que suman el nº de switchs controlados por el 3er y 4º "pines de estado" (12 y 13).

- En la última y más pequeña pegaremos 11 clemas, que son los que suman los 4 switches controlados por el "pin de estado 15" y nuestras 7 masas (4+7=11). Ver 3ª y 4ª fila en nuestra matriz. Ver la última fila en la matriz.

db25

Vamos con los diodos. Haremos varios manojos de ellos:

3 manojos de 7 diodos.
1 de 6 diodos.
1 de 4 diodos.


Tenéis que estar atentos a la orientación de estos, los diodos tienen unos colores y marcas distintivas que indican del tipo de diodo del que se trata. La línea negra deberá quedar orientada hacia la dirección que véis en esta foto. Con unos alicates retorceremos las puntas de estos diodos para que se cree el manojo.

db25

Aunque no sea necesario yo os aconsejo que estañéis un poco con el soldador. Creo que es importante para que no se deshaga el manojo y mejorar los contactos.

db25

Con los manojos de diodos hechos, es el momento de empezar a colocarlos en las clemas que hemos pegado a nuestras tablillas. Tomaremos el primer manojo de 7 diodos y la tablilla más grande, y los colocaremos en las clemas como se ve en la imagen de más abajo.

Nuestro primer manojo de diodos corresponde al pin de estado 10 que conecta nuestros 7 primeros switches (7 swiches=7 diodos).

Recordemos nuestra tabla matriz, era esta:

db25

Veamos la representación de física del pin de estado 10 ahora. En la imagen no he hecho más que colocar la correspondencia de la clema con el switch de botón o palanca que va a conectar. Como véis las filas de clemas corresponden a nuestras filas en la matriz.

db25

Continuamos poniendo los diodos en el orden que dicta nuestra tabla:

- En la primera tabla, la más grande, colocaríamos 14 diodos (2 manojos) correspondientes a los "pines de estado" 10 y 11.

- En la segunda tabla pondremos 2 manojos: uno de 7 diodos y otro de 6 diodos correspondientes a los "pines de estado": 12 y 13

Esta tabla, como es más corta, hay que meter más los diodos, lo que hace que sus extremos sobresalgan mucho por la parte de las clemas. Para presentar mejor el Lpt podéis recortar los extremos que sobresalen con unos alicates de corte.

db25

- Y , por fin, en la tabla más pequeña colocaremos el manojo de 4 diodos correspondiente al "pin de estado" 15.

Las clemas libres que quedan corresponden a nuestras 7 "masas".

db25


Así es como nos debería estar quedando nuestro Lpt. En la imagen simulación del resultado final.

db25

Vamos a tomar de nuevo la primera planta de clemas, la base del lpt, y vamos a hacer un par de pequeñas transformaciones.

Debemos pensar que el lpt hay que fijarlo a nuestro mueble, normalmente, de madera. Para ello vamos a realizar unas pequeñas perforaciones con broca fina en esta tabla tal y como puede observarse en la imagen. Esto nos permitirá poder usar 2 pequeños tornillos para afianzar el lpt a nuestro mueble.

Otra transformación más que vamos a hacer es la de usar un clavo atrapa-cables, pero en vez de usar el clavo, este lo vamos a sustituir por un tornillo fino con su rosca. La finalidad es anchar firmemente el cable del DB25 para evitar accidentes por tirones y demás, puesto que los subcables que componen este conector son muy finos y podrían romperse fácilmente.

En la imagen detalle de las perforaciones, clavos y tornillo que vamos a usar.

db25

Para ensanchar el agujero del atrapacable y hacer que pase el tornillo de rosca, le he metido al plástico una broca pequeña y suficiente.

db25

Esta otra imagen es una simulación de cómo quedaría el resultado.

db25



TRUCO EXTRA PARA CABLEAR NUESTRO PANEL DE CONTROL:

Una de las cosas que suelo hacer para estar pendiente del papelito de la matriz que debería tener delante a la hora de cablear el panel de control es apuntarme debajo de las clemas qué agujero pertenece a qué switch de botón o palanca, y las masas. Esta es la razón de que os haya pedido que dibujaseis una raya a 1 cm. del borde de cada una de nuestras tablas y pegaseis las clemas detrás de esta.

db25


Fin del apéndice extra




Ahora vamos a manipular el cable del DB25. Lo que haremos es dejar un conector macho y cortar el conector del otro extremo (macho o hembra). A continuación, eliminaremos 10 cms de la funda protectora del extremo cortado dejando al aire los numerosos cables de colores forman el DB25, y procederemos con un multímetro o por cualquier otro medio a identificar los cables de colores. Nos interesa saber que colores pertenecen a nuestros “pines de estado” (10, 11, 12, 13, 15) y a nuestras “masas” (2, 3, 4, 1,8, 9, 14).

En la imagen detalle de la identificación de los cables con un multímetro. Se puede ver en el extremo del DB25 que se le ha quitado unos 8 a 10 cms de capucha protectora al cable.

db25

Nota: Como los cables del DB25 son muy finos y estos podrían ser cortados por el mismo tornillo de la clema, yo siempre los estaño dejando una bolita en el extremo que es la que pisa el tonillo. De paso, con esta técnica, se mejoran los contactos y fiabilidad del Lpt.

db25

Una vez identificados los cables ya sólo tenemos que ponerlos en la clema correspondiente.

- 1er Piso: Vemos como con el atrapa-cable he fijado el BD25 para evitar accidentes y presentar el presente trabajo mucho mejor.

db25

- 2º Piso: Si os dáis cuenta, deja totalmente accesible la primera fila de tornillos de las clemas del 1er piso para cuando tengamos que cablear el panel de control de nuestra máquina arcade.

db25

- 3er Piso y Final: El resto de cables que no hemos usado han sido agrupados con cinta aislante. Nuestro Lpt está listo para usarse y ha sido muy rápido de construir, además de ser fiable al 100%.

db25


Detalle de las vistas del Lpt en varios ángulos.

db25


- Enlaces relacionados:
Tutorial: Configuración PPJoy o Parallel Port Joystick driver para Windows 98, Me, 2000 y XP



- Por Mikonos -

Edited by Mikonos - 25/12/2014, 21:41
 
Web  Top
view post Posted on 17/9/2007, 11:57     +1   -1
Avatar

Restless in Peace

Group:
Administrator
Posts:
42,770
Location:
Alcobendas (Madrid)

Status:


Modificada la siguiente imagen que estaba mal:

image


Gracias al zonero que se dió cuenta!



Saludos
 
Web  Top
future
view post Posted on 7/11/2007, 23:42     +1   -1




y entonces, ¿como seria para dos mandos con cuatro botones cada unos?
Me refiero al esquema
 
Top
view post Posted on 8/11/2007, 00:01     +1   -1
Avatar

Restless in Peace

Group:
Administrator
Posts:
42,770
Location:
Alcobendas (Madrid)

Status:


Eso da igual, future. Conecta los botones que necesites la interface LPT; ignora el resto de clemas.

Léete el documento y aprenderás a manipular el modelo creando uno de acuerdo a tus necesidades. Yo, todas la veces, construyo uno diferente de acuerdo al cpo que voy a fabricar.


Saludos
 
Web  Top
soycatapum
view post Posted on 8/11/2007, 00:27     +1   -1




Amigo mikonos, si decidieses fabricar trastos de estos y ponerlos a la venta fijo que muchos de nosotros te haríamos algún que otro pedido.. yo el primero..:D

Saludos
 
Top
future
view post Posted on 8/11/2007, 01:32     +1   -1




osease, que con esto me valdria ¿no?
o la disposicion de botones no es la correcta...
image
 
Top
view post Posted on 8/11/2007, 01:48     +1   -1
Avatar

Restless in Peace

Group:
Administrator
Posts:
42,770
Location:
Alcobendas (Madrid)

Status:


Bueno, Catapum, a lo mejor, si nos va bien la web que estamos montando,y para completar su finaciación, podríamos hacer algo como esto o parecido.


Future, eso es! Es correcto!


Saludos


 
Web  Top
dormammu
view post Posted on 8/11/2007, 09:44     +1   -1




Creo que lo unico que puede tener miga es la celdilla de botones, pero en todos los casos deberia funcionar ya que las masas y los positivos nunca se repiten, asi que tampoco hay que romperse mucho la cabeza.
 
Top
jbhz
view post Posted on 11/1/2008, 23:40     +1   -1




hola, soy nuevo en el foro.

tengo un pequeño inconveniente, y no he podido solucionarlo. espero puedas ayudarme. ( en realidad es no poder llevar la teoria a la practica)

pongamos el ejemplo para mostrar mi problema:

tengo 4 cables pelados, 3 de datos y 1 de estado.

conectado a la computadora y usando el software "ppjoy" (use tambien el NTPAD pero mostraba el mismo problema)

entonces, entro a Panel de Control, y luego a "dispositivos de juego"
de ahi eligo el "joystick" instalado, y aparecen todos los botones con sus respectivos foquitos.

entonces, comenzamos, conecto 1 cable de datos al cable de estado, se prende el foquito del boton 6.

ahora, conecto un segundo cable de datos al cable de estado. Se prenden 2 foquitos, el 6 y el 11.

AHORA aqui viene el problema.
conecto un tercer cable de datos. QUE SUCEDE? los dos foquitos anteriores se apagan, y nisiquiera se prende el foquito de este tercer cable de datos.

y por lo que veo en la tabla
image

llegan a esta conectados hasta 6 pines de datos en un solo pin de estado. ( tomando en cuenta ambos jugadores)

la pregunta es... porque no puedo presionar mas de 3 "botones" a la ves? (claro, en el mismo pin de estado)

estoy armando un dancepad casero (de esos de dance dance revolution)

lo digo porque me han regalado un dancepad que no servia y pues decidi abrirlo, y me di cuenta de que SOLO tenia un cable de estado, y los demas eran de datos ( era un dancepad de Gamecube), anteriormente habia desarmado uno de playstation, y tenia el mismo funcionamiento.

espero me puedas ayudar. ;)

gracias de antemano. ^_^
 
Top
view post Posted on 13/1/2008, 18:25     +1   -1
Avatar

Restless in Peace

Group:
Administrator
Posts:
42,770
Location:
Alcobendas (Madrid)

Status:


La respuesta es muy sencilla, uno de esos cables de datos no está bien identificado. Te aseguro que este modelos concreto de lpt que se exhibe en el tutorial funciona perfectamente y es real (es el IPP de la "Space Ace Dream Cabinet").

(Doy por su puesto que estás utilizando los diodos)

Te sugiero que vuelvas a comprobar que los cables son los correctos. Con un multímetro no fallarás en su identificación.


Saludos
 
Web  Top
view post Posted on 21/1/2008, 10:50     +1   -1
Avatar


Group:
Member
Posts:
354
Location:
Benicarló(Castellón)

Status:


Hola mik!

voy a construirme el ipp, pero directamente en placa, con una de estas que estan agujereadas y le vas soldando los cables....

Me queda una pequeña duda, el cable que no va a masa, es decir el rojo en tu esquema en el switch lo conectas al conector(NC) o al (NO), creo que se debe conectar al NO(normally open) pero en tu esquema lo veo al reves, a no ser que en tus switch la conexión NO sea la de arriba...

Por cierto felicidades por el tuto, todo muy bien explicado...

saludos
 
Top
view post Posted on 24/1/2008, 01:32     +1   -1
Avatar

Restless in Peace

Group:
Administrator
Posts:
42,770
Location:
Alcobendas (Madrid)

Status:


Tienes que olvidarte del documento que escribimos para la otra web, leeste este tutorial bien verás que no tiene ningún sentido lo que me preguntas (te está ocurriendo esto porque el otro tutorial de la página en la que antes escribía te está sesgando. Yo contruyo las matrices de datos en horizontal y en la otra web están en vertical. Esto es exáctamente lo que te está confundiendo).


Saludos
 
Web  Top
Enderzgz
view post Posted on 25/3/2008, 16:01     +1   -1




Mik se pueden identificar los cables sin usar un multimetro. ¿Es que no tengo ninguno y comprarlo para esto me parece una putada.?

Saludos
 
Top
view post Posted on 25/3/2008, 19:37     +1   -1
Avatar

Restless in Peace

Group:
Administrator
Posts:
42,770
Location:
Alcobendas (Madrid)

Status:


No necesitas un multímetro para esta gestión, de hecho yo lo compré recientemente, como si dijésemos. Una solución que creo que hemos comentado a lo largo del hilo, es crearse un circuito con una pequeña bombilla y una pila para detectar qué cable es cuál.

Yo antes hacía esto con una pequeña linterna e iba tocando todos los pines del DB25 hasta que se encendiese la luz, y apuntaba a continación el nº de pin y el color de cable que le correspondía.


Saludos
 
Web  Top
ANGELO2005
view post Posted on 7/4/2008, 18:53     +1   -1




un preguntilla

¿ si le quiero añadir 2 botones mas a cada uno de los players como lo haría ?

en la fila del pin 10 por ejempl. no me queda sitio no? estan ocupadas todas las clemas del diodo 10

image

gracis de antemano

Edited by ANGELO2005 - 7/4/2008, 20:29
 
Top
264 replies since 17/8/2007, 11:18   86223 views
  Share