feat(V4B): V4.36.4 — 绿灯=RLY1 继电器实际输出状态指示

现场误判根因: 断开时 poll_green_led 强制绿灯灭, 而 V4.36.3 保持
逻辑下继电器仍吸合 → 灯/继电器脱节 → 误判继电器释放
改动: 稳定后绿灯镜像 RLY1_GPIO->odt (吸合亮/释放灭), 删断开
强制灭分支 → 有车断开保持期绿灯亮(与继电器一致); 自检期慢闪不变
语法0 error, 4测试全绿; spec V2.20 / manual 灯表 / devlog V2.38
This commit is contained in:
wangfq
2026-09-04 09:43:42 +08:00
parent 1efa9ad775
commit 55ac432c69
5 changed files with 60 additions and 20 deletions
+37
View File
@@ -4,6 +4,42 @@
---
## 2026-09-03 — 绿灯=继电器状态指示(固件 V4.36.4)
> **固件版本:V4.36.4**cmcng.hFIRMWARE_VER="4.36.4"REV=4)。devlog 修订 V2.38。
### 现场误判(用户报告)
车压线圈拔线测试:**继电器实际未释放**(V4.36.3 保持逻辑工作正常),但**绿灯灭了**——
原 poll_green_led 在 `g_disconnect_active` 时强制绿灯灭(黄灯快闪负责故障指示),
而继电器在有车断开时保持吸合 → 灯(灭)与继电器(吸)脱节 → 误判"继电器立刻释放"。
### 改动
**绿灯语义改为 = RLY1 继电器实际输出状态**(稳定后):
-`RLY1_GPIO->odt & RLY1_PIN`(与 RLY1_ON/OFF 宏同源 = 真实驱动状态)
- 吸合(高) → 绿灯亮(PA9 低电平点亮);释放 → 绿灯灭
- **删除 `g_disconnect_active` 强制灭分支** → 断开时绿灯跟随继电器:
- 有车断开保持(RELAY_HOLD_MS)期间 → 绿灯保持亮(与继电器一致)
- 断开超时释放/无车断开 → 绿灯灭
- 自检/判稳期(INI_LOOP/!power_up/!stable)保持 200ms 慢闪(就绪过程指示,该阶段继电器未驱动)
### 输出覆盖(模式自适应)
- 存在模式:有车/离开延时输出 → RLY1 吸合 → 绿灯亮;无车 → 灭
- 脉冲模式:进出脉冲输出中 → 绿灯短亮;平时灭(真实输出指示)
### 验证
- 语法 0 error4 组单测全 PASS(绿灯为 poll 层,无单测耦合;待板级验证)
### 待板级验证
1. 车压线圈拔线:绿灯保持亮 500ms(与继电器同步)→ 超时释放后灭
2. 车压快速拔插(<500ms):绿灯不掉,车走继电器释放 → 绿灯灭
3. 上电判稳期:绿灯慢闪 → 稳定后灭(无车)/ 有车亮
4. 脉冲模式:进出车时绿灯短亮脉冲
## 2026-09-03 — 有车断开继电器保持 500ms(固件 V4.36.3
> **固件版本:V4.36.3**cmcng.hFIRMWARE_VER="4.36.3"REV=3)。devlog 修订 V2.37。
@@ -1554,6 +1590,7 @@ if (dev >= dlt_ORG × 4) {
| 版本 | 时间 | 说明 |
|------|------|------|
| V2.38 | 2026-09-03 | V4.36.4 绿灯=RLY1 继电器实际输出状态(吸合亮/释放灭), 删断开强制灭分支; 自检期慢闪不变 |
| V2.37 | 2026-09-03 | V4.36.3 有车断开继电器保持 RELAY_HOLD_MS=500ms(ISR计时/宏可调); 无车断开立即释放不变 |
| V2.36 | 2026-09-03 | V4.36.2 线圈重连确认窗 100ms(防抖动重复计数/首样本毛刺); 断开判定不加防抖 |
| V2.35 | 2026-09-03 | 版本体系增加修订号: 4.36.1 (MAIN/SUB 产品定, 小改只增 REV); 启动打印 fw 行 |
+4 -2
View File
@@ -169,8 +169,10 @@ DLD154V4B 是一款基于 ARM Cortex-M4 微控制器的**单通道环形线圈
| 状态 | 红灯 (PB1) | 绿灯 (LEDA/PA9) | 黄灯 (LEDC/PA10) |
|------|-----------|-----------------|-------------------|
| 上电自检中 | 呼吸 | **慢闪** (200ms),基准值稳定后停止 (约2~5s) | 快闪 (200ms) |
| 正常运行,无车 | 呼吸 | 灭 | 灭 |
| 正常运行,有车 | 呼吸 | **亮** | 灭 |
| 正常运行,无车(继电器释放) | 呼吸 | 灭 | 灭 |
| 正常运行,有车(继电器吸合) | 呼吸 | **亮**=RLY1 状态) | 灭 |
| 线圈断开,断开前有车(继电器保持 500ms) | 呼吸 | **亮**(继电器未释放) | 快闪 |
| 线圈断开,继电器已释放/无车断开 | 呼吸 | 灭 | 快闪 |
### 5.2 故障状态
+2 -1
View File
@@ -1,6 +1,6 @@
# DLD154V4B 技术规格书
> 单路线圈车辆检测器 | 固件版本: V4.36.3 | 文档版本: V2.19
> 单路线圈车辆检测器 | 固件版本: V4.36.4 | 文档版本: V2.20
> 本文档面向工程开发、系统集成及故障深度分析
---
@@ -785,3 +785,4 @@ DLD154V4B V1.4 起实现该专利的整数化版本,用于大车通行时的
| V2.17 | 2026-09-03 | 固件版本体系增加修订号:**V4.36.1**(MAIN/SUB 由产品定,小改动只增 REV);启动日志打印 fw 行 |
| V2.18 | 2026-09-03 | **V4.36.2 重连确认窗**:载波连续恢复 ~100ms 才确认重连重置(防接触抖动重复计数/首样本毛刺);断开判定不加防抖(释放速度安全刚需) |
| V2.19 | 2026-09-03 | **V4.36.3 有车断开继电器保持 RELAY_HOLD_MS=500ms**:断开前 VD_FLAG=1 → RLY 保持不释放;500ms 内重连+有车 → 无缝续持;重连+无车 → vd1_task 判离释放;超时仍断 → 强制释放(宏可调) |
| V2.20 | 2026-09-03 | **V4.36.4 绿灯=继电器状态指示**:稳定后绿灯镜像 RLY1(PA6) 实际输出——吸合亮/释放灭;删除断开时绿灯强制灭分支(与保持逻辑一致,消除"拔线绿灯灭=误判继电器释放");自检/判稳期仍 200ms 慢闪 |