wangfq 0f8a0d6fbd fix(V4B): V4.36.42 — 低Q 临界悬停自激根治 (进/出参考统一 + 释放带夹紧 + 最小保持)
用户反馈: 金属板缓慢接近时判据乱跳; 35µH(128kHz)/46µH(112kHz) 线圈同样现象(46µH 在设计窗内且无告警)。

根因(三段链条, 现场日志与代码逐值吻合):
 ① 无车态 dlt_ORG=进表 49 ⇒ vac_ref() 门控 1×49; Origin−EMA=32~34 ≯49 ⇒ 参考=Origin ⇒ 进入线=Origin−49
 ② 进车瞬间 dlt_ORG 切成释表 23 ⇒ 同一 gap > 1×23 ⇒ vac_ref() 改用 EMA(低 32~34 counts)
 ③ 释放线 = EMA−1.8×23 ⇒ 比进入线还浅 ⇒ 深度 50~58 的静止凹脉冲"进门即满足释放"
   ⇒ 进入确认 5 + 释放确认 5 = 10 样本 = 100ms 周期自激(日志实测 ~30 组/3s)

实现:
 - G1 新增 vac_gate_dlt()(状态无关进表 dlt)供 vac_ref() 门控 (TaskLoop.c:297/307) ⇒ 进/出同一参考
 - G2 低Q 释放带夹紧 _band ≤ vac_gate_dlt()-1 (TaskLoop.c:339) ⇒ 只作未来兜底; 180(=41@SENS3, V4.36.28 现场值)一字未动
 - G3 REL_MIN_HOLD_TICKS=30 有车后 300ms 禁释放 (TaskLoop.h:69 + TaskLoop.c 调用点) ⇒ 只挡释放不延迟检出

单测: 新增场景 7 现场参数逐位复现 —— 22µH 悬停 300/300 → 1/0; 35µH 300/300 → 1/0; 撤板 1/1; V4.36.28 回摆仍释放; 非低Q 同深度不自激; 全套 8/8 全绿
文档: devlog V2.79(+条目) / spec 文档头 V2.61 / manual 表 V2.18 / cmcng.h 4.36.41→4.36.42 REV 42
待现场: 上板复测 + 锁死侧三线圈实验 (devlog 条目内 [ ] 占位)
2026-09-11 16:59:26 +08:00
2026-06-22 18:20:37 +08:00

DLD154V4B — 单路车检器

硬件规格

项目 说明
产品型号 DLD154V4B
主控 MCU AT32F421F8P7
内核 ARM Cortex-M4
主频 120 MHz
Flash 64 KB
SRAM 16 KB
线圈通道 1 路
调试接口 TTL 电平 Tx

IO 资源分配

拨码开关

引脚 标识 功能 说明
PA0 SA_1 灵敏度 bit0 与 SA_2 组合,4 级灵敏度
PA1 SA_2 灵敏度 bit1
PA2 SW_3 存在/脉冲 0=存在输出,1=脉冲输出
PA3 SW_4 离开延时 0=无, 1=500ms
PA4 SW_5 安全复位 0=正常,1=安全复位

继电器输出

引脚 标识 功能 说明
PA5 RLY2 继电器 2 方向/第二路输出
PA6 RLY1 继电器 1 存在/脉冲/主输出

线圈输入捕获

引脚 标识 外设 功能
PA7 LP TIM3_CH2 线圈频率输入捕获

指示灯

引脚 标识 颜色 功能
PB1 LEDA 红色 呼吸灯(系统运行指示)
PA9 LEDB 绿色 有车亮 / 无车灭
PA10 LEDC 黄色 故障指示

IO 汇总表

引脚 功能 方向 外设
PA0 SA_1 (灵敏度) IN GPIO
PA1 SA_2 (灵敏度) IN GPIO
PA2 SW_3 (存在/脉冲) IN GPIO
PA3 SW_4 (离开延时) IN GPIO
PA4 SW_5 (安全复位) IN GPIO
PA5 RLY2 (继电器2) OUT GPIO
PA6 RLY1 (继电器1) OUT GPIO
PA7 LP (线圈捕获) IN TIM3_CH2
PA9 LEDB (绿灯) OUT GPIO
PA10 LEDC (黄灯) OUT GPIO
PB1 LEDA (红灯) OUT TIM / GPIO

功能逻辑

拨码开关

SA_2 SA_1 灵敏度
0 0
0 1
1 0
1 1 最高
  • SW_3:0 = 存在输出(继电器保持),1 = 脉冲输出(继电器吸合后释放)
  • SW_4:0 = 无离开延时(直接输出脉冲),1 = 离开延时 500ms
  • SW_5:拨到 ON 触发安全复位(所有输出关闭,频率重新学习)

指示灯

状态 LEDA (红) LEDB (绿) LEDC (黄)
正常运行、无车 呼吸
有车 呼吸
线圈故障(断开/短路) 呼吸
安全复位中 快闪

继电器输出模式

存在输出(SW_3=0): 有车时 RLY1 吸合,无车释放。 脉冲输出(SW_3=1): 车辆进入时 RLY1 吸合 500ms 后释放。

目录结构

DLD154V4B/
├── src/          # 源代码
├── inc/          # 头文件
│   └── bsp_pins.h    # 引脚定义
├── lib/          # 库文件
│   ├── HAL/      # AT32F421 标准外设库
│   └── CMSIS/    # ARM CMSIS-Core
├── docs/         # 文档
└── tools/        # 辅助工具

开发环境

  • IDE: Keil MDK / AT32 IDE
  • 调试器: SWD (PA13/PA14)

文档

文档 说明
产品发布说明 V1.6 发布:特性、技术规格、版本历程
产品手册 面向用户:功能说明、安装指南、故障排查
技术规格书 面向工程:算法详解、IO 分配、电气参数、通信协议
开发日志 版本历史和设计决策记录
参考分析 M1H (STC12C5202) + TLD-110 (P87LPC762) 算法分析
S
Description
单路车检器 DLD154V4B — AT32F421F8P7, 1路线圈
Readme
2.1 MiB
Languages
C 99.6%
Assembly 0.4%