¿Cómo elijo un optoacoplador para la comunicación en serie (19200 baudios) entre Arduino y el transceptor RS422?

Deseo leer datos de un inversor solar Fronius a través de la opción Fronius RS-422 Com Card (n.º de pieza 4.240.001).

Longitud de cableado de 1000 metros

La comunicación Fronius utiliza una interfaz RS 422 de 5 hilos (`RX-`, `RX+`, `TX-`, `TX+`, `GND`). Se basa en conexiones punto a punto que deben formar un **anillo**. Tiene una velocidad de transmisión seleccionable de 2400, 4800, 9600, 14400 o 19200. La documentación de Fronius especifica que la longitud total del cable no debe exceder los 1000 metros cuando se usan conectores de terminación (`RX+` a `TX+` y `RX-` a `TX- `) o 1000 metros entre cada dispositivo al crear una formación de anillo sin tapones de terminación.

Cableado Fronius RS-422, T568B

Recomendación de aislamiento galvánico

Fronius también recomienda aislar galvánicamente la interfaz RS 422 del inversor de las interfaces externas. Esto aumenta la seguridad de todo el sistema . Es por eso que estoy desconcertado al elegir un optoacoplador.

Controlador de línea SP490

Elijo el SP490 como controlador de línea. El pin del controlador tiene una "corriente de entrada" máxima especificada de ±10 µA. El IC cuenta con una velocidad de datos máxima de 10 Mbps (lo que podría ser excesivo para 19200 baudios).

Hojas de datos

Sé que las hojas de datos de optoacopladores a menudo intentan engañar a los lectores no tan informados proporcionando Rlvalores de 100 ohmios, que en los diseños del mundo real nunca se utilizan. También sé que a corrientes de entrada más bajas, la salida responde (mucho) más lentamente.

Temporización de bits

Sé que hay un tiempo de subida y bajada de la señal involucrado en el inicio y el final del tiempo de bits. La especificación EIA RS-422 escribe que el tiempo de subida de la salida del controlador debe ser como máximo el 10 % del ancho de bit (en la condición Rt = 100 Ω). También sé que el tiempo de bit se puede calcular dividiendo 1 segundo por la velocidad en baudios:

  • .... baudios ... tiempo de bits ... tiempo máximo de subida
  • 1 ÷ 2400 = 416 µs ⟶ 41,6 µs
  • 1 ÷ 4800 = 208 µs ⟶ 20,8 µs
  • 1 ÷ 9600 = 104 µs ⟶ 10,4 µs
  • 1 ÷ 14400 = 69 µs ⟶ 6,9 µs
  • 1 ÷ 19200 = 52 µs ⟶ 5,2 µs

Tabla de selección de optoacopladores analógicos de alta velocidad
fuente: http://www.vishay.com/docs/49444/sg2129.pdf , página #2.

También he leído sobre el efecto capacitivo en el cableado que afecta los tiempos de subida y bajada de la transmisión. Pero, ¿qué porcentaje del tiempo de la señal es aceptable como tiempo de caída y/o qué tiempo es el máximo para el tiempo total de subida y bajada ?

Corriente de salida del optoacoplador

También sé que los optoacopladores no son iguales en cuanto a qué cantidad de corriente fluirá en el lado de salida. La relación entre la corriente de entrada y la de salida parece depender del dispositivo (CTR), la corriente de entrada, el voltaje, la temperatura y la edad.

Circuito propuesto

Deseo utilizar el IC transceptor RS422 dúplex completo Exar SP490E (máxima "corriente de entrada" ±10 µA). Para el lado del microcontrolador, deseo i/o la señal en una entrada/salida digital de un Arduino Uno. Los optoacopladores se utilizan para proteger el Arduino, no el transceptor. Por lo tanto, los optoacopladores se ubican entre Arduino y el SP490E, no entre el controlador de línea y la señal RS 422. Un lado de los optoacopladores y el SP490E tendrán suministro aislado de 5V.

Pregunta

¿Qué información de la hoja de datos buscar para hacer una buena elección y lograr un flujo de corriente mínimo (baja potencia)?


Documentación de cableado del registrador de datos de terceros de Fronius

asegúrese de seguir las instrucciones de este documento para el cableado de los inversores Fronius cuando estos estén conectados a un sistema de monitorización de terceros mediante una interfaz RS 422 en las instrucciones de funcionamiento de Fronius Interface 42,0410,1564

Recomendación general del sistema, aísle galvánicamente la interfaz RS 422 del inversor de las interfaces externas de una red, por ejemplo.  Esto aumenta la seguridad de todo el sistema.

Respuestas (1)

Fronius no sugiere un optoacoplador entre el µC y el transceptor, sino entre el µC y la red externa (que no tienes). Pero podría aislar los dos componentes de su interfaz RS-422 (µC y transceptor) entre sí, si realmente lo desea.

La especificación de corriente de entrada del controlador de línea no importa.

Un UART se sincroniza con el flanco descendente al comienzo del bit de inicio; todos los bits siguientes se muestrean a la mitad de su tiempo de bit. Por lo tanto, su optoacoplador debe ser lo suficientemente rápido como para que el nivel de la señal sea estable en medio de un bit, y los bordes ascendentes y descendentes no deben retrasarse demasiado en diferentes cantidades (esto se especifica como la distorsión del ancho del pulso).

En la práctica, desea un factor de seguridad, por lo que la tasa de bits especificada del optoacoplador debe ser al menos diez veces la tasa de baudios real.

Los efectos capacitivos en el cableado dependen de los cables reales; usted tiene que medir esto usted mismo.

Normalmente, debe conducir los optoacopladores con la corriente directa para la que están diseñados (que es para lo que se especifica el CTR). Las variantes 6N135/6N136 están diseñadas para 16 mA, las variantes 6N138/6N139 para 1,6 mA/0,5 mA.

Tenga en cuenta que esa tabla muestra tiempos típicos ; los tiempos garantizados pueden ser mucho peores. Con el 6N138/6N138, puede mejorar mucho el tiempo de subida conectando los pines 5 y 7 con una resistencia, pero esto también reduce el CTR:

6N138 CTR frente a RBE

Sin embargo, el CTR del 6N138 es tan grande que esto no importa para la mayoría de los valores útiles de RBE; 10 kΩ debería ser perfectamente seguro.

Si no desea preocuparse por el CTR, utilice un optoacoplador con salida digital, por ejemplo, H11L1 o 6N137. (Estos tienen un umbral de corriente fijo).

Probaré con el 6N137.