BUSMASTER CANopen:连接节点与 EDS
适用 BUSMASTER 3.2.2.50,中文界面 。
1. 开始前,准备好这些
Section titled “1. 开始前,准备好这些”准备 BUSMASTER 3.2.2.50,中文界面 、受支持的 CAN 接口、已接线且可操作的 CANopen 对端,以及对端的 Node-ID、波特率和匹配的厂商 EDS/DCF。
| 名称 | 用途 | 使用时确认 |
|---|---|---|
| CAN 通道 | 选择实际接线的接口 | CAN 1 是本机分配的逻辑通道;对应哪个物理口,以通道配置为准 |
| Node-ID | 定位总线上的节点,范围 1~127 | 示例为 8;手动添加记录不会创建从站 |
| EDS / DCF | 描述对象、类型、权限和 PDO 配置 | 导入文件不会自动写入设备;文件须与设备型号及固件匹配 |
教学节点与练习文件
Section titled “教学节点与练习文件”本教程的截图和数值采用 教学节点 8 ,普通 CAN、500 kbit/s、默认 SDO 路由(请求 0x608、响应 0x588)。教学节点由独立的 canopen-python 2.4.1 对端运行,采用下表对象。
本页提供 EDS 和初始数据文件下载。EDS 可用于离线浏览对象、PDO 定义和练习工程保存;在线练习需运行教学节点,或连接实际 CANopen 设备。接入实际设备时,使用对应型号和固件的厂商 EDS,并按对象字典选择地址、类型及读写权限。
| 教学对象 | 类型 / 权限 | 本页用途与初值 |
|---|---|---|
0x1018:1 |
UNSIGNED32 / ro | 身份读取与重复读取;0x4255534D,原始字节 4D 53 55 42 |
0x1017:0 |
UNSIGNED16 / rw | 心跳生产周期;初值 500 ms,F4 01 |
0x2000:0 |
UNSIGNED32 / rw / 可映射 | 演示数值;初值 0x12345678,78 56 34 12 |
0x2002:0 |
UNSIGNED16 / rw / 可映射 | 演示模式;初值 9,09 00 |
0x1400 / 0x1600 |
RPDO1 通信 / 映射 | COB-ID 0x208,异步类型 255;依次映射 0x2000:0 的 32 位与 0x2002:0 的 16 位 |
0x1800 / 0x1A00 |
TPDO1 通信 / 映射 | COB-ID 0x188,同一组 6 字节;教学节点在 Operational 时周期发送 |
0x2100:0 |
DOMAIN / rw | 文件练习;教学节点初始数据 6145 字节,另附恢复用文件 |
教学模型还提供有符号数、浮点数、字符串等对象,供进阶浏览。
本工具范围为 CANopen CC / CiA 301、经典 CAN ,单帧数据至多 8 字节。CANopen FD / USDO、主动 LSS 配置主站及 CiA 402 专用面板不在本页功能范围;LSS 可在事件中被动解析。
2. 先认识主窗口
Section titled “2. 先认识主窗口”在 BUSMASTER 顶部功能区找到 CANopen (位于“XCP 标定”旁),点击打开 CANopen 窗口。
CANopen 主窗口:节点 8、教学 EDS、系统时间显示与身份对象读取结果。
| 区域 | 用途 |
|---|---|
| 左上:节点 | 发现、添加、选择目标节点;查看状态、身份匹配与最近接收 |
| 右侧:事件解析 | 查看时间、TX/RX、COB-ID、类型、节点、解析字段和原始数据 |
| 下方:命令准备 | 选择 SDO/NMT/SYNC/TIME/PDO,填写地址、数值和发送计划 |
| 底部:设置与状态 | 设置通道与监测,开始/停止分析,查看事务结果 |
准备 → 检查预览 → 开始发送 是三个连续动作。修改命令、对象或计划后,要重新准备。TX、RX 分别表示发送和接收方向;读取成功可通过节点响应和底部完成结果确认。
“发送任务…”用于查看或停止重复事务;“分析历史…”用于筛选历史记录,详见事件分析一章。
3. 连接 CAN,并启动分析
Section titled “3. 连接 CAN,并启动分析”- 回到 BUSMASTER 主界面,点击 驱动选择 ,选择实际使用的 CAN 接口。
- 打开 通道配置 ,按完整设备名称和物理口选择已接线通道,设置与节点一致的波特率。示例使用普通 CAN、500 kbit/s。
- 核对 CAN_H、CAN_L、参考地与终端配置,点击 BUSMASTER 的 连接 。
- 打开 CANopen → 设置… ,在“CAN 通道”选择刚才的实际通道,本页为 CAN 1;选择 心跳(Heartbeat) ,初次使用保留默认监测及响应超时。
- 将“时间显示”选为 系统时间 ,点击 应用 返回主窗口,再点击 开始分析 。
- 观察新的 RX 事件、节点状态与最近接收时间。存在手动添加的行,只表示本机已有记录。
CANopen 设置:本机监测方式、响应超时与 3.2.2.50 的时间显示选项。
Heartbeat 设置的是 BUSMASTER 的本机监测方式 ,不会自动写入设备的心跳周期。设备是否生产心跳及其周期由设备配置决定;设备支持时可通过 0x1017:0设置。
关闭监测和 Heartbeat 不主动发送节点守护请求;选择 Node guarding 后,软件会按设置周期发送守护 RTR。按设备实际支持选择,通常优先使用 Heartbeat。
选择显示时间
Section titled “选择显示时间”| 模式 | 含义 |
|---|---|
| 系统时间 | 按电脑本地时区显示 HH:mm:ss.fff。BUSMUST USB-CAN(FD) 使用采集时间;其他驱动若未提供该时间,则使用本机接收时间 |
| 绝对时间 | 显示原始采集时间戳的秒值;起点依驱动而定,大秒数本身不是错误 |
| 相对时间 | 以当前分析会话中该通道首个观测帧为零点;不是与上一条事件的时间间隔 |
该设置同时控制事件列表、节点最近接收时间和分析历史;只切换时间显示不会改变 TIME 报文。TIME 的发送基准见网络命令。没有 RX 时,先检查通道、波特率、接线和对端是否发送。
4. 发现或手动添加节点
Section titled “4. 发现或手动添加节点”知道 Node-ID 时手动添加
Section titled “知道 Node-ID 时手动添加”- 在左上“节点编号”输入
8,点击 添加 。 - 单击节点 8 的行选中它,再核对下方发送区域的“节点”也是 8。
左上的添加编号与下方发送编号用途不同。相同编号不会重复插入;添加按钮因重复编号不可用属于正常状态。
按范围发现节点
Section titled “按范围发现节点”- 已连接并开始分析后,打开 设置… 。
- 在“节点发现默认值”将范围设为 8 至 8 ,点击 应用 。
- 返回主窗口点击 发现 ,等待结束后选择节点;需要中断时点击 停止扫描 。
发现会主动读取范围内节点的身份对象。未发现节点时,检查是否有心跳,并尝试读取厂商手册中列出的可读对象。
5. 导入 EDS,并查看对象字典
Section titled “5. 导入 EDS,并查看对象字典”加入资源库并绑定节点
Section titled “加入资源库并绑定节点”- 选中节点 8,打开 设置… → 资源库… 。
- 在 EDS/DCF 资源库点击 添加… ,选择下载的
busmaster-canopen-demo.eds;实际设备选择其厂商文件。 - 选中刚加入的文件,点击 使用选中项 。
- 返回设置,确认“节点 EDS/DCF”显示正确文件,点击 应用 。
EDS/DCF 资源库:添加教学描述文件,选择后应用到当前节点。
浏览与读取对象字典
Section titled “浏览与读取对象字典”- 返回主窗口,选中节点 8,点击 对象字典… 。
- 核对窗口顶部的 CAN 通道、Node-ID 和 EDS/DCF;找到
0x1018:1,查看名称、UNSIGNED32 类型及 ro 权限。 - 初次练习先浏览定义,完成后点击 关闭 ,按下一章读取身份对象。
对象字典:查看对象类型、访问权限和在线值。
需要批量读取在线值时,使用 全部读取 ;中断用 停止读取 。批量读取会尝试描述文件中的所有可读对象。本教学节点的 0x2100:0为 6145 字节,超过普通 SDO 编辑的 4 KiB 限制,应改用文件 SDO。若批读在该对象提示容量失败并触发通信保护,按恢复步骤处理后再做小参数读取。
顶部下拉框可选择资源库中的其他文件;点击 应用到当前节点 才会改变该节点绑定。切换文件本身不读取或写入设备。多个节点应逐个确认绑定。类型码 0x0007对应 UNSIGNED32,0x0006对应 UNSIGNED16;ro为只读,rw为可读写。
如需安装或升级 BUSMASTER,请前往下载中心获取当前正式版本与历史版本。



