CIA402从会到不会——状态机(1)
详细了解EtherCAT中的COE协议,以及CIA402各个模式控制的细节
简介
CIA402协议是用于CiA402是CANopen标准协议中的子协议之一,全称CAN in Automation Draft Standard Proposed 402 Version。
CIA402协议用于运动控制功能,定义了运动控制相关的一些对象参数,状态机和相关运行模式。
状态机

状态描述
| 状态 | 描述 |
|---|---|
| 初始化 | 驱动器初始化、内部自检已经完成。 |
| 伺服无故障 | 伺服驱动器无故障或错误已排除。 |
| 伺服准备好 | 伺服驱动器已准备好。 |
| 等待打开伺服使能 | 伺服驱动器等待打开伺服使能。 |
| 伺服运行 | 驱动器正常运行,已使能某一伺服运行模式,电机已通电,指令不为 0 时,电机旋转。 |
| 快速停机 | 快速停机功能被激活,驱动器正在执行快速停机功能。 |
| 故障停机 | 驱动器发生故障,正在执行故障停机过程中。 |
| 故障 | 故障停机完成,所有驱动功能均被禁止,同时允许更改驱动器参数以便排除故障。 对于可复位故障,参数更改后,可通过控制字 6040h=0x80 使故障复位。 |
控制命令与状态切换
| 编号 | CIA402状态切换 | 控制字 6040h | 状态字 6041h 的 bit0~bit9 |
|---|---|---|---|
| 0 | 上电→初始化 | 自然过渡,无需控制指令 | 0x0000 |
| 1 | 初始化→伺服无故障 | 自然过渡,无需控制指令 若初始化中发生错误,直接进入 13 |
0x0250 |
| 2 | 伺服无故障→伺服准备好 | 0x06 | 0x0231 |
| 3 | 伺服准备好→等待打开伺服使能 | 0x07 | 0x0233 |
| 4 | 等待打开伺服使能→伺服运行 | 0x0F | 0x0237 |
| 5 | 伺服运行→等待打开伺服使能 | 0x07 | 0x0233 |
| 6 | 等待打开伺服使能→伺服准备好 | 0x06 | 0x0231 |
| 7 | 伺服准备好→伺服无故障 | 0x00 | 0x0250 |
| 8 | 伺服运行→伺服准备好 | 0x06 | 0x0231 |
| 9 | 伺服运行→伺服无故障 | 0x00 | 0x0250 |
| 10 | 等待打开伺服使能→伺服无故障 | 0x00 | 0x0250 |
| 11 | 伺服运行→快速停机 | 0x02 | 0x0217 |
| 12 | 快速停机→伺服无故障 | 快速停机方式 605Ah 选择0~3,停机完成后,自然过渡,无需控制指令 | 0x0250 |
| 13 | 除故障外所有状态 →故障停机 | 除“故障”外其他任意状态下,伺服驱动器一旦发生故障,自动切换到故障停机状态,无需控制指令 | 0x021F |
| 14 | 故障停机→故障 | 故障停机完成后,自然过渡,无需控制指令 | 0x0218 |
| 15 | 故障→伺服无故障 | 0x80 bit7 上升沿有效;bit7 保持为 1,其他控制指令均无效。 |
0x0250 |
| 16 | 快速停机→伺服运行 | 快速停机方式 605Ah 选择5~7,停机完成后,发送 0x0F | 0x0237 |
控制模式
在EtherCAT总线控制下,即COE(CANopen Over EtherCAT)中,CIA402协议共有7种模式。
注:EtherCAT相关介绍可参考《EtherCAT从会到不会》相关介绍。
| 模式 | 操作模式 6060h |
|---|---|
| Profile Position Mode(位置规划模式) | 1 |
| Profile Velocity Mode(速度规划模式) | 3 |
| Profile Torque Mode(扭矩规划模式) | 4 |
| Homing Mode(原点复归模式) | 6 |
| Cyclic Synchronous Position Mode(周期同步位置模式) | 8 |
| Cyclic Synchronous Velocity Mode(周期同步速度模式) | 9 |
| Cyclic Synchronous Torque Mode(周期同步扭矩模式) | 10 |
CIA402从会到不会——状态机(1)
https://jacobblog.pages.dev/2026/03/08/Cia402-01状态机/