refactor(adc): 最小二乘拟合移出固件,只留 PC 侧唯一实现
用户裁定(2026-11-13):设备本体只需要校正后的参数,不需要自己拟合 标定曲线,故固件侧最小二乘拟合整体移出,拟合的唯一实现留在 PC 侧 test/host/cal_fit.py。 删除的死代码(生产零调用、上一轮 map 里已被 linker 标 Removing): - adc_cal.h:adc_cal_fit() 声明、8 个拒绝码、5 个常量 - adc_cal.c:s_div_round() / s_fit_accum() / adc_cal_fit() 共 224 行 - adc_cal_test.c:tc_00b_fit 226 行(184 -> 150 条) 原样保留的设备侧安全闸: - adc_cal_apply() 折算、adc_cal_set() / adc_cal_set_ratio() 参数合法 带拦截(防工具写坏参数)、adc_cal_flags() / adc_cal_prot_blocked() / adc_cal_rail_ths()。设备不「算」,但必须「用」和「验」。 测试面: - cal_fit.py 转为唯一实现,新增 --selftest:承接原 C 侧金标向量 (r_q16=39322000 / b=12)与 4 条拒绝路径,共 11 条断言;已做变异 测试证明它会红(改坏圆整口径 -> 2 条 FAIL) - cal_two_point.py 删除,两点工具由多点拟合取代 文档口径统一为「求参在 PC、设备只做折算与合法带校验」,6 篇 docs 同步; 执行卡改名 ADC多点标定执行流程.md(正文同步 5 点最小二乘口径)。 cfg 热重载吞段缺陷的解析器契约与 TC-CONFIG-063 机器钉一并入库。 Program Size 不变(Code=256196):删掉的是从未链接进镜像的死代码。 验证:Keil 0 errors 0 warnings;adc_cal 150/150;selftest 11/11; ci_local.py RC=0(static 48/48、manual 三根、size-gate、host-unit 4341/4341);doc-links / mermaid / mojibake 全 0。
This commit is contained in:
+3
-3
@@ -112,7 +112,7 @@ docs/
|
||||
| [`采集与算法层设计说明.md`](算法/采集与算法层设计说明.md) | **`App/algo/` 的现状设计说明**:语义取数与有效性判定、全周傅氏相量采样环/相量/测频、保护判据定值模型与元件框架的契约、关键机制(双区原子切换、乒乓半区、自适应测频窗、定值封存-自检-闭锁)、精度判据 J1~J6 与资源足迹;**§13 = 标定折算**(码值→工程量、三态可用性、未标定即闭锁、遥测快照、六轮动态验证判据、已定案的前置决策) |
|
||||
| [`继电保护功能复现规划.md`](算法/继电保护功能复现规划.md) | **保护功能复现规划**:把参考系统(CLS100)保护链路映射到本项目(STM32F4)的分层功能/性能/参数清单、平台适配(「双转换器无共同采样触发」等)与分阶段路线图 |
|
||||
| [`采样有效性校验设计说明.md`](算法/采样有效性校验设计说明.md) | **`App/algo/adc_health.c` 单文件深设计**:四类判据(静默 / 丢帧 / 序号倒退 / 错误计数增量)的判据推导与 100 ms 门限依据、电平-锁存-事件三种位语义与位号对齐、闭锁与看门狗兜底的责任划分、观测盲区、主机侧验证分工与现场判读手册(含三张配图生成器) |
|
||||
| [`采样数据校正全流程.md`](算法/采样数据校正全流程.md) | **读者入口**:按一帧数据的真实流向,把端子→码值→三维折算(k/b/r)→相量/测频/遥测快照→104·UI·保护·录波串成一条线;含整定落盘、两点标定现状(板上无一键标定、台架手工路径见 `docs/测试说明/专项验证/ADC两点标定执行流程.md`)、三个判定(VALID/CLIPPED/eng 互不派生);细节归各属主文档 |
|
||||
| [`采样数据校正全流程.md`](算法/采样数据校正全流程.md) | **读者入口**:按一帧数据的真实流向,把端子→码值→三维折算(k/b/r)→相量/测频/遥测快照→104·UI·保护·录波串成一条线;含整定落盘、多点标定现状(板上无一键标定、**拟合跑在 PC 侧 `test/host/cal_fit.py`、固件只做折算与参数合法带校验**,台架手工路径见 `docs/测试说明/专项验证/ADC多点标定执行流程.md`)、三个判定(VALID/CLIPPED/eng 互不派生);细节归各属主文档 |
|
||||
|
||||
---
|
||||
|
||||
@@ -157,8 +157,8 @@ docs/
|
||||
|
||||
| 文档 | 内容 |
|
||||
|---|---|
|
||||
| [`ADC前端注入验证流程.md`](测试说明/专项验证/ADC前端注入验证流程.md) | **ADC 前端与两片转换器的台架注入验证**(已知电压注入验证的执行侧,实测证据 → `docs/硬件平台/ADC通道映射说明.md` §8.1):两轮——直流轮(注入点清单 / 期望码值表 / 零点·线性·映射·极性·节奏五步,每步自带现场记录表,**一块万用表即可**)、交流轮(幅值/波形/相位/测频/削顶/谐波六轮执行卡);**两点标定轮已独立成篇** → `docs/测试说明/专项验证/ADC两点标定执行流程.md` |
|
||||
| [`ADC两点标定执行流程.md`](测试说明/专项验证/ADC两点标定执行流程.md) | **UA/UN/IA 两点标定的执行卡**:开工拍板(保护口径 ≤3~5 %、量级 5 V/50 V 与 0.5 A/2 A 安全裁定、继保仪 ≥0.1 级)→ `meas:` 行三点读数填进文档内 `CALDATA` 标记表 → `test/host/cal_two_point.py --from-doc` 批量求解(`cal_two_point.py` 亦支持单路手填)→ `test/host/cal_write.py` 经 104 定值段 0x8050~/0x8048~ 写入置 VALID 自动落盘 → 三路齐解除保护闭锁(解卡时序红线与回写位置都在卡里);判据属主 `docs/算法/采集与算法层设计说明.md` §13.13 与 `docs/硬件平台/ADC通道映射说明.md` §7.2;**2026-11-12 实跑结果**(UA / IA 已标定、UN 未标 → 保护仍闭锁)登记在 `docs/硬件平台/ADC通道映射说明.md` §7.3 |
|
||||
| [`ADC前端注入验证流程.md`](测试说明/专项验证/ADC前端注入验证流程.md) | **ADC 前端与两片转换器的台架注入验证**(已知电压注入验证的执行侧,实测证据 → `docs/硬件平台/ADC通道映射说明.md` §8.1):两轮——直流轮(注入点清单 / 期望码值表 / 零点·线性·映射·极性·节奏五步,每步自带现场记录表,**一块万用表即可**)、交流轮(幅值/波形/相位/测频/削顶/谐波六轮执行卡);**标定轮已独立成篇** → `docs/测试说明/专项验证/ADC多点标定执行流程.md` |
|
||||
| [`ADC多点标定执行流程.md`](测试说明/专项验证/ADC多点标定执行流程.md) | **UA/UN/IA 多点(5 点)最小二乘标定的执行卡**:开工拍板(保护口径 ≤3~5 %、5 点档位 5/10/25/50/100 V 与 0.5/1/1.25/1.5/2 A、抬压逐点确认纪律、继保仪 ≥0.1 级)→ `meas:` 行读数按「每行一个点」填进文档内 `CALDATA` 长表(5 点 × 3 路)→ `test/host/cal_fit.py --from-doc` 在 **PC 侧**批量做最小二乘求解(亦支持 `--sem/--x/--y` 单路手填;**固件里没有拟合代码**,设备只做折算与写入参数合法带校验)→ `test/host/cal_write.py` 经 104 定值段 0x8050~/0x8048~ 写入置 VALID 自动落盘 → 三路齐解除保护闭锁(解卡时序红线与回写位置都在卡里);判据属主 `docs/算法/采集与算法层设计说明.md` §13.13 与 `docs/硬件平台/ADC通道映射说明.md` §7.2;**2026-11-12 实跑结果**(两点算法那一轮:UA / IA 已标定、UN 未标 → 保护仍闭锁)登记在 `docs/硬件平台/ADC通道映射说明.md` §7.3 |
|
||||
| [`启动日志原子性复验流程.md`](测试说明/专项验证/启动日志原子性复验流程.md) | **控制台整行独占 / 崩溃遗言原子性**这类**行级完整性**判据的固定动作与口径(`docs/子系统设计/控制台单写者日志设计说明.md` 的验收侧:那边讲怎么修,这边讲怎么证明修好了、以及为什么"标记全中"不等于"日志没坏") |
|
||||
| [`故障录波板级到场轮执行手册.md`](测试说明/专项验证/故障录波板级到场轮执行手册.md) | **录波剩余台架判据的执行手册**(判据属主是 `docs/子系统设计/故障录波设计说明.md` §10,这里只写"人做什么、说哪句话、会看到什么"):四幕(枚举埋点修复 / 注量对表 / 保护触发对时刻(src=P)含两个用户决定 / bench 自抓占卷)各自标清到场与否,配到场检查清单、现场记录表与收工还原清单 |
|
||||
| [`链路延迟测试说明.md`](测试说明/专项验证/链路延迟测试说明.md) | 网络链路时延分段定义、判定基线、执行流程 |
|
||||
|
||||
Reference in New Issue
Block a user