Files
vd-analysis/docs/cross-model-comparison.md
T
wangfq bbb5496860 docs(analysis): 滤波系数与时间常数详解 v2 — 公式推导 + 触发/释放双影响 + 方案A案例
2026-08-31 更新 filter-coefficient-79-vs-64.md:
- §2 时间常数公式详解: 离散 IIR 阶跃响应推导, 精确口径(-T/ln(1-α)) vs
  产品线口径(T/α)对比表(α越大偏差越大, 小系数几乎一致)
- §4 释放影响(新增): 释放=恢复过程, 阈值浅(进入20%)放大τ差异;
  V4B τ32ms vs PD132T τ142~175ms → 释放高度差实测案例
- 数学验证: gcc 单测 fast=150ms/slow=410ms 差260ms
- 方案A范式: 进入保79快响应, 释放独立慢滤波(RELEASE_ALFA=18 τ≈142ms)对齐对手
- §6 结论: 释放路径按交付对手的τ独立对齐, 别共用进入系数

同步: cross-model-comparison 引用标注 v2
2026-08-31 18:14:18 +08:00

85 lines
7.5 KiB
Markdown
Raw Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
# 跨型号参数对比总表
各型号参考代码的核心参数横向对比。**数值量纲以各型号归一化基数为准,横向比较必须先换算口径**(Δf/f = **表值/65536**——阈值代码 `Origin×表>>16` 的分母;Origin 在 Δf/f 分子分母约掉,**与归一化基数无关**)。
## 参与型号
| 型号 | 平台 | 版本 | 文档 |
|------|------|------|------|
| PD132L | STM8S003F3 | V1.09 | [models/PD132L/analysis.md](../models/PD132L/analysis.md) |
| PD132T | MA801AS (8051) | V3.01 | [models/PD132T/analysis.md](../models/PD132T/analysis.md) |
| M1H | STC12C5202 (8051) | V1.00 | [models/M1H/analysis.md](../models/M1H/analysis.md) |
| DLD154V4B | AT32F421 (M4) | V2.8 | [models/DLD154V4B/analysis.md](../models/DLD154V4B/analysis.md) |
| DLD154Pro | CH591R/CH592 (RISC-V) | V3.05 | [models/DLD154Pro/analysis.md](../models/DLD154Pro/analysis.md) |
| PD136HA | HC32F005 (M0+) | V3.14 | [models/PD136HA/analysis.md](../models/PD136HA/analysis.md)PD132L 同源移植版) |
> TLD-110 分析见 `models/TLD-110/analysis.md`2006 门控计数法参考,2026-08-27 起**不再纳入对比总表**)。
## 六型号核心参数对比(2026-08-27)
| 维度 | M1H | PD132L | PD132T | PD136HA | DLD154V4B | DLD154Pro |
|------|-----|--------|--------|---------|-----------|-----------|
| 年代 | 2008 | 2020 | 2021 | 2021 | 2026 | 2026 |
| MCU | STC12C5202 | STM8S003F3 | MA801AS | HC32F005 (M0+) | AT32F421 (M4) | CH591R/CH592 (RISC-V) |
| 语言/系统 | C | C | C | C | C + FreeRTOS | C + BLE(TMOS) |
| 通道 | 1 | 1 | 1 | 1 | 1 | 1 |
| 测频方式 | PCA 周期捕获 | TIM1 周期捕获 | PCA 周期捕获 | ADTIM4 周期捕获 | TIM3 周期捕获 | TMR0 下降沿捕获 |
| 归一化基数 | 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% |
| 基线 | 100 平均(有车也跟踪) | 100 平均(有车冻结) | 100 平均(有车冻结) | 256 平均(有车冻结) | 500 平均+冻结超时 10s | **500 平均+冻结超时/稳定性双条件** |
| 灵敏度表 | {216,108,36,10} | {300,60,32,21} | {300,60,32,21} | {162,81,54,28} | {300,60,32,21} | {108,54,28,14} |
| 离开表 | 同表 | {60,32,21,14} | {60,32,21,14} | {81,54,32,18} | {60,32,21,14}V2.11 分档对齐 PD132T SENUP 标贴 OFF | {81,32,16,12} |
| 阈值换算 | Origin×表/65536 | Origin×表/65536 | Origin×表/65536 | Origin×表/65536 | Origin×表/65536 | Origin×表/65536 |
| 档位 Δf/f | 0.33%~0.015% | **0.46%~0.032%** | **0.46%~0.032%** | 0.247%~0.043% | **0.46%~0.032%**V2.11 进入/离开全档与 PD132T 完全一致) | **0.165%~0.021%** |
| 进入确认 | 无 | 无 | 无 | 无(单次,去抖已注释) | 3 次 | **3 次** |
| 离开判定 | 简单阈值 | 简单阈值 | 简单阈值 | 简单阈值+脉冲延迟 | **简单滞回 3 次防抖(平坦性 #if 禁用,V2.9 起)** | **简单滞回 3 次防抖**(平坦性 #if 禁用) |
| 灵敏度表可配 | 编译期 | 编译期 | 编译期 | 编译期 | 编译期 | **运行时可配(BLE 写 Flash** |
| 时序 tick | 50ms | 50ms | 50ms | 5ms?×10=50ms | 检测 10ms + 时序 50ms | **检测 8.74ms + 时序 5ms/50ms** |
| 看门狗 | WDT_CONTR | IWDG+WWDG | WDTCR | WDT 820ms | **IWDT ~1.64s**V2.10 双保险喂狗) | **WWDG 558ms** |
| **测量节拍**CAPVD 更新) | **32.8 ms** | **27.3 ms** | **43.7 ms** | **21.8 ms** | **10 ms** | **8.74 ms** |
| **基线更新周期** | **3.28 s**100 窗) | **2.73 s** | **4.37 s** | **5.59 s**256 窗) | **5 s**500 窗) | **4.37 s**500 窗) |
| IIR 时间常数 τ | 106 ms | 88 ms / 109 ms | 142 ms | 87 ms | 32 ms | **28 ms** |
> IIR 系数 79/64 的量化对比(α/τ/阶跃响应/噪声抑制/单频衰减/模拟验证)见 [filter-coefficient-79-vs-64.md](filter-coefficient-79-vs-64.md)2026-08-28 新增;**2026-08-31 v2 扩展:时间常数公式详解 + 释放路径影响 + 方案 A 案例**)。
> ⚠ 时序数值:DLD154Pro 为 60MHz 实测配置(8.74ms 测量节拍);DLD154V4B 为实测/代码确认(10ms tick τ=32ms);其余基于 12MHz 晶振假设推导(测量节拍 = BASE/捕获时钟),**待现场验证**。归一化基数三代三变(32768→131072→524288):V4B 是参考型号 32768 的 4 倍 → 测量窗 2.18ms 快 15×、精度高 4 倍;154Pro 是 V4B 的 4 倍(60MHz 下 8.74ms 软件测量节拍)。
> ⚠ 灵敏度表**数值不可跨型号直接比较**:各型号归一化基数/测量方式不同(32768 基数 ×65536 比例)。统一换算成 Δf/f 后:M1H 最灵敏档 0.015%PD132 0.032%V4B 0.032%154Pro 0.021%(⚠ 2026-08-28 修正:PD132 曾误用基数 32768 当分母算成 0.064%,正确分母是代码 `>>16` 的 65536V4B 最高档 V2.11 起 20→21 对应 0.031%→0.032%)。
## 测频路线(周期累积法为统一范式)
纳入对比表的型号(M1H / PD132L / PD132T / PD136HA / DLD154V4B / DLD154Pro**全部采用周期累积法**:
```
累加固定数量周期(周期域,LPCNT=BASE/Xn)→ 受周期抖动影响,LPCNT 自适应归一化
```
> TLD-110(2006,门控计数法)是唯一例外,已移出对比表,见 `models/TLD-110/analysis.md`。
DLD 产品线(154V4B/154Pro/960Loop/110S)继承 M1H 血统,且 154Pro 是 V4B 的直接移植(同源);PD132 系(L/T/136HA)独立同路,其中 PD136HA 是 PD132L 的 HC32 同源移植。
### 同源 / 同路 / 不同路(辨析)
> 参考代码之间有三种关系,**别把"框架相似"当"血统继承"**
| 关系 | 含义 | 例 |
|------|------|-----|
| **同源** | 明确继承/移植关系,细节连续 | M1H → DLD154V4B(灵敏度表/映射/IIR 全继承);**DLD154V4B → DLD154Pro**(文件头明示"算法移植自 V4B TaskLoop V2.0"IIR/斜率限幅/稳定期/500 窗基线/冻结/进入 3 次全继承,但基数重定标 131072→524288、离开降级简单滞回、灵敏度表改运行时可配);PD132L → PD132T(文件头明示"实现与 L 一样");**PD132L → PD136HA**(工程名 PD132L-HD、文件头明示"硬件用 PD132L_V1.02/替换 PD132LA_V1.06"LPCNT/IIR/基线/滞回全继承,但灵敏度表与基线窗口独立改动) |
| **同路不同源** | 独立开发撞出相似算法框架(周期累积+IIR+滑动平均+相对阈值是行业主流范式),但细节各取 | M1H vs PD132:灵敏度表 {216,...} vs {300,...}、基线有车也跟踪 vs 有车冻结、离开始终当前档 vs 可固定最高档 |
| **不同路** | 测频原理根本不同 | TLD-110 门控计数 vs 周期累积(已移出对比表) |
**判断依据**:文件头声明(PD132T 认 PD132L)、灵敏度表数值、基线/离开策略细节。看 PD132 代码时要当"平行实现"看,它的差异(量纲/基线/滞回)恰是各家独立取舍。
## 跨型号通用结论
1. **灵敏度表不能照搬数值**:必须按各自归一化基数/测量方式换算 Δf/f 后再比较
2. **离开阈值语义三派**TLD-110 相邻档滞回 / M1H-PD132 同档滞回表 / PD132 可固定最高档
3. **Xn/计数窗口跨平台按捕获时钟缩放**PD132L→T 1.27×)
4. **拨码编码随硬件重排**:组合位 / 直接编码 / 反码(M1H SENS=3-(sw&0x03))各不相同
5. M1H 是 DLD 产品线算法血统源头(灵敏度表/映射/IIR 全部继承),分析新 DLD 型号前先读 M1H
## 待补型号
- [ ] 其他新参考代码(CH592EVT / CH32V208 等 SDK 类不算车检器型号,不归档)