La mejor interfaz de PC para hardware personalizado simple

5

¿Qué interfaz de su PC utiliza para conectarse a un hardware personalizado simple?

La interfaz más utilizada fue RS232 hace algún tiempo y hoy es probablemente USB, pero ¿no sería más simple para los principiantes usar el puerto paralelo para controlar circuitos realmente simples como motores paso a paso o LED? Por lo que he leído hasta ahora, tengo la impresión de que el puerto paralelo no estaba realmente diseñado para ese tipo de cosas, pero no estoy seguro de las posibles limitaciones con respecto a eso.

Desafortunadamente, puedo encontrar muy poca información sobre cómo usar el puerto paralelo, probablemente porque está un poco desactualizado para el hardware profesional.

¿Hace una diferencia para la decisión sobre la interfaz más adecuada si solo usaré salida o entrada?

Debo añadir que, por supuesto, conozco Arduino, pero no quiero que se me oculte ninguna complejidad.

Moerover, estoy usando Linux y tengo un puerto paralelo disponible. Así que actualmente estoy sesgado hacia el puerto paralelo.

    
pregunta Penguin Nurse

7 respuestas

11

El puerto paralelo es excelente cuando usas Windows 98 o DOS. Todos los sistemas operativos modernos de Windows han cambiado drásticamente el funcionamiento de la interfaz del puerto paralelo, lo que hace que sea casi imposible interactuar con otra cosa que no sea una impresora. Y el puerto paralelo es básicamente obsoleto en este punto de todos modos. Además, es básicamente imposible realizar un control de tiempo preciso desde una computadora de propósito general. Si su objetivo es milisegundos, no es tan malo. Pero si desea bajar mucho más, se vuelve muy, muy difícil hacerlo de manera confiable. Es mejor enviar comandos de alto nivel a un microcontrolador o similar. Me gustaría obtener un Arduino si nunca ha usado un microcontrolador antes.

Si desea establecer una conexión seria con el hardware, probablemente vaya a utilizar USB. Si necesita una serie RS232, obtenga un chip convertidor de USB a serie. Estos están disponibles en compañías como FTDI y Exar. La mayoría de las tarjetas que hago tienen un encabezado al que puedo enchufar una pequeña tarjeta adaptadora serie USB, o tienen un chip serie USB en la tarjeta. Ethernet es otra opción si necesita una comunicación de mayor velocidad, pero admitir Ethernet en su dispositivo suele ser un poco más complicado que una simple interfaz en serie. También es posible interactuar con PCI, PCI express y Serial ATA si realmente necesita el rendimiento.

Editar: ya no puedo recomendar FTDI con conciencia limpia sin mencionar que FTDI ha lanzado un controlador que contiene código para destruir intencionalmente (y probablemente ilegalmente) los chips FTDI. Consulte enlace y enlace para más detalles. Si está considerando usar FTDI, entonces necesita sopesar los riesgos de que sus dispositivos fallen en el campo debido a este controlador, ya sea porque los chips falsificados se deslizan en su producción de alguna manera o algún problema con la detección de falsificaciones en el controlador FTDI.

    
respondido por el alex.forencich
4

Creo que tienes un par de opciones.

Puertos paralelos

Los puertos paralelos siguen siendo la solución más simple para controlar circuitos simples. Todavía hay kits que le permiten usar el puerto paralelo para controlar un conjunto de relés.

Una búsqueda rápida en la web para el "kit de relé de puerto paralelo" produce muchos resultados. He incluido los archivos PDF de dos de esos kits, porque contienen listas de piezas y diagramas de bloques:

El software para controlar esos kits puede ser un poco complicado, pero encontré una ingeniosa biblioteca de Python que funcionó muy bien tanto en Windows como en Linux: enlace

La mayoría de las placas base modernas ya no vienen con un puerto paralelo, pero hay muchas tarjetas de expansión económicas que proporcionan uno o dos puertos paralelos. Alternativamente, puede comprar una PC todo en uno económica que aún tiene un puerto paralelo, como el Intel Atom DH2500.

Tenga en cuenta que los cables de puerto USB a paralelo generalmente no funcionarán para este tipo de cosas. Hay hacks que pueden hacer que funcionen, pero los hacks solo funcionan con ciertos cables.

Finalmente, si desea usar el puerto paralelo para una instalación permanente, tenga en cuenta que durante la puesta en marcha, todos los relés se encenderán y apagarán brevemente. No hay mucho que puedas hacer al respecto, a menos que quieras volver a escribir el BIOS de tu PC.

Microcontroladores

He estado jugando con los tableros de Arduino durante un par de meses. Es muy fácil hacerlo para enviar texto a la PC en el puerto serie USB, y me imagino que tampoco será demasiado difícil hacer que escuche los comandos en serie desde la PC.

Alternativamente, programar la placa para que haga todo el control en sí mismo también es una muy buena solución. Hay montones de tarjetas de expansión, incluyendo conjuntos de relés. Los tableros Arduino también son realmente fáciles de alimentar: los he visto correr desde aproximadamente 5v hasta 20v, aunque creo que recomiendan entre 9v y 12v para uso a largo plazo.

No debería tener demasiados problemas para encontrar ayuda con los proyectos de Arduino. La comunidad para ellos es enorme, y están bastante diseñados para los pequeños retoques. Recomiendo altamente su kit de inicio para personas que recién comienzan con electrónica.

Puertos serie (incluido USB)

Aprender a diseñar y construir hardware de puerto USB todavía está en mi lista de tareas pendientes. Aunque no los he usado, he escuchado cosas buenas sobre dos libros en particular:

Son solo unos $ 25 cada uno, y si tienes preguntas más específicas después de leerlas, estoy seguro de que puedes encontrar más ayuda haciendo preguntas específicas aquí.

    
respondido por el Gustav Bertram
3

Ideas de sótanos de ganga

Nunca descarte las salidas analógicas de la tarjeta de sonido para poder controlar muchas cosas. Puede enviar FSK (cambio de frecuencia) a varios cientos de baudios perfectamente bien. Esto, por supuesto, puede ser decodificado con el chip apropiado.

Incluso puedes enviar tonos que pueden decodificarse para activar o desactivar cualquier cosa que razonablemente se te ocurra. Varios tonos (cada uno con su propio decodificador) pueden controlar varias salidas simultáneamente.

Incluso he visto a una persona adjuntar un fotodiodo a parte de la pantalla de su PC y decodificar los cambios relativos en el brillo, esto tenía un área dedicada pequeña de la pantalla utilizada para transmitir datos. No puedo decir qué tan bien funcionaría con las pantallas LCD, pero recuerdo que proporcionó cientos de baudios en un CRT.

    
respondido por el Andy aka
3

La placa de desarrollo USB Bit Whacker 18F2553 de SparkFun le permite controlar 16 líneas GPIO (ya sea de entrada o salida) desde el ORDENADOR PERSONAL. Utiliza un Microchip PIC18F2553 y se conecta a la PC a través de USB, y se muestra como un puerto COM virtual RS-232.

Eltablerocuesta$24.95.Hayuna versión más sofisticada del Bit Whacker utilizando un PIC32MX795 que tiene 78 líneas de E / S disponibles y cuesta $ 39.95. Lo he usado en un proyecto y donde lo controlé usando scripts de Python.

    
respondido por el tcrosley
1

Si tuviera que diseñar un dispositivo que interactúe con una computadora, usaría una interfaz USB HID. No requerirá ningún controlador en el lado de las ventanas y realmente será plug'n'play. La interfaz en el lado de la PC será un poco más difícil (en comparación con un puerto serie), pero lo he hecho antes y simplemente funcionó.

    
respondido por el Tom L.
0

La interfaz de facto en las computadoras personales del hogar y la oficina es USB

Las interfaces más comunes para dispositivos electrónicos simples son I2C, SPI, 1-wire y GPIO (etc.)

Por lo tanto, no es sorprendente que pueda comprar cosas como adaptadores de USB a GPIO como esto o this

    
respondido por el RedGrittyBrick
0

Los puertos paralelos son impresionantes para hardware realmente simple. Tengo un pequeño tablero que hice hace unos 10 años que da 8 salidas de controlador de solenoide y 4 entradas digitales protegidas desde un puerto paralelo. El problema es que son (1) muy limitados y (2) obsoletos en las computadoras de "oficina". Es probable que todavía puedas encontrar computadoras integradas que las tengan y si estás "haciendo pequeños retoques" hay una corriente constante de PC antiguas disponibles que las tienen. Es más difícil usarlos en Windows, pero en Linux son triviales de usar si tienes acceso de root.

Sin embargo, con el costo de los microcontroladores pequeños en la actualidad, es mucho más eficiente poner todas las E / S en uno y usar la PC como interfaz de usuario, comunicándose a través de la conexión inalámbrica o micro de serie.

    
respondido por el lyndon

Lea otras preguntas en las etiquetas