3.2 KiB
3.2 KiB
Modbus 主项目接入验收清单
1. 配置验收
- 主项目启动时成功加载
device-profile.json。 - 配置文件随发布产物复制到预期目录。
- COM 口可以在主项目中选择并保存,没有硬编码
COM9。 - 配置缺少物理插位、出现重复寄存器或版本不支持时,程序阻止通讯并明确报错。
- 业务代码中没有写死从站、线圈、寄存器、量程和通道映射。
2. 协议单元测试
- CRC16-Modbus 计算和校验正确,CRC 低字节在前。
- 继电器写单线圈帧使用功能码
0x05。 - ON 值为
0xFF00,OFF 值为0x0000。 - 电压请求为从站 4、功能码
0x03、起始寄存器 0、数量 24。 - 电流请求为从站 5、功能码
0x03、起始寄存器 0、数量 24。 - 电压原始值按
UInt16解析。 - 电流原始值按二进制补码
Int16解析,负数测试通过。 - 电压公式为
DATA / 100。 - 电流公式为
DATA / 10000 × 60。 - 解析器拒绝 CRC 错误、从站错误、功能码错误和长度不足的回包。
3. 映射自动测试
- 物理插位完整覆盖 1~24。
- 24 个继电器从站/线圈组合不重复。
- 电压
registerOffset完整覆盖 0~23。 - 电流
registerOffset完整覆盖 0~23。 sourceDisplayChannel仅用于记录和诊断,没有参与回包字节寻址。
重点抽查:
| 物理插位 | 继电器 | 电压寄存器偏移 | 电流寄存器偏移 |
|---|---|---|---|
| 1 | 从站1 / 线圈7 | 0 | 4 |
| 8 | 从站1 / 线圈0 | 7 | 16 |
| 9 | 从站2 / 线圈7 | 8 | 0 |
| 16 | 从站2 / 线圈0 | 15 | 20 |
| 17 | 从站3 / 线圈7 | 16 | 8 |
| 24 | 从站3 / 线圈0 | 23 | 12 |
4. 实机逐路验收
对物理插位 1~24 逐路执行:
- 只闭合当前物理插位对应的继电器。
- 确认其他继电器没有误动作。
- 给当前接口施加已知电压和电流。
- 主项目读取一次完整电压帧和一次完整电流帧。
- 确认值出现在当前
physicalSlot,其他物理插位没有串位。 - 对比标准仪表,记录原始值、工程值和允许误差。
- 关闭继电器并确认硬件断开。
- 物理插位 1~8 通过。
- 物理插位 9~16 通过。
- 物理插位 17~24 通过。
- 电流正值通过。
- 电流负值或反向极性通过。
- 连续轮询稳定性通过。
5. 异常与稳定性验收
- 拔掉串口后能超时退出,不永久卡住界面。
- 恢复连接后可以重新打开串口。
- CRC 错误帧不会被当作有效测量值。
- Modbus 异常响应能够显示异常码。
- 继电器操作与采集轮询不会同时写串口。
- 重试不会把残留回包拼入下一次响应。
- 应用退出时串口正确关闭。
- 日志能够定位到时间、请求 HEX、响应 HEX、耗时和错误原因。
6. 完成标准
只有在以下条件全部满足后才视为接入完成:
- 主项目所有业务页面统一使用
physicalSlot。 - 24 路继电器、电压和电流均逐路实机通过。
- 配置文件成为映射的唯一权威来源。
- 主项目发布包在目标电脑上无需开发环境即可选择串口并运行。