KL5051 - Bidirectional SSI encoder interface

Basic function principles

The KL5051 bidirectional SSI interface terminal is used to connect the digital servo drive digifas®7100/7200 from Seidel to the Bus Coupler or controller. The interface consists of two logical channels:

The drive is positioned via the first channel,
the second channel is used to set releases, to transfer parameter data and to read status information or parameter values.

It is therefore possible for a subordinate axis controller to deal with positioning on channel 1, while the higher-level controller sets releases on channel 2 and performs the monitoring tasks.

LED display

 

The Run LED indicates the operating state of the terminal.

green Run LED:
On: normal operation
Off: Watchdog timer overflow has occurred. If no process data are transmitted by the Bus Coupler for 100 ms, the green LEDs go out.
 
 
Com error
On: Communication error, e.g. open circuit on the data or clock line
Off: normal operation
Alarm:
On: The connected device has issued a fault message.
Off: normal operation
 
 

SSI principles

SSI communication sequence

The SSI master starts pulsing on the clock line with a fixed cycle into the shift register of the SSI slave.
The slave generally "pushes back" data with a width of 25 bits on the data line. An SSI encoder should determine its position with the first falling edge of the signal at the Clock input ("latching"), which is then transferred.
Once the specified number of bits was pushed, the clock signal is terminated.
After a pause, polling by the SSI master recommences.

The last data bit can be a PowerFail bit, i.e. the slave signals a power failure. This output depends on the slave.

The number of bit changes equals the clock frequency, i.e. the maximum data transfer rate for a 1 MHz cycle is 1 Mbit/s.

 
 

Referencing an SSI signal

An SSI encoder is an absolute encoder, which means, that the position value is available without referencing immediately after switching on.
Many SSI encoders offer the option of referencing or zeroing the position value via an additional digital input. Depending on the signal voltage of the digital input on the encoder, this can be set, for example via a digital output terminal EL2xxx.

 
 

Process data

The KL5051 is mapped with 6 bytes of input data and 6 bytes of output data.

A0, A1, A2 and E0, E1, E2 form the channel for setting and logging the operating data of the servo.
A3, A4, A5 and E3, E4, E5 form the channel for logging the servo status and for setting the servo control. In addition it is used for parameterizing the servo drive.
 
Byte
Function
Byte
Function
A0
Operating data control
E0
Operating data status
A1
Velocity command value
E1
Actual position value
A2
Velocity command value
E2
Actual position value
A3
Parameter control
E3
Parameter status
A4
Parameter/control servo
E4
Parameter/status servo
A5
Parameter/control servo
E5
Parameter/status servo

In A1, A2 the velocity command value is specified as 16-bit signed integer. The maximum set value specifications can be found in the servo manual.

 
 

E1, E2 contain the absolute actual position value as 16 bit unsigned integer. The resolution of the actual position value is 65536 steps per revolution.

 
Actual position value in E1, E2
Angle of rotation
0x0000
0 °
0x3FFF
90 °
0xBFFF
270 °