feat(DLD154V4B): V2.9 平坦性离开判定默认关闭(现场实测不理想)+ 全量文档同步

- TaskLoop.h: USE_FLATNESS_EXIT 1→0,离开判定切回简单滞回 3 次防抖
  (与 DLD154Pro 一致);平坦性代码保留 #if 内可一行开启
- technical-spec: 模式1标默认(V2.9起)/模式2标禁用;修正模式1伪代码
  方向错误(CAPVD<Origin+dlt → (Origin-dlt)<CAPVD);延迟/误检率表同步
- product-manual/release-notes: 离开判定口径改'滞回+连续确认(平坦性可选)',
  最高档灵敏度 0.015%→0.031%(V2.8 残留);版本历史补 V2.7/V2.8 缺行
- roadmap: V2.6→V2.9 行更新 + 突破表离开判定
- devlog: 置顶 2026-08-28 条目(背景/决定/同步清单)
This commit is contained in:
wangfq
2026-08-28 08:45:34 +08:00
parent cb1c9c3f82
commit 859842aba0
6 changed files with 67 additions and 30 deletions
+11 -9
View File
@@ -35,7 +35,7 @@ FreeRTOS Kernel (CMSIS-RTOS v2)
│ │ ├── 斜率限幅 (MAX_SLOPE_RATE=5%)
│ │ ├── 基线跟踪 (500 窗口滑动平均, 5s)
│ │ ├── 进入确认 (ENTRY_CONFIRM=3 次)
│ │ ├── 离开检测 (平坦性 / cnt_release)
│ │ ├── 离开检测 (cnt_release 防抖,平坦性 #if 可选)
│ │ ├── 时序状态机 (IN/OUT/PULSE/HOLD)
│ │ └── 冻结超时恢复 (10s + ±2% 稳定性检查)
│ ├── poll_sw_state() — 拨码去抖
@@ -256,11 +256,11 @@ if (CAPVD < Origin - dlt_ORG) {
#### 4.3.3 离开检测(滞回)
##### 模式 1:简单防抖 (USE_FLATNESS_EXIT=0)
##### 模式 1:简单防抖 (USE_FLATNESS_EXIT=0) — 默认(V2.9 起)
```c
dlt_ORG = (Origin * SensTable_1[SENS]) >> 16; // 更小的离开阈值
if (CAPVD < Origin + dlt_ORG) {
if ((Origin - dlt_ORG) < CAPVD) { // CAPVD 回升至距基线不足 dlt → 离开
if (++cnt_release >= 3) { // 连续 3 次确认
VD_FLAG = 0; FLAG_OUT = 1;
}
@@ -269,10 +269,12 @@ if (CAPVD < Origin + dlt_ORG) {
}
```
##### 模式 2:平坦性判定 (USE_FLATNESS_EXIT=1) — 默认
##### 模式 2:平坦性判定 (USE_FLATNESS_EXIT=1) — ⚠ 默认禁用(#if 0,代码保留)
基于专利 **CN200910309382**(中山大学),解决大车通行时频率多峰导致的多次误触发。
> ⚠ **2026-08-28 现场结论:平坦性算法实测不理想,默认关闭(USE_FLATNESS_EXIT=0**,离开判定切回简单 cnt_release 防抖(模式 1)。平坦性代码完整保留在 `#if USE_FLATNESS_EXIT` 内,可在 TaskLoop.h 一行开启,现场对比验证用。
**算法架构:**
```
@@ -641,9 +643,9 @@ DLD154V4B/
| 指标 | 值 | 说明 |
|------|-----|------|
| 进入检测延迟 | < 3 ms (测量) + 3×10ms (确认) + 500 ms (防抖) = **~530 ms** | M4 优化,比旧 550ms 略快 |
| 离开检测延迟 | < 3 ms (测量) + 平坦性确认 + 500 ms (防抖) | 含双重确认 |
| 离开检测延迟 | < 3 ms (测量) + 3×10ms (防抖确认) + 500 ms (可选延时) | 滞回 + 3 次确认 |
| 误检率(单阈值) | — | 基准参考 |
| 误检率(平坦性 | 显著降低 | 大车多峰场景 |
| 误检率(防抖 | 滞回 + 3 次确认 | 瞬态干扰免疫(平坦性 #if 可选) |
| 频率分辨率 | < 0.01% | 取决于线圈 Q 值 |
| 温漂补偿 | 自动(100 窗口基线跟踪,更新周期 ~1s) | 仅无车时;冻结超时 10s |
| 瞬态抑制 | 5% 斜率限幅 + 3 次进入确认 | EMI/闪电免疫 |
@@ -673,8 +675,8 @@ DLD154V4B/
```c
// TaskLoop.h
#define USE_FLATNESS_EXIT 1 // 1 = 平坦性离开判定 (CN200910309382)
// 0 = 简单 cnt_release 防抖
#define USE_FLATNESS_EXIT 0 // 1 = 平坦性离开判定 (CN200910309382)
// 0 = 简单 cnt_release 防抖 (V2.9 默认)
// M4 优化参数
#define MAX_SLOPE_RATE 5 // 斜率限幅: 单次最大变化 5%
@@ -691,7 +693,7 @@ DLD154V4B/
|--------|------|--------|------|
| CN200910309382 | 一种防误检环形线圈车辆检测器 | 中山大学 张辉/黄永强/陈古典 | 平坦性三条件离开判定 |
DLD154V4B V1.4 起实现该专利的整数化版本,用于大车通行时的离开判定,有效抑制频率曲线多峰导致的多次误触发。
DLD154V4B V1.4 起实现该专利的整数化版本,用于大车通行时的离开判定,有效抑制频率曲线多峰导致的多次误触发。**V2.92026-08-28)起默认关闭(现场实测不理想),代码保留在 `#if USE_FLATNESS_EXIT` 内可一行开启。**
---