docs(vd-analysis): 新增滤波系数 79/64 专题对比分析(α/τ/阶跃/噪声/单频衰减)
- 新增 docs/filter-coefficient-79-vs-64.md:ALFA_CAP1=79 vs ALFA_CAP2=64 量化对比(确定性计算+白噪声模拟,非现场实测) - 各型号实际生效系数梳理:M1H/PD136HA/DLD 系差异 - 结论:79 保响应白赚,防误触发靠斜率限幅+进入确认而非调 α - 对比总表 IIR 行挂专题链接
This commit is contained in:
@@ -27,6 +27,8 @@
|
||||
| 归一化基数 | 32768 | 32768 | 32768 | 32768 | 131072 (2^17) | **524288 (2^19)** |
|
||||
| 测量窗 | 32.8ms | 27.3ms | 43.7ms | 21.8ms | 2.18ms(硬)/10ms(软) | **8.74ms** |
|
||||
| IIR 系数 | 79(固定) | 79/64 | 79/64 | 79/64(实际 64) | 79 + 斜率限幅 5% | 79 + 斜率限幅 5% |
|
||||
|
||||
> IIR 系数 79/64 的量化对比(α/τ/阶跃响应/噪声抑制/单频衰减/模拟验证)见 [filter-coefficient-79-vs-64.md](filter-coefficient-79-vs-64.md)(2026-08-28 新增)。
|
||||
| 基线 | 100 平均(有车也跟踪) | 100 平均(有车冻结) | 100 平均(有车冻结) | 256 平均(有车冻结) | 500 平均+冻结超时 10s | **500 平均+冻结超时/稳定性双条件** |
|
||||
| 灵敏度表 | {216,108,36,10} | {300,60,32,21} | {300,60,32,21} | {162,81,54,28} | {216,108,36,20} | {108,54,28,14} |
|
||||
| 离开表 | 同表 | {60,32,21,14} | {60,32,21,14} | {81,54,32,18} | {108,72,18,14} | {81,32,16,12} |
|
||||
|
||||
@@ -0,0 +1,91 @@
|
||||
# 滤波系数 79 vs 64 专题分析(ALFA_CAP1 / ALFA_CAP2)
|
||||
|
||||
> 日期:2026-08-28 | 依据:`M1H/PD132L/PD132T/PD136HA` 参考代码 + `DLD154V4B/154Pro` 现行实现
|
||||
> 数据:确定性数学计算 + 白噪声模拟(seed=42),**非现场实测**;时间常数含产品线口径(256/α)与精确口径(ln)两套。
|
||||
|
||||
## 1. 背景:79/64 是什么
|
||||
|
||||
DLD 血统参考代码(M1H → PD132L → PD132T → PD136HA → DLD154V4B)的 `MAIN.h` 定义四个滤波系数:
|
||||
|
||||
```c
|
||||
#define ALFA_CAP1 79 // 检测通道 IIR —— 增强滤波(响应快)
|
||||
#define ALFA_CAP2 64 // 检测通道 IIR —— 普通滤波(更平滑)
|
||||
#define ALFA_ORG1 64 // 基线通道 IIR
|
||||
#define ALFA_ORG2 64 // 基线通道 IIR
|
||||
```
|
||||
|
||||
滤波公式(PD132L 源码确认,`Δ×Flt_Reg>>8` 双向):
|
||||
|
||||
```c
|
||||
if (Value > CAPVD) CAPVD += (Value - CAPVD) * Flt_Reg >> 8;
|
||||
else CAPVD -= (CAPVD - Value) * Flt_Reg >> 8;
|
||||
```
|
||||
|
||||
即一阶 IIR:`y = y_prev + α(x − y_prev)`,**α = Flt_Reg/256**,每测量节拍执行一次。
|
||||
|
||||
## 2. 各型号实际生效系数(不是全都用 79)
|
||||
|
||||
| 型号 | 生效系数 | 说明 |
|
||||
|------|---------|------|
|
||||
| M1H (8051, 2008) | **恒 79** | ALFA_CAP2 定义了但 main 恒用 79,DLD 血统源头 |
|
||||
| PD132T (8051, 2021) | 拨码 SET_FLT 切换 79/64 | 唯一给用户开关的型号 |
|
||||
| PD136HA (M0+, 2021) | **恒 64** | INIT_VD 置 79,但主循环 CAP_OK 分支强制 `Flt_Reg = ALFA_CAP2`,SET_FLT 分支已注释 |
|
||||
| DLD154V4B / vd960Loop (M4) | **恒 79** | 外加 5% 斜率限幅 + 进入确认 3 次(M4 优化) |
|
||||
| DLD154Pro (RISC-V) | **恒 79** @8.74ms | τ≈28ms |
|
||||
|
||||
> 基线通道 ALFA_ORG1/2=64 与检测通道无关:低频温漂两者都拦不住(0.5Hz 以下增益≈0dB),漂移由基线跟踪(有车冻结 + 冻结超时 + 漂移监测)处理,不靠检测 IIR。
|
||||
|
||||
## 3. 系数与时间常数
|
||||
|
||||
| 指标 | α=79/256 | α=64/256 |
|
||||
|------|---------|---------|
|
||||
| α | 0.3086 | 0.2500 |
|
||||
| τ @10ms(产品线口径 256/α) | **32.4 ms** | **40.0 ms** |
|
||||
| τ @10ms(精确 ln 口径) | 27.1 ms | 34.8 ms |
|
||||
| τ @8.74ms(154Pro 节拍) | 28.3 ms | 35.0 ms |
|
||||
| 等效记忆窗口 | 3.24 样本 | 4.00 样本 |
|
||||
|
||||
各型号节拍下的 τ 对照(产品线口径):
|
||||
|
||||
| 型号 | 测量节拍 | τ(79) | τ(64) |
|
||||
|------|---------|-------|-------|
|
||||
| M1H | 32.8 ms | 106 ms | 131 ms |
|
||||
| PD132L | 27.3 ms | 88 ms | 109 ms |
|
||||
| PD132T | 43.7 ms | 142 ms | 175 ms |
|
||||
| PD136HA | 21.8 ms | 71 ms | **87 ms(实际生效)** |
|
||||
| DLD154V4B | 10 ms | **32 ms** | 40 ms |
|
||||
| DLD154Pro | 8.74 ms | **28 ms** | 35 ms |
|
||||
|
||||
## 4. 阶跃响应(车辆进入,Origin=131072,中档 dlt=216,信号深 2×dlt=432)
|
||||
|
||||
| 采样点 | α=79 输出 | α=64 输出 |
|
||||
|--------|----------|----------|
|
||||
| 0 | 131072 | 131072 |
|
||||
| 1 | 130939 | 130964 |
|
||||
| 2 | **130847 ← 越线** | 130883 |
|
||||
| 3 | 130783 | **130822 ← 越线** |
|
||||
|
||||
- **越线(进入触发)**:79 第 2 样本 = **20ms**;64 第 3 样本 = **30ms**,**差 10ms**
|
||||
- **95% 收敛**:79 = 81ms;64 = 104ms,**差 23ms**
|
||||
- 叠加进入确认 3 次(V4B)后:79 ≈ 50ms,64 ≈ 60ms——确认机制本身 30ms,把滤波差异摊薄一半
|
||||
|
||||
## 5. 噪声抑制(64 的卖点,数据很弱)
|
||||
|
||||
| 噪声类型 | 79 | 64 | 64 多压的 |
|
||||
|---------|----|----|----------|
|
||||
| 白噪声 RMS | −7.4 dB | −8.5 dB | **1.1 dB** |
|
||||
| 50 Hz 工频 @10ms | −15.1 dB | −16.9 dB | 1.8 dB |
|
||||
| 10 Hz 慢拍(注入锁定前兆) | −5.6 dB | −7.5 dB | 1.8 dB |
|
||||
| 5 Hz | −1.5 dB | −3.4 dB | 1.8 dB |
|
||||
| 0.5 Hz 以下(温漂) | ≈0 dB | ≈0 dB | **都拦不住** |
|
||||
|
||||
模拟验证:输入白噪声 σ=20 计数值(≈中档阈值 9%)跑 10000 点,79 输出最大偏差 27.8、64 输出 27.5——**工程上无差别**。
|
||||
|
||||
## 6. 结论
|
||||
|
||||
1. **79 是白赚的**:触发快 10ms、收敛快 23ms,代价仅少压 ~1dB 噪声。单极点 IIR 在 α=0.25~0.31 区间是"响应优先"区间,往下压收益递减(79→50 才明显,但 τ 已到 51ms)。
|
||||
2. **PD136HA 恒 64 是保守派**:SET_FLT 注释死,主动放弃响应换 1.1dB 平滑,数据看**不划算**。
|
||||
3. **防误触发不靠滤波系数**:V4B 的做法正确——79 保响应,**斜率限幅(单次 >5% 截断)打 EMI 尖峰 + 进入确认 3 次打单次噪声**,算法层拦截比调 α 有效两个数量级。
|
||||
4. **基线通道恒 64 是另一回事**:温漂两者都拦不住,靠冻结 + 漂移监测(见 `variation-physics-and-drift-health.md` 相关分析)。
|
||||
|
||||
**建议:检测通道无脑 79;要防误触发加斜率限幅 + 进入确认,别在 α 上抠 1dB。**
|
||||
Reference in New Issue
Block a user