Dado que hay una diferencia de voltaje de hasta 30 V entre los dos campos, es mejor usar algún tipo de aislamiento galvánico entre los dos sistemas.
Velocidades bajas a medias (hasta 10 Mbps con algunos optoaisladores)
Por ejemplo, puedes usar un optoaislador:
simular este circuito : esquema creado usando CircuitLab
Los valores se muestran solo como un ejemplo, y supongamos que está utilizando un optoacoplador con una relación de transferencia de corriente (CTR) no mucho menor que el 100%.
Mayor velocidad (hasta 150 Mbps)
Si necesita ir a una velocidad muy alta (por ejemplo, 100 Mbps), también puede usar un aislador digital basado en barrera de aislamiento de aislamiento de SiO 2 , como ISO7710 .
A diferencia de los optoaisladores convencionales, no utilizan un LED ni un fotodetector, sino que transmiten una señal a través de un condensador, mediante modulación OOK.
Sinembargo,sonmáscarosconrespectoalosoptoaisladores,ytambiénnecesitadesacoplarloscondensadoresenamboslados.
Cómoreducircostos
Enlugardeusar20canalesaislados,puedeintentarimplementaralgunasconversionesdeparaleloaserieenelprimersistema,yunaconversióndeserieaparaleloenelsegundosistema.Deestamanera,tendráqueenviarsolo3señales:datos,relojyunaseñaldeseleccióndemarco/carga/chip.
simular este circuito
El registro de entrada en paralelo (PISO) de entrada en paralelo convierte sus 20 entradas paralelas en un solo flujo en serie. La salida en paralelo de entrada en serie realiza la operación opuesta.
Cuando pulsa (pulso bajo en el caso de un 74xx165) la señal PARALLEL_LOAD
, luego carga los datos paralelos en el registro de cambios PISO. En cada pulso de reloj, DOUT
reflejará el valor de la siguiente entrada paralela. El reloj y dicho DOUT
se transmiten a través del sistema de aislamiento de su elección.
El registro SIPO recibirá el reloj y el valor de los datos ( ¡nota! ¡es posible que deba invertir la señal del reloj recibida de acuerdo con la sensibilidad del borde del reloj de su PISO / SIPO! ). Una vez que haya enviado todos los bits de datos, pulse la señal OUTPUT_LOAD
para actualizar las salidas de su registro SIPO.
Si tiene un microcontrolador, puede evitar el registro PISO y conectar las salidas SPI (reloj, MOSI y dos GPIO para PARALLEL_LOAD
y OUTPUT_LOAD
) al aislador. También puede usar un expansor de puerto en lugar del registro SIPO, pero eso sería una exageración, ya que lo usaría solo como un simple registro SIPO (generalmente más barato y disponible de varios fabricantes, por lo que no se queda solo con uno) .
NOTA: en el diagrama del circuito, no se muestran las GND ni las VDD.