PcanWork Modbus Tools 面向 PLC、仪表、网关、BMS、充电设备和工业控制系统联调,把传统 Modbus Poll 的主站能力与 Modbus Slave 的从站仿真能力放进同一套 Windows 桌面工具。当前版本为v0.1.37。
一、为什么需要主站与从站一体化
设备联调通常有两个方向:
- 电脑作为主站,主动读取或写入真实设备。
- 电脑作为从站,模拟设备等待 PLC、上位机或网关访问。
如果这两种工作分别由不同软件承担,连接参数、寄存器定义、数据显示格式和日志往往无法复用。PcanWork 使用统一的工作区、表格、事件日志和主题系统,让同一组寄存器测试可以从“读取真实设备”自然切换到“模拟设备”。
二、主站模式:覆盖 Modbus Poll 的核心流程
主站模式用于主动连接远端设备。基本步骤是:
- 选择 Modbus TCP 或 Modbus RTU。
- 填写远端 IP/串口、端口、超时等连接参数。
- 设置从站 ID、功能码、起始地址、数量和扫描周期。
- 选择 Unsigned、Signed、Hex、Float 等显示格式。
- 建立连接并开始单次读取或周期轮询。
- 根据需要写入线圈或寄存器。
支持的数据区包括线圈、离散输入、输入寄存器和保持寄存器。常用功能码的地址范围、数量上限和数据长度都会在界面与后端执行层校验,避免非法请求直接进入通信链路。
多工作区管理
不同地址段可以放进独立工作区。例如:
- BMS 总状态:保持寄存器 0~31。
- 单体电压:输入寄存器 100~299。
- 告警位:离散输入 0~63。
- 控制命令:线圈与可写保持寄存器。
每个工作区保存自己的功能码、地址、数量、扫描周期和格式。切换工作区不需要反复输入参数,保存后可以在下次测试或其他电脑继续打开。
自动重连与超时
现场网络会出现断线、设备重启和链路抖动。工具支持自动重连、超时和重连间隔。事件日志会记录连接、断开、超时与恢复过程,避免“表格不更新但不知道为何停止”的模糊状态。
三、从站模式:覆盖 Modbus Slave 仿真需求
从站模式让电脑模拟 Modbus TCP 或 RTU 设备,外部 PLC、网关或测试程序可以连接并读写模拟数据。
- 支持线圈、离散输入、输入寄存器和保持寄存器。
- 可直接编辑寄存器值并即时响应主站。
- 同时显示工程值和原始十六进制值。
- 统计请求数量、运行状态和仿真状态。
- 支持导入、导出仿真数据。
它特别适合“设备固件还没有完成,但上位机需要先联调”的阶段。测试人员可以预先构造正常值、边界值、故障值和跳变值,检查上位机的解析、告警和控制逻辑。
四、绑定失败与“未连接”分别是什么意思
TCP 从站绑定失败
从站监听地址必须属于本机网卡。假设电脑当前 IPv4 地址是 192.168.50.100,那么可以监听:
- 192.168.50.100:只监听这块网卡。
- 0.0.0.0:监听本机全部网卡。
不能填写远端 PLC、网关或从站设备的 IP,否则操作系统无法在本机绑定该地址。PcanWork 会明确提示“该地址不是本机网卡地址”,并建议使用 0.0.0.0 或本机实际 IPv4。
未连接不等于不能监听
“未连接”表示当前没有建立 Modbus 会话。对于 TCP 从站,正常顺序是先启动监听,再等待外部主站建立连接;在主站到来之前显示未连接是正常状态。
对于主站模式,未连接则表示还没有连接到远端设备,不能开始有效轮询。
五、寄存器格式、字节序与原始值
Modbus 线上的寄存器是 16 位数据,但工程上常把两个寄存器组合成 32 位整数或浮点数。调试时需要同时关注:
- 有符号/无符号解释。
- 十六进制原始值。
- 32 位寄存器顺序。
- 字节顺序。
- 浮点数缩放与工程单位。
PcanWork 的数据视图保留原始十六进制值,便于在工程值异常时回到协议层排查。对于 BMS 电压、温度、电流等带缩放系数的数据,应结合设备协议文档确认倍率和字节序。
六、事件日志、通信流量和曲线
底部区域将“事件日志”和“通信流量”分开:
- 事件日志:连接、断开、重连、超时、参数错误和运行状态。
- 通信流量:请求、响应、功能码、地址和异常响应。
- 曲线窗口:把连续变化的寄存器绘制成趋势,用于观察漂移、突变、周期波动和异常归零。
这样出现读取异常时,不只是看到一个红色错误,而是能够沿着连接状态、请求内容和寄存器变化建立完整证据链。
七、协议边界与稳定性设计
Modbus 常见错误包括:
- 起始地址与数量组合越界。
- 读取数量超过功能码允许上限。
- 写入数据长度与数量不一致。
- 单元 ID 非法。
- 把远端地址填入本机监听地址。
- 长时间轮询导致日志或队列无限增长。
PcanWork 在 UI 与后端双层进行边界校验;通信、记录和界面刷新采用独立有界通路。即使长时间轮询,也不会让日志和队列无上限增长。
八、典型使用方案
方案 A:调试真实 PLC/仪表
使用主站模式连接真实设备,按协议表创建多个工作区,分别轮询状态量、测量值和告警位;将关键寄存器加入曲线并保存工作区。
方案 B:上位机先行开发
使用从站模式建立模拟寄存器,配置正常值与故障值,让上位机在真实设备完成前先验证界面、报警和控制逻辑。
方案 C:现场问题复现
保存现场使用的地址段、扫描周期和格式。回到实验室后用从站模式重建寄存器状态,再通过事件日志与通信流量复盘问题。
九、下载与项目地址
当前版本:PcanWork v0.1.37,Windows x64。
- GitHub 下载
- Gitee 下载
- GitHub 仓库
- Gitee 仓库
- 产品网站
PcanWork Modbus Tools 的目标不是简单复制传统工具,而是让主站、从站、数据视图、日志和工作区成为一条可保存、可复现的工程流程。