1. 智能车与无人机协同系统的设计思路
在智能消防系统中,我们面临一个关键挑战:如何让无人机和小车协同工作,准确识别信标灯并实现稳定跟踪。传统单一摄像头方案存在明显缺陷——既要识别信标灯又要跟踪小车,会导致图像处理算法过于复杂,MCU处理速度跟不上实时性要求。
核心痛点:信标灯检测需要超广角镜头(通常120°以上),但广角镜头畸变严重,不利于无人机对小车的精确定位。而如果使用普通镜头检测小车,又无法覆盖足够大的信标搜索范围。
我们的解决方案采用了双视觉系统分工协作:
- 红外窄带广角镜头(A镜头):专门负责信标灯检测
- 紫外窄带普通镜头(B镜头):专门负责小车跟踪
这种分工设计带来了三个显著优势:
- 每个摄像头只需处理单一任务,算法复杂度降低50%以上
- 可以针对不同任务选择最优镜头(广角vs普通)
- 紫外标记小车极大降低了环境光干扰,识别准确率提升至98%以上
2. 硬件选型与配置细节
2.1 视觉系统硬件配置
A镜头(信标检测)配置:
- 镜头类型:170°超广角红外窄带滤光镜头
- 传感器:1/2.7" CMOS,200万像素
- 滤光片:850nm窄带红外滤光片(带宽±10nm)
- 帧率:60fps@720p
B镜头(小车跟踪)配置:
- 镜头类型:90°普通视角紫外窄带滤光镜头
- 传感器:1/3" CMOS,120万像素
- 滤光片:395nm紫外窄带滤光片(带宽±5nm)
- 帧率:120fps@480p
实测数据:在3米高度下,A镜头可覆盖直径约10米的信标搜索区域,B镜头对小车的定位精度达到±2cm。
2.2 小车紫外标记方案
我们在小车上安装了4个高功率紫外LED(395nm),排列成边长为15cm的正方形。这种设计带来两个关键好处:
- 四点定位算法可以准确计算小车的朝向和位置
- 紫外光在日光下仍有超过200lux的亮度,确保全天候可识别
LED驱动参数:
- 工作电压:5V DC
- 工作电流:每个LED 100mA
- 调制频率:1kHz(避免环境光干扰)
3. 控制系统实现与参数调优
3.1 控制流程分解
整个系统的工作流程可以分为四个状态机:
-
初始状态:
- 小车静止
- 无人机在小车正上方2.5米处悬停
- 两个摄像头持续扫描
-
信标检测状态:
- A镜头识别到信标灯(Hough圆检测+亮度阈值)
- 计算信标相对于小车的方位角(α)和距离(d)
- 发送控制指令给小车
-
小车运动状态:
- 小车PID控制器根据(α,d)生成运动指令
- X/Y轴速度:v = kp*d (kp=0.3)
- 转向角速度:ω = kα*α (kα=0.5)
-
无人机跟踪状态:
- B镜头持续跟踪小车紫外标记
- 使用Kalman滤波器预测小车运动轨迹
- 无人机保持在小车上方2.5±0.1米
3.2 PID参数调优经验
在小车运动控制中,我们采用串级PID结构:
code复制位置环(P) → 速度环(PI) → 电机驱动
经过实测,最优参数为:
- 位置环:Kp=1.2,Ki=0,Kd=0.05
- 速度环:Kp=0.8,Ki=0.3,Kd=0
调试技巧:
- 先调速度环,确保电机响应快速且无超调
- 再调位置环,重点抑制末端振荡
- 在水泥地和地毯上分别测试,取折中参数
4. 典型问题与解决方案
4.1 无人机丢失跟踪目标
现象:小车快速转向时,无人机跟不上运动导致目标丢失
根本原因:
- 图像处理延迟(约50ms)
- 无人机姿态调整延迟(约200ms)
- 合计延迟超过运动预测窗口
解决方案:
- 限制小车最大转向速度(实测不超过1.5rad/s)
- 增加运动预测窗口(从3帧扩展到5帧)
- 在无人机控制器中加入前馈补偿
4.2 信标误识别
现象:阳光反射等强光源被误判为信标
优化措施:
- 增加红外脉冲检测(信标以10Hz频率闪烁)
- 设置最小亮度阈值(>1500lux)
- 形状验证(长宽比1±0.1)
4.3 通信延迟问题
实测数据:
- 图像传输延迟:80-120ms
- 控制指令延迟:20-50ms
优化方案:
- 采用图像本地处理,只传输坐标数据
- 使用TDMA协议分配通信时隙
- 设置指令缓存队列(深度=3)
5. 系统性能实测数据
测试环境:室外晴天,光照强度10万lux
| 指标 | 实测值 | 要求值 |
|---|---|---|
| 信标识别距离 | 0.5-8m | ≥5m |
| 小车定位精度 | ±1.5cm | ±3cm |
| 系统响应延迟 | 180ms | ≤200ms |
| 最大跟踪速度 | 2.5m/s | ≥2m/s |
| 连续工作时间 | 45分钟 | ≥30分钟 |
在实际比赛中,这套系统实现了98%的任务完成率。关键心得是:双视觉分工的方案虽然增加了硬件成本,但大幅降低了算法复杂度,最终换来的是更高的可靠性和实时性。
对于初次尝试的团队,建议先重点调通无人机对小车的跟踪,这是整个系统的基础。我们花了约60%的开发时间在优化跟踪算法上,事实证明这个投入非常值得。