CAN / CANopen / J1939
专业版功能
CAN 帧监视、CANopen、J1939 为专业版功能(试用期全开放)。
CAN 连接
连接方式选「CAN」,选择驱动插件(PCAN 等厂商插件,需先装对应驱动)或 Qt virtualcan 虚拟总线,设置通道与波特率(125k/250k/500k/1M 可手输),支持 CAN FD 及数据段波特率。
没有硬件也能调:virtualcan 虚拟总线配合示例工程 examples/can虚拟总线互测.proj,SDO/PDO/心跳全流程自测。
CAN 帧监视
入口:菜单 设备 → CAN 监视。

- 帧列表:按 ID 聚合显示,最新数据与计数一目了然
- 总线统计:帧率 fps、负载率、错误帧计数
- 总线状态:状态栏同步显示 Good / Warning / Error / BusOff
CANopen
强制要求 CAN 连接方式,协议参数只需节点号(1~127)与轮询周期。
- SDO 读写:expedited(≤4 字节)读写对象字典,参数表
co行地址格式索引:子索引(如6041:00) - PDO 订阅:
pd行地址格式COB-ID#字节偏移(如185#0);RPDO 写闭环支持 - EDS 导入:参数表「导入」选
.eds文件,按对象字典批量生成co/pd行并建新表 - 心跳与 NMT:菜单 设备 → CANopen 节点状态 + 5 个 NMT 命令(启动/停止/复位等)
典型配置(伺服驱动器):
text
连接方式:CAN 插件:pcan 通道 0 波特率 500k
通讯协议:CANopen 节点号 5 轮询周期 100ms
参数行: 状态字 co 地址 6041:00 uint16(只读)
控制字 co 地址 6040:00 uint16(可写,SDO)
PDO 信号 pd 地址 185#0J1939
PGN 订阅只读监视,同样强制 CAN 链路,无额外协议参数:
- 参数表行地址类型
j9,地址格式PGN#字节偏移(如转速F004#3),只读 - DBC 导入:参数表「导入」选
.dbc文件,按信号定义批量生成j9行
示例工程附 j1939示例.dbc,导入即可体验发动机数据监视。
常见问题
- 「CAN 插件不可用」:CAN 卡厂商驱动未安装,先用厂商工具确认能识别卡;无硬件时改用
virtualcan - 「CANopen 行写入须为 1~4 字节」:SDO expedited 限长,检查数据类型与数组个数
- 「不是 CANopen 协议设备」:
co/pd行绑定的设备不是 CANopen 协议,改设备名或改地址类型