Files
vd-analysis/models/PD132T/analysis.md
T

5.3 KiB
Raw Blame History

PD132T 车检器分析

型号: PD132T | 固件: V3.01 | 日期: 2021-06-23 | 平台: MA801AS8051 内核, Keil C51 原始代码: vd_detector/reference/PD132T_V3.01-20210623/USER/main.c 458 行) 说明: 文件头明确"实现与 PD132L_V1.09 一样的功能"——PD132L 的 8051 移植版,核心算法逐行对应。

1. 平台与工程

MCU MA801AS(泉州,8051 内核)
工具链 Keil C51.uvproj,含 STARTUP.A51
时钟 AUXR=0xC0(内部时钟相关);Timer0 8bit 自动重装 252 给 PCA 提供时钟(÷4)
看门狗 WDTCR0x3C → ~1.05s);复位用 ISPCR=0x20ISP 软复位)
调试 无 UART

2. 硬件资源

引脚 功能
PCA CEX1 线圈捕获(CCAPM1 下降沿 + 中断)
P1.6 SOLA 继电器 A(脉冲/存在输出)
P1.7 SOLB 继电器 B(存在输出)
P3.3 LED_DET 检测指示灯
P3.2 LED_PWR 电源指示灯(PD132L 没有
P1.0 / P1.1 SENS0 / SENS1 灵敏度拨码(直接编码 0~3
P1.2 SENUP 自动/手动离开阈值(≈L 的 SET_ASB)
P1.3 FLT 增强滤波
P1.4 PLUS 脉冲模式
P1.5 HOLD 有限存在

3. 检测算法(与 PD132L 对应)

3.1 频率测量

  • PCA 捕获(CCAPM1=0x31 下降沿捕获 + 中断);Timer0 8bit 自动重装 252 作 PCA 时钟源(CMOD=0x04
  • 每周期得 Xn;有效性窗口 406 < Xn < 2050(≈ PD132L 的 1.27 倍,捕获时钟不同)
  • 归一化:LPCNT = 32768 / Xn,累加得 CAPVD ≈ 32768

3.2 滤波

  • IIRFlt_Reg = ALFA_CAP1(79)FLT 开)/ ALFA_CAP2(64)(关),Δ×Flt_Reg>>8 双向

3.3 基线 / 3.4 进入离开 / 3.5 灵敏度表

  • 与 PD132L 完全一致100 次平均基线、CAPVD < Origindlt 进入、> Origindlt 离开(SET_ASB 语义同)、 SensTable {300,60,32,21} / SensTable1 {60,32,21,14} 相同
  • 拨码低有效(电路反相,标贴与电平相反):标贴 ON → 电平 0;标贴 OFF → 电平 1(2026-08-28 用户确认)。
  • 离开阈值受 SET_ASB(SENUP)控制,看标贴位置:标贴 ON(电平0, SET_ASB=0)→ 强制 SensTable1[3] = 恒 140.021% Δf/f);标贴 OFF(电平1, SET_ASB=1)→ 分档 SensTable1[SensLevel] {60,32,21,14}出厂默认标贴全 OFF = 分档——DLD154V4B 替换对齐基准取决于现场 SENUP 标贴位置(V2.11

3.6 状态机/时序

  • Timer1 5ms tick → 50ms 主节拍(TM1cnt≥10),脉冲 500ms、有限存在 HOLD_TIME=6000300s
  • 有限存在超时 → ISPCR=0x20 软复位(对应 L 的 WWDG 复位)
  • 线圈断开 → 继电器全断 + LED 快闪 6 次

4. 拨码与配置

开关 标贴 ON(电平0 标贴 OFF(电平1
swok bit0-1 (P1.0-1) SENS0/1 灵敏度档位 = 电平值(直接编码 0~3;标贴全 ON=0 低灵敏,全 OFF=3 高灵敏) 同左
swok bit2 (P1.2) SENUP 离开恒 14else 离开分档 {60,32,21,14}if
swok bit3 (P1.3) FLT Flt_Reg=64(慢/平滑=增强滤波开) Flt_Reg=79(快)
swok bit4 (P1.4) PLUS 离开脉冲(else 进入脉冲(if
swok bit5 (P1.5) HOLD 无 HOLDelse HOLD 300sif

⚠ 拨码低有效(标贴 ON = 电平 0 = 位 0)。代码 if(SET_X) 为真(位=1)对应标贴 OFF;标贴 ON 走 else 分支。2026-08-28 用户确认,与电路一致。

去抖:连续 6 次一致生效;灵敏度变化 → ISPCR=0x20 复位

5. 参数速查表

参数 对比 PD132L
归一化基数 32768 相同
Xn 有效窗口 406 ~ 2050 ≈1.27×
IIR 系数 79 / 64 相同
基线窗口 100 相同
灵敏度表 {300,60,32,21}/{60,32,21,14} 相同
tick 5ms → 50ms 相同
脉冲宽 500ms 相同
有限存在 300s 相同
看门狗 WDTCR 1.05s L=IWDG 1.02s+WWDG
上电延时 750ms L=800ms

5.1 时序/速率/周期速查(2026-08-27 补)

推导假设系统时钟 12MHz(MA801 内部,待现场验证);公式:测量节拍 = BASE/捕获时钟。

公式/值 数值 对比 PD132L
捕获时钟 Timer0(252) 溢出/4 = 12M/4/4 0.75 MHz L=1.2MHz
测量节拍CAPVD 更新) 32768 / 0.75MHz 43.7 ms L=27.3ms(慢 1.6×)
基线更新周期 100 窗 × 43.7ms 4.37 s L=2.73s
IIR 时间常数 τ 43.7ms × 256/79 142 ms L=88ms
进入响应 1 个测量节拍 ~44 ms L=27ms
离开响应 1 节拍 + 脉冲 ~44 ms + 500ms 同结构
上电稳定 delay_5ms(750) + LPCNT 学习 ~1 s

6. 与 PD132L 的差异要点

  1. 平台:STM8S003F3 → MA801AS8051),TIM1 捕获 → PCA 捕获
  2. Xn 窗口 406/320=1.27、2050/1620=1.27:捕获时钟比例,频率范围设计一致
  3. 拨码:灵敏度 8 位组合(SA1/SA2)→ 6 位直接编码(P1.0-1);无 SW0
  4. LED:单 LED → 双 LED+LED_PWR
  5. 看门狗/复位:IWDG+WWDG 写序列 → WDTCR + ISPCR=0x20
  6. 无 UART、无 IN_DELAY/OUT_DELAY 宏(L 定义但逻辑注释)