
SSI Encoders
Interfaz Serie Sincrónica (SSI)
Interfaz Serie Sincrónica (SSI) es un estándar de interfaz serial ampliamente utilizado en aplicaciones industriales entre un maestro (por ejemplo, controlador) y un esclavo (por ejemplo, sensor).
El maestro impulsa la línea de reloj (CLK), y el esclavo controla la línea de datos (DATA). En estado inactivo, ambas líneas están en nivel alto.
El valor de posición se transmite de forma síncrona con la señal de reloj del sistema de control, comenzando por el bit más significativo (MSB). Cuando la señal de reloj cambia por primera vez de alto a bajo (Figura 1 A), los datos del sensor se congelan (latch) para evitar cambios durante la transmisión.
Con el siguiente flanco ascendente (Figura 1 B), comienza la transmisión con el MSB y en cada flanco ascendente siguiente, el siguiente bit se coloca en la línea de datos. Tras enviar el bit menos significativo (LSB), el último flanco ascendente del reloj (Figura 1 C) cambia la línea de datos a bajo, marcando el fin de la transmisión.
Tiempo de pausa
Después del último flanco descendente del reloj, la línea de datos permanece en nivel bajo durante un período llamado tiempo de espera de transferencia (también conocido en publicaciones antiguas como tiempo de monoestable). Este es el tiempo mínimo necesario para que el esclavo detecte que la transmisión de datos ha terminado. Después de tm
, la línea de datos se pone en estado inactivo (Figura 1 D) y el esclavo comienza a actualizar sus datos. Si se recibe una señal de reloj (solicitud de salida de datos) dentro de ese tiempo, se volverán a transmitir los mismos datos (ver transmisión múltiple). El tiempo mínimo de pausa es de 20 µs y no hay límite para el máximo.
Figura 1: Transmisión SSI

Interrupción de la transmisión
La transmisión puede interrumpirse en cualquier momento dejando de enviar señales de reloj al codificador. Después del tiempo de pausa, el valor de los datos se actualiza y el codificador está listo para transmitir nuevamente. No se requiere ningún comando de parada adicional, ni es posible corromper la interfaz enviando comandos erróneos.
Figura 1: Transmisión SSI
Representación binaria de los datos de transmisión SSI
La representación de los datos no está estandarizada entre los fabricantes de encoders. La forma más común de representar el código binario es con alineación a la izquierda. Esto significa que los datos comienzan con el bit más significativo (MSB), que es el bit más alto en un encoder multiturno (Figura 2 superior) o en un encoder monoturno (Figura 2 inferior).
Figura 2: Representación binaria de los datos de transmisión SSI
Mxx – Representa los datos de revolución para un encoder multiturno (25 bits)
Sxx – Representa los datos angulares para un encoder monoturno (13 bits)

Representación de datos en código Gray
Los datos del codificador a veces se representan en código Gray. Un formato todavía comúnmente utilizado en esta codificación es el llamado “formato Tannenbaum”. En esta representación, los primeros 12 bits representan los datos multiturno (revoluciones) y los siguientes 13 bits representan los datos monoturno. Los datos están centrados en un ciclo de 13 señales de reloj. Se muestra un ejemplo en la Figura 3.
Figura 3: Representación de los datos de transmisión SSI – Código Gray

Multitransmisión / Desplazamiento en anillo
Para garantizar la integridad de los datos, se puede transmitir la misma información varias veces y comparar los valores recibidos. Este procedimiento también se conoce como multitransmisión o desplazamiento en anillo. La secuencia para lograrlo consiste en continuar enviando señales de reloj después de haber recibido la palabra completa de datos (Figura 4 A). Tras un solo byte “0”, los datos comienzan de nuevo con el bit más significativo (MSB). La multitransmisión finaliza de la misma manera que una transmisión simple: deteniendo el envío de señales de reloj. Atención: no todos los modelos de codificadores admiten esta función.
Figura 4: Transmisión múltiple SSI

Transmisión física y cableado
La transmisión física se realiza de acuerdo con la norma EIA-422 (RS-422), lo que garantiza la disponibilidad de componentes y una transmisión fiable incluso en entornos industriales. Los beneficios incluyen:
Largas distancias de transmisión de hasta 1200 m (4000 pies)
Transmisión diferencial que mejora la inmunidad al ruido
Amplio rango de modo común que permite diferencias de potencial de tierra entre maestro y esclavo
Se recomienda utilizar cables de par trenzado que cumplan con el estándar RS-422. La tasa de baudios máxima depende de la longitud del cable. Como guía, pueden utilizarse los siguientes valores:
Longitud del cable en m (pies) | 13 (42) | 44 (144) | 85 (278) | 300 (984) | 750 (2460) |
Frecuencia máxima del reloj | 2 MHz | 1 MHz | 600 kHz | 200 kHz | 80 kHz |
Consejos y sugerencias
¿Cómo conectar codificadores con una resolución monoturno superior a 13 bits?
Los controladores suelen estar limitados a una resolución monoturno de 13 bits. Si se desea conectar codificadores con resoluciones mayores (por ejemplo, 16 bits), se puede intentar usar el controlador en modo multiturno de 25 bits y aprovechar la funcionalidad de escalado del mismo.