ZMC432-V2 Hardware Introduction
The ZMC432-V2 is a multi-axis, high-performance EtherCAT bus + pulse motion controller launched by Zheng Motion. It has communication interfaces such as EtherCAT, EtherNET, RS232, CAN and USB flash drive. The ZMC series motion controllers can be used in various occasions that require offline or online operation.
The ZMC432-V2 can support up to 32 axes of motion control, including linear interpolation, arbitrary circular interpolation, spatial circular interpolation, helical interpolation, electronic cam, electronic gear, and synchronous following.
The ZMC432-V2 motion controller includes 6-axis pulse outputs and encoder feedback inputs, with 24 general-purpose I/O ports and 12 output ports; two general-purpose DA ports; some output ports support high-speed PWM control; and EtherCAT has a refresh cycle of up to 125µs.
The ZMC432-V2 supports three programming methods: PLC, Basic, and HMI configuration. PC-based API programming supports interfaces such as C#, C++, LabVIEW, Matlab, Qt, Linux, VB.Net, and Python.
• Controller model requirements
(1) Controller model requirements: ZMC432-V2, ZMC406-V2;
(2) Firmware version requirement: Supported only after version 4.930-20190305;
(3) The ZMC432-V2 series controllers only support SSI/BISS communication through the AXIS4/5 axis interface.
▶▶▶ZMC432-V2 Hardware Interface and Wiring
The ZMC432-V2 controller's AXIS4/5 axis interface supports the SSI/BISS communication protocol and only supports 5V-powered BissC absolute encoders. Regardless of whether the BissC absolute encoder uses +5V as its power supply, the common terminal of the BissC absolute encoder must be connected to the controller's axis interface GND.
ZMC432-V2 Controller Interface Definition
AXIS 4/5 axis interface SSI/BISS pin definition diagram
Wiring diagram of controller and BissC absolute encoder
▶▶▶Introduction to Bissc Absolute Encoders
1. Understanding BissC Absolute Encoders. BissC is an abbreviation for Binary Synchronous Serial Communication. It is a digital interface protocol. BissC absolute encoders are devices that measure position and angle, and can transmit more accurate and precise position information through high-frequency signals, playing an important role in industrial automation and control systems.
BissC Absolute Encoder
BissC absolute value grating ruler
2. BissC Communication Principle
BissC is a communication protocol used for data exchange between motion control and absolute encoders. It employs a fast-duplex synchronous serial interface mode and features a master-slave interface.
In the BissC protocol, the master interface is responsible for controlling the timing of position acquisition and the data transmission speed, while the encoder acts as the slave interface, responsible for responding to the position acquisition requests from the master interface.
(1) Data transmission is carried out through two pairs of unidirectional differential lines, namely the Clock line and the Data line.
(2) The Clock line is used to transmit position acquisition requests and timing information from the main interface to the encoder.
(3) The Data line is used to transmit position data from the encoder back to the interface synchronized with the Clock line.
BISS Interface Diagram
▶▶▶Controller Program Configuration and Application
1. Controller Parameter Description
(1)ATYPE: Set the axis type. Setting it to 48 is an SSI absolute encoder, and setting it to 49 is a BISS absolute encoder.
(2) UNITS: Set the pulse equivalent. Taking the BissC absolute value grating ruler as an example, the resolution is 100nm, so 1 pulse corresponds to 100nm, and 1mm corresponds to 10,000 pulses. The controller needs to refer to this parameter to set the pulse equivalent UNITS of the axis.
(3) ENCODER_BITS: Sets the number of absolute bits for the SSI/BISS encoder. Refer to the BissC absolute encoder manual for data bits. Some BissC absolute encoders may have more auxiliary status bits, and the manufacturers are not entirely standardized; generally, it is 18-20 bits, requiring manual adjustment of ENCODER_BITS. ENCODER_BITS = data bits + auxiliary status bits (some encoders do not have these).
(4) ENCODER_BITS command parameter setting instructions:
2. Program Configuration
global CONST ENC_AxisStart = 4 'Starting axis number of local absolute encoder axis global CONST ENC_AxisNum = 2 'Number of local absolute encoder axes' Local absolute encoder axis configuration for i = 0 to ENC_AxisNum - 1 BASE(ENC_AxisStart + i) AXIS_ADDRESS=(-1<<16)+4+i 'Map absolute encoder axes 4,5 ENCODER_BITS = 51 '32-bit absolute encoder with 19 auxiliary status bits. ATYPE=49 'BISS absolute encoder Next
3. Zero point setting
(1) Generally, the zero point position of a grating ruler is set using a zero point configuration tool.
(2) Generally, a rotary absolute encoder sets the zero position by means of a signal.
(3) For other methods to set the zero position, consult the encoder manufacturer.
4. Absolute encoder position reading
After zeroing the encoder position at the zero point, set UNITS and read the MPOS value of axis 4/5 to know the current position of the encoder. To obtain the original encoder value, read the ENCODER of axis 4/5. The BissC absolute encoder position has a power-off retention function.
4-axis BissC absolute encoder position MPOS
Common problems with manually rotating BissC absolute encoders on oscilloscopes to capture position curves
1. The download program prompts an error message indicating that axis 4/5 is set to atype49.
1. Check if the controller firmware version supports SSI/BISS absolute encoders. Firmware version 20190305 and later supports SSI/BISS absolute encoders. 2. If the MPOS value for axes 4/5 is missing or incorrect, check the wiring. Check the encoder_bits parameter settings; manually adjust the status bits. Use the online command `?* encoder_bits` to check if this parameter is set correctly. This concludes our sharing on the application of BissC absolute encoders in EtherCAT motion controllers.
For more exciting content, please follow the "Zheng Motion Assistant" WeChat official account. For related development environment and example code, please contact Zheng Motion's technical sales engineer: 400-089-8936.