- DLD960_IoT_MQTT协议.md V1.07→V1.08: 命令表加 ota_begin/ota_data/ota_end/ ota_abort/ota_flash/ota_status/ota_report; §4.19~4.24 命令详情; §5.5 ota_report; event_report 扩展 type=ota_error; §2.2 OTA 细分错误码 (err_code); 修订记录 - DLD960_MQTT_OTA协议.md V1.01 (按修改意见): Slot A/B 100KB / 维持 Loop 现状 / 会话期间静默 / 非阻塞 tick 驱动 - README 协议索引 + 技术规格书 §5.1 协议矩阵同步 V1.08 (CRLF 保持)
192 lines
11 KiB
Markdown
192 lines
11 KiB
Markdown
# DLD960 四通道车辆检测器 技术规格书
|
||
|
||
> Technical Specification · 产品型号:**DLD960GA**
|
||
> 文档版本 V1.02 · 2026-08-19 · 配套整机发布 V1.02.04
|
||
|
||
---
|
||
|
||
## 1. 产品概述
|
||
|
||
DLD960 是一款基于环形线圈(LC 振荡)检测原理的四通道车辆检测器,采用双 MCU 架构:检测 MCU 专注线圈信号采集与检测算法的实时性,通信 MCU 承载蓝牙、以太网、4G 多通道接入与云平台对接。适用于停车场出入口控制、道闸联动、分车道流量计数、会车控制等场景。
|
||
|
||
## 2. 系统架构
|
||
|
||
```
|
||
线圈1~4 ──► AT32F421(检测 MCU)──► 继电器1~4(存在/脉冲输出)
|
||
│ UART 0x7F 私有协议 @192000bps
|
||
▼
|
||
CH32V208(通信 MCU)──► ETH / BLE / UART TTL / SPI Flash
|
||
```
|
||
|
||
| 项目 | 检测 MCU | 通信 MCU |
|
||
|------|---------|---------|
|
||
| 型号 | 雅特力 AT32F421(ARM Cortex-M4) | 沁恒 CH32V208(RISC-V) |
|
||
| 主频 | 120 MHz | 120 MHz(芯片最高 144 MHz,启用网络时限定 120 MHz) |
|
||
| Flash / SRAM | 64 KB / 16 KB | 128 KB / 64 KB |
|
||
| 职责 | 四路线圈驱动、频率采样、车辆检测算法、继电器输出 | BLE、以太网(TCP JSON / MQTT)、UART TTL(RX DMA)、参数与日志外部存储 |
|
||
| RTOS/协议栈 | FreeRTOS V10.4.3 | WCH BLE 协议栈 + WCHNET TCP/IP |
|
||
|
||
双 MCU 间通过 TTL 串口互联(0x7F 私有帧协议,波特率 192000bps,UART2 RX 硬件 DMA 循环接收,抗打印关中断丢帧),传感数据主动上推、配置命令透传。OTA 升级时 UART2 RX 切换 0x9F 帧协议(DMA poll 按 `g_flag_counter_ota` 模式选择解析器),检测 MCU bootloader 的响应帧(pre_ok/addr_ok/data ACK)经 BLE 完整透传回小程序(V1.02.03)。
|
||
|
||
## 3. 检测规格
|
||
|
||
### 3.1 检测通道
|
||
|
||
| 参数 | 规格 |
|
||
|------|------|
|
||
| 检测通道数 | 4 路独立线圈通道 |
|
||
| 检测原理 | LC 振荡频率法(TMR3 四通道输入捕获) |
|
||
| 检测采样周期 | 10 ms/通道(算法主循环 tick) |
|
||
| 工作频率档位 | 4 档(高 / 中高 / 中低 / 低),每路独立两级调频电容(33nF / 10nF)组合切换 |
|
||
| 智能选频 | 支持(smart_mode,自动错开相邻通道频率,抑制串扰) |
|
||
| 线圈电感适应范围 | 待确认(典型环形线圈 2~6 匝,需现场实测电感与振荡频率) |
|
||
|
||
### 3.2 灵敏度
|
||
|
||
进入阈值 = 基线 × SensTable[档位] / 65536,释放阈值带 ~50% 滞回(防止临界抖动)。
|
||
|
||
| 灵敏度档位 | 进入阈值(Δf/f) | 释放阈值(Δf/f) | 说明 |
|
||
|-----------|-----------------|-----------------|------|
|
||
| 0 | ≈ 0.330% | ≈ 0.165% | 最低灵敏度(大车/高底盘场景抗干扰) |
|
||
| 1 | ≈ 0.165% | ≈ 0.110% | |
|
||
| 2 | ≈ 0.055% | ≈ 0.027% | |
|
||
| 3 | ≈ 0.015% | ≈ 0.014% | 最高灵敏度(摩托车/高底盘车检出) |
|
||
|
||
### 3.3 检测算法(Loop 固件 1.0)
|
||
|
||
| 机制 | 参数 | 作用 |
|
||
|------|------|------|
|
||
| IIR 低通滤波 | α = 79/256,τ ≈ 32 ms @10ms tick | 平滑高频噪声,保留车辆信号 |
|
||
| 斜率限幅 | 单步最大变化 5%(低基值下限 100) | 削除瞬态尖峰(继电器动作、电磁干扰) |
|
||
| 进入确认 | 连续 3 个采样周期低于阈值 | 抗尖峰误触发 |
|
||
| 基线跟踪 | 滑动平均窗口 500 样本(5s 更新周期,噪声抑制 22×) | 跟随温漂/环境慢变 |
|
||
| 基线冻结保护 | 偏差超限即冻结基线更新 | 防止过车信号污染基线 |
|
||
| 冻结超时自适应 | 10 s 超时 + ±2% 稳定性窗校验 | 温漂/换线圈后自动重建基线;慢速进车不误吸收 |
|
||
| 上电稳定期 | 128 样本(≈1.3 s)快速收敛,上电 3 s 内抑制主动上报 | 快速可用且不上报无效数据 |
|
||
| 线圈安全模式 | 可配置超时(单位 10 s,0=关闭) | 异常长时间占用强制复位重建基线 |
|
||
|
||
### 3.4 检测性能指标(设计目标,依据《环路车辆检测器验收标准》v1.0)
|
||
|
||
| 指标 | 设计目标 | 验收优秀档 |
|
||
|------|---------|-----------|
|
||
| 存在检测响应时间 T_on(V2~V5 车型) | ≤ 100 ms | ≤ 50 ms |
|
||
| 释放时间 T_off | ≤ 300 ms | ≤ 100 ms |
|
||
| 漏检率(标准车型 30~40 km/h 通过) | 0/50 | 0/50 |
|
||
| 无车频率抖动 RMS | ≤ 3 Hz | ≤ 1 Hz |
|
||
| 基准频率漂移(10 min) | ≤ 0.05% × f₀ | ≤ 0.01% × f₀ |
|
||
| 信噪比 SNR(标准轿车) | ≥ 35 dB | ≥ 45 dB |
|
||
|
||
> 以上指标基于标准化测试线圈与实验室环境,现场性能受线圈施工工艺、引线长度、电磁环境影响,以现场验收为准。
|
||
|
||
## 4. 输出规格
|
||
|
||
| 参数 | 规格 |
|
||
|------|------|
|
||
| 继电器数量 | 4 个双路继电器(RLY1~RLY4,默认一一关联线圈 1~4) |
|
||
| 输出模式 | 存在输出 / 脉冲输出(每路独立可配 output_mode) |
|
||
| 输出延时 | 每路独立可配(delay_time) |
|
||
| 方向判别 | 支持(direction_mode:触发模式 / 方向判别模式) |
|
||
| 有限存在 | 每路独立可配(exist_mode,单位 10 s,0=永久存在;超时全通道重启重建基线) |
|
||
| 触点容量 | 待确认(依整机原理图/继电器选型) |
|
||
|
||
## 5. 通信接口
|
||
|
||
| 接口 | 规格 | 用途 |
|
||
|------|------|------|
|
||
| 以太网 | 10M(CH32V208 内置 PHY),支持 DHCP/静态 IP | TCP JSON 服务(默认端口 5960)、IoT MQTT 客户端 |
|
||
| 蓝牙 | BLE(WCH 低功耗蓝牙协议栈) | 小程序配置、OTA 升级、Loop MCU ISP 透传 |
|
||
| TTL 串口 | 1 路 | DLD960 内部两个MCU之间 的串口通信协议(Modbus 风格私有帧);UART2 RX 硬件 DMA 循环接收(抗打印关中断丢帧);OTA 升级态支持 0x9F 帧透传(V1.02.03) |
|
||
| TTL 串口 | 1 路(RFU) | 预留 4G 模块扩展 |
|
||
| 外部存储 | SPI NOR Flash | 参数存储 + 日志存储 |
|
||
| 按键 | K1 多功能按键 | 复位等 |
|
||
|
||
### 5.1 协议矩阵(V1.02.04 配套)
|
||
|
||
| 协议 | 版本 | 通道 | 要点 |
|
||
|------|------|------|------|
|
||
| DLD960 串口通信协议 | V1.01 | TTL | 设备管理、参数配置、数据上报 |
|
||
| DLD960 TCP JSON 协议 | V1.03 | ETH :5960 | 密码鉴权 + 18 条命令;event_report 客户端必答(5s×3 重发);脱机日志 log_stat/log_query/log_clear(事件/快照流,stream 区分) |
|
||
| DLD960 IoT MQTT 协议 | V1.08 | ETH → Broker | 双主题 `dld960/{sn}/srv`+`/dev`;initialize 上线、loop_data 三档调度、event_report 平台必答、设备时钟同步、脱机日志 log_stat/log_query/log_clear(事件/快照流,stream 区分);Loop 远程 OTA(ota_begin/ota_data/ota_end/ota_abort/ota_flash/ota_status + ota_report,256B/片 CRC32,先存后刷断点续传,Slot A/B 双槽回滚) |
|
||
| DLD960Loop 串口协议 | V1.05 | MCU 间(内部) | 0x7F 帧、0xC0 传感上报(variation 3B 有符号) |
|
||
| DLD960 BLE 协议 | V1.02 | 蓝牙 BLE | 帧格式 + 分包;脱机日志 OFFLOG_STAT/QUERY/CLEAR + 传感快照 SNAP_STAT/QUERY/CLEAR(0x28/0x29/0x2A),与 MQTT/TCP 同语义 |
|
||
|
||
### 5.2 数据上报能力
|
||
|
||
| 上报项 | 说明 |
|
||
|--------|------|
|
||
| loop_data 传感数据 | 各通道频率、变化量 variation(有符号,正=车辆/裕量,负=反向漂移)、车状态;空闲按配置间隔 / 活动 300ms / 车状态翻转沿立即上报 |
|
||
| event_report 事件 | 进车 / 出车 / 线圈断开等关键事件,带确认重发机制(不可再生数据闭环送达) |
|
||
| 时间量 | 通过时间、车间距,分辨率 50 ms |
|
||
| 继电器输出次数 | 累计计数上报 |
|
||
| heartbeat 心跳 | 含 uptime |
|
||
| 时钟同步 | 设备无 RTC,平台经 report_config 下发 Unix 时间戳校准,上行 ts 为真实时间 |
|
||
|
||
## 6. 配置参数(每通道独立)
|
||
|
||
| 参数 | 范围 | 说明 |
|
||
|------|------|------|
|
||
| 灵敏度 sensitvity | 4 档 | 见 §3.2 |
|
||
| 工作频率 loopFreq_Level | 4 档 | 高/中高/中低/低 |
|
||
| 输出延时 delay_time | 0~255 | 继电器动作延时 |
|
||
| 输出模式 output_mode | — | 存在/脉冲 |
|
||
| 方向判别 direction_mode | 0/非0 | 触发模式 / 方向判别 |
|
||
| 线圈安全超时 loopSafe_Timeout | 0~255,单位 10s | 0=关闭 |
|
||
| 存在模式 exist_mode | 0~255,单位 10s | 0=永久存在 |
|
||
| 智能选频 smart_mode | 0/1 | 全局 |
|
||
|
||
配置通道:BLE 小程序 / UART TTL / TCP JSON / MQTT 四通道均可读写,配置持久化存储于检测 MCU 内部 Flash。
|
||
|
||
## 7. 固件升级
|
||
|
||
| 对象 | 方式 | 路径 |
|
||
|------|------|------|
|
||
| 通信 MCU (CH32V208) | BLE OTA | 手机小程序直接升级 |
|
||
| 检测 MCU (AT32F421) | ISP 透传 | 小程序 → BLE → CH32V208 → UART → AT32F421;UART2 0x9F 停等协议(0xA7 每块必回 ACK),DBN 将 ACK 透传回小程序(V1.02.03) |
|
||
|
||
## 8. 电气与环境(待整机定型确认)
|
||
|
||
| 参数 | 规格 |
|
||
|------|------|
|
||
| 供电电压 | 待确认(依电源方案) |
|
||
| 整机功耗 | 待确认 |
|
||
| 工作温度 | 待确认(建议按 -25℃ ~ +75℃ 车检器行业规格验证) |
|
||
| 存储温度 / 湿度 | 待确认 |
|
||
| 外形尺寸 / 安装方式 | 待确认(导轨/壁挂,依结构件) |
|
||
| 防护等级 | 待确认 |
|
||
| EMC | 建议依 EN 50293 / GB/T 26941.3 验证 |
|
||
|
||
## 9. 引脚资源摘要
|
||
|
||
详见《DLD960硬件资源》。关键资源:
|
||
|
||
- **AT32F421**:TMR3_CH1~4 线圈捕获(PA6/PA7/PB0/PB1)、8 路调频电容控制、RLY1~4(PB4~PB7)、LED_PWR 红色呼吸灯(PA8)+ 4 路绿色车检灯、USART1(PA9/PA10 ↔ CH32V208)
|
||
- **CH32V208**:内置 ETH PHY(PC6~PC9)+ 双色 ETH LED、USART2(PA2/PA3 ↔ AT32F421)、扩展 USART1(PB6/PB7,RFU 4G)、K1 按键(PA0)、SPI1 外部 Flash(PA4~PA7)
|
||
|
||
## 10. 版本配套要求
|
||
|
||
> ⚠ **自内部协议 V1.05 起,vd960Loop 与 vd960DBN 固件必须同版本配套刷写**(variation 字段 2B→3B 帧格式变更,混刷导致数据静默错位)。
|
||
|
||
| 组件 | V1.02.04 配套版本 |
|
||
|------|-------------------|
|
||
| vd960Loop 固件 | 1.0(不变) |
|
||
| vd960DBN 固件 | 1.02.04 |
|
||
|
||
### 10.1 已知约束(V1.02.01)
|
||
|
||
- 固件版本三段式:`FIRMWARE_VER="1.02.04"`(MAIN=1 / SUB=2 / SUBSUB=4);BLE 上报仅 MAIN/SUB 两字节(1.02),SUBSUB 只体现在字符串上报(MQTT/TCP JSON)。
|
||
- 设备无 RTC,时钟同步依赖平台下发(校准前 ts 为上电秒数)。
|
||
- CH32V208 RAM 预算:BLE 协议栈固定占用低 16KB(不可裁剪),用户可用 48KB;固件经 RAM 瘦身优化,栈余量约 6KB,现场升级务必使用 V1.02.01 及以上版本。
|
||
- 传感快照区延后 3s 初始化(开机 3s 内传感数据不落盘,设计接受)。
|
||
- UART2 RX DMA 占用 DMA1_Ch6(全工程唯一,无冲突)。
|
||
- **OTA 透传模式无自动退出机制**:进入 OTA 态(`g_flag_counter_ota.flag=1`)后需断电重启才恢复 0x7F 正常通信(V1.02.03 已知约束,升级完成后重启设备)。
|
||
|
||
---
|
||
|
||
## 修订记录
|
||
|
||
| 版本 | 修订时间 | 修订说明 | 修订人 |
|
||
|------|----------|----------|--------|
|
||
| V1.02 | 2026-08-19 | 配套整机发布 V1.02.03→V1.02.04:UART2 RX 0x9F OTA 透传机制说明(§2/§5/§7)、协议矩阵与版本配套矩阵更新、已知约束补充 OTA 无自动退出;存储适配(SPI 识别去厂商代码 + factory 写入恢复);2026-08-20 协议矩阵 MQTT 同步 V1.08(Loop 远程 OTA 协议设计先行,固件待实现,Slot A/B 100KB) | wangfq |
|
||
| V1.01 | 2026-08-18 | 配套整机发布 V1.02.01:版本矩阵更新、UART2 RX DMA 通信可靠性说明、已知约束补充 | wangfq |
|
||
| V1.00 | 2026-07-16 | 初始版本,配套整机发布 V1.0.0 | wangfq |
|