SSPC-Tester/Docs/Modbus接口规范/接入验收清单.md

82 lines
3.2 KiB
Markdown
Raw Permalink Normal View History

# 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. 映射自动测试
- [ ] 物理插位完整覆盖 124。
- [ ] 24 个继电器从站/线圈组合不重复。
- [ ] 电压 `registerOffset` 完整覆盖 023。
- [ ] 电流 `registerOffset` 完整覆盖 023。
- [ ] `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. 实机逐路验收
对物理插位 124 逐路执行:
1. 只闭合当前物理插位对应的继电器。
2. 确认其他继电器没有误动作。
3. 给当前接口施加已知电压和电流。
4. 主项目读取一次完整电压帧和一次完整电流帧。
5. 确认值出现在当前 `physicalSlot`,其他物理插位没有串位。
6. 对比标准仪表,记录原始值、工程值和允许误差。
7. 关闭继电器并确认硬件断开。
- [ ] 物理插位 18 通过。
- [ ] 物理插位 916 通过。
- [ ] 物理插位 1724 通过。
- [ ] 电流正值通过。
- [ ] 电流负值或反向极性通过。
- [ ] 连续轮询稳定性通过。
## 5. 异常与稳定性验收
- [ ] 拔掉串口后能超时退出,不永久卡住界面。
- [ ] 恢复连接后可以重新打开串口。
- [ ] CRC 错误帧不会被当作有效测量值。
- [ ] Modbus 异常响应能够显示异常码。
- [ ] 继电器操作与采集轮询不会同时写串口。
- [ ] 重试不会把残留回包拼入下一次响应。
- [ ] 应用退出时串口正确关闭。
- [ ] 日志能够定位到时间、请求 HEX、响应 HEX、耗时和错误原因。
## 6. 完成标准
只有在以下条件全部满足后才视为接入完成:
- 主项目所有业务页面统一使用 `physicalSlot`
- 24 路继电器、电压和电流均逐路实机通过。
- 配置文件成为映射的唯一权威来源。
- 主项目发布包在目标电脑上无需开发环境即可选择串口并运行。