KH-CanOpenTool
KH-CanOpenTool 是一款 Windows 系统下的 CANopen 调试工具,适用于通过 CAN 适配器连接 CANopen 总线后进行节点管理、NMT 控制、SDO 读写、PDO 发送与报文查看。
下载地址:https://e.gitee.com/ChengDu-KunHong/repos/ChengDu-KunHong/kh-canopentool/releases

功能概览
- 支持 EDS 文件导入配置
- 支持工程导入 / 导出,便于复用已配置的节点、EDS 与通信参数
- 可选 CAN 设备通道与波特率
- 设置 NMT 控制节点状态
- 通过 SDO 进行对象字典读写
- 通过 RPDO / TPDO 页面进行 PDO 调试
- 页面查看发送和接收报文,包含 COB-ID、数据、类型、节点和说明等信息。
运行环境
- 操作系统:Windows
- CAN 设备:现支持PCAN硬件,后续会增加更多主流设备支持
快速开始
工具下载与环境准备
- 通过上方下载地址下载发行版压缩包,解压后使用。
- 确认 CAN 适配器已连接电脑,并已安装对应设备驱动。
- 双击运行
KH_CAnOpenTool.exe。
创建工程
- 如果已有工程文件,可通过顶部
文件菜单导入工程,快速恢复节点、EDS 与通信参数配置。 - 如果首次使用,在左侧节点列表点击
+,输入Node ID,按需导入EDS配置文件,完成节点添加。 - 选中左侧
CanOpen 主机,在右侧选择实际识别到的 CAN 设备通道和波特率,例如对应设备通道与250K。
开始使用
- 点击
▶️建立通信。 - 选中目标节点,在
NMT、SDO、RPDO、TPDO、OD页面进行调试。 - 在底部
日志或Frames页面查看运行信息和 CANopen 报文。 - 调试完成后可通过顶部
文件菜单导出工程,便于下次或其他电脑快速使用。
常用操作
工程导入 / 导出
工程文件用于保存常用调试配置,适合把已经配置好的节点列表、EDS 关联、CAN 设备通道和波特率等信息复用到下一次调试。
导入工程:通过顶部文件菜单选择工程文件,导入后检查节点、EDS、CAN 通道和波特率是否与当前硬件环境一致。导出工程:完成节点和通信参数配置后,通过顶部文件菜单导出工程文件,后续可直接导入使用。
建议在每次新增节点、调整 EDS 或修改波特率后重新导出工程,避免下次使用旧配置。
节点管理
在 NodeEditor 页面左侧点击 + 添加节点。弹窗中填写 Node ID,并可通过 EDS 输入框右侧按钮选择 EDS 文件。选中节点后点击删除按钮可移除节点。 
启动 CAN 通信
选中 CanOpen 主机,在主界面选择:
CAN设备:选择已识别到的 CAN 设备通道。波特率:选择与总线一致的波特率,例如250K。
点击 ▶️ 后工具开启通道。若设备列表未刷新,可点击设备选择区域旁的刷新按钮重新扫描。

NMT 控制
在目标节点页面进入 NMT 标签页,选择需要发送的 NMT 命令后点击 NMT:
Start Remote Node:启动远程节点。Stop Remote Node:停止远程节点。Enter Pre-Operational State:进入预操作状态。Reset Node:复位节点。Reset Communication:复位通信。

SDO 读写
进入 SDO 标签页后填写:
索引:对象字典索引,例如0x6060。子索引:对象字典子索引,例如0x00。数据类型:选择读写的数据类型,例如INT8。数据值:写参数时填写需要写入的值。例如0x03。
选择 SDO上传(读参数) 或 SDO下载(写参数) 后点击 Send 发送请求。响应结果可在底部 Frames 页面查看。

报文查看
切换到底部 Frames 页面可查看通信报文,主要字段包括:
Direction:发送或接收方向。Cob:COB-ID。数据:CAN 数据区内容。类型:报文类型,例如 HEARTBEAT、RSDO、TSDO、RPDO。节点:节点 ID。Info:解析说明。
可使用 清空 清除当前记录,使用 搜索 查找报文,勾选 Auto Scroll 自动滚动到最新报文;Load File 和 Save File 可用于加载或保存 Frames 数据。

注意事项
- 启动前请确认 CAN 设备驱动正常、设备未被其他程序占用。
- 工具选择的波特率必须与实际 CANopen 总线一致。
- SDO 写参数前请确认索引、子索引、数据类型和值均符合目标设备对象字典定义。
- 如果启动通信失败,优先检查 CAN 适配器连接、设备驱动安装、DLL 文件是否完整,以及设备列表中是否能识别到 CAN 通道。