feat(V4B): V4.35 — 频率窗上限复核 92→108kHz (43nF板口径≈50µH)

V4.33 的 92k 是 0Ω 实验板(68nF)语境; 产品回到三极管板(43nF)后 92k≈70µH 过严,
40~70µH 正常线圈会误报 → 上限 108k = L≈50µH (保留最小合理线圈)
test_coil_range 边界 108/109 全绿; 语法 0 error
文档: devlog V2.33 / spec V2.14 / manual V2.11
This commit is contained in:
wangfq
2026-09-03 17:13:00 +08:00
parent be91c584ee
commit f6e2a82935
6 changed files with 47 additions and 14 deletions
+32
View File
@@ -4,6 +4,37 @@
---
## 2026-09-03 — 频率窗上限复核:92→108kHz(固件 V4.3543nF 板口径)
> **固件版本:V4.35**cmcng.hFIRMWARE_VER="4.35" + MAIN=4/SUB=35)。devlog 修订 V2.33。
### 修正(2026-09-03
V4.33 拍 92kHz 时测试数据在 0Ω 实验板(C_eff=68);产品基准回到三极管库存板(43nF)后
同线圈 f ×1.25792k 对应 L≈70µH0Ω 板口径 30µH)→ 40~70µH 正常线圈会误报。
**COIL_F_OK_MAX_KHZ92 → 108**43nF 板口径,108kHz ≈ L 50µH,保留最小合理线圈)
| 板型 | C_eff | 92k 对应 L | 108k 对应 L |
|------|-------|-----------|------------|
| 三极管库存板(产品,43) | 43 | ~70µH | **~50µH** |
| 0Ω 实验板(68 | 68 | ~30µH | ~44µH |
### 改动
- TaskLoop.hCOIL_F_OK_MAX_KHZ 92→108(注释含 43nF 板口径与复核缘由)
- tests/test_coil_range.c:镜像宏 108,边界 108/109108 正常、109 → L偏小)
- 版本 V4.34→V4.35spec V2.14 / manual V2.11 / devlog V2.33
### 验证
- test_coil_range 5 场景 ALL PASS(边界 19/20/108/109
- 语法 0 error
### 待现场验证
- 48µH 线圈(43nF 板 ~111kHz)——仍略高于 108k 上限?LCR 复核实际值后确认是否需要再放宽
## 2026-09-03 — 产品基准回到三极管库存板:COIL_CAL_C_NF 68→43(固件 V4.34
> **固件版本:V4.34**cmcng.hFIRMWARE_VER="4.34" + MAIN=4/SUB=34)。devlog 修订 V2.32。
@@ -1387,6 +1418,7 @@ if (dev >= dlt_ORG × 4) {
| 版本 | 时间 | 说明 |
|------|------|------|
| V2.33 | 2026-09-03 | V4.35 频率窗上限复核: 92→108kHz(43nF板口径≈50µH, 92@43nF≈70µH过严) |
| V2.32 | 2026-09-03 | V4.34 产品基准回到三极管库存板: COIL_CAL_C_NF 68→43; 0Ω改动仅机理验证 |
| V2.31 | 2026-09-03 | V4.33 线圈频率窗上限 COIL_F_OK_MAX_KHZ 120→92kHz |
| V2.30 | 2026-09-03 | V4.32 黄灯一长一短: 200/100/100/800ms → 300/100/100/700ms |
+2 -2
View File
@@ -1,6 +1,6 @@
# DLD154V4B 产品手册
> 单路线圈车辆检测器 | 型号: DLD154V4B | 版本: V2.10
> 单路线圈车辆检测器 | 型号: DLD154V4B | 版本: V2.11
> 适用于停车场、收费站、交通卡口等场景的车辆到达/离开检测
---
@@ -177,7 +177,7 @@ DLD154V4B 是一款基于 ARM Cortex-M4 微控制器的**单通道环形线圈
| 故障类型 | 红灯 | 绿灯 | 黄灯 | 说明 |
|---------|------|------|------|------|
| 线圈断开(当前) | 呼吸 | 灭 | **快闪** (200ms) | 检查线圈连接 |
| 线圈电感量不合理(V4.26/V4.33) | 呼吸 | 灭(无车) | **一长一短** (300ms亮/100ms灭/100ms亮/700ms灭 循环) | 空场频率出 20~92kHz(默认低频档):L偏大(f<20k)/L偏小(f>92k),检查线圈匝数/尺寸 |
| 线圈电感量不合理(V4.26/V4.33) | 呼吸 | 灭(无车) | **一长一短** (300ms亮/100ms灭/100ms亮/700ms灭 循环) | 空场频率出 20~108kHz(默认低频档):L偏大(f<20k)/L偏小(f>108k),检查线圈匝数/尺寸 |
| 线圈重连,断开 1 次 | 呼吸 | 正常 | **1 短闪** + 1.2s 灭 | 发生过 1 次断开,已恢复 |
| 线圈重连,断开 2 次 | 呼吸 | 正常 | **2 短闪** + 1.2s 灭 | 发生过 2 次断开,已恢复 |
| 线圈重连,断开 3+ 次 | 呼吸 | 正常 | **3 短闪** + 1.2s 灭 | 多次断开,建议检查接头 |
+2 -1
View File
@@ -1,6 +1,6 @@
# DLD154V4B 技术规格书
> 单路线圈车辆检测器 | 固件版本: V4.34 | 文档版本: V2.13
> 单路线圈车辆检测器 | 固件版本: V4.35 | 文档版本: V2.14
> 本文档面向工程开发、系统集成及故障深度分析
---
@@ -779,3 +779,4 @@ DLD154V4B V1.4 起实现该专利的整数化版本,用于大车通行时的
| V2.11 | 2026-09-03 | 更新至 V4.32:黄灯一长一短模式时序 200/100/100/800ms → 300/100/100/700msdur[4]={60,20,20,140} |
| V2.12 | 2026-09-03 | 更新至 V4.33:线圈频率合理窗上限 COIL_F_OK_MAX_KHZ 120→92kHz>92k → L偏小告警) |
| V2.13 | 2026-09-03 | 更新至 V4.34:产品基准回到三极管库存板(不改电路),COIL_CAL_C_NF 68→430Ω 改动仅机理验证 |
| V2.14 | 2026-09-03 | 更新至 V4.35:频率窗上限 92→108kHz43nF 板口径 ≈50µHV4.33 的 92@68nF 实验板→43nF 过严复核修正) |
+8 -8
View File
@@ -2,8 +2,8 @@
* test_coil_range.c 线 gcc (DLD154V4B V4.26)
*
* : TaskLoop.c coil_monitor() (V4.26 )
* : 20~92kHz,
* g_coil_fault: 0= 1=L偏大(f<20kHz) 2=L偏小(f>92kHz)
* (43nF ): 20~108kHz,
* g_coil_fault: 0= 1=L偏大(f<20kHz) 2=L偏小(f>108kHz)
* : / 100tick(=1s) / (=)
*
* ( COIL_* !)
@@ -14,7 +14,7 @@
#include <stdint.h>
#define COIL_F_OK_MIN_KHZ 20
#define COIL_F_OK_MAX_KHZ 92
#define COIL_F_OK_MAX_KHZ 108
#define COIL_DEF_C_NF 66
static uint8_t g_coil_fault = 0;
@@ -86,11 +86,11 @@ static void test_boundaries(void)
{
g_coil_fault = 0; g_coil_bad_cnt = 0;
run_ticks(19, 100); assert(g_coil_fault == 1); /* 19 → 偏大 */
run_ticks(62, 100); assert(g_coil_fault == 0); /* 20~92 正常 */
run_ticks(62, 100); assert(g_coil_fault == 0); /* 20~108 正常 */
run_ticks(20, 100); assert(g_coil_fault == 0); /* 边界 20 正常 */
run_ticks(92, 100); assert(g_coil_fault == 0); /* 边界 92 正常 */
run_ticks(93, 100); assert(g_coil_fault == 2); /* 93 → 偏小 */
printf("4. 边界 19/20/92/93 OK\n");
run_ticks(108, 100); assert(g_coil_fault == 0); /* 边界 108 正常 */
run_ticks(109, 100); assert(g_coil_fault == 2); /* 109 → 偏小 */
printf("4. 边界 19/20/108/109 OK\n");
}
static void test_jitter_no_alarm(void)
@@ -111,6 +111,6 @@ int main(void)
test_recover();
test_boundaries();
test_jitter_no_alarm();
printf("\nALL PASS (窗口 20~92kHz, 防抖 1s)\n");
printf("\nALL PASS (窗口 20~108kHz, 防抖 1s)\n");
return 0;
}
@@ -49,7 +49,7 @@
#define ENV_WARN_WAIT 200 // 环境预判 (V4.31): dev>+4dlt 高位连续 ~2s → 黄灯预判锁存(回摆保持)
#define ENV_RECOVER_WAIT 200 // 恢复确认 (V4.31): 新基线替换后 环境空闲连续 ~2s 才解除预判, 黄灯灭
#define COIL_F_OK_MIN_KHZ 20 // 线圈频率合理窗 (V4.26): 默认低频档口径, <20kHz → L偏大
#define COIL_F_OK_MAX_KHZ 92 // 线圈频率合理窗 (V4.32): >92kHz → L偏小 (原120)
#define COIL_F_OK_MAX_KHZ 108 // 线圈频率合理窗 (V4.35): >108kHz → L偏小 (43nF板口径, ≈50µH; 原92@68nF实验板→92@43nF≈70µH过严, 2026-09-03复核)
#define COIL_CAL_C_NF 43 // 标定等效谐振电容 nF (V4.34): 三极管库存板 低频档(66nF名义, R19在/R27空)实测 C_eff≈43 (41.3~45.5; 0Ω板68仅实验口径, 产品不用)
// 旧43 = 5.1K电阻旧板带病特性(三极管开关未饱和导通, 第二颗33nF未全量并入), 作废
#define COIL_CAL_C_NF_33 34 // 高频档(33nF名义)标定值: 实测 C_eff≈34.4 (33.8~35.0, 3组) — 用33nF档时改 COIL_CAL_C_NF 为34
+2 -2
View File
@@ -14,10 +14,10 @@
#define __CMCNG_H__
#define PRODUCT_MODEL "DLD154"
#define FIRMWARE_VER "4.34"
#define FIRMWARE_VER "4.35"
#define HARDWARE_VER "3.00"
#define FIRMWARE_VER_MAIN 4
#define FIRMWARE_VER_SUB 34
#define FIRMWARE_VER_SUB 35
#define HARDWARE_VER_MAIN 3
#define HARDWARE_VER_SUB 0