docs(measurement): 测量节拍是区间 —— 周期累积法的窗口量化(用户提出)+ 全仓回灌
- 新文件 docs/measurement-window-quantization.md:窗长 = ⌊BASE/Xn₀⌋·Xn₁ tick(LPCNT 整数除法 + 学习后冻结)
· 标称 BASE/f_cap(10.92/21.85ms)是【上限】,实际 = 标称 ×(BASE−r₀)/BASE × f₀/f_now
· 站点偏差:100kHz −0.39%(PD132T 10.88ms / PD136HA 21.76ms)、60kHz −2.34%、带内最差 −6.20%(Xn₀=2049)
· 深占压(频偏 −5%)窗再 +5.3%;"检测阈值"量级(≤0.46%)可忽略
· ✅ Δf/f 口径不受影响:Value/Origin = Xn₁/Xn₀ 精确(余数完全约掉)—— 灵敏度/交付结论全部保持
· ⚠ 新发现:loop1_LPCNT 为 INT8U(≤255),同族靠 406<Xn<2050 保证 ≤80;
PD136HA 该窗口已注释 ⇒ Xn<129 时 8 位截断 ⇒ 异常线圈可能报"堵车"而非"故障"(建议恢复或加钳位)
- 新增 tools/window_calc.py(内置六型号参数,实跑验证文档全部数字)
- 回灌:cross-model 总表(新增脚注 + 测频路线说明 + 待补证1条)、PD132T↔PD136HA 对比报告(§0/§3.1/§3.2/§4.3)、
两份交付对齐报告("测量窗列 = 标称上限" + 区间脚注)、filter-coefficient 专题(M1H 8.19ms 勘误 + τ 复算 + 脚注)、
README(新增"专题文档"段 + 目录树)
- 表格校验 0 异常
This commit is contained in:
@@ -15,7 +15,7 @@
|
||||
| 2 | 硬件前端 | **完全同构**:线圈 → 9015 PNP×2 振荡 → CD4060 施密特整形 + **÷32(Q5)** → MCU | ✅ |
|
||||
| 3 | 线圈频段 | **两者覆盖同一频段 ≈23.4~118kHz** —— PD132T 走「3MHz **双沿**捕获(Xn = 半周期)」、PD136HA 走「1.5MHz **单沿**(Xn = 整周期)」,两项差异**恰好互相抵消**:判据常数 `C = 32·f_cap/边沿系数` **同为 4.8×10⁷** ⇒ 这就是两者 Xn 窗口常量几乎逐字相同(406~2050 vs 400~2030)的真正原因 | ⭐ 关键 |
|
||||
| 4 | 归一化基数 | **同为 32768**(换 MCU 未重定标)⇒ 相对阈值 `表值/65536` 可**直接跨型号对比** | ✅ |
|
||||
| 5 | 测量节拍 | **10.92ms → 21.85ms(慢 2×)** ⇒ 每窗有效平均 1092 → **2185** 个线圈周期(积分深度 ×2) | ⚖️ 权衡 |
|
||||
| 5 | 测量节拍 | **10.88ms → 21.76ms**(100kHz 站点实测口径;标称上限 10.923/21.845ms)⇒ 每窗有效平均 1088 → **2176** 个线圈周期(积分深度 ×2)|⚠ 节拍**是区间**:按站点线圈频率浮动 0 ~ −6.2%,深占压再 +5%(见 `measurement-window-quantization.md`) | ⚖️ 权衡 |
|
||||
| 6 | 滤波 / 基线 | IIR τ:**29.6~38ms → 76~87ms**(慢 2~2.9×);基线窗 **100 → 256**(1.09s → 5.59s) | ⚠ PD136HA 更稳更慢 |
|
||||
| 7 | 判据强度 | 两者**均为单次越线判定**(无进入/离开确认计数)—— 响应快、抗单点扰动弱 | ⚖️ 相同 |
|
||||
| 8 | 灵敏度表 | **重标定**:进入 {300,60,32,21} → {162,81,54,28}。**档位一一照搬会产生 −46%~+69% 偏差** ⇒ 跨代必须按 Δf/f 重新对齐 | ❌ 不可照搬档位 |
|
||||
@@ -115,7 +115,7 @@ PD136HA:线圈 → 9015 PNP×2 振荡 → CD4060 施密特整形 +
|
||||
| 捕获时钟源 | PCA 时钟 = **T0 溢出**(`CMOD=0x04`)→ T0 8bit 自动重装 252(每 4 个 SYSCLK 溢出) | ADTIM4 计数时钟 = **PCLK0/8** |
|
||||
| 捕获时钟 | **3 MHz**(= 12MHz ÷ 4,官方手册直证) | **1.5 MHz**(= 12MHz ÷ 8,源码 + Keil 时钟设置) |
|
||||
| 中断 | `CAP1_isr() interrupt 6` | `Tim4_IRQHandler` |
|
||||
| 学习 | `loop1_LPCNT = 32768 / Xn`(`CapCnt > 100` 后) | 同(`CapCnt > 100` 后) |
|
||||
| 学习 | `loop1_LPCNT = 32768 / Xn`(`CapCnt > 100` 后,**算一次即冻结**) | 同(同条件冻结) |
|
||||
| 测量 | 累积 `LPCNT` 个 Xn ⇒ `CAPVD` | 同(`CapSum` ⇒ `CAPVD`) |
|
||||
| 频率范围过滤 | ✅ 保留:`406 < Xn < 2050` | ❌ **已注释禁用**(V3.14 去掉环路指示 LED 时一并屏蔽)⇒ 当前无频率过滤 |
|
||||
|
||||
@@ -126,8 +126,8 @@ PD136HA:线圈 → 9015 PNP×2 振荡 → CD4060 施密特整形 +
|
||||
| 量 | 公式 | PD132T | PD136HA | 比值 |
|
||||
|---|---|---|---|---|
|
||||
| 捕获时钟 | — | **3 MHz** | **1.5 MHz** | PD132T 快 2× |
|
||||
| **测量节拍**(CAPVD 更新) | `32768 / f_cap` | **10.92 ms** | **21.85 ms** | PD136HA 慢 2× |
|
||||
| 每窗有效平均的线圈周期数 | `节拍 × f_coil`(@100kHz 标称) | ≈ **1092** | ≈ **2185** | PD136HA 深 2× |
|
||||
| **测量节拍**(CAPVD 更新) | `⌊32768/Xn₀⌋·Xn₁ / f_cap` | **10.88 ms**(100kHz 站点) | **21.76 ms** | PD136HA 慢 2× |
|
||||
| 每窗有效平均的线圈周期数 | `窗长(tick) / 32 × 边沿系数`(@100kHz 站点) | ≈ **1088** | ≈ **2176** | PD136HA 深 2× |
|
||||
| 状态机节拍 | — | 50ms(T1 5ms × 10) | 50ms(TIM1 × 10) | 相同 |
|
||||
| 上电稳定 | — | 750ms 延时 + 学习 | 1s 延时 + LED 自检闪 6 次 + 学习 | 接近 |
|
||||
|
||||
|
||||
Reference in New Issue
Block a user