Interface paralelo 64bits I/O para amateurs

Saludos
Abro mi segundo tema en este grandioso Foro para aportar el diseño de una interface por puerto paralelo y software desarrollado en VB6.0. que sera dividido en tres partes, en la primera parte la tarjeta principal , en la segunda el software y la tercera los modulos..
Aplicaciones:
Domotica, Robotica, Automatizacion y para coches como seria ¿carbotica?
Requerimientos:
Desktop, Laptop o Carputer con puerto paralelo bidireccional.
SO Windows XP
VB6.0


Primera Parte
Tarjeta Principal

Hardware
La idea fue desarrollar una tarjeta principal que tuviera la capacidad de controlar 8 modulos de 8 bits cada uno destinados a la adquisicion o envio de señales analogicas o digitales....

Estos modulos podrian ser preconfigurados de entrada o salida utilizando los IC TTL 74245 para las entradas y los 74573 para las salidas...

Anexo esquema y Vista frontal de la tarjeta principal...
*Nota seria indispensable contar con conocimientos basicos de electronica y computacion para la realizacion de este proyecto.

Espero sea de su agrado y les sea util...
en un posterior mensaje subo fotos de la tarjeta principal...
les debo el video de su funcionamiento pues no logre tener una buena calidad con mi camara...
Saludos...

Materiales
para tarjeta principal
Lista de materiales para la construccion de la tarjeta principal
1.-Placa fenolica 1/cara
2.-2 tiras de 36 pines dobles
3.-24 resistencias de 10kohms 1/4w
4.-2 ULN2803
5.-2 74540
6.-1 74138
7.-1 capacitor electrolitico 470uF/16v
8.-1 Led
9.-1 resistencia 330ohms 1/4w
10.-3 capacitores ceramicos 100nF (codigo:104)
11.-1 conector hembra para molex (P4) de atx
12.-1 conector db25 macho para cable plano
13.-1 conector idc hembra 26pines para cable plano
14.-9 conectores idc hembras 34pines para cable plano
15.-1mt cable plano 40vias
el costo aprox de materiales es de $30usd

Recomiendo ampliamente el elaborar el esquema en su diseñador preferido de PCB, imprimir en papel vegetal (Albanene, encerado) utilizando impresora laser y llevarlo a un serigrafista y que les imprima la placa...

continuara....



Segunda parte
El Software


Las Aplicaciones estan desarrolladas en VB6.0 por ser un lenguaje basico para los amantes de la computacion y probadas bajo el sistema operativo windows XP, consiste basicamente en dos aplicaciones:

la primera llamada Servidor(Driver) cuya funcion es permanecer de forma residente en la barra de tareas, en espera de clientes locales o remotos via intranet o internet, tiene la capacidad de soportar varios clientes otorgandoles un ID como identificacion, y adquirir o enviar la informacion al puerto paralelo.(Aprox 32000 usuarios)

la segunda aplicacion llamada Cliente envia o recibe la informacion al servidor(Driver) y se ejecuta de forma normal o similar a cualquier aplicacion.

El metodo de adquisicion y envios de los datos es atravez del componente winsock de microsoft..

Al descomprimir los archivos adjuntos aparecen dos empaquetados ECServidor y ECCliente

ECServidor contiene la aplicacion de instalacion del servidor(Driver)
Nota:
-en caso de que no se cuente con puerto paralelo al ejecutar la aplicacion enviara un mensaje de error puesto que el componente ActiveX no encontrara el punto de entrada al puerto.

ECCliente Contiene la aplicacion del cliente y el codigo en vb6.0 como ejemplo para nuestro primer modulo que sera el de testeo o prueba...
Nota:
-si la conexion es via local se utiliza el nombre del equipo en la red o su I.P.
-Si la conexion es via internet y la direccion es dinamica se requere de otorgerle al servidor una NOIP. y desactivar u otorgar un permiso de entrada al puerto en el firewall.

solo restaria instalar los programas y analizarlos que estan bastante sencillos....

Continuara.....

nota importante: los empaquetados al ser descargados y por contener el programa servidor(driver) que es residente podrian ser alertados como amenaza por algunos antivirus.
 

Adjuntos

  • ECScheme.JPG
    ECScheme.JPG
    190.1 KB · Visitas: 672
  • ECPCBFront.JPG
    ECPCBFront.JPG
    144.2 KB · Visitas: 435
  • Foros de electronica.rar
    76.3 KB · Visitas: 218
  • EC Project.part1.rar
    878.9 KB · Visitas: 226
  • EC Project.part2.rar
    878.9 KB · Visitas: 174
  • EC Project.part3.rar
    878.9 KB · Visitas: 158
  • EC Project.part4.rar
    325.5 KB · Visitas: 154
Última edición por un moderador:
Tercera parte
Modulos I/O

He aqui para mi lo lindo de este proyecto .... los mudulos podrian ser cualquier cosa que se nos ocurra sin tener que estar diseñando una interface por aplicacion...
podrian ser ocho modulos diferentes conectados simultaneamente e incluso diseñar modulos de ampliacion de bits o canales en cascada....

Primero para elaborar el primer modulo que seria el de prueba tendremos presente el protocolo de conexion....


Anexo dragrama de modulo de testeo o prueba...
El mudulo de esteo consiste en un multiswitc de 8 bits como adquision de datos y 8 leds como envio de datos.. En los pines de Jumper se preconfiguraria el selector de modulo para la adquisicion pondriamos un jumper en selector 5,6,7 u 8, en los de envio o leds pondriamos uno en el selector 1,2,3 o 4, y configurar el servidor(driver) el puerto preconfigurado como de entrada o salida segun sea el caso...
anexo panel de configuracion...

continuara....
 

Adjuntos

  • Protocolo.JPG
    Protocolo.JPG
    245.4 KB · Visitas: 193
  • Testeo.pdf
    10.4 KB · Visitas: 139
  • config.JPG
    config.JPG
    19 KB · Visitas: 189
Última edición:
Hola Chico
Gracias por tu opinion, y siendo sincero para mi es un honor muy grande el que este como destacado... no me lo esperaba... pense que iba a pasar desapercibido y quizas a alguien le podria servir..... gracias por su confiaza....

Hago un inter con lo de los modulos para subir unas fotos de la tarjeta principal y el modulo de prueba....
*nota. tendran que practicar con eso de la descomprimida en partes.....:LOL:
Continuara....

Muy bien, ya superadas las primeras tres etapas, solo queda echar a volar nuestra imaginacion con respecto a los modulos siguiendo el protocolo de conexion y la modificacion del programa cliente para que se adecue a nuestro modulo....

Aqui es donde me pongo a su entera disposicion para la aclaracion de mis garabatos, o mis intentos de explicar el proyecto...

para aquellos que no tienen mucha experincia en electronica y les gusta eso de controlar cosas con la compu pienso que es buena opcion... yo soy jobista... y se que hay otras opciones mucho mejor realizadas y sofisticadas pero estan fuera de mi alcance en cuanto a conocimientos..hay otros ya fabricados pero $$$$$$...

Listo una serie de modulos que a mi me gustaria construir.... si escuchaste bien hasta ahi he llegado con el proyecto, conforme vaya haciendo modulos con gusto los publico...

Modulos en proyecto:
-Modulo de ampliacion de canales en cascada.
-Modulo de 8 salidas digitales VCD con 4N37 (como switch) para bajo consumo.
-Modulo de 8 salidas digitales VCD con Mosfets para alto consumo.
-Modulo de 8 entradas Digitales
-Modulo controlador 8 relays VAC
-Modulo de Salidas Analogicas (DAC0808)
-Modulo de 8 entradas analogicas (ADC0808)
-controlador de motores PAP Bipolar
-controlador de motores PAP Unipolar
-Modulos RF transceiver 8 Canales
-Modulo RF transceiver 2 canales

ah.. y por ahi anda un tacometro digital que me gustaria integrarlo para empezar a carbotizar, autobotizar, chochebotizar:confused: mi nave....

en fin la lista y aplicaiones podria nunca acabar...

Fin de intento de explicar el proyecto...


Inicio de diagramas de modulos...
Continuara.....

MODULO ANALOGO DIGITAL
Codigo de modulo MO-002

Para comenzar a elaborar algun modulo le pedi a mi ayudante del proyecto (mi hijo de 6 años) que elijiera un modulo excepto los dos de RF que los pienso dejar al ultimo por su nivel de dificultad, asi que con su sabio dedo señalo el del conversor analogico a digital con adc0808 y le propuse el diseño que anexo (analogo.pdf) y me lo autorizo... asi que sin mas y si ustedes amigos no tienen algun inconveniente preparare los componentes para realizarlo.... y aver como nos va....
Aclaro es el esquema inicial y no esta probado....

Continuara....
 

Adjuntos

  • 20091125.part1.rar
    878.9 KB · Visitas: 142
  • 20091125.part2.rar
    878.9 KB · Visitas: 104
  • 20091125.part3.rar
    878.9 KB · Visitas: 97
  • 20091125.part4.rar
    295.4 KB · Visitas: 90
  • Analogo.pdf
    12.1 KB · Visitas: 139
Última edición:
Ya revise bien el esquema del adc0808, y me equivoque con las conexiones de las entradas y las salidas msb son invertidas... lo notaron?... por otro lado quisiera saber si alguien esta interesado en este proyecto como mencione la estapa de la tarjeta principal y la de testeo y el software ya funciona, y debido a mi falta de conocimiento quisiera saber si pudieran apoyarme, y mi duda seria en este momento con el adc0808, se supone que el adc0808 funciona con un oscilador de 500khz, pero se supone que con el 555 no se puede llegar a esa frecuencia, segun he leido en un mensaje de este foro... como podria llegar a esa frecuencia? con un cd4047 se podria?...
ya casi hago andar el modulo solo me falta eso... y programar el cliente para continuar con el siguiente modulo...
post.end
 
Por que no usás este circuito que te adjunto,que es mucho mas simple y te permite usar algún inversor que tengas sobrando por ahí?
Yo tengo los ADC0809 funcionando con esos valores, que dan casi 1Mhz y funcionan perfectamente...y aprovecho un par de inversores que sobraban en el diseño.
 

Adjuntos

  • clockADC809.GIF
    clockADC809.GIF
    5.8 KB · Visitas: 104
Lubeck

Para el 555 CMOS garantizan una frecuencia minima de 1.2 MHz (Texas) y 3 MHz (National) segun las DataSheet's. En todo caso te puedo pasar las mismas para que las tengas.

Todo sin dejar de la lado la opción presentada por EZavalla si hay inversores sin uso en la placa.

Saludos. JuanKa.
 
hola j2c y ezavalla
gracias por su ayuda en verdad me orientaron, voy a intentar probar con el cd4047 con una resistencia de 4.7k y un capacitor de 100pF que segun mis calculos debe rondar por los 483kHz segun yo bastante aceptable y me gustaria jugar con este bicho, en caso de que no funcione pruebo el cmos 555 que ya cheque el dato y si superan los 500KHz, o los inversores que si tengo un par de 7414.... pero no los tenia considerados en el diagrama...
Gracias y sigo para adelante....
post.end
 
Hola...
Bueno pues tengo buenas y malas noticias....
las buenas, como siempre primero, ya hice la tarjeta del adc0808, y al parecer puede funcionar correctamnete... eh ahi las malas que no encuentro el cd4047 ni tampoco el 74540(en la foto se puede observar que nada mas puse los sockets)... donde habitualmente compro mis componentes ya se les habian agotado, los mande pedir y que una semana llegan... es lo mas dificil de la electronica.... encontrar los componentes... pero bueno seguire en su busqueda... mientras tanto subo las fotos y los esquemas como la hice... no esta probada del todo...
otra buena es que hice unos cambios en el programa servidor(driver) para mejorarlo... en cuanto este probado con el modulo analogo lo subo....
To be continued....
post.end
 

Adjuntos

  • Imagen000.jpg
    Imagen000.jpg
    80.1 KB · Visitas: 214
  • Imagen000(1).jpg
    Imagen000(1).jpg
    88.3 KB · Visitas: 194
  • Imagen001.jpg
    Imagen001.jpg
    82.6 KB · Visitas: 199
  • Imagen002.jpg
    Imagen002.jpg
    95.3 KB · Visitas: 181
  • mo-002v1.0.pdf
    15.6 KB · Visitas: 84
  • pcbmo002v1.0.pdf
    81 KB · Visitas: 81
Última edición:
Ya hiciste loas cambios? Ya subiste la aplicacion?
Quiero probarlo pero nodeseo arriesgarme a comprar todo y ver que ha fallado, yo me ariesgare solo si subes la ultima aplicacion estable!

felicidades y abrazos! eres un GENIO

Besos chau.
Avisame cuando hayas subido la aplicacion

buena es que hice unos cambios en el programa servidor(driver) para mejorarlo... en cuanto este probado con el modulo analogo lo subo....
 
Ya hiciste loas cambios? Ya subiste la aplicacion?
Quiero probarlo pero nodeseo arriesgarme a comprar todo y ver que ha fallado, yo me ariesgare solo si subes la ultima aplicacion estable!
No te preocupes por la aplicacion... si quieres la subo... pero quisiera probarla unos dias con el modulo analogo ademas de preparar un video de su funcionamiento, la primera version funciona correctamente, la nueva version tiene unas mejoras en cuanto al servicio... no de estabilidad, es decir, la notificacion a los usuarios va contar con la opcion de automatico o que cada usuario haga la peticion del estado de la tarjeta principal al servidor(driver), en cuanto al cliente lo estoy simplificando para que sea mas facil su comprension.... para que estes mas confiado(a), la tarjeta principal, la de testeo y el software los hice ya casi un año y lo habia dejado por motivos de trabajo, pero siempre habia estado conectada a mi pc y hasta hace unos dias que publique ese post retome el proyecto...

Lo que te recomiendo es que la armes como un juego en realidad no es mucho lo que se invierte, digo, comparando con las que hay que cuestan alrededor de 200Usd la pura tarjeta... sin sensores ni dada de eso.... porque esos son otro billete y esta uno 30USd, se tiene mucho que ganar y poco que perder no?

tambien si puedes estar pendiente del proyecto, estaria bien porque pretendo hacer mejoras conforme se vaya desarrollando, que para mi va en grande... lo ultimo, ultimo, para quedar yo satisfecho seria terminar todos los modulos que hasta ahora tengo proyectados, y un modulo adicional para convertirla USB, emulando un puerto paralelo... pero eso al final... porque como he mencionado voy aprendiendo poco a poco... y no se mucho de electronica...
Editado:
Si deseas bajar la aplicacion de mi servidor para que la analises antes de que la suba sigue esta liga http://lubeckmexico.sytes.net/
nada mas aclaro que no siempre esta disponible pues es mi pc y nada mas esta prendida cuando estoy.... que por lo general es de 6:00pm a 11:00pm horario GMT -6:00 o avisarme que dia quieres que lo deje encendido...
observacion antes de instalr la nueva version es necesario desinstalar la anterior en el panel de control en agregar o quitar programas...si ya habia sido instalada obviamente...

En cuanto a lo del genio, gracias por el comentario enigmaelectronica, pero en realidad no lo soy... soy un simple mortal que de vez en cuando tiene una idea como cualquier persona... pero te agradezco el comentario....

post.end

Que esta pasando en mi querido pais?... fui a dos ciudades cercanas de donde radico con aproximadamente un millon de habitantes cada una y visite unas 10 casas de electronica en cada una y no tienen ni el 74540 ni el cd4047... en verdad estoy :enfadado:... como es posible que nadie tenga esos circuitos tan basicos? y unos ni siquiera saben de su existencia... lo peor de todo es que su costo no supera un dolar... los mande traer de la ciudad de mexico, haber si de los diez millones de habitantes hay alguien que los maneje o conozca siquiera... aaaaahh!!!!!... bueno ya descarge mi frustracion...
si no me llegan tendre que usar los planes B y C, ni modo...

post.end
 
Última edición:
Lubeck

Dado de tu problema, similar al que tenemos casi siempre en Bs As, y si no se consiguen esos integrados, creo que deberias ver primero que es posible conseguir antes de modificar los Esquematicos y PCI's.

Para el Oscilador de 500 KHz hay varias alternativas, alguna ya conversada. En cambio para el Inversor TriState no he revisado en este momento que se podria colocar ahi. Lo hare mañana por la mañana y eventualemente de lo dejo aqui.

Saludos. JuanKa.-
 
Muchas gracia juanka
Quedo en espera de tu consejo, porque si la ultima alternativa es modificar los esquematicos y la tarjeta, ya hice una prueba a la tarjeta inyectandole pulsos super-inferiores a los 500khz y parece que si funciona pero yo quisiera lograrlo a la mayor velocidad y menor cantidad de componentes... conservando la idea de que todo sea lo mas sencillo posible...

post.end
 
Lubeck

Para el oscilador de 500 Khz se podria usar el inversor Schmitt-Trigger el 74HC14 como comento Ezaballa.

Te paso los siguientes reemplazos para el 74540 con detalles.

Si bien no revise las otras placas aun, podria servir en otra interfaz ó en la placa de pruebas/Testeo a efectos de usar pocos tipos distintos de integrados.


74240 Octal buffer/line driver; 3-state; inverting #1 .-
74245 Octal bus tranceiver; 3-state #2 .-


Saludos. JuanKa.-


Notas:

#1- Distinta configuración de conexiones, ademas de estar dividido en dos secciones.

#2- Distinta función, pero se puede usar como lo que se necesita en esa placa.
 
Última edición:
Hola juanka
Ya revise los fichas de los circuitos que pusiste y si no me llegan el dia de mañana los que encargue, hare las modificaciones... gracias...

pongo mientras un video que realice de la tarjeta de testeo...

http://www.youtube.com/watch?v=OOIX29zOFgM
tambien subo el ejecutable del cliente el que aparece en el video, si lo ejecutan sin cambiar los datos, segun yo deberian de estar observando mi tarjeta, lo que no se si la tranferencia de video sea lo suficientemente rapida a largas distancias, pero en fin estamos en fase de pruebas..
(ya funcionando subo el codigo)
post end.

ok. estoy en ciber cafe y la tarjeta esta funcionando perfectamente, perooooo, el video no, aparentemente la velocidad de mi pc en donde tengo el servidor del video es muy lento, cuando llegue a casa hago la modificacion, retardandolo unos 500 frames por milisegundo creo que podria funcionar, eso me da la idea de que cada usuario haga la peticion de velocidad de transferencia del video... mmmm... se podra?... lo intentare...
digo en realidad el sistema esta funcionando en condiciones extremas la pc en donde esta conectada es mas lenta que mi abuela :LOL:....
post.end
 

Adjuntos

  • Instalador Cliente.part1.rar
    878.9 KB · Visitas: 86
  • Instalador Cliente.part2.rar
    878.9 KB · Visitas: 72
  • Instalador Cliente.part3.rar
    212.2 KB · Visitas: 59
Última edición:
Lubeck

No te preocupes por eso, cuando mas tiempo observo tu Escritorio, mejor para mi gusto. HERMOSISIMA Mujer !!!!.

Saludos. JuanKa.-

P.D.: En todo caso, quienes deseen ver el video se lo bajan a su PC (asi lo hize yo), por que solo pesa 1.4MB y lo ven tranquilos sin necesidad de ocupar el ancho de banda. Desde que vi por primera vez la pelicula quede enamorado de semejante "lomo".-
 
No te preocupes por eso, cuando mas tiempo observo tu Escritorio, mejor para mi gusto
:LOL: la verdad es que si.... no he encontrado una foto mejor que esa para mi deskpaper o como se diga, la verdad es que es un cuerpo perfecto y una toma perfecta y colores perfectos, en fin mis pcs tienen la misma foto, y no me canso de verla....y si alguuuun dia muuuuuuy lejano llego a ser billonario... mi primer capricho va ser conocer en persona a mi novia rebecca romijn... porque ella es mi novia pero no lo sabe :D

en cuanto a que no funciona, en realidad, quisiera que contara con servicio de video para monitorizacion remota, tengo dos posibilidades que sea cuadro por cuadro en tiempo real o lo mas posible, o por buffer, pero voy a intentar ambos y ver cual va mejor...

ok. le baje la tasa de transferencia al servidor, me voy al trabajo y de paso voy al ciber a ver que resultado....
post.end.

nop... no va bien...:confused: en la noche reviso detenidamente el asunto...
estoy como el loco verdad?, de aqui para alla....:D
a ver si despues no me conocen como el loco del cibers...... pero creanme soy una persona normal....
post.end.
 
Última edición:
Nota Importante:me llegaron los chips que mande traer... el 74540 pero me llegaron 74hc540 y estuve como tonto el fin de samana probandolo y no funcionaba, le cambie los de la tarjeta principal que eran 74ls540 y peor... no funcionaba nada hasta que cai en la cuenta de que no son compatibles segun yo los LS con los HC asi que recomiendo no mezclar series, yo no lo sabia asi que no fue tiempo perdido... ya se algo mas... asi que me voy a dar a la tarea de cambiar todo a HC, que segun es mas rapida a ver si funciona igual que con la LS cabe mencionar que la tarjeta principal excepto los ULN obvio, eran LS y es como habia sido probada...
tambien el cd4047bp me llego td4047bp y segun la hoja de datos tienen la misma configuracion... y parece que si funciona... si hace la actualizacion del dato...

por otro lado tambien importante, no entiendo que estoy haciendo mal con el conversor ADC, el software y la tarjeta principal si hacen lo que tienen que hacer.... reciben los datos del conversor excelentemente con una rapidez perfecta, pero no son nada estables o sea que se mueve como le da su gana, ¿sera tambien que estoy mezclando hc con ls para el selector de entrada o esta mal el diseño? me mandaron un adc0809 y ya tenia un adc0808 y con ninguno de los dos funciona....
mis posibles razones:

-La frecuencia... puede estar mal... se pasa...
-la configuracion ALE,START,EOC puede estar mal... pero muchos la hacen asi...
-el selector... eso de la mezcla de LS con HC..
-o la persona que lo esta haciendo esta muy.... pen...tonto...:LOL:

ustedes que opinan... la ultima ¿verdad?...:LOL:

pero bueno si las cosas se hicieran facilmente.... cualquiera las haria....
sigo peleandome con esto... como carajos no se va a poder!!!!....
post.end.
 
Última edición:
yupi... yupi.... yupi... ajua... epa... ya funciono el conversor... deberian de ver que maravilla.... que maravilla...
efectivamente era una tonteria mia... estaban invertidos las entradas... pero se ve de pocas....

voy a corejir todo y subo todas las correciones.....

software, diagrama y por primera vez el codigo fuente del servido(driver)
que maravillosa es la electronica....

ah... no quepo en mi... ya estuvo lo mas dificil...
viiene lo papita...
to be continued....
post.end.
 
Lubeck

Mis felicitaciones, estuve un poco ausente por pequeños problemas de salud de mi madre. Espero a que subas los diagramas actualizados y los reviso contra los primeros posteados.

Volviendo al tema anterior, por que tipo de Lógica te decidiste?, LS, HC ó ???. Yo tenia entendido que todas eran iguales en cuanto a flacos de activación, disposición de conexiones; pero que los umbrales lógicos tenían diferencias.

Saludos. JuanKa.-
 
Atrás
Arriba