105 lines
8.6 KiB
Markdown
105 lines
8.6 KiB
Markdown
# 环路线圈健康评估设计依据 — 技术评审与 DLD110S 字段映射
|
||
|
||
> **评审日期**:2026-08-26
|
||
> **评审人**:小飞(配合王工)
|
||
> **评审对象**:`docs/coil-eval-design-basis.md` V1.1(第三方应用设计依据)
|
||
> **配套产品**:DLD110S(CH591R BLE 单线圈,固件 V4.20 / 硬件 V4.01)
|
||
|
||
---
|
||
|
||
## 1. 总体结论
|
||
|
||
设计依据文档**数据质量高、公式全部核验通过**,可作为第三方应用(小程序)的评估规范。但它是**通用行业文档**(FHWA/NEMA 口径),落地到 DLD110S 必须做字段映射——**DLD110S 实际上报的字段与文档参数体系不是一一对应**,尤其"电感量 L / Q 值 / R_DC / Vpp"四项 DLD110S **不直接上报**,需要换算或降级处理。
|
||
|
||
## 2. 公式与数据核验结果(全部通过)
|
||
|
||
| 核验项 | 结果 |
|
||
|---|---|
|
||
| §3.2.1 频率-电感表 32 格(8 L × 4 C) | ✅ 全部正确,最大偏差 0.24%(表格四舍五入) |
|
||
| 交叉验证 59μH @ 四档电容 | ✅ 114.1 / 99.9 / 80.7 / 75.2 kHz,与 vd960Loop 实测 114/100/81/75 一致 |
|
||
| §3.2.2 Δf/f = -(1/2)×ΔL/L | ✅ 正确(f ∝ L^-1/2 微分) |
|
||
| §3.4.1 Q 算例 13.5 | ✅ Q=2πfL/R = 2π×20k×94μ/0.87 = 13.6 |
|
||
| §3.5.1 R_DC 算例 0.36Ω | ✅ 21.6m×0.0083×2 = 0.359Ω |
|
||
| §3.3.2 Class3 汽车 3.2%/5.4% | ✅ 3.0/94μH=3.2%、5.0/94μH=5.3%(含引线口径) |
|
||
| §3.3.2 3M 专利 5.0% | ✅ 3.5μH/70μH=5.0%(6ft 方环无引线口径) |
|
||
| 中国工程实践 150~250μH → 频率 | ✅ 36~72kHz 落在 DLD110S 量程内 |
|
||
|
||
> ⚠ 注意 §3.3.2 表内 **ΔL/L 口径不一致**:NEMA 表用"含 100ft 引线总电感 94μH",3M 专利用"裸环 70μH"。两个口径差 34%,小程序实现时**必须统一基准**(建议统一用裸环 L_loop 或含引线 L_total,别混用)。
|
||
|
||
## 3. 关键口径对齐:variation ↔ ΔL/L(DLD110S 上报字段的核心)
|
||
|
||
DLD110S 0xC0 主动上报的 `variation` 是**周期域差值**(`variation = Origin − CAPVD`),不是文档 §3.3 直接定义的 ΔL/L。换算关系(CAPVD ∝ T = 2π√(LC),即周期 ∝ √L):
|
||
|
||
```
|
||
variation/Origin = 1 − √(1 + ΔL/L) 精确
|
||
ΔL/L ≈ −2 × variation/Origin 一阶(|ΔL/L|≪1 时残差 <0.2%)
|
||
Δf/f ≈ variation/Origin 频域对应(与文档式 2-47 完全一致)
|
||
```
|
||
|
||
**结论**:文档 §3.2.2 的 `Δf/f = -(1/2)×ΔL/L` 与 DLD110S 的 variation 口径**自洽**——`variation/Origin ≈ Δf/f ≈ -(1/2)×ΔL/L`。第三方应用两种实现路径等价:
|
||
|
||
| 路径 | 做法 | 注意 |
|
||
|---|---|---|
|
||
| A. 用频率 | Δf/f = (f_报 − f_基)/f_基,ΔL/L ≈ −2×Δf/f | 需要自建基线 f_基(无车时频率) |
|
||
| B. 用 variation | ΔL/L ≈ −2×variation/Origin | 需要 Origin,**但 DLD110S 不上报 Origin** ⚠️ |
|
||
|
||
> 🚨 **DLD110S 上报缺陷**:0xC0 只有 `frequency` + `variation`,**没有 Origin/CAPVD**。小程序走路径 B 算不出 ΔL/L,**必须走路径 A**(用上报频率自建无车基线,或用 0x24 读参数/上电初始频率当基线)。这是小程序实现时最大的坑。
|
||
|
||
## 4. DLD110S 字段映射表(设计依据 → 实际上报)
|
||
|
||
| 设计依据参数 | 优先级 | DLD110S 是否有 | 实际来源 | 实现说明 |
|
||
|---|---|---|---|---|
|
||
| 谐振频率 f | ★★★ | ✅ | 0xC0 偏移 7-9,3B LE | `freq = sclk_freq/(CAPVD/LPCNT) + 360`(+360 经验补偿,见 §5) |
|
||
| 电感量 L | ★★★ | ⚠️ 间接 | 反推:L = 1/(4π²f²C) | 需知道当前电容档(freq_level)才能反推;或依赖用户输入的几何参数算理论值 |
|
||
| ΔL / ΔL/L | ★★★ | ⚠️ 间接 | variation + 自建频率基线 | 走路径 A:ΔL/L ≈ −2×(f_报−f_基)/f_基 |
|
||
| 品质因数 Q | ★★ | ❌ | 无 | 文档 §7 已留口:无 Q 上报时用 R_DC + 频率间接评估,或直接降级跳过 |
|
||
| 直流电阻 R_DC | ★★ | ❌ | 无(人工输入) | C 类测量来源,小程序表单提供输入框即可 |
|
||
| 振荡峰峰值 Vpp | ★ | ❌ | condition 字段可替代 | 0xC0 偏移 1 低 4 位 `condition`(0~15,环境活跃度),**不是 Vpp 但可当健康度粗判** |
|
||
| 基线漂移 | ★★ | ⚠️ 间接 | 频率长期趋势 | 固件有基线跟踪(WINDOW_ORIGIN=500 窗 4.4s),variation 被自动基线吸收,**漂移监测必须用上报频率的长期趋势,不能用 variation** |
|
||
|
||
**condition 字段语义**(固件 peripheral_main.c):`g_env_activity/10`,>150 取 15;**线圈断开强制 15**。
|
||
→ 小程序可直接展示:condition≥15 → 环境活跃/疑似断开,再结合 `loop1_FLAG_CUT`(0xC0 偏移 3 bit7)+ 断开次数(偏移 4-6)区分。
|
||
|
||
## 5. DLD110S 四档电容与频率档位(FLEVEL)
|
||
|
||
- 固件 `g_freq_level = loopFreq_Level - 1`(0~3),硬件 GPIO `FLEVEL_H/L` 组合切档:
|
||
- 0=高频(FLEVEL_H_LOW, FLEVEL_L_LOW)
|
||
- 1=中高(LOW, HIGH)
|
||
- 2=中低(HIGH, LOW)
|
||
- 3=低频(HIGH, HIGH)
|
||
- **0x23 设置参数 Data[0] 高 4 位 = loopFreq_Level**(1~4,0x24 回读同位置)
|
||
- 0xC0 偏移 1 `freq_level<<4` 直接上报当前档位 → 小程序评估频率必须用**上报的 freq_level 对应电容**查表,不能假设档位
|
||
- ⚠️ **待现场验证**:设计依据说四档电容 = 33/43/66/76nF(vd960Loop 口径)。DLD110S 的 FLEVEL 是否就是这四个值,**需按原理图/实物确认**(固件只有 GPIO 切换,无电容值信息)。默认沿用 33/43/66/76,但评估前先核实。
|
||
- ⚠️ **频率 +360 补偿**:上报 freq 加了经验值 360Hz。对频率判据(±10%~±20%)影响可忽略(0.36%@100kHz),但**反推电感量 L 时别把 360 当真实频率**,建议先用 `f_真实 = f_报 − 360` 再算 L。
|
||
|
||
## 6. DLD110S 灵敏度档位(评估检测能力时用)
|
||
|
||
| KEY_SA1 | KEY_SA2 | g_freq_sens | 档位 | sens_in | Δf/f 阈值 | ΔL/L 阈值(×2) |
|
||
|---|---|---|---|---|---|---|
|
||
| 1 | 1 | 0 | 最低 | 108 | 0.165% | 0.330% |
|
||
| 0 | 1 | 1 | 中 | 54 | 0.082% | 0.165% |
|
||
| 1 | 0 | 2 | 最高 | 28 | 0.043% | 0.085% |
|
||
|
||
- 🚨 **灵敏度由硬件拨码决定,0x23 设置的 sensitvity 不生效**(0x24 回读 = 拨码档位+1)
|
||
- 对照设计依据 §3.3.4:轿车 S≥1% 正常、摩托车 S≥0.1% 正常 → DLD110S 最高档(0.085% ΔL/L 阈值)能覆盖摩托车临界场景,符合 NEMA Class 2 可靠检测下限(0.32%... 实际 0.32% > 0.085%,裕量充足)
|
||
- 小程序评估"检测能力"时:**按 0x24 回读的拨码档位**查表,别用 0x23 设置值;或者直接用百分比阈值(S≥1% 轿车 / S≥0.1% 摩托)评估实际车辆事件信号强度,不依赖档位号
|
||
|
||
## 7. 小程序评估实现检查清单(上传评估数据后逐项核对)
|
||
|
||
1. **频率判据**:理论频率是否按"用户输入几何参数 → FHWA 表 → 叠加引线 → 选当前 freq_level 电容"计算?±10%/±20% 阈值是否实现?
|
||
2. **电感反推**:是否用 `L = 1/(4π²(f_报−360)²C)`?C 是否取自上报 freq_level?
|
||
3. **ΔL/L 路径**:是否走频率基线(路径 A)?**有没有错误地直接用 variation 当 ΔL/L 或除以错误基准?**
|
||
4. **符号位**:variation 3B 补码符号扩展(`if (v & 0x800000) v |= 0xFF000000`)是否正确?
|
||
5. **灵敏度档位**:是否读 0x24(拨码档位+1)而非 0x23 设置值?
|
||
6. **condition 判读**:是否区分"环境活跃" vs "线圈断开"(结合 FLAG_CUT / 断开次数)?
|
||
7. **综合评级**:是否按 §4.3 规则(★★★ 参数异常 → ❌,开路/停振 → 🚨)?
|
||
8. **口径统一**:ΔL/L 基准是否统一(裸环 vs 含引线)?
|
||
|
||
## 8. 建议回填给设计依据文档 V1.2 的修订点
|
||
|
||
1. §3.3.2 两个口径表加注"基准不同"(94μH 含引线 vs 70μH 裸环)
|
||
2. ~~§7 待确认项补:DLD110S 上报缺 Origin → 建议固件后续版本在 0xC0 增加 Origin/CAPVD 字段(一行),第三方就能直接算 ΔL/L~~ **✅ 已解决(2026-08-26,协议 V1.1)**:固件 0x24 读参响应尾部追加 3B `LOOP_MEASURE_BASE=524288`(cmcng.h 宏),第三方读一次缓存即可归一化 variation,**无需扩 0xC0、零分包风险、老小程序兼容**。换算:`ΔL/L ≈ -2×variation/LOOP_MEASURE_BASE`。
|
||
3. §3.6 建议的"自检布尔量"对 DLD110S 可用 `condition` + `FLAG_CUT` 组合实现,建议写进产品协议文档
|
||
4. 频率 +360 补偿要写进协议(已写进 ble-protocol.md 第 6 节,本文档评估方须知晓)
|
||
5. **(2026-08-26 新增)归一化基数教训**:跨产品评估 variation 必须使用设备自身 MEASUREMENT_BASE——DLD110S=524288(2^19 @60MHz)、DLD154V4B=131072(2^17 @120MHz)。第三方应用不得写死任一产品的常量,一律以 0x24 回读值为准。协议 V1.1 已固化该字段。
|