NMT 与错误控制
NMT (Network Management)决定节点能否收发过程数据Heartbeat / Node Guarding / EMCY 决定“节点还活着吗、出了什么错”
1. NMT 状态机(从站视角) 经典状态:
1 2 3 4 5 6 7 8 9 10 11 上电/复位 │ ▼ Initialization │ ▼ Pre-Operational ◀── NMT Enter Pre-Operational │ │ │ └──▶ Stopped ◀── NMT Stop │ │ └── NMT Start ──▶ Operational
状态
SDO
PDO
典型用途
Initialization
否
否
上电初始化
Pre-Operational
是
否
配置 OD、映射 PDO
Operational
是
是
正常周期运行
Stopped
否
否
暂停应用通信
主站常用 NMT 命令(概念):
Start Remote Node
Stop Remote Node
Enter Pre-Operational
Reset Node
Reset Communication
NMT 帧优先级高(默认 COB-ID 0x000),可针对单节点或全网广播。
NMT / SYNC / EMCY / Heartbeat 的字节级格式 见:10-NMT-SYNC-TIME-EMCY-Heartbeat报文格式.md
2. 推荐启动顺序(工程模板) 1 2 3 4 5 6 7 8 1. 总线通、波特率一致、终端电阻正确 2. 节点上电 → Pre-Operational(或先 LSS 配 Node-ID) 3. 主站确认节点在线(Heartbeat / 主动探测) 4. SDO 写通信参数、PDO 映射、应用参数 5. (可选)存盘 1010h 6. NMT Start → Operational 7. 开始 SYNC + PDO 周期任务 8. 持续监视 Heartbeat / EMCY / 应用状态字
常见错误:未配置完就 Start,导致 PDO 映射不对、控制字无效、驱动拒动。
3. Heartbeat(推荐) 3.1 Producer Heartbeat 节点周期性发送自身 NMT 状态(默认 COB-ID 0x700 + Node-ID)。
关键对象:
1017h Producer Heartbeat Time(单位通常为 ms;0 表示关闭)
3.2 Consumer Heartbeat 监视者配置要监视的 Node-ID 与超时:
1016h Consumer Heartbeat Time(数组:Node-ID + 超时)
超时动作由应用决定:停轴、切安全态、告警、尝试复位等。
现代工程优先 Heartbeat,弱化 Node Guarding。
4. Node Guarding(遗留) 主站轮询从站,从站应答并翻转 toggle bit。 缺点:增加总线负载、实现复杂、易与 Heartbeat 混用出错。 新设计尽量只用 Heartbeat。
5. EMCY(Emergency) 设备检测到内部错误时发送紧急对象:
默认 COB-ID:0x080 + Node-ID
内容通常含:错误码、错误寄存器(1001h)相关信息、厂商特定字段
主站应:
记录 EMCY
结合 1001h / 1003h 与厂商手册解读
决定是否 Stop / Reset / 切安全扭矩关闭
EMCY 不是 可靠的“安全通道”;功能安全需 SRDO / 安全协议(如相关 Safety 规范)。
6. SYNC 与 TIME(特殊功能对象)
对象
作用
SYNC
广播同步事件;同步传输类型的 PDO 在 SYNC 后发送/接收生效
TIME
时间戳分发(可选)
同步相关对象示例:
1005h COB-ID SYNC
1006h Communication cycle period
1007h Synchronous window length(若支持)
多轴运动控制里,SYNC 常与 CiA 402 的插补/周期模式配合;精度受 CAN 抖动限制,高要求场景常转向 EtherCAT DC。
7. LSS(CiA 305)简述 当设备出厂 Node-ID=0xFF(未配置)或需现场改波特率时,用 LSS:
请求帧:0x7E5
响应帧:0x7E4
可按 Identity(1018h)选择性配置单个从站
官方说明:CiA 305 — Layer Setting Services
8. 故障模式速查
现象
优先检查
能 SDO 不能 PDO
是否仍在 Pre-Operational;PDO 映射/COB-ID
节点偶发掉线
Heartbeat 超时、线缆、供电、终端电阻
上电后无响应
波特率、Node-ID、LSS、硬件 CAN 收发器
突然停轴
EMCY、402 状态字故障位、急停输入
多节点冲突
COB-ID 重复、Node-ID 冲突
下一篇:03-SDO与PDO通信.md