DDSM350-CT Product Usage Tutorials
The DDSM350-CT product user tutorials support two communication interfaces: UART and CAN. Select the corresponding tutorial according to your actual project requirements.
CAN Communication Protocol
Detailed introduction to the CAN communication protocol for hub motors, helping you select a communication method suitable for your project.
UART Communication Protocol
Detailed introduction to the UART communication protocol for hub motors, helping you select a communication method suitable for your project.
Common Object Table
Identifier Description:
RW — Read-Write, RO — Read-Only, WO — Write-Only
DEC — Internal unit, a conversion factor is required to obtain actual physical quantities
Data Types:
08U — Unsigned Byte, 08S — Signed Byte
16U — Unsigned 16-bit Integer, 16S — Signed 16-bit Integer
32U — Unsigned 32-bit Long Integer, 32S — Signed 32-bit Long Integer
Save Flags: S1, S2, … , S5
(All object variables marked with a save flag will load values from EEPROM upon power-on initialization)
S1 — Communication Parameter Group
S2 — IO Configuration Parameter Group
S3 — Calibration Parameter Group
S4 — Motor Parameter Group
S5 — Control-Loop Parameter Group
U[y,x] — Unit conversion formula; take only the integer part when converting physical quantities into [DEC] units.
Table F1-1 Motor Parameters
| UART Object Address | CAN Object Address | Object Attribute | Unit | Description |
|---|---|---|---|---|
| 0x7046 | 0x641016 | 16U, RO | HEX | Current motor model code |
| 0x7031 | 0x641001 | 16U, RW, S4 | HEX | Motor model code |
| 0x7032 | 0x641002 | 08U, RW, S4 | HEX | Feedback type |
| 0x7033 | 0x641003 | 32U, RW, S4 | DEC | Encoder resolution (Default: 4096) |
| 0x7035 | 0x641005 | 08U, RW, S4 | DEC | Motor pole-pair count |
| 0x7036 | 0x641006 | 08U, RW, S4 | DEC | Excitation mode |
| 0x7037 | 0x641007 | 16S, RW, S4 | DEC | Excitation current |
| 0x7038 | 0x641008 | 16U, RW, S4 | ms | Excitation time |
| 0x7039 | 0x641009 | 16U, RW, S4 | 0.1A | Motor overload current |
| 0x703A | 0x64100A | 16U, RW, S4 | S | Motor overload time constant |
| 0x703B | 0x64100B | 16U, RW, S4 | 0.1A | Maximum motor current |
| 0x7043 | 0x641013 | 08U, RW, S4 | DEC | Motor rotation direction |
| 0x704A | 0x64101A | 16U, RW, S4 | rpm | Motor rated speed |
Table F1-2 Operating Modes and Control
| UART Object Address | CAN Object Address | Object Attribute | Unit | Description |
|---|---|---|---|---|
| 0x7017 | 0x606000 | 08S, RW, S5 | DEC | Operating Mode 3 Speed mode with acceleration/deceleration control -3 Instant speed mode 1 Position mode |
| 0x7019 | 0x604000 | 16S, RW | HEX | Control Word 0x06 Motor power-off (shaft released) 0x0F Motor power-on (enable) 0x86 Clear drive alarm 0x1F Move to absolute target position under position mode 0x0F Move to relative target position under position mode |
| 0x7018 | 0x606100 | 08S, RO | DEC | Active operating mode |
| 0x7011 | 0x260100 | 16U, RO | HEX | Drive Error Status Word 1 Each BIT represents one error condition, as defined below BIT[0]: Internal error BIT[1]: Encoder ABZ signal error BIT[2]: Encoder UVW signal error BIT[3]: Encoder count error BIT[4]: Drive over-temperature BIT[5]: DC-bus over-voltage BIT[6]: DC-bus under-voltage BIT[7]: Drive output short-circuit BIT[8]: Brake resistor over-temperature alarm BIT[9]: Position following error exceeded threshold BIT[10]: Reserved BIT[11]: I²*T fault (drive or motor overload) BIT[12]: Speed following error exceeded threshold BIT[13]: Motor over-temperature alarm BIT[14]: Motor homing failure (serial encoder) BIT[15]: Communication dropout alarm |
| 0x701F | 0x605A11 | 08U, RW | DEC | Emergency-Stop Command 1: Emergency stop activated 0: Emergency stop cleared |
| 0x7091 | 0x607A00 | 32S, RW | DEC | Absolute Target Position (Absolute target position under Operating Mode 1) |
| 0x709F | 0x607B00 | 32S, RW | DEC | Relative Target Position (Relative target position under Operating Mode 1) |
| 0x7098 | 0x608100 | 32U, RW, S5 | DEC | Trapezoidal Velocity (Maximum velocity of trapezoidal profile under Operating Mode 1) U[y,x]: [DEC]=([rpm] * 512 * [Feedback Resolution])/1875; Default [Feedback Resolution]: 4096 |
| 0x709D | 0x608200 | 16U, RW, S5 | rpm | Trapezoidal Velocity (rpm) (Maximum velocity of trapezoidal profile under Operating Mode 1) Note: Writing this object updates the value of object [0x7098] |
| 0x7099 | 0x608300 | 32U, RW, S5 | DEC | Trapezoidal Acceleration U[y,x]: [DEC]=[rps/s] * 256 * [Feedback Resolution] / 15625; Default [Feedback Resolution]: 4096 |
| 0x709A | 0x608400 | 32U, RW, S5 | DEC | Trapezoidal Deceleration U[y,x]: [DEC]=[rps/s] * 256 * [Feedback Resolution] / 15625; Default [Feedback Resolution]: 4096 |
| 0x709B | 0x605A01 | 32U, RW, S5 | DEC | Quick-Stop Deceleration Defines deceleration for quick-stop sequence; valid when drive runs in Mode 3, 1 Default value: determined by preset profile U[y,x]: [DEC]=[rps/s] * 256 * [Feedback Resolution] / 15625; Default [Feedback Resolution]: 4096 |
| 0x70B1 | 0x2FF009 | 16S, RW | rpm | Target Velocity (rpm) (Target velocity under Operating Mode 3, -3) Note: Writing this object updates the value of object [0x70B2] |
| 0x70B2 | 0x60FF00 | 32S, RW | DEC | Target Velocity (Target velocity under Operating Mode 3, -3) U[y,x]: [DEC]=[rpm] * 512 * [Feedback Resolution] / 1875; Default [Feedback Resolution]: 4096 |
| 0x70E1 | 0x60F608 | 16S, RW | DEC | Target Current (Target current under Operating Mode 4) U[y,x]:[DEC]=[Arms] * 1.414 * 2048 / I_MAX Note: For this motor, I_MAX=15; |
| 0x70E2 | 0x607300 | 16U, RW | DEC | Target Current Limit (Active current-loop target-current limit for all operating modes) U[y,x]:[DEC]=[Arms] * 1.414 * 2048 / I_MAX Note: For this motor, I_MAX=15; |
Table F1-3 Measured Data
| UART Object Address | CAN Object Address | Object Attribute | Unit | Description |
|---|---|---|---|---|
| 0x7071 | 0x606300 | 32S, RO | DEC | Actual position value |
| 0x7075 | 0x60F918 | 16S, RO | rpm | Actual Speed (rpm) Sampling period configurable, default 30 ms, resolution 1 rpm |
| 0x7076 | 0x60F919 | 32S, RO | 0.001rpm | Actual Speed (0.001 rpm resolution) Sampling period configurable, default 30 ms, resolution 0.001 rpm |
| 0x7079 | 0x60F91A | 16U, RW, S5 | ms | Sampling period for actual-speed measurement Default: 30 |
| 0x7077 | 0x606C00 | 32S, RO | DEC | Actual speed Internal sampling time: 250 µs [DEC] = ([rpm] * 512 * [Feedback Resolution]) / 1875 Default [Feedback Resolution]: 4096 Note: High speed fluctuation may occur due to very short sampling interval |
| 0x7072 | 0x607800 | 16S, RO | DEC | Actual Iq Current [DEC] = [Arms] * 1.414 * 2048 / I_MAX Note: For this motor, I_MAX=15; |
| 0x7007 | 0x60F632 | 16U, RO | mA | Motor Iit actual current |
| 0x5001 | 0x60F712 | 16S, RO | V | Actual DC-bus voltage Resolution: 1 V |
| 0x7002 | 0x60F70B | 16S, RO | °C | Actual drive temperature |
| 0x7092 | 0x60F400 | 32S, RO | DEC | Position following error Deviation between actual position and target position during motion |
Table F1-4 IO Data and Control
| UART Object Address | CAN Object Address | Object Attribute | Unit | Description |
|---|---|---|---|---|
| 0x5100 | 0x20100A | 16U, RO | BIT | Hardware emergency-stop input status 0x0004: Emergency-stop signal active 0x0000: No emergency-stop signal |
| 0x5102 | 0x201001 | 16U, RO, S2 | BIT | Emergency-stop input polarity setting 0x0004: Signal polarity not inverted 0x0000: Signal polarity inverted Default: 0x0004 |
| 0x5101 | 0x201002 | 16U, RW | BIT | Software-simulated emergency-stop input 0x0004: Simulate emergency-stop signal 0x0000: No operation Default: 0x0000 |
| 0x5103 | 0x20100B | 16U, RO | BIT | Effective emergency-stop execution status Determined jointly by hardware emergency-stop status, emergency-stop polarity setting and software-simulated input. Boolean logic: ([0x5100] OR [0x5101]) XNOR [0x5102] |
Table F1-5 Communication Parameters
| UART Object Address | CAN Object Address | Object Attribute | Unit | Description |
|---|---|---|---|---|
| 0x1005 | 0x2FE001 | 08U, RW, S1 | DEC | TTL232 Baud-rate Configuration Value — Baud-rate 4: 38400 5: 56000 6: 57600 7: 115200 Changes take-effect after saving and power-cycle Factory default: 7 |
| 0x100F | 0x2FE00F | 08U, RW, S1 | DEC | TTL232 Protocol Selection 0: Proprietary protocol 1: Custom Protocol 1 2: Custom Protocol 2 Changes take-effect after saving and power-cycle Factory default: 0 |
| 0x100B | 0x2F8100 | 08U, RW, S1 | DEC | CAN Baud-rate Configuration Value — Baud-rate 0: 50K 1: 83.333K 2: 100K 3: 125K 4: 250K 5: 500K 6: 800K 7: 1000K Changes take-effect after saving and power-cycle Factory default: 5 |
| 0x100C | 0x65100F | 08U, RW, S1 | DEC | CAN Node-ID (stored internally) Changes take-effect after saving and power-cycle Factory default: 1 |
| 0x3010 | 0x410010 | 08U, RW, S1 | DEC | Communication-Dropout Stop Enable 0: Disabled 1: Enabled |
| 0x3011 | 0x410011 | 32U, RW, S1 | mS | Communication-Dropout Stop Delay Default: 600 When communication-dropout detection ([0x3010]) is enabled, the motor shaft will be released after the configured timeout expires |
| — | 0x470001 | 08U, RW | DEC | Simplified PDO Function 1 1: Enable TX-PDO1 (auto-report actual position & actual speed) 0: Disabled Default: 0 |
| — | 0x180003 | 16U, RW | mS | TX-PDO1 transmission interval, default 10 ms |
Table F1-6 Parameter Save Commands
| UART Object Address | CAN Object Address | Object Attribute | Unit | Description |
|---|---|---|---|---|
| 0x3061 | 0x2FE501 | 08U, RW | DEC | Save S1-group parameters command 1: Save all objects marked S1 Other values: No action |
| 0x3062 | 0x2FE502 | 08U, RW | DEC | Save S2-group parameters command 1: Save all objects marked S2 Other values: No action |
| 0x3063 | 0x2FE503 | 08U, RW | DEC | Save S3-group parameters command 1: Save all objects marked S3 Other values: No action |
| 0x3064 | 0x2FE504 | 08U, RW | DEC | Save S4-group parameters command 1: Save all objects marked S4 Other values: No action |
| 0x3065 | 0x2FE505 | 08U, RW | DEC | Save S5-group parameters command 1: Save all objects marked S5 Other values: No action |