CIA402从会到不会——状态机(1)

详细了解EtherCAT中的COE协议,以及CIA402各个模式控制的细节

简介

CIA402协议是用于CiA402是CANopen标准协议中的子协议之一,全称CAN in Automation Draft Standard Proposed 402 Version。

CIA402协议用于运动控制功能,定义了运动控制相关的一些对象参数,状态机和相关运行模式。

状态机

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状态机/
作者
Jacob Chen
发布于
2026年3月8日
许可协议