La interfaz serie síncrona (SSI) es un estándar de interfaz serie ampliamente utilizado en aplicaciones industriales entre un maestro (por ejemplo, un controlador) y un esclavo (por ejemplo, un sensor). SSI se basa en los estándares RS-422 [ 1 ] y posee una alta eficiencia de protocolo, además de su implementación en diversas plataformas de hardware, lo que la hace muy popular entre los fabricantes de sensores. SSI fue desarrollada originalmente por Max Stegmann GmbH en 1984 para la transmisión de datos de posición de codificadores absolutos ; por esta razón, algunos fabricantes de servomotores/accionamientos se refieren a su puerto SSI como una "interfaz Stegmann". Anteriormente estaba protegida por la patente alemana DE 34 45 617, que expiró en 1990. Es muy adecuada para aplicaciones que requieren fiabilidad y robustez en las mediciones en entornos industriales variables.
Es diferente del bus de interfaz periférica serie (SPI): un bus SSI es diferencial , simplex , no multiplexado y utiliza un temporizador para enmarcar los datos. Un bus SPI es de terminación simple , dúplex y utiliza una señal de selección de chip para enmarcar los datos. Sin embargo, los periféricos SPI en los microcontroladores pueden implementar SSI con circuitos integrados controladores diferenciales externos y temporización controlada por programa.
Introducción
SSI es un canal de comunicación serial síncrono punto a punto para la transmisión de datos digitales. La transmisión síncrona de datos se caracteriza por la sincronización de la transmisión entre el emisor y el receptor mediante una señal de reloj común . Al no existir bits de inicio ni de parada, se optimiza el uso del ancho de banda para transmitir más bits de mensaje, simplificando así el proceso de transmisión. El reloj requiere su propio ancho de banda, el cual debe considerarse al determinar el ancho de banda total necesario para la comunicación entre los dos dispositivos.
En general, como se mencionó anteriormente, se trata de una conexión punto a punto entre un maestro (por ejemplo, un PLC o un microcontrolador) y un esclavo (por ejemplo, codificadores rotativos ). El maestro controla la secuencia de reloj y el esclavo transmite los datos o valores actuales a través de un registro de desplazamiento . Cuando el maestro lo solicita, los datos se envían desde el registro de desplazamiento. El maestro y el esclavo se sincronizan mediante el reloj común del controlador.
Las señales de reloj y datos se transmiten según el estándar RS-422. RS-422, también conocido como ANSI/TIA/EIA-422-B, es un estándar técnico que especifica las características eléctricas del circuito de interfaz digital de voltaje balanceado. Los datos se transmiten mediante señalización balanceada o diferencial; es decir, las líneas de reloj y datos son cables de par trenzado.
Las entradas pueden utilizar un optoacoplador para mejorar la interferencia electromagnética (EMI), lo que lo convierte en un canal de comunicación fiable para largas distancias de transmisión y entornos externos adversos.
Diseño SSI
La interfaz tiene un diseño sencillo. Consta de dos pares de cables: uno para transmitir las señales de reloj del maestro y otro para transmitir los datos del esclavo. El maestro activa las secuencias de reloj cuando es necesario. Se pueden utilizar diferentes frecuencias de reloj, desde 100 kHz hasta 2 MHz, y el número de pulsos de reloj depende de la cantidad de bits de datos que se van a transmitir.
La interfaz esclava SSI más sencilla utiliza un multivibrador monoestable rearmable (monoflop) para congelar el valor actual del sensor. Los valores congelados del esclavo se almacenan en registros de desplazamiento. Estos valores se transmiten secuencialmente cuando el controlador los inicia.
El formato de datos está diseñado para garantizar una comunicación adecuada. El protocolo de transmisión se basa en tres partes consecutivas: (Inicio: "1" -> Bits de datos -> Final: "0"). La principal ventaja de este formato es asegurar el correcto funcionamiento de la interfaz y, por lo tanto, una transmisión de datos segura y libre de errores de hardware o software.
En estado de reposo, el reloj y la salida del sensor se encuentran en un nivel alto, lo que permite detectar posibles roturas en los contactos de los cables. Esto facilita la observación del correcto funcionamiento de la interfaz.
Tras n pulsos de reloj (flancos ascendentes), la transmisión de datos se completa. Con el siguiente pulso de reloj (flanco ascendente n+1), la salida del sensor pasa a un nivel bajo, que puede utilizarse para detectar un cortocircuito en el cable. Si permanece en nivel alto incluso después de n+1 flancos ascendentes, significa que la interfaz presenta un cortocircuito.
Es posible habilitar la lectura simultánea de múltiples dispositivos esclavos (hasta tres) conectándolos a un reloj común. Sin embargo, para evitar bucles de tierra y aislar eléctricamente el dispositivo esclavo, se requiere un aislamiento galvánico completo mediante optoacopladores.
Sincronización y transmisión SSI
Las siguientes palabras clave serán útiles para comprender el procedimiento de transmisión de datos SSI.
- 'tm' representa el tiempo de espera de transferencia (tiempo de monoflop). Es el tiempo mínimo que necesita el esclavo para darse cuenta de que la transmisión de datos ha finalizado. Transcurrido tm, la línea de datos pasa a estado inactivo y el esclavo comienza a actualizar sus datos en el registro de desplazamiento.
- 'tp' representa el tiempo de pausa. Es el retardo entre dos secuencias de reloj consecutivas provenientes del maestro.
- 'tw' representa el tiempo de repetición. Es el tiempo mínimo transcurrido entre retransmisiones de los mismos datos y siempre es menor que tm.
- La letra 'T' representa la duración de cada ciclo de reloj. Es el tiempo que transcurre entre dos flancos descendentes o ascendentes en una secuencia de reloj continua.
- MSB: Bit más significativo
- LSB: Bit menos significativo
Transmisión simple
El diagrama ilustra la transmisión de datos individuales mediante el protocolo SSI:
Inicialmente, el SSI se encuentra en modo inactivo, donde tanto las líneas de datos como las de reloj permanecen en estado ALTO, y el esclavo continúa actualizando sus datos actuales.
El modo de transmisión se activa cuando el maestro inicia una secuencia de pulsos de reloj. Una vez que el esclavo recibe el inicio de la señal de reloj (1), congela automáticamente sus datos actuales. Con el primer flanco ascendente (2) de la secuencia de reloj, se transmite el bit más significativo (MSB) del valor del sensor y, con los flancos ascendentes subsiguientes, los bits se transmiten secuencialmente a la salida.
Tras la transmisión de la palabra de datos completa (3) (es decir, se transmite el bit menos significativo), un flanco ascendente adicional del reloj activa la línea de reloj. La línea de datos se activa y permanece en ese estado durante un período de tiempo, tm, para detectar el tiempo de espera de la transferencia. Si se recibe una señal de reloj (solicitud de salida de datos) dentro de ese tiempo, se transmitirán los mismos datos nuevamente (transmisión múltiple).
El esclavo comienza a actualizar su valor y la línea de datos se pone en ALTO (modo inactivo) si no hay pulsos de reloj dentro del tiempo tm. Esto marca el final de la transmisión individual de la palabra de datos. Una vez que el esclavo recibe una señal de reloj en un tiempo tp (>=tm), el valor de posición actualizado se congela y la transmisión del valor comienza como se describió anteriormente.
Múltiples transmisiones
Las transmisiones múltiples de los mismos datos solo se producen si existe una sincronización continua incluso después de la transmisión del bit menos significativo; es decir, los pulsos de reloj no permiten que el monoflop alcance un estado estable. Esto se ilustra a continuación.
Las secuencias iniciales son las mismas que las de una transmisión individual. En estado de reposo, las líneas CLOCK y DATA están en nivel alto, pero con la llegada del primer flanco descendente, se activa el modo de transmisión y, de forma similar, los bits de datos se transmiten secuencialmente, comenzando con el bit más significativo (MSB) con cada flanco ascendente. La transmisión del bit menos significativo (LSB) indica que la transmisión de los datos ha finalizado. Un flanco ascendente adicional pone la línea de datos en nivel bajo, lo que significa el final de la transmisión de los datos en cuestión.
Pero si se siguen produciendo pulsos de reloj incluso después de ese momento (es decir, el siguiente pulso llega en el tiempo tw (< tm)), el valor del esclavo no se actualiza. Esto se debe a que el monoflop sigue inestable y el registro de desplazamiento aún contiene el mismo valor que antes. Por lo tanto, con el siguiente flanco ascendente, es decir, después del flanco ascendente n+1, la transmisión de los mismos datos continúa y el bit más significativo (MSB) de los datos transmitidos anteriormente se retransmite al final de tw.
A continuación, sigue el mismo procedimiento que las transmisiones anteriores, lo que da lugar a múltiples transmisiones de los mismos datos. El valor del esclavo se actualiza solo cuando el intervalo entre dos pulsos de reloj es mayor que el tiempo de espera de transferencia, tm.
Se utiliza la transmisión múltiple para comprobar la integridad de los datos. Se comparan dos valores recibidos consecutivos; las diferencias entre ambos indican fallos de transmisión.
Interrupción de la transmisión
La transmisión de datos está controlada por el maestro y puede interrumpirse en cualquier momento deteniendo la secuencia del reloj durante un período superior a tm. El esclavo reconocerá automáticamente el tiempo de espera de la transferencia y entrará en modo inactivo.
Cableado – según las normas RS-422
Dado que SSI se basa en los estándares RS-422, es necesario seleccionar los cables adecuados y respetar los límites de longitud de cableado y frecuencias de reloj.
La relación entre la longitud del cable y la frecuencia del reloj se muestra en la siguiente figura. [ 2 ] Esto puede utilizarse como guía conservadora. Esta curva se basa en datos empíricos obtenidos con un cable telefónico de par trenzado sin blindaje, conductor de cobre, estándar 24 AWG , con una capacitancia en derivación de 52,5 pF/metro (16 pF/pie) y una carga resistiva de 100 ohmios. La restricción de longitud del cable que muestra la curva se basa en los requisitos de calidad de la señal de carga supuestos de:
- Los tiempos de subida y bajada de la señal deben ser iguales o inferiores a la mitad del intervalo unitario a la velocidad de conmutación de datos aplicable.
- Una pérdida de tensión máxima entre el generador y la carga del 66%.
Cuando se utilizan altas velocidades de datos, la aplicación se limita a cables más cortos. Es posible utilizar cables más largos cuando se utilizan bajas velocidades de datos. La resistencia de CC del cable limita su longitud para aplicaciones de baja velocidad de datos, ya que aumenta el margen de ruido a medida que aumenta la caída de tensión en el cable. Los efectos de CA del cable limitan la calidad de la señal y restringen la longitud del cable a distancias cortas cuando se utilizan altas velocidades de datos. Ejemplos de combinaciones de velocidad de datos y longitud de cable varían desde 90 kbit/s a 1,2 km hasta 10 Mbit/s a 5 m para RS-422.
También se pueden utilizar cables con características diferentes al par trenzado de 24 AWG, 52,5 pF/metro (16 pF/pie), dentro de los límites mencionados anteriormente. Primero, determine los valores absolutos de resistencia y capacitancia del bucle del cable típico de 24 AWG, según la longitud del cable y la velocidad de transmisión de datos deseada (ver figura). Luego, convierta esos valores a longitudes equivalentes del cable utilizado. Por ejemplo, se podrían utilizar distancias mayores con un cable de 19 AWG, mientras que se necesitarían distancias menores con un cable de 28 AWG.
La longitud máxima permitida del cable que separa el maestro del esclavo depende de la velocidad de transmisión de datos y está influenciada por la distorsión de señal tolerable, la cantidad de ruido acoplado longitudinalmente y las diferencias de potencial de tierra introducidas entre el circuito maestro y el esclavo. Por consiguiente, se recomienda a los usuarios limitar la longitud del cable al mínimo. El tipo y la longitud del cable utilizado deben ser capaces de mantener la calidad de señal necesaria para la aplicación específica. Además, el equilibrio del cable debe permitir mantener niveles de diafonía aceptables, tanto generados como recibidos.
Protocolos derivados
Algunos fabricantes y organizaciones [ 3 ] añadieron información adicional al protocolo SSI básico. Esto se hizo principalmente para garantizar la correcta transmisión de datos. Para una transmisión segura y para indicar el final de la transmisión de datos, se pueden añadir bits CRC o bits de paridad. En pocas palabras, se utilizaban para identificar si el byte se había interpretado y recibido correctamente. En la especificación original, se utilizaban múltiples transmisiones para garantizar la integridad de los datos. En este caso, se iniciaban dos transmisiones consecutivas de los mismos datos y se comparaban para detectar cualquier error en la transmisión. Sin embargo, esto reduce la eficiencia del protocolo en un 50 % en comparación con la transmisión de datos en paralelo.
Beneficios
- La transferencia de datos en serie ha reducido el cableado. Esto, sumado a la simplicidad del diseño SSI gracias al uso de un número mínimo de componentes, ha reducido considerablemente el costo y ha generado un mayor ancho de banda de transmisión para los bits de mensaje.
- Alta inmunidad a las interferencias electromagnéticas gracias a los estándares RS-422 y mayor fiabilidad en la transmisión de datos gracias a la señalización diferencial.
- Aislamiento galvánico óptimo
- Flexibilidad total del protocolo en cuanto al número de bits transferidos. No está limitado a un número determinado de palabras y permite elegir libremente el tamaño del mensaje.
- Los dispositivos esclavos utilizan el reloj del maestro y, por lo tanto, no necesitan osciladores de precisión.
- El SSI permite conectar hasta tres dispositivos esclavos a un reloj común. Por lo tanto, es posible obtener valores de múltiples sensores.
Las limitaciones de esta interfaz son insignificantes para aplicaciones de automatización industrial. SSI solo admite comunicación hasta 1,2 km y un único dispositivo maestro . Sin embargo, 1,2 km es una distancia adecuada para la comunicación según los estándares de la industria de la automatización. En comparación con sistemas de comunicación avanzados basados en buses de campo o Ethernet, SSI se limita a una arquitectura maestro-esclavo y a una comunicación punto a punto simple entre un maestro y un esclavo . Otra desventaja es la falta de reconocimiento de hardware del esclavo , es decir, la ausencia de detección del esclavo para la comunicación.
Véase también
Referencias
- ↑ "Artículo sobre interfaces de novotechnik" . Archivado del original el 1 de octubre de 2016. Consultado el 7 de febrero de 2012 .
- ↑ *Características del cable RS422
- ↑ *Interfaz Biss
Enlaces externos
- POSITAL, conexión del dispositivo SSI al microcontrolador,
- National Instruments, "¿Qué es la interfaz serie síncrona (SSI)?"
- Texas Instruments, "SSI y SPI como términos intercambiables"
- SSI (en alemán), "Synchron-Serielle Schnittstelle"
- protocolos de capa física
- Autobuses en serie