Synchronous Serial Interface (SSI) is a widely used serial interface standard for industrial applications between a master (i.g. controller) and a slave (i.g. sensor).
The clock is driven by the master (controller) the data line is driven by the slave (sensor). When non-operational the clock as well as the data line is high. The position value is transmitted synchronously to the clock signal of the control system starting with the most significant bit (MSB). As soon as the clock signal of a clock sequence changes for the first time from high to low (Figure 1 A), the sensor data is frozen (latched) to prevent it from changing within the transmission. With the following rising edge (Figure 1 B) transition of the clock signal the transmission begins with the most significant bit (MSB). With each following rising edge transition of the clock signal, the next bit is set on the output of the data line.
After the least significant bit (LSB) was shifted out, the last rising edge transition of the clock signal (Figure 1 C) switches the data line to low (transmission end).
After the last falling edge of the clock, the data line stays low for a period of time, called transfer timeout (in older publications also referred to as monoflop time). It is the minimum time required by the slave to realise that the data transmission is complete. After tm, the data line is set to idle (Figure 1 D) and the slave starts updating its data. If a clock signal (data-output request) is received within that time, the same data will be transmitted again (see multiple transmission). The minimum pause time is 20 us, the maximum pause time is not limited.
The transmission can be interrupted anytime by stopping to sent clock signals to the encoder. After the Pause Time is passed, the data value will be updated and the encoder is ready to sent out the data. There is no further stop command necessary, neither is it possible to corrupt the interface by sending wrong commands, etc.
SSI Transmission Binary Data Representation
The data representation is not standardized through the encoder manufacturer. The most common data representation for Binary Code is the left aligned data. This means the data starts with the MSB, which is the highest Bit for a multiturn encoder (Figure 2 top) or the highest bit for a singleturn encoder (Figure 2 bottom).
Figure 2: SSI Transmission Data Representation Binary Code
Mxx – Represents Revolution Data for Multiturn Encoder 25 Bit
Sxx – Represents Angular Data for Singleturn Encoder 13 Bit
Physics and Cabeling
The physical transmission is realized according to the EIA-422 (RS-422) standard which ensures the availability of components and ensures a reliable transmission even in industrial environments. The benefits are :
It is recommended to use twisted pair cables which comply with the RS422 Standard. The Maximum Baud rate depends on the cable length, as a guide following values can be used :
Tips and Hints
How to connect encoders with more than 13 bits singleturn resolution?
Controllers are often limited to 13 Bit singleturn resolution. If one would like to connect encoders with higher Singleturn resolution (i.e. 16 Bit) one can try to use the controller in 25 Bit multiturn mode and use the scaling functionality of the controller.