- 用户口径 + 源码取证:PD132T 用 USER/REG_MA801.H(首行 for Megawin MA801;sbit CEX1=P3^5 ✓ 与图纸 LP→pin9 吻合), 此前「STC12C2052」系按寄存器地址相似的误判 ⇒ 已更正;3MHz/10.92ms 结论不变 · CMOD=0x04 作者原注「时钟源为定时器0溢出」+ Megawin 手册 CPS 表(CPS[2:0]=010⇒T0 溢出)两法互证(对 2/3 比特布局分歧免疫) · AUXR=0xC0 无 MA801 专册直证,由 T1 0x15A0=60000 计数=5ms 反证定时器输入 12MHz ⇒ 1T 生效 - PD136HA 实际芯片 = HC32F003C4(用户确认,小华 HDSC);工程档位 F005C6PA/startup C6UA 不一致 ⇒ 重编译前须改; 实测 Code=11148 RO=268 RW=88 ZI=608 ⇒ ROM≈11.1KB / RAM≈696B;Keil <Cpu> CLOCK(12000000) 独立佐证 12MHz - PD132T CCAPM1=0x31 实为双沿捕获(旧稿「下降沿」有误)⇒ ISR 的 Xn 是半周期 ⇒ 线圈绝对频段重算 (PD132T ≈23.4~118kHz / PD136HA·PD132L ≈11.8~60kHz);Δf/f 为比值口径 ⇒ 灵敏度结论不受影响 - 同步 6 文件(报告 §2.3 更正块 + §11⑩、前端专项、PD132T/PD136HA 分析稿、跨型号表、README);表格校验 0 异常
32 KiB
PD136HA → DLD154V4B 交付对齐分析
日期:2026-09-11 依据:
reference/PD136HA_V3.14-20211116/(HC32F003C4,固件 V3.14 / 2021-11-16,源user/main.c;MCU 归属更正见 §2.3)DLD154V4B/utilities/at32f421_freertos_demo/(AT32F421F8P7,固件 V4.36.40,源src/TaskLoop.c)models/PD136HA/analysis.md、models/DLD154V4B/analysis.md场景:现场/客户在用 PD136HA,评估以 DLD154V4B 替换后的灵敏度一致性、手感差异、配置迁移、异常行为。 目标:给出可直接用于现场重拨与交付话术的对照表,并把所有"不能靠文档定论"的点明确列为实测项。
0. 结论摘要
| # | 类别 | 结论 | 等级 |
|---|---|---|---|
| 1 | 灵敏度口径 | ✅ 两型号可直接比百分比(同为 Origin×表>>16 归一,BASE 差异不影响口径) |
— |
| 2 | 硬件前端电路 | ⚠ PD136HA = CD4060 整形 + ÷32 分频(Q5 引脚,图纸实测)后进 MCU;V4B = 直连原始振荡 → 阈值口径不变,但雨天/金属路面边沿抖动风险上升(见 §2) | 中 |
| 3 | 进入灵敏度 | ⚠ 4 档偏差非单调:档0 V4B 钝 +108%,档2 灵敏 −30%,档1/3 偏差约 −11% | 中 |
| 4 | 释放/滞回 | ⚠ V4B 滞回显著更强(离开/进入比 15 |
中 |
| 5 | 脉冲宽 / 超时常量 | ✅ 500ms / 300s / 240s 逐字同源,零对齐成本 | — |
| 6 | 输出延时档 | ⚠ PD136HA 有 4 档脉冲延时(0 / 0.6 / 1.6 / 3s),V4B 无对应项 | 高 |
| 7 | 拨码迁移 | ✅ SA_1/SA_2 语义一致,拨码位置可原样照搬;但文档公式表述有误导(见 §8.3) | 低 |
| 8 | 判据强度 | ⚠ 单次越线 vs 3~5 次确认 → 高速车 / 短占压风险,必须实测 | 高 |
| 9 | 上电就绪 | ⚠ 从 |
中 |
| 10 | 线圈质量门 | 🔴 替换最大风险:V4B 有电感四级判定(含"恒判车"与"判为断开"),PD136HA 无 → 老线圈可能直接不工作 | 高 |
| 11 | 异常处理 | ✅ V4B 全面优于 PD136HA(断开不断电自愈 vs 整机复位) | — |
1. 平台与量纲对齐(口径前提)
| 项 | PD136HA | DLD154V4B | 对齐含义 |
|---|---|---|---|
| MCU | HC32F003C4(M0+,用户确认;⚠ Keil 工程档位仍为 F005C6PA,重编译前须改) | AT32F421F8P7(M4,120MHz) | — |
| 运行形态 | 裸机主循环 | FreeRTOS 多任务 | — |
| 归一化基数 BASE | 32768(2^15) | 131072(2^17) | 差 4 倍 |
| 测量窗 | 21.85ms(12MHz 晶振已确认,2026-09-11) | 1.09ms(131072 / 120MHz) | 快 ~20× |
| CAPVD 消费节拍 | 21.8ms | 10ms | 快 2.2× |
| 阈值公式 | dlt = Origin × SensTable[SensLevel] >> 16 |
dlt = Origin × SensTable[SENS] >> 16 |
逐字同构 |
| 前端信号链 | 线圈 → 9015×2 振荡 → CD4060 整形+分频 → P23 | 线圈 → 9015×2 振荡 → 直连 → PA7 | ⚠ 口径不变、抖动特性不同 → §2 |
1.1 为什么 BASE 差 4 倍、百分比却可直接比
两型号的相对阈值都等于"表值 / 65536",与 BASE 无关:
相对阈值 = dlt / Origin = (Origin × 表值 >> 16) / Origin ≈ 表值 / 65536
物理上 CAPVD ≈ BASE × (f₀/f),故 (Origin − CAPVD)/Origin ≈ Δf/f,阈值表直接就是 Δf/f 的千分位表达 —— 同一张表值在两型号上代表同一个频率偏移百分比。因此:
- ✅ 对照表直接比
表值/65536,不要比表值本身(162 vs 337 数字差一倍,实际只差在档0); - BASE 唯一的影响是绝对码值分辨率:同一个 dlt,在 V4B 上的计数是 PD136HA 的 2~4 倍(如档3 进入 14 → 50 counts),量化误差小 3.6~8.3×;
- ⚠ 第三方应用若直接读
variation绝对值再除以固定基数,两型号会差 4 倍。详见 skillloop-measure-base-alignment的 ×4 检查清单。
2. 硬件前端电路对齐(PD136HA:CD4060 分频 | V4B:直接振荡)
口径来源:2026-09-11 老大逐字确认 ——「跟 PD132 一样,PD136 有用到 CD4060 接线圈,154V4 是直接接振荡线圈的电路」。 关联专项:
docs/hardware-loop-frontend-pd132t-vs-v4b.md(PD132T ↔ V4B 元件级对比)。
2.1 信号链对比
PD136HA(有 CD4060):
线圈(LP) ─→ 9015 PNP×2 振荡器 ─→ CD4060 施密特整形 + 分频 ─→ P23(AF3)
(与 PD132T/V4B 同构) (**÷32**,Q5 固定) TIM4_CHA 上升沿捕获
捕获时钟 = PCLK0/8
DLD154V4B(直连):
线圈(Loop) ─→ 9015 PNP×2 振荡器 ─→ PA7 ─→ TIM3_CH2 上升沿捕获(120MHz)
(与 PD136HA 同构) 直连,无整形、无分频
两侧振荡级同构(9015 PNP ×2 + 同族偏置/谐振网络),原始振荡波形质量相当 —— 前端差异全部在信号链后级。
2.2 ⭐ 关键结论:CD4060 分频不改变相对阈值口径
PD136HA 走周期累积法:Xn = 相邻上升沿计数差(即振荡周期),LPCNT = 32768 / Xn,累积 LPCNT 个周期得 CAPVD = ΣXn ≈ 32768。
分频比 N 同时进入分子与分母:
Xn_分频后 = N × Xn_原始
LPCNT = 32768 / Xn_分频后 = (32768 / Xn_原始) / N
CAPVD = LPCNT × Xn_分频后 = 32768 ← 与 N 无关
⇒ 分频只改变 Xn 绝对值与测量窗长度,不改变 BASE=32768,也不改变 表值/65536 的 Δf/f 口径。
⇒ §1「两型号百分比可直接比」的结论,在两侧前端电路不同的前提下依然成立。
2.3 ⭐ 分频比实测定案(2026-09-11 图纸取证):÷32 —— CD4060 的 Q5 引脚
口径升级:老大 2026-09-11 追加确认 ——「PD136 跟 PD132 接 CD4060 的电路是一样的,可参考 PD132 的分频比」。 据此对仓内已存在但此前未被引用的 PD132T 逻辑原理图(
models/PD132T/PD132T.A_Ver2.01-20210609_Logic.pdf,2 页纯矢量图)做了程序化像素取证 ⇒ 分频比从"反推值"变为"读出来的实测值"。
三重证据链:
| # | 证据 | 取证方法 | 结果 |
|---|---|---|---|
| ① | 图纸 U1 = CD4060(16 脚,Q4/Q5/Q6/Q7/Q8/Q9/Q10/Q12/Q13/Q14 全画出),10 个 Q 输出中只有 Q5(pin 5)画了引出线 | 800dpi 灰度图逐行横向游程扫描:Q5 行有 476px 走线,其余已标注引脚均只有 99px 引脚桩(空脚) | 唯一引出 = Q5(÷32) |
| ② | 该走线网络标号 = LP,落到第 1 页 MCU U2 pin 9 = CEX1/T1/P3.5 | 400/1200/2000dpi OCR 词框定位 + 逐段读图 | LP → PCA 捕获脚 |
| ③ | 固件捕获配置 CMOD=0x04(PCA 时钟取 Timer0 溢出)+ 捕获模式 + CH/CL |
PD132T_V3.01 USER/main.c |
与 ② 的 P3.5/CEX1 完全吻合 |
⇒ PD132 的分频比 = ÷32(Q5 = 2⁵) ⇒ PD136 与之同电路 ⇒ PD136HA 沿用 ÷32。
独立佐证(不依赖图纸):PD136HA 的 Xn 窗 400~2030 ÷ PD132L 的 320~1620 = 1.25,恰好等于两者捕获时钟比 1.5MHz / 1.2MHz ⇒ 两型号分频比 N 相同(若 N 不同,窗口比值不可能等于时钟比)。
捕获时钟(三型号,含本轮勘误):
| 型号 | 捕获时钟 | 寄存器依据 | 测量窗(32768 tick) |
|---|---|---|---|
| PD132T(MA801) | 3MHz = 12MHz/4 | CMOD=0x04; //时钟源为定时器0溢出(作者原注)+ Megawin 手册 CPS 表:CMOD[3:1]=010 ⇒ 定时器0溢出 ✓ 两法互证;TH0=TL0=252(8bit 自动重载,每 4 个输入时钟溢出 = 注释「时钟/4」)+ TMOD=0x12 + AUXR=0xC0(×12/1T 位);T1 TH1/TL1=0x15A0→60000 计数 = 5ms(ISR 注释「定时5ms」/「5*10=50ms」)⇒ 定时器输入 = 12MHz = SYSCLK ⇒ 1T 生效,T0 同为 12MHz ⇒ PCA = 12M/4 |
10.92 ms |
| PD132L | 1.2MHz = 12MHz/10 | TIM1_PSCRL=0x09(10 分频)+ 外部 12MHz 晶振(CLK_ECKR/CLK_SWR=0xB4,CLK_CKDIVR&=0xF8 无分频) |
27.3 ms |
| PD136HA | 1.5MHz = XTH(12MHz)/8 ✅已确认 | enCntClkDiv = AdtClkPClk0Div8(PCLK0/8)+ CLK_INIT():XTH_CR |= 0x07(作者注释「8-16MHZ,最强驱动」)→ 直取 XTH、无 PLL / 无 HCLK_PRS·PCLK_PRS 分频 ⇒ PCLK0 = XTH = 12MHz(用户确认 2026-09-11:外部晶振也是 12M);Delay_ms 1330 次/ms 亦印证 ~12MHz |
21.85 ms |
⚠ 本轮勘误:专项文档
hardware-loop-frontend-pd132t-vs-v4b.md旧记 PD132T 捕获时钟 0.75MHz / 测量窗 43.7ms ⇒ 修正为 3MHz / 10.92ms。 0.75MHz 系早期误按「T0 走 SYSCLK/4」(旧表写12M/4/4)推算;实配AUXR=0xC0(T0x12=1 → T0 走 SYSCLK/1)⇒ PCA 时钟 = SYSCLK/4 = 3MHz,作者注释//溢出供PCA时钟,时钟/4亦指此,并被 T1 的 5ms 定时反证(60000 计数 ÷ 5ms = 12MHz = SYSCLK)。 该勘误不影响任何相对阈值结论(§1/§3/§4 全部基于表值/65536,与时钟无关)。✅ PD136HA 前端全链闭合(2026-09-11):线圈 → 9015×2 振荡 → CD4060 整形 + ÷32(Q5) →
LP→ P23 → ADTIM4(AdtClkPClk0Div8= 1.5MHz)。三块拼图分别来自:用户口径(CD4060 同 PD132 / 晶振 12M)、PD132T 图纸像素取证(÷32)、PD136HA 源码(CLK_INIT无 PLL、AdtClkPClk0Div8)。⚠ 别被 demo 板常量误导:
common/board_stkhc32f005.h:64写着#define SYSTEM_XTH (32*1000*1000u) ///< 32MHz—— 那是 STK 官方 demo 板的晶振值,本产品不用(CLK_INIT()自配 XTH,注释档位 8–16MHz)。作者在Delay_ms旁自注的//12MHZ????那个问号,现已由硬件口径消除。🔧 MCU 归属更正(2026-09-11,用户口径 + 源码取证)
- PD132T = Megawin(笙泉科技)MA801 —— 板上标记 MA801AS;SFR 头
USER/REG_MA801.H首行即/* for Megawin MA801 */;其中sbit CEX1 = P3^5✓ 与图纸 LP→MCU pin9 完全吻合。此前文档记「STC12C2052」系按寄存器地址相似所致的误判 —— 已更正,且 3MHz/10.92ms 结论不变。
- ⚠ MA801 专册未取得(聚合站受限);CPS 表引自 Megawin 同族手册
MG82F6D17v1.02(SFR 映射逐地址一致:CMOD=0xD9 / CCAPM0=0xDA / CCAPM1=0xDB / CL=0xE9 / CH=0xF9 / CCAP0L=0xEA)。结论对位布局分歧免疫:无论按经典 PCA 的 2 比特(CPS1:CPS0=10)还是 Megawin 的 3 比特(CPS[2:0]=010)解读,CMOD=0x04都落在 「Timer0 溢出」 ✓AUXR=0xC0的位定义未获 MA801 手册直接佐证,但由 T1 侧独立反证(60000 计数 = 5ms ⇒ 定时器输入 12MHz ⇒ 1T/×12 位确实生效);两定时器共用同一次写入 ⇒ T0 同为 12MHz ✓- PD136HA = HC32F003C4(小华半导体 HDSC,用户确认)。⚠ 工程档位仍是
HC32F005C6PA(Keil<Device>)+ startuphc32f005c6ua⇒ 重编译前须改器件档位;实测固件Code=11148 RO=268 RW=88 ZI=608⇒ ROM≈11.1KB / RAM≈696B,F003(16KB/2KB) 与 F005(32KB/4KB) 都装得下 ✓。Keil 工程<Cpu>… CLOCK(12000000) …亦独立佐证 12MHz ✓- ⚠ 双沿捕获的意外发现:PD132T
CCAPM1=0x31= CAPP+CAPN 双沿捕获(旧稿写「下降沿捕获」有误),ISR 内loop1_Xn = 本次捕获 − 上次捕获⇒ Xn 实为「半周期」(对 50% 占空方波)。⇒ 线圈绝对频段按半周期重算:PD132T 窗 4062050 ⇒ **≈23.4118kHz**;PD136HA/PD132L ⇒ ≈11.8~60kHz(与代码遗留注释//高频:48-1100,低频:22-550(单位存疑)大体相容)。
- ⚠ 灵敏度/偏差口径不受影响:
CAPVD/32768 = f_旧/f_新是比值,半/整周期因子同进分子分母相互约掉 —— 与 §2.2「分频比 N 被约掉」同理 ✓
÷32 代入后,两族图纸读数完全自洽:
| 型号 | 捕获时钟 | Xn 有效窗 | ⇒ 线圈频率窗(÷32) | 标称点(窗几何中值) | 线圈档 |
|---|---|---|---|---|---|
| PD132T | 3MHz | 406 ~ 2050 | 46.8 ~ 236.6 kHz | ≈105 kHz | 高频档 |
| PD132L | 1.2MHz | 320 ~ 1620 | 23.7 ~ 120 kHz | ≈53 kHz | 低频档 |
| PD136HA | 1.5MHz | 400 ~ 2030 | 23.6 ~ 120 kHz | ≈53 kHz | 低频档 |
⇒ 源码注释 //高频:48-1100,低频:22-550(PD132T 与 PD136HA 逐字相同)读法随之成立:按 0.1kHz 读即 高频档 4.8–110 kHz / 低频档 2.2–55 kHz(亦疑为「48–110 / 22–55」多打尾零),两族标称点 105kHz / 53kHz 分别落进各自频段内 ✓。
⇒ 设计解读:同一分频比(÷32)+ 同一套 Xn 窗常量,仅靠捕获时钟 2× 差(3MHz ↔ 1.5MHz)适配"高频/低频"两档线圈 —— Xn 窗对频段"绝对不变"(时钟与频段同比例缩放)是有意为之,这也解释了为何两型号窗常量几乎逐字相同。
⚠ 旧结论作废:上一稿「÷32~÷128,Q6 最可能」的反推已被图纸实测取代 ⇒ ÷32(Q5);原「同血统 2× 提速」的解释修正为「同分频比 + 时钟与线圈频段同比例缩放」。
2.4 量化能力对比(前端差异的实质)
| 项 | PD136HA(CD4060 ÷32) | DLD154V4B(直连) | 含义 |
|---|---|---|---|
| 1 个 Xn 含 | 32 个原始周期(硬件分频平均) | 1 个原始周期 | PD136HA 有硬件级平均 |
| 边沿质量 | CD4060 施密特整形 → CMOS 满摆幅、陡峭 | 模拟波形直接过零 | V4B 过零时刻随幅值/谐波漂移 |
| 测量窗 | 21.85ms | 1.09ms | PD136HA 窗长 20× |
| 窗内原始周期(@53kHz 标称) | ≈1158 | ≈58 | 20× |
| 快滤波等效平均 | τ87.4ms ÷ 21.85ms = 4 窗 → ≈4630 原始周期 | τ32ms ÷ 1.09ms = 29 窗 → ≈1700 原始周期 | PD136HA 平均厚 2.7× |
| 释放路径等效平均 | 与快滤波同一路径(无独立慢滤波) | τ117ms → ≈6200 原始周期 | V4B 释放反而厚 1.34× |
| 绝对码值粒度 | 1/32768 = 0.0031% | 1/131072 = 0.00076% | V4B 计数细 4× |
| IIR 系数血缘 | α=64/256(代码内 ALFA_CAP1=79 分支未启用) |
α=ALFA_CAP1=79(现役) |
PD136HA 未启用的 79 = V4B 现役的 79 |
⚠ 上表"等效平均"为推算值(依赖 §2.3 的捕获时钟与 PD136HA 侧 ≈53kHz 标称线圈频率;V4B 侧窗内周期数按同一 f₀ 折算),用于量级比较,不作为验收依据。
读法:PD136HA 靠"长窗 + 硬件分频平均"取干净信号;V4B 靠"短窗 + 4 倍细计数 + 后级 IIR(含独立慢滤波 / 低Q 平滑)"补回等效平均。两者在稳态噪声量级上可比(这正是 §1 百分比口径成立的前提),但瞬态响应与边沿质量不等价。
2.5 ⚠ 前端差异带来的替换风险(新增)
| 场景 | PD136HA(有整形) | V4B(直连) |
|---|---|---|
| 雨天 / 金属路面 / 车底盘高度变化 → 振荡幅值漂移 | 施密特整形出满摆幅方波,过零时刻几乎不动 | 过零时刻随幅值/谐波移动 → 基线抖动 |
| 后果 | 基线稳、释放判定"定住" | 释放点抖动(hardware-loop-frontend-pd132t-vs-v4b.md §5 记录的"HR0/2 保持 ~1s 假释放"属此类) |
⇒ 替换后现场重点观察:雨天 / 金属板 / 大车慢速通过时的释放抖动。若复现,先确认 V4B 软件兜底(RELEASE_ALFA=21 τ117ms + 进入 snap)是否够用,再考虑在 PA7 前加施密特(74HC14)—— 不建议未复现就改硬件。
3. 进入灵敏度对齐(Δf/f,正索引 0=最低灵敏 → 3=最高灵敏)
| 档 | PD136HA 表值 | Δf/f | ΔL/L | V4B 方案B 表值 | Δf/f | 偏差 | V4B PD132T 表值 | Δf/f |
|---|---|---|---|---|---|---|---|---|
| 0(低) | 162 | 0.2472% | 0.494% | 337 | 0.5142% | +108.0% | 300 | 0.4578% |
| 1(中) | 81 | 0.1236% | 0.247% | 71 | 0.1083% | −12.3% | 60 | 0.0916% |
| 2(高) | 54 | 0.0824% | 0.165% | 38 | 0.0580% | −29.6% | 32 | 0.0488% |
| 3(最高) | 28 | 0.0427% | 0.085% | 25 | 0.0381% | −10.7% | 21 | 0.0320% |
V4B 方案B(
USE_PLANB_TABLE = 1,V4.06/07 定稿)为当前编译生效;PD132T 完全对齐表为备选。
解读(现场最关心的两句)
- 档0 是最大的不一致点:V4B 需要 2.08 倍 的频率偏移才触发。现场若因相邻车道串扰、金属路面、变频器干扰而把 PD136HA 放在档0,换 V4B 后会明显变钝——高底盘车、摩托车、拖车尾部可能漏检。这类现场换机后建议直接测试档1(偏差仅 −12%)。
- 档2("高")V4B 反而更灵敏 30%:这是方案B 把档2 从 60 收到 38 的直接结果。若现场本来用档2 且环境干净,换机后误触发概率会上升(尤其广告杆落杆、机械震动,参见 V4B 分析 §3.5 的 V2.8 历史事故)。
- 档3(出厂/常用最高档)两型号最接近(−10.7%),默认档位替换风险最低。
4. 释放与滞回对齐
| 档 | PD136HA 离开表值 | Δf/f | V4B 方案B 离开表值 | Δf/f | 偏差 | PD136HA 滞回带 | V4B 滞回带 | PD136HA 离/进 | V4B 离/进 |
|---|---|---|---|---|---|---|---|---|---|
| 0 | 81 | 0.1236% | 51 | 0.0778% | −37.0% | 81 | 286 | 50.0% | 15.1% |
| 1 | 54 | 0.0824% | 27 | 0.0412% | −50.0% | 27 | 44 | 66.7% | 38.0% |
| 2 | 32 | 0.0488% | 18 | 0.0275% | −43.8% | 22 | 20 | 59.3% | 47.4% |
| 3 | 18 | 0.0275% | 12 | 0.0183% | −33.3% | 10 | 13 | 64.3% | 48.0% |
判定语义(防误读)
- 进入线 =
Origin − dlt_in(CAPVD 低于此线 → 判有车) - 离开线 =
Origin − dlt_out(CAPVD 回到此线以上 → 判离开) - 离开表值越小 ⇒ 离开线越高 ⇒ 要求恢复得越接近 Origin 才释放 ⇒ 滞回更强、释放更晚、抗抖更好。
解读:V4B 的离开表全档都比 PD136HA 小 33~50%,即释放线整体抬高。现场换机后典型手感是:
- 车尾释放略晚、绿灯熄灭稍慢 → 道闸"跟车释放"会晚一点(这通常是好事:防抖落、防半截车误释放);
- 档0 差异最大(离/进 15.1% vs 50%):V4B 档0 的滞回带 286 counts(PD136HA 81)异常宽,说明档0 在 V4B 上是"极钝的进入 + 较高的释放线"的组合,现场基本不具备可比性;
- V4B 另有 PD136HA 完全没有的兜底:低Q 环带超时 2.5s 强制释放(
REL_BAND_TIMEOUT_TICKS=250,V4.36.30)—— 板停在触发-释放带回滞带内不再永久卡死。
5. 判据与滤波对齐(手感与抗扰)
| 项 | PD136HA | DLD154V4B |
|---|---|---|
| 进入判定 | 单次越线即判,无去抖 | CAPVD < Origin−dlt 连续 3/4/5 次(按 Q 档) |
| 进入确认耗时 | ≈1 个探测节拍 ~21.8ms | 30~50ms(3~5×10ms)+ IN_DELAY 500ms(时序标志) |
| 斜率限幅 | ❌ 无 | ✅ 单次变化 >5% 截断(拒 EMI / 闪电尖峰) |
| 滤波 IIR | α=64/256 @21.8ms → τ≈87.4ms | α=79/256 @10ms → τ≈32ms(低Q 释放另用 REL_ALFA=30 → τ≈85ms) |
| 基线 | 256 窗滑动 ≈ 5.59s,有车冻结 | 500 窗 ≈ 5s,有车冻结 + 冻结超时 10s + 环境重校准 + 释放后降权补偿 |
| 离开判定 | 单次越线 | 简单滞回 3~5 次防抖(平坦性法 #if 禁用)+ 环带超时 2.5s |
| 拨码去抖 | 6 次 | 5 次 |
5.1 ⚠ 关键风险:高速车 / 短占压
PD136HA 是单次越线,等效响应 21.8ms;V4B 需 **3050ms** 持续偏置,且进入前要过 τ≈32ms 的 IIR。
粗算:车长 1m 的线圈,100km/h(27.8m/s)占压约 36ms。
| 车速 | 占压时间 | PD136HA(单次) | V4B 低Q(5 次=50ms) |
|---|---|---|---|
| 60km/h | 60ms | ✅ | ✅(临界) |
| 100km/h | 36ms | ✅ | ⚠ 可能漏检 |
| 120km/h | 30ms | ✅ | ⚠ 高风险 |
必须在现场实测:用已知车速(或人工快速甩金属板)验证 V4B 高Q/低Q 两档的最小可检占压时间。若现场有高速道口,这是是否可替换的硬门槛。
6. 输出与时序对齐
| 项 | PD136HA | DLD154V4B | 结论 |
|---|---|---|---|
| 继电器 1(RLY1) | SET_PLUS(DIP7) ? VD_FLAG|FLAG_OUT(宽存在) : FLAG_PLUSE(脉冲) |
SET_PLUS(SW_3) ? VD_FLAG|FLAG_OUT(存在) : FLAG_PLUSE(脉冲) |
✅ 分支结构逐字同构 |
| 继电器 2(RLY2) | VD_FLAG 存在输出,无延时 |
存在输出(绿灯镜像) | ✅ 一致 |
| 脉冲宽 | PLUSE_DELAY=10 ×50ms = 500ms |
PULSE_DELAY=10 ×50ms = 500ms |
✅ 同源同值 |
| IN_DELAY | 10 ticks(进入防抖计数已注释) | 500ms(时序标志,不影响继电器) | ✅ 等效 |
| 输出延时档 | DELAY_TIME[3−SET_DLY] = {0,12,32,60}×50ms = 0 / 0.6 / 1.6 / 3.0s作用于脉冲输出的触发延时 |
❌ 无对应配置(脉冲前固定 PULSE_DELAY=500ms) | 🔴 功能缺口 |
| 离开延时 | OUT_DELAY=39(1.95s,相关计数已注释) |
SW_4=ON → 离开延时 500ms |
⚠ 语义不同 |
| 安全复位 | DIP8 = 有限存在 | SW_5 = 安全复位(触发复位) |
⚠ 需对照现场用途 |
§6 最高优先确认项:PD136HA 的延时档(0/0.6/1.6/3s)现场是否在用? 若现场依赖 1.6s/3s 的脉冲延时(例如配合道闸缓冲、或错开相邻车道脉冲),V4B 上无等效拨码,需评估用上位机/时序改造替代 —— 这是替换前的功能确认项,不是性能项。
7. 超时与异常对齐(★ 同源常量,零成本)
| 项 | PD136HA | DLD154V4B | 结论 |
|---|---|---|---|
| 有限存在 | HOLD_TIME = 5*1200 = 6000 @50ms = 300s → 整机复位 |
HOLD_TIME = 6000 @50ms = 300s |
✅ 数值逐字同源 |
| 安全复位(重学基线) | LC_HOLD_TIME = 4*1200 = 4800 @50ms = 240s → 重学基线 |
LC_HOLD_TIME = 4800 @50ms = 240s |
✅ 数值逐字同源 |
| 看门狗 | WDT ≈ 820ms | IWDT ≈ 1.64s(TMR15 ISR 计数 + 主循环 500ms 喂狗) | ⚠ 量级相同,V4B 更长 |
| 上电就绪 | 1s 延时 + LED 闪 6 次(≈4s),含继电器自检 | 判稳 ≈1.3s + 就绪巩固期 5 / 7 / 10s(按 Q 档,绿灯慢闪) | ⚠ 变长 1.5~3× |
| 线圈断开 | LOOP_OK=0 → 整机复位(反复复位) |
保持释放 + 黄灯快闪 + 四级电感监视 + 热切换自愈 ~6s(不断电) | ✅ V4B 显著更优 |
| 灵敏度拨码变更 | 整机复位 | 不重启,5 次去抖生效 | ✅ V4B 更优 |
| 环境重校准 | ❌ 无 | ✅ 2s 预判 → 7s 补偿 → 2s 恢复 | ✅ V4B 更优 |
两条"意外好消息":5*1200 / 4*1200 与 6000 / 4800 是同一组常量(50ms tick 下均为 300s / 240s)。这说明 PD136HA 与 V4B 虽分属两条血统(前者 PD132L 系 HC32 移植,后者 M1H 现代实现),却共享同一族超时语义——替换后这部分的现场预期完全不用改。
8. 拨码迁移对照
8.1 PD136HA 拨码定义(源码实测)
| 位 | 引脚 | 标签 | 功能 |
|---|---|---|---|
| bit5 | P32 | SA2 | 灵敏度 |
| bit4 | P03 | SA1 | 灵敏度 |
| bit3 | P24 | SW3 | SET_HOLD 有限存在 |
| bit2 | P25 | SW2 | SET_PLUS 输出模式 |
| bit1 | P26 | SW1 | SET_DLY 延时 bit1 |
| bit0 | P35 | SW0 | SET_DLY 延时 bit0 |
- 全部配置为
GpioPuEnable上拉 ⇒ 拨码闭合(ON)= 引脚读出 0 - 灵敏度
SENS = swok & 0x30;延时SET_DLY = swok & 0x03(索引 反序DELAY_TIME[3−SET_DLY],即 DIP5-6 全 OFF → 3.0s)
8.2 DLD154V4B 拨码定义
| 引脚 | 标签 | 功能 |
|---|---|---|
| PA0 | SA_1 | 灵敏度 |
| PA1 | SA_2 | 灵敏度 |
| PA2 | SW_3 | 输出模式 |
| PA3 | SW_4 | 离开延时 500ms |
| PA4 | SW_5 | 安全复位 |
- PA0~PA4 全部
GPIO_PULL_UP(at32f421_board.c:275)⇒ 同样 ON = 读出 0
8.3 ✅ 灵敏度拨码语义:两型号一致,可原样照搬
| SA_2 | SA_1 | 档位 | 灵敏度 | PD136HA 进入 | V4B 方案B 进入 |
|---|---|---|---|---|---|
| ON | ON | 0 | 最低 | 0.2472% | 0.5142% |
| ON | OFF | 1 | 中 | 0.1236% | 0.1083% |
| OFF | ON | 2 | 高 | 0.0824% | 0.0580% |
| OFF | OFF | 3 | 最高 | 0.0427% | 0.0381% |
结论:拨码位置无需换算,原样照搬到 V4B 即可得到同一档位语义(同为"双 OFF = 最高灵敏")。两型号都是"SA_1 权重高于 SA_2"、都是上拉低有效,编码规则同构。
⚠ 文档表述待修正(非行为问题):
DLD154V4B/docs/technical-spec.md:95与models/DLD154V4B/analysis.md:109 / :184写的SENS = 3-(sw&0x03)(反码)与固件TaskLoop.c:632-642的switch分支端点相反(代码:mask 0x00→最低、0x03→最高)。该公式与 §8.3 表格(及product-manual.md:116-121)不自洽。 30 秒实测即可定论:单独翻转 SA_1(或 SA_2),看 DBG 打印的SENS/dlt变化方向;或万用表量 PA0/PA1 在 ON 时的电平。
8.4 ⚠ 输出模式(SW_3 / DIP7)极性
两型号结构逐字同构:SET_PLUS = 1 → RLY1 = 存在(宽)输出;SET_PLUS = 0 → RLY1 = 500ms 脉冲。
配合"ON = 读出 0":拨到 ON → 脉冲输出;拨到 OFF → 存在输出。
models/DLD154V4B/analysis.md与pd132t-to-v4b-delivery-alignment.md曾记为"代码注释与产品文档相反、待实测"。 本次源码核对结论:不是 bug,是变量命名误导 —— 变量名叫SET_PLUS但=1走的是"存在输出"分支;product-manual.md:133(ON=脉冲输出)与代码行为一致。此条可从"待实测"降级为"已确认"。
9. 🔴 线圈质量门:替换的最大风险
PD136HA 没有线圈电感质量判定;DLD154V4B 有四级电感监视(V4.36.37),且其中两级会改变检测行为:
| f 区间 | 电感(43nF) | fault | 黄灯 | V4B 判定 |
|---|---|---|---|---|
| 18~125 kHz | 38µH~1.15mH | 0 | 灭 | 正常 |
| <18 kHz | L 偏大 | 1 | 一长一短 | 照常 |
| 125~156 kHz | 24~38µH | 1 | 一长一短 | 照常 |
| 156~171 kHz | 20~24µH | 2 | 一长两短 | 🔴 恒判车(不随宏) |
| >171 kHz | <20µH 短路级 | 3 | 快闪 200ms | 🔴 等同完全断开(出厂态):判定暂停 + 继电器保持释放 |
现场影响:
- PD136HA 老线圈若电感偏低(<38µH,即空场 f >125kHz) → 换 V4B 后黄灯告警;
- 若 <24µH(f >156kHz) → V4B 恒判车,继电器可能常吸合 → 车道直接不放行;
- 若 <20µH → 视为断开,判定完全暂停。
⇒ 替换前必须实测每路线圈的空场频率/电感(V4B 的 EVT|coil_fault f:xx kHz L~xxx uH 诊断可直接读)。这是唯一一个"老设备能用、新设备不工作"级别的风险,优先级高于所有灵敏度差异。
另注:V4B 另有未解问题 —— 23µH 悬停临界跳变极限环(V4.36.40,代码未改,见
models/DLD154V4B/analysis.md§9)。若现场线圈恰落在 20~24µH 边缘,该风险与 §9 叠加。
10. V4B 先进点(可直接用于交付话术)
- 抗扰:斜率限幅 5% + 3~5 次确认 + IIR 快 2.7× → 对变频器/广告杆/闪电的鲁棒性显著优于单次判定的 PD136HA。
- 线圈故障不停机:断线/短路不断电自愈约 6s(热切换),PD136HA 是整机反复复位。
- 拨码免断电:灵敏度档位变更即时生效,PD136HA 需整机复位。
- 环境自适应:2s 预判 → 7s 补偿 → 2s 恢复的受控重校准(PD136HA 无),长时间温漂/金属板变化后可自动收敛。
- 可诊断:DBG/EVT 串口输出 f、L、Origin、dlt、SENS、fault,PD136HA 基本靠 LED 闪码。
- 有限存在/安全复位语义完全同源(300s / 240s),现场预期无需调整。
- 分辨率:同档 dlt 的计数是 PD136HA 的 2
4 倍,量化误差小 3.68.3×。
11. 待现场验证清单(替换前逐项打勾)
- ① 线圈电感:每路线圈空场 f 是否落在 18~125kHz(38µH~1.15mH)?<24µH 直接判定不可替换(§9)
- ② 最小可检占压:用实测车速验证 V4B 高Q/低Q 档在 100km/h(≈36ms 占压) 下是否可靠触发(§5.1)
- ③ 延时档用途:现场是否使用 PD136HA 的 0.6/1.6/3s 脉冲延时?若在用,确认替代方案(§6)
- ④ 灵敏度档位:现场当前 SA_1/SA_2 位置 → 按 §8.3 照搬;若为档0,必须复测灵敏度(V4B 钝 108%)
- ⑤ 拨码实测:单翻 SA_1/SA_2 各一次,核对
SENS/dlt方向与 §8.3 表格一致,并顺手修正文档公式(§8.3 注) - ⑥ 上电就绪时间:现场是否有"上电即可用"要求?低Q 线圈需 10s 巩固期(§7)
- ⑦ 输出模式:确认 DIP7 / SW_3 位置与道闸期望(存在 vs 脉冲),并按 §8.4 极性核对
- ⑧ 相邻车道串扰:若现场线距偏小,档1/档2 差值(−12% / −30%)会导致误触发倾向变化
- ⑨ 前端电路复核:分频比已定案 ÷32(CD4060 Q5),依据 = PD132T 图纸(
models/PD132T/PD132T.A_Ver2.01-20210609_Logic.pdf)+ 固件捕获脚三重互证(§2.3)。现场可用示波器 5 分钟复核:量 PD136HA 的 P23 方波频率应 = 线圈频率 ÷ 32(低频档线圈约 1.5~3.5kHz)。晶振 12MHz 已确认(用户 2026-09-11)⇒ PCLK0 = 12MHz、捕获时钟 1.5MHz、测量窗 21.85ms 全部落定,此项仅剩"物理量一遍"的确认价值。仍缺的是 PD136HA 本体原理图(影响谐振电容档位与"高频/低频"档位布线,不影响分频比)。另注意 CD4060 施密特整形的抗幅值漂移优势在 V4B 上消失(§2.5) - ⑩ 器件档位与频段口径(2026-09-11 新增):① Keil 器件档位(HC32F005C6PA / startup C6UA)与实际芯片(HC32F003C4)不一致 ⇒ 重编译前先在 Keil 改正档位,避免用错器件配置;② 现场量一次线圈频率(示波器接线圈两端,或量 P23)可一次终结两个悬案:P23 方波频率 = 线圈频率 ÷ 32 ✓,以及 Xn 的「半周期」口径下线圈标称是落 23.4~118kHz 还是 46.8~236.6kHz(后者意味着 Xn 为整周期,即 ISR 需另有整周判据)
12. 后续行动
- 修正
DLD154V4B/docs/technical-spec.md:95的SENS = 3-(sw&0x03)表述(与代码/手册不一致) - 修正
models/DLD154V4B/analysis.md:109 / :184的同一处表述,并把 §8.4 的SW_3极性结论从"待实测"改为"已确认" models/DLD154V4B/analysis.md§3.5 的product-manual.md阈值数字为方案A 时代(0.46/0.09/0.049/0.032%),现役方案B 实为 0.5142/0.1083/0.0580/0.0381% → 手册需同步- 现场实测后回填 §11 结论,并补一份
docs/pd136ha-to-dld154v4b-field-checklist.md(可打印版) - 将"线圈质量门(电感四级)作为替换前置门槛"写入交付流程
- 补
models/PD136HA/原理图 PDF(当前缺失;PD132T / V4B / DLD154Pro 均有)。分频比已由 PD132T 图纸定案(÷32),此图纸仅剩谐振电容档位 / 高频-低频档布线 / PA7 前的振荡级元件待补证 同步修正✅ 已完成(docs/hardware-loop-frontend-pd132t-vs-v4b.md55a39f7):① PD132T 捕获时钟0.75MHz → 3MHz、测量窗43.7ms → 10.92ms;② 分频输出脚Q7 或 Q8 → ÷32(Q5,图纸实测);③ §3/§4/§8 受影响的"平均层级/Xn 单位/等效平均"行;连带 5 份文档(含filter-coefficient-79-vs-64.md的调参依据勘误)- 在
docs/cross-model-comparison.md总表中补入 PD136HA 前端口径一列(CD4060 ÷32 分频 vs 直连),使"前端电路"成为跨型号可比维度