Electrónicamente, cómo controlar esta placa de relé estilo arduino de 5v desde un puerto serie de PC

Tengo la siguiente placa de relés (en la foto a continuación), y para activar cualquiera de los relés, simplemente conecte uno de los pines IN1-IN8 a tierra. Fácil. La corriente que pasa entre gnd e INx es insignificante, debido a los transistores que ya están en la placa, por lo que la corriente que pasa por el puerto serie de la PC no es un problema.

¿Cómo puedo usar electrónicamente el puerto serie para activar un relé en esta placa? No me preocupa el aspecto del software. El puerto serie estándar tiene DTR y RTS (pin 4 y 7) que se pueden configurar en alto o bajo a través del software. Creo que "alto" en un puerto serie es de -3 a -25 voltios y "bajo" en un puerto serie es de +3 a +25 voltios.

¿Hay alguna manera fácil de usar eso para configurar IN1 en GND? Mire el esquema a continuación y vea si hay una manera fácil de lograr esto:

Por cierto, VCC y JD-VCC están conectados junto con el puente, no estoy haciendo alto voltaje ni me preocupa el aislamiento.

http://i.stack.imgur.com/xmruD.jpg

Esto no es realmente una buena solución. Está buscando un sumidero de corriente para el opto LED. Es posible que el puerto serie no pueda hacer esto. "_ La corriente que va entre gnd e INx es insignificante..._". Debe ser de 5 mA más o menos para encender el LED. Eso no es despreciable para un puerto serie. " Por cierto, VCC y JD-VCC están conectados entre sí con el puente... ". Es posible que deba modelar cómo afectaría esto al puerto serie. ¿No hay una placa de conexión USB que pueda usar en su lugar?
"¿No hay ninguna placa de conexión USB que pueda usar en su lugar?" Claro, podría usar algo como una placa de relés serial o usb y terminar, y es posible que tenga que hacerlo, pero estoy tratando de mantener el hardware al mínimo y esta placa ya tiene muchos relés que estoy utilizando con otros dispositivos que hacen un cierre en seco. La PC no hará un cierre en seco sin hardware adicional, a menos que, como esperaba, el puerto serie de alguna manera pudiera bajar la entrada.

Respuestas (3)

esquemático

simular este circuito : esquema creado con CircuitLab

Figura 1. Interfaz serie a placa de relés.

Este circuito debería funcionar.

  • Cuando la línea de salida en serie se vuelve positiva, Q1 se enciende a través de R1. Esto encenderá el opto-LED en la placa de relés.
  • Cuando la línea de salida en serie se vuelve negativa, Q1 se apagará y D1 evitará que la base de Q1 tenga una tensión negativa de más de 0,7 V.

La placa de relés GND debe conectarse al puerto serie GND: pin 5 en el puerto de PC de 9 pines o pin 7 en el puerto de 25 pines.

Q1 puede ser cualquier transistor NPN de señal pequeña con un Vce mayor que el voltaje de suministro de la placa de relés sujeto a la corriente base a continuación.

+/-25 V parece extremo para el puerto serie tipo RS232. Siempre pensé que era +/-12 V. La mayoría de los dispositivos usan algo como los chips MAX232 para duplicar el suministro de 5 V para dar 8 o 9 V de confiabilidad. Trabajando en +12V en Ser-Out, obtendría 12 mA en la base de Q1, lo que debería estar bien para algo como el 2N2222. D1 manejará fácilmente la corriente inversa. Si realmente espera Ser-Out> 12 V, aumente el valor de R1 en consecuencia.

Esto parece que va a ser la respuesta. ¿Cuál es el valor de Q1? Además, confirme que su circuito puede manejar voltajes de -25 a +25 voltios.
Actualización: se agregaron dos párrafos más.
Creo que tiene razón en que la mayoría de los puertos serie probablemente solo funcionan con alrededor de 12 voltios, pero las especificaciones oficiales de RS232 establecen "hasta 25" voltios, ya sea + o -.

Si por Electrónica te refieres a Software, sí, puedes alternar mediante programación una línea serial específica. En LabVIEW esto se vería de la siguiente manera:

Alternar una Línea Serial Específica en LabVIEW

En Python, puede usar la biblioteca pySerial, donde el código se vería así:

__init__(port=None, baudrate=9600, bytesize=EIGHTBITS, parity=PARITY_NONE, stopbits=STOPBITS_ONE, timeout=None, xonxoff=False, rtscts=False, write_timeout=None, dsrdtr=False, inter_byte_timeout=None),

donde rtscts=False establece RTS en Bajo y drsdtr=False establece DTR en bajo.

Y tiene razón, los voltajes del puerto serie pueden alcanzar de -25 a +25 voltios, pero en la mayoría de los casos rondarán los -10 a 10 voltios.

"No me preocupa el aspecto del software".

Este es un tablero de 8 reales. Un puerto serie estándar (9 pines) no tiene 8 salidas. ¿Vas a utilizar (al menos) 2 puertos serie?

La solución más rápida sería colocar un Arduino (Uno o Nano) entre su PC y la placa de relés. O, para los más aventureros: un chip USB a paralelo FT245RL.

Si realmente quiere usar puertos serie: use los pines que son salidas. Mi intuición es que pueden conducir sus optoacopladores directamente (desconecte VCC-JDvcc, conecte VCC a la tierra en serie).

Si esto no activa los relés, use un transistor por entrada como sugiere 'transistor' (¡cómo podría sugerir otra cosa!), O un ULN2803 para 8 líneas.

No 8, solo 1: "¿Hay alguna manera fácil de usar eso para configurar IN1 en GND?"
OK, eso invalidaría mi primera oración. El resto sigue siendo válido.