Emiif ZK-SMC02 Stepper Motor Driver Controller
Specifications
- Product Name: SMC02 Motor Controller + Driver
- Operating Interfaces: Operation Interface, [F] Menu Setting Interface
- Adjustable Functions: Forward and Reverse Rotation, Rotation Speed, Cycle Work Times, Delay, Pulse Settings, Action Flow Mode Selection
Disclaimer:
For electronic module products, you need to have a certain electronic foundation and carefully read the product description before use; The product is not designed for medical, life-saving, life support and other purposes, and cannot be used in dangerous places such as coal mine and oil depot. We do not guarantee such responsibilities; The product profit is low, the user’s operation ability and use occasions vary greatly, and any electronic equipment cannot be foolproof. The equipment owner shall make corresponding protective measures and risk management plan. The company shall not be liable for compensation for any personal or property loss directly or indirectly caused by the equipment.
Product introduction
This is a special operation control module for single shaft stepping motor. A variety of fixed operation modes are built in the module, and users can quickly select the appropriate motion track. The distance / speed / delay / number of cycles can be saved and set after power down. It can run independently as a module, or it can be used together with other systems. It can be used in general industrial control occasions, not in special industries such as medical treatment and fire protection or life-threatening fields.
Product parameters
- Model: ZK-SMC02 stepper motor controller + driver
- Adaptive motor: stepping motor
- Number of control axes: single axis
- Motor signal: common cathode
- Power supply range: DC 10-30V general
- Driving capacity: 4A
- Instruction features: streamline and optimize multiple common instructions
- Acceleration and deceleration control: Yes
- Input reverse connection protection: Yes
- Remote communication control: TTL serial port
- Main functions of the system: automatic, manual, setting and serial port control
- Speed range: 0.1 ~ 999 laps / min Number of forward rotation pulses: 1-9999999 pulses
- Number of reverse pulses: 1-9999999 pulses
- Number of cycles: 1-9999
- Forward rotation delay time: 0.0-999.9 seconds
- Reverse delay time: 0.0-999.9 seconds
- Subdivision selection range: 1-128 subdivision
- Product service environment: – 5 ℃ – 60 ℃ (no condensation)
Product function
Product details
Product wiring
Interface function introduction and operation method
The controller is divided into two interfaces: operation + interface+[F] menu setting interface
Operating instructions
Serial number | Function | Adjustable range | Defaults | ||
F-01→? | Action flow mode selection(details below thetable) | 1-9 | 1 | ||
F-02 | Number of forward rotation pulses Unit: number (the upper three bits are adjusted by rotary encoder shift, and the upper three bitsdisplay Hxxx, and the lower four bits display xxxx) | 1 – 9999999 | 1600 | ||
F-03 | Forward rotation speed Unit: Revolution / minute | 0.1-999 | 10 | ||
F-04 | Number of reverse pulses Unit: Number (the upper three bits are adjusted by rotary encoder shift, and the upper three bits display Hxxx, andthe lower four bits display xxxx) | 1 – 9999999 | 1600 | ||
F-05 | Reversal speed Unit: circle (revolution)/min | 0.1-999 | 10 | ||
F-06 | Cycle work times (among them— =numeroustimes) Unit: times | 0-9999 or countlesstimes | 1 | ||
F-07 | Forward rotation in place delay Unit: secondaccuracy ± 0.2 second | 0.0-999.9 | 0.0 | ||
F-08 | Reverse in place delay Unit: second accuracy ± 0.2second | 0.0-999.9 | 0.0 | ||
F-09 | Number of pulses per revolution: 1-9999 (X10) Unit: 10 (for example, the step angle is 1.8 degrees, the stepping motor drives 8 segments, and one revolution is 360 / 1.8 * 8= 1600, setting 160, actual 1600) | 1-9999 | 160 | ||
F-10 | Main interface display contentUp: motor coil speed (unit: RPM) Downlink: delay time (unit: s) / number of cycles (unit: Times) 00- Motor coilspeed delay time 01- Motor coilspeed cycle times | 0-1 | 00 | ||
F-11 | Action when pressing pause key0 – slow stop of motor deceleration1 – motor stopsimmediately (emergency stop has impact) | 0-1 | 0 | ||
F-12 | Acceleration and deceleration level 1-100, 1slowest, 100 fastest | 1-100 | 20 | ||
F-13 | Postal address | 1-255 | 1 |
【F01:action process mode selection】list of required action processes
number | Action description |
【F01】→P01 | The motor works with [knob on controller]. |
【F01】→P02 | It keeps rotating after pressing the button, and stops when it is released. [Press CW ]Always rotate forward [Press CCW ] Always reverse |
【F01】→P03 | After pressing the button, keep rotating, Press STOP to stop. [press CW] forward rotation[press CCW] reverse rotation |
【F01】→P04 | After pressing the button, it can rotate forward or reverse-delay according to the set distance, and it can cycle F-06 times. [Press CW] Forward rotation-Delay (F-07) [PressCCW] Reverse rotation-Delay (F-08) |
【F01】→P05 | After pressing the button, it can cycle according to the set distance f orward or reverse delay(F-06)。 Return to zero at the end of the cycle. [press CW] forward rotation delay (F-07), Cycle (F-06), return to zero [press CCW] reverse delay (F-08),Cycle (F-06), return tozero. |
【F01】→P06 | After pressing the button, cycle forward and reverse according to the set distance.Abbreviations: [press CW] forward delay (F-07) – reverse delay (F-08), [press CCW] reverse delay (F-08) – forward delay (F-07), above cycle (F-06) |
【F01】→P07 | After pressing the button, the motor will rotate forward or reverse permanently, release the button, – delay – return to zero. Abbreviations: [press CW] forward rotation – release – delay (F-07) – return to zero, [press CCW] reverse rotation – release – delay (F-08) – returnto zero. |
【F01】→P08 | After pressing the button, forward or reverse – delay according to the set time. |
Recyclable (F-06). Abbreviations: [press CW] forward rotation time (F-07) – delay (F-08), [press CCW] reverse rotation time (F-08) – delay (F-07), the above cycle (F-06). | |
【F01】→P09 | After power on, it will automatically cycle forward and reverse according to the set distance. Abbreviations: forward delay (F-07) – reverse delay ( F-08), cycle (F-06) |
Product size
SMC02 Stepper motor controller communication protocol
V1.0
Protocol Introduction
Using TTL serial transmission interface and MODBUS-RTU communication protocol, this product only supports function codes 0x03, 0x06, and 0x10.
Introduction to Communication Protocol
Information transmission is asynchronous in Modbus-RTU mode
Starting bit | 1 bit |
Data bits | 8 bit |
Parity bit | not have |
Stop bit | 1 bit |
Data frame structure
Data frame
interval |
Address code | function code | data area | CRC check |
3.5 bytes or
more |
1 byte | 1 byte | N byte | 2 byte |
Before sending data, it is required that the data bus rest time, i.e. no data transmission time, be greater than 3.5 (e.g. 5ms at a baud rate of 9600). Message transmission must start with a pause interval of at least 3.5 bytes, and the entire message frame must be treated as a continuous data transmission stream. If there is a pause time of more than 3.5 bytes before the frame is completed, The receiving device will refresh incomplete messages and assume that the next byte is the address field of a new message. Similarly, if a new message starts with the previous message within less than 3.5 characters, the receiving device will consider it a continuation of the previous message.
Address Code
The address code is the first byte (8 bits) of each communication information frame, ranging from 1 to 255 (initially set to 1,0 and also the broadcast address). This byte indicates that the slave set by the user will receive information sent by the host. Each slave must have a unique address code, and only slaves that match the address code can respond to feedback messages. When the slave sends back information, the returned data starts with their respective address codes. The address code sent by the host indicates the slave address to be sent, while the address code returned by the slave indicates the slave address to be returned. The corresponding address code indicates where the information comes from. 1.2 Function Code
The function code is the second byte transmitted in each communication information frame, and the ModBus communication protocol can define function codes ranging from 1 to 127. Sent as a host request, telling the slave what action to take through a function code. As a response from the slave, the function code returned by the slave is the same as the function code sent from the master, and indicates that the slave has responded to the master and performed relevant operations. This machine only supports function codes 0x03, 0x06, and 0x10.
Function code | Definition | Operation (binary) |
0x03 | Read register data | Read data from one or more registers |
0x06 | Preset Single Register | Write a set of binary data into a single register |
0x10 | Write multiple registers | Write multiple sets of binary data into multiple registers |
Register
Introduction to Protocol Registers (Data within a Single Register Address is Double Byte Data)
Name | Illustrate | Byte count | Readi ng and writi
ng |
Register address |
System parameters, written will be stored | ||||
F-01 | Action process mode selection | 2 | R/W | 0000H |
F-02 | Number of forward pulses | 4 | R/W | 0001H |
F-03 | Forward rotation speed | 2 | R/W | 0003H |
F-04 | Reverse pulse count | 4 | R/W | 0004H |
F-05 | Reverse speed | 2 | R/W | 0006H |
F-06 | Number of working cycles | 2 | R/W | 0007H |
F-07 | Forward to position delay | 2 | R/W | 0008H |
F-08 | Reverse in place delay | 2 | R/W | 0009H |
F-09 | Number of pulses per revolution | 2 | R/W | 000AH |
F-10 | Main interface display content | 2 | R/W | 000BH |
F-11 | Action when pressing the pause button | 2 | R/W | 000CH |
F-12 | Acceleration and deceleration levels | 2 | R/W | 000DH |
F-13 | Module address 1-255 | 2 | R/W | 000EH |
COM | Control command 0 using serial port
instead of 1 using serial port control |
2 | R/W | 000FH |
Read information and run information | ||||
Current motor operating status: 00- stop
01- acceleration status 02- deceleration status 03- constant speed status |
2 | R | 0010H | |
Current motor rotation direction: 00- forward rotation 01- reverse rotation | 2 | R | 0011H | |
Serial Port Control Run Command (Set COM (000F) address to 1 serial port control mode before serial port control | ||||
Serial Port Control Run Command | Serial port control operation mode 00- forward rotation 01- reverse rotation 02- slow stop 03- immediate stop 0xFF – default state after execution | 2 | R/W | 0100H |
Serial port control for running, 00- no permanent rotation 01- enable permanent rotation default 0 | 2 | R/W | 0101H |
The distance of the serial port control operation is 16 bits higher than the pulse count (which works under permanent rotation), with a
default of 10000 bits |
2 | R/W | 0102H | |
The distance of the serial port control operation is 16 bits lower than the pulse count (which works under permanent rotation), with a default of 10000 bits | 2 | R/W | 0103H | |
The acceleration and deceleration levels controlled by serial port are 1-100, with a default of 20 | 2 | R/W | 0104H | |
The default running speed for serial port control is 100 | 2 | R/W | 0105H |
Example 1: Reading System Parameters (F-01 to F-02) Using the [03 (0x03) Read Holding Register] instruction Host sending:
01 | 03 | 00 00 | 00 02 | C4 0B |
Slave address | Function code (Read
Register) |
Starting address
The regulation is 2 bytes |
Number of Registers | CRC Check Code |
The controller responds:
01 | 03 | 04 | 00 01 06 40 | A9 A3 |
Slave address | Function code (Read
Register) |
Number of Registers x2 | Register value Quantity=Number of registers x2 | CRC Check Code |
Example 2: Serial port controller operation
- Set the controller to serial port control mode
Host sending:
01 | 06 | 00 0D | 00 01 | D9 C9 |
Slave address | Function code | Starting address
The regulation is 2 bytes |
Write value Quantity: 2
bytes |
CRC Check Code |
The controller responds:
01 | 06 | 00 0D | 00 01 | D9 C9 |
Slave address | Function code | Starting address
The regulation is 2 bytes |
Write value Quantity: 2 bytes | CRC Check Code |
Modifying parameters for serial port control operation
Host sending
01 | 10 | 01 02 | 00 02 | 04 | 00 00 4E 20 | 4B 9E |
Slave | Function | Starting | Number of | Byte | Write value | CRC |
address | code | address
The regulation is 2 bytes |
registers | count | Quantity:=Bytes | Check Code |
The controller responds:
01 | 10 | 01 02 | 00 02 | E1 F4 |
Slave address | Function code | Starting address
The regulation is 2 bytes |
Number of registers | CRC Check Code |
Serial port control forward conversion
Host sending:
01 | 06 | 01 00 | 00 00 | 88 36 |
Slave
address |
Function
code |
Starting address
The regulation is 2 bytes |
Write value
Quantity:=Bytes |
CRC Check
Code |
The controller responds:
01 | 06 | 01 00 | 00 00 | 88 36 |
Slave address | Function code | Starting address
The regulation is 2 bytes |
Write value Quantity:=Bytes | CRC Check Code |
Serial port control operation command (set 000F to 1 serial port control
mode before serial port control) |
||||
Serial | Control method 0 Manual control 1 | 2 | R/W | 000FH |
Port | Remote control from upper computer | |||
Control | Serial port reading operation | 2 | R/W | 0100H |
Run | status 00- forward rotation 01- | |||
Command | reverse rotation 03- stop | |||
immediately | ||||
The number of pulses for serial | 2 | R/W | 0101H | |
port control operation is 16 bits | ||||
high, with a default of 10000 bits | ||||
The default number of pulses for | 2 | R/W | 0102H | |
serial port control operation is | ||||
10000 if the low 16 bits are used | ||||
The acceleration and deceleration | 2 | R/W | 0103H | |
levels controlled by serial port | ||||
are 1-100, with a default of 20 | ||||
The default running speed for | 2 | R/W | 0104H | |
serial port control is 100 |
- Set the remote control mode of the upper computer (default address 01) 01 06 00 0F 00 01 48 0A
- Set forward, reverse, and stop 01 10 01 01 00 00 00 27 10 01 64 CRCH CRCL
FAQs
- Q: How do I set the motor to rotate in a specific direction?
A: Use the forward rotation speed setting for clockwise rotation and the reverse rotation speed setting for counterclockwise rotation. - Q: What is the purpose of the cycle work times setting?
A: The cycle work times setting allows you to specify the number of repetitive cycles the motor should perform before stopping.
Documents / Resources
![]() |
Emiif ZK-SMC02 Stepper Motor Driver Controller [pdf] Installation Guide ZK-SMC02, ZK-SMC02 Stepper Motor Driver Controller, ZK-SMC02, Stepper Motor Driver Controller, Driver Controller, Controller |