forward, “How to read position from BissC absolute encoder using ZMC432-V2 EtherCAT motion controller” It has been shared, you can review it~
So today we will take a look at another encoder in the EtherCAT motion controller “SSI absolute encoder”, still based on ZMC432-V2 EtherCAT motion controller.
What is an SSI absolute encoder?
“SSI” means Synchronous Serial Interface, which is a digital interface protocol. In addition, it is a communication protocol for data transmission between motion control and absolute encoders. One of the main features is the “master-slave” interface, as it uses a synchronous serial interface mode.
Specifically, there are clock signals and pulses on the controller that can synchronously transmit data from the encoder to the controller. The output data can be binary or Gray code.
Therefore, SSI absolute encoders are used to measure position and angle. It requires only 2 cables for data transmission: data and clock. The principle is very simple. It converts position information into binary codes and encodes the codes into serial data. During the control process, the “clock” signal of the controller will control the data transmission speed.
How does the EtherCAT motion controller control the SSI absolute encoder?
(1) EtherCAT motion controller
A. Valid EtherCAT motion controller
For Zmotion, the EtherCAT motion controller must meet the following requirements:
*Controller model: ZMC432-V2, ZMC406-V2
Supporting rich motion control interfaces, this controller “ZMC” can operate without a PC.
Supports up to 32 axes of motion control, which means it can control 32 motors. Various motion control functions and applications are OK.
*Firmware version: 4.930-20190305 or above
*AXIS interface: For ZMC432-V2 series, only AXIS4/5 supports SSI/BISS communication.
You can check it through “Controller Status”. If there is “Ssi”, it means it is supported.
B. Development
–RTSys/ZDevelop: PLC/Basic/HMI.
–PC language: C#, C++, LabVIEW, Matlab, Qt, Linux, VB.Net, Python
(2) Wiring: EtherCAT controller & SSI absolute encoder
The EtherCAT motion controller has two pulse axes, AXIS 4 and AXIS 5, and supports the SSI/BISS communication protocol, but the SSI absolute encoder must be powered by 5V. Regardless of whether the SSI absolute encoder uses +5V power supply, the common terminal must be connected to the controller GND.
ZMC432-V2 controller AXIS 4/5 & SSI/BISS interface
EtherCAT Master & SSI absolute encoder wiring
(3) Required parameters
–ATYPE: axis type–
48 = SSI absolute encoder, 49 = BISS absolute encoder
–Unit: pulse volume–
Taking the SSI absolute encoder as an example, the resolution is 16 bits, then one revolution corresponds to 65535 pulses, that is, the controller sets the pulse amount UNITS of the axis according to this parameter.
–ENCODER_BITS: SSI/BISS encoder absolute bits–
Please refer to the SSI absolute encoder manual for data bits.
(4) Program configuration
global CONST ENC_AxisStart = 4 'local absolute encoder axis starting axis No.
global CONST ENC_AxisNum = 2 'how many axes of local absolute encoder axes
'set local absolute encoder axis
for i = 0 to ENC_AxisNum - 1
BASE(ENC_AxisStart + i)
AXIS_ADDRESS=(-1<<16)+4+i 'map absolute encoder to axis 4, 5
ENCODER_BITS = 26 '26-bit absolute
ATYPE=48 'SSI absolute encoder
Next
(5) Origin setting
Normally, the origin position of an absolute encoder is set through a signal.
If you do not use signals, you can also contact the encoder manufacturer.
(6) Absolute encoder position reading
After the encoder position is cleared at the origin position, set UNITS and read the MPOS value of axis 4/5 to know the current position of the encoder. If the original value of the encoder is needed, read the “ENCODER” of axis 4/5.
Note: SSI absolute encoder position supports power-off storage function.
Axis 4 SSI Absolute Encoder Position MPOS
The position curve captured by SCOPE when manually rotating the SSI absolute encoder
Questions and answers related to SSI absolute encoder:
–atype 48 error for axis 4/axis 5 is displayed when downloading–
Please check the controller firmware version, it should be 20190305 or above. If not, please contact us for update.
–Axis 4/Axis 5 No MPOS/MPOS Error–
Check the wiring.
Check the encoder_bit parameter configuration. You can send the command “?*encoder_bits” online to check whether the parameter settings are correct.
That’s all, thank you for reading— How to control SSI absolute encoder in EtherCAT motion controller?