66 lines
4.1 KiB
Markdown
66 lines
4.1 KiB
Markdown
# 凤阳六月爆管模拟与 SCADA 复制
|
||
|
||
2026-10-22 已完成活动项目 `fengyang_v2`
|
||
(`b962c44e-8433-4a10-81e9-a64b70ac1152`)的三段模拟爆管数据及前一天基线复制。
|
||
一次性复制脚本及其专属测试已清理,来源、核对结果和备份记录如下:
|
||
|
||
| 方案名称 | 模型管段 | 模型管径 |
|
||
| --- | --- | --- |
|
||
| `2026-06-02 Pipe19026 DN200 burst` | `19026` | 200 mm |
|
||
| `2026-06-12 Pipe18751 DN160 burst` | `18751` | 160 mm |
|
||
| `2026-06-22 Pipe18750 DN160 burst` | `18750` | 160 mm |
|
||
|
||
方案名称、`burst_ID` 和 `network.pipes.diameter` 必须一致。时间使用方案的
|
||
`started_at` 和结果时间戳,历时为 4 小时,包含起止点,15 分钟一个采样。
|
||
不使用项目说明中的历史时间窗,也不使用旧的 `5hrs burst scheme` 数据。
|
||
|
||
源数据为 `analysis.node_results.pressure`,仅复制既有 50 个压力设备
|
||
`asset.scada_devices.node_id` 对应的节点。每段必须完整覆盖 17 个时间点,
|
||
即 850 条观测,三段共 2,550 条;方案状态必须为 `completed`。
|
||
|
||
压力源单位来自每个方案的 `parameters.result_units.pressure`,目标单位来自
|
||
设备的 `measurement_unit`,并用总水头减节点高程核对压力单位。缺失水头、
|
||
高程或单位不一致时拒绝写入。例如真正的 kPa 转米水头使用 `pressure / 9.80665`。
|
||
不添加噪声、不平移日期、不插值。写入 `scada.measurements.monitored_value`,
|
||
同时将窗口内对应观测的 `cleaned_value` 清空,避免使用旧观测的清洗结果。
|
||
其他日期、其他设备及模拟源数据保持原样;原有其他模拟事件也保留。
|
||
|
||
正常基线直接读取 `realtime.node_results`,保留其原始日期和压力值。每段在线
|
||
模拟采用右端不含的时间窗,4 小时共有 16 个采样点,最后一个点比窗口终点
|
||
早 15 分钟。三段共 2,400 条观测。基线源单位来自模型配置,并同样校验
|
||
总水头减高程;不从爆管结果或旧 SCADA 推导正常值。
|
||
|
||
| 管段 | 爆管数据时间(北京时间,含末点) | 前一天基线采样时间(北京时间) |
|
||
| --- | --- | --- |
|
||
| `19026` DN200 | 6 月 2 日 08:00–12:00 | 6 月 1 日 08:00–11:45 |
|
||
| `18751` DN160 | 6 月 12 日 12:00–16:00 | 6 月 11 日 12:00–15:45 |
|
||
| `18750` DN160 | 6 月 22 日 18:00–22:00 | 6 月 21 日 18:00–21:45 |
|
||
|
||
定位算法配对比较时应采用共同的 16 个相对采样时刻,或明确使用右端不含的
|
||
4 小时时间窗,避免将爆管结果额外的终点与不存在的基线终点配对。
|
||
|
||
2026-10-22 核查发现 EPANET 输出解析曾将压力枚举 1、2 的单位名称写反。
|
||
已改为 `0=PSI, 1=KPA, 2=MTR`,并通过本地原生 EPANET 输出测试验证。
|
||
这三个方案的全部 2,550 个压力值都与米制水头减高程一致,元数据已纠正为
|
||
`MTR`,原始模拟数值保持不变。SCADA 最终使用设备的 `m` 单位,无额外换算。
|
||
更正前的三个方案参数与核查证据保存在忽略目录
|
||
`data/fengyang-result-unit-correction/`。
|
||
|
||
本次最终复制记录为
|
||
`data/fengyang-burst-scada/20261022T101442415337Z/report.json`:
|
||
2,550 条爆管观测与 2,400 条前一天基线,共替换 4,950 条观测;SCADA 整表
|
||
仍为 144,000 条、50 个设备。窗口外指纹不变,独立 SQL 比对六段数据与源值
|
||
差异为零,重复只读预览显示 4,950 条均已一致。三个方案均为 `completed`。
|
||
|
||
本次执行前已锁定观测表并备份整表至忽略目录
|
||
`data/fengyang-burst-scada/<UTC时间>/measurements-before.csv`,同时保存
|
||
`prepared.json`(来源、设备映射、备份校验和)和 `expected.json`(预期观测)。
|
||
目录权限为 0700,文件权限为 0600,不包含数据库凭据。
|
||
|
||
本次复制在一个事务中完成,逐条比对预期值、核对总行数、校验窗口外数据
|
||
指纹不变。提交后使用新连接再次读回校验,已保存 `report.json`。
|
||
|
||
如需恢复,先核对对应报告的备份校验和,将 CSV 导入临时表,再仅恢复
|
||
`expected.json` 中的 `(time, device_id)` 键;不要整表覆盖当前观测。
|
||
数据库读回校验不代表已经完成 HTTP、界面回放或爆管定位算法验收。
|