公司动态

CANOpen总结回顾

📅 2026/8/27 20:18:29
CANOpen总结回顾
CANOpen将CAN的11位id叫做COB-ID高四位为功能码表示报文类型包括NMTSDORPDOTPDO等低7位叫Node-ID是设备地址也叫从机地址0表示广播给所有从机。CANOpen的从机有四种状态上电后进入初始状态还有预操作状态操作状态停止状态NMT管理报文COB-ID固定为0x000011位全为0数据内容为两位byte1是从机地址也就是Node-ID注意NMT的从机地址在数据位0表示广播byte0是CS命令字表示上图的各种命令改变从机的状态心跳报文Heartbeat由从站定时发送给主站COB-ID为0x700Node-ID数据为1位表示状态心跳报文和boot-up报文共用同一个功能吗0x700通过状态表来区分从站定时向主站发送主站收到后更新从站的心跳状态若超时则记为离线。EMCY紧急报文从站发送的故障报错COB-ID为0x080node-id,数据8位表示错误类型。SDO数据服务对象报文主机通过SDO报文对从机进行参数配置TxSDO的COB-ID为0x600node-idRxSDO的为0x580node-id有SDO写报文即给从站写数据从站回应SDO读报文为主站请求读取从站的信息从站返回信息。PDO过程数据对象报文分为RPDO从站接收和TPDO从站发送每个pdo有4路通过SDO映射来确定每路PDO代表的意思每个从站有4个TPDO和4个RPDOPDO报文的具体内容需要主机通过SDO报文来配置。PDO传输分为同步和异步同步需要SYNC同步报文启动同步和异步是相对于TPDO来说的即从站发给主站同步模式由主站设置从站的同步周期为x从站在收到主站x个SYNC报文后发送数据给主站。SYNC同步报文用于辅助PDO报文COB-ID为0x08作用是1、用于控制TPDO的发送。2、用于控制RPDO的激活。3、用于同步个节点时钟。