- models/M1H/analysis.md: STC12C5202 V1.00 (2008) — DLD154V4B 算法血统源头
(灵敏度表 {216,108,36,10} / SENS=3-(sw&0x03) / ALFA_CAP1=79 与 V4B 同源)
- models/TLD-110/analysis.md: P87LPC762 V2.33 (2006) 汇编 — 门控计数法
(TAB_SENS {70,55,40,20}, 阈值=QT×表/40960, 滞回=相邻档, 单文件宏切三型号)
- docs/cross-model-comparison.md: 升级为四型号总表 + 测频路线两派
(门控计数法 vs 周期累积法) + 灵敏度表跨型号换算警告
- README: 索引更新
勘误: skill 早期记录 TLD-110 '{70,55,40,20}×QT/100000' 不精确,
实际换算 QT×表值/40960 (70→0.171%…20→0.0488%)
90 lines
3.9 KiB
Markdown
90 lines
3.9 KiB
Markdown
# TLD-110 车检器分析
|
||
|
||
> 型号: TLD-110(TLD100/200 系列)| 固件: V2.33 | 日期: 2006-07-11(最早 2003-09-05)| 平台: **P87LPC762**(8051 内核, Philips/NXP, 汇编)
|
||
> 原始代码: `vd_detector/reference/TLD-110(410) code/TLD100-200-V23.asm`(1563 行汇编)
|
||
> 说明: 单文件宏切换三型号(MODEL=100 TLD100 / MODEL=200 TLD200 / USER=10 TLD110),TLD-110 为单线圈。
|
||
|
||
## 1. 平台与工程
|
||
|
||
| 项 | 值 |
|
||
|----|-----|
|
||
| MCU | P87LPC762(8051,NXP/Philips) |
|
||
| 语言 | 纯汇编(ASM51),Keil |
|
||
| 型号宏 | `MODEL=100`(TLD100 单线圈) / `MODEL=200`(TLD200 双线圈) / `USER=10`(TLD110) |
|
||
| 看门狗 | WDCON / WDRST(P87LPC762 内狗) |
|
||
| 通信 | 无(纯开关量输出) |
|
||
|
||
## 2. 硬件资源
|
||
|
||
- 双通道设计(A/B 线圈:A_EN/B_EN 切换,MODEL=200 双线圈,TLD110 只用 A)
|
||
- 拨码 7 位:SA1/SA2/SB1/SB2/SW0/SW1/SW2(取反组合,去抖 3 次 AGE≥3)
|
||
- 继电器:SOL_A / SOL_B(MODEL=200 有 A→B 方向功能)
|
||
- LED:A_LED / B_LED
|
||
|
||
## 3. 检测算法
|
||
|
||
### 3.1 频率测量(门控计数法)
|
||
|
||
- **门控脉冲计数**:Timer0 预置初值(INI_T0H/L)作门控窗口,Timer1 定时,外部中断 EX0 数线圈脉冲
|
||
- 门控时间到读 COUNT(`WAIT_T` 轮询 F_OVER 或 DT1 计数耗尽)
|
||
- `CAP_TIME EQU 16`:16 次累积
|
||
- 空载计数 QT(A_QTH/A_QTL)上电标定(CAL_QTA_OK)
|
||
|
||
### 3.2 检测判据(QT 相对阈值)
|
||
|
||
- 阈值计算(CAL_TH_A):
|
||
```
|
||
dlt = QT × TAB_SENS[SENS] × 0x2710 / 0x1000 / 0x0A
|
||
= QT × 表值 / 40960
|
||
```
|
||
- 档位阈值比例:70→**0.171%**、55→**0.134%**、40→**0.0977%**、20→**0.0488%**
|
||
- 进入/离开用 A_TRL/H(触发阈值)与 A_TFL/H(释放阈值,TAB_SENS[SENS+1] 下一档)——**滞回 = 相邻档**
|
||
|
||
### 3.3 灵敏度表
|
||
|
||
```
|
||
TAB_SENS: DB 0x46, 0x37, 0x28, 0x14 = {70, 55, 40, 20}
|
||
```
|
||
|
||
- MODEL=100/110:灵敏度取拨码低 2 位(ANL #03H);MODEL=200 双通道各 2 位
|
||
- ⚠ skill 早期记录"{70,55,40,20}×QT/100000"**不精确**——实际换算 `×表值/40960`
|
||
|
||
### 3.4 时序/状态
|
||
|
||
- DELAY_VALUE=10、DELAY_VALUE1=40(TLD110:USER=10 时离开延时更长)
|
||
- 继电器释放延时:V2.33 A1 模式 D1 断开延时 5s(2006-07-11 修改记录)
|
||
- 上电/复位标定:INIT_SET → INIT_SENS → CAL_QTA(空载 QT 学习)
|
||
- 拨码变化 → SENS_RESET(AUXR1 软复位)
|
||
|
||
## 4. 版本演化(文件头修改记录)
|
||
|
||
| 版本 | 日期 | 内容 |
|
||
|------|------|------|
|
||
| V1.00 | 2003-09-05 | 初版 |
|
||
| V2.0 | 2003-11-28 | TLD-100 用户码 10;TLD-200 A→B 方向功能(DIP3=ON,DIP2=OFF,DIP1=OFF) |
|
||
| V2.1 | 2003-12-16 | 动态原理→静态原理(复位后一段时间原则不动,防误判) |
|
||
| V2.2 | 2004-01-30 | TLD-110 双通道改 1 通道 |
|
||
| V2.3 | 2005-07-07 | 断线后恢复延时 300ms→600ms |
|
||
| V2.31 | 2006-02-16 | A_EN/CT 信号恒低 bug 修复;断线恢复 300ms |
|
||
| V2.32 | 2006-05-30 | TLD-110 双线圈 2 路开关量 bug 修复 |
|
||
| V2.33 | 2006-07-11 | A1 模式继电器 D1 断开延时 5s |
|
||
|
||
## 5. 参数速查表
|
||
|
||
| 参数 | 值 |
|
||
|------|-----|
|
||
| 测量方式 | 门控脉冲计数(EX0 + Timer0/1) |
|
||
| 累积次数 | 16 (CAP_TIME) |
|
||
| 灵敏度表 | {70,55,40,20}(Δf/f 0.171%/0.134%/0.0977%/0.0488%) |
|
||
| 阈值公式 | dlt = QT×表值/40960 |
|
||
| 滞回 | 相邻档(进入用档 N,释放用档 N+1) |
|
||
| 去抖 | 拨码连续 3 次一致 |
|
||
| 离开延时 | 10 / 40(TLD110) |
|
||
| 看门狗 | WDCON/WDRST |
|
||
|
||
## 6. 设计特点
|
||
|
||
1. **门控计数法**与 PD132/M1H 的**周期累积法**是两类测频路线:TLD-110 数固定窗内脉冲(频率域),PD132/M1H 累加固定数周期(周期域)——两者对噪声的敏感方向相反(计数法受脉冲抖动影响,周期法受周期抖动影响)
|
||
2. **滞回 = 相邻档**(进 N 释放 N+1)是 TLD-110 特色,与 M1H 系的"同档滞回表"不同
|
||
3. **单文件宏切换多型号**(MODEL/USER)是老 8051 工程的典型做法,注意分析时按宏展开理解
|