火箭发射测控中的目标跟踪系统
2008-07-24
作者:杨红远, 柴 毅, 屈剑锋, 郭
摘 要:采用图像识别以及目标快速跟踪算法,实现对飞行中火箭的实时跟踪,使用高性能MSP430、CPLD芯片实现传统的只有通过多单片机才能实现云台" title="云台">云台在水平垂直方向的同时独立运动" title="独立运动">独立运动,消除了多单片机通信过程的时间消耗所造成的步进电机" title="步进电机">步进电机控制失效因素,解决了单片CPLD实现内部资源短缺的问题,并结合实际实现系统整体机械结构,提高了火箭目标跟踪的快速性、安全性和精确性。
关键词: 火箭 MSP430 CPLD 云台
从火箭发射到起飞后的一段时间内,由于受地形等因素的影响,外测系统(雷达、光学等设备)常常难以正常跟踪火箭。尤其在发射失败时,外测系统很难捕获到目标,致使指挥人员无法得到火箭飞行数据,并作出正确的判断和指挥[1]。这样在火箭起飞的初始阶段,采用摄像机的自动跟踪就显得非常重要。但目前的方式仍是操作人员手动控制摄像机进行跟踪,其安全性和可靠性都存在较大的问题。同时,也无法实现几台摄像机在多角度多方位进行跟踪。
随着微电子技术与工艺的发展,高性能单片机不断推陈出新,可编程逻辑器件也取得了长足发展[2]。高速运行并更好地实现硬件控制算法,缩小通信时耗,提高快速性,这在目标跟踪系统中实现目标跟踪的安全性与精确性是非常重要的。
1 目标跟踪系统的整体设计
系统由摄像机、图像监视系统、图像处理模块" title="处理模块">处理模块、MSP430+CPLD控制系统" title="控制系统">控制系统和机械系统组成。其中,图像处理模块、MSP430+CPLD控制系统实现和系统机械结构设计是本系统的关键部分。系统框架如图1所示。
火箭图像数据经过摄像机采集后,送图像处理模块进行处理,产生目标偏差信号,偏差信号经控制驱动电路产生控制信号,控制机械系统带动云台上的摄像机运动将目标回到视野,使火箭目标图像始终保持在监视显示区域的中心位置附近,从而实现火箭连续视频运动图像的跟踪。若控制器脱离控制范围可通过人工方式进行控制。
2 运动火箭图像处理模块
火箭的图像处理在PC机中完成。系统采用帧差算法与模板匹配算法相结合的方法实现目标火箭的检测与锁定,在跟踪目标背景简单的情况下使用帧差方法,在背景复杂的情况下使用模板匹配方法,并在目标跟踪失效时,使用卡尔曼滤波器对目标位置进行预测。
2.1 数字化图像预处理
摄像机拍摄到的火箭图像要经过采样量化得到数字化图像,然后对灰度图像进行降噪,消除图像在输入、传送、处理过程中形成的干扰噪声和假轮廓,形成具体算法的输入图像。
图像的灰度化和中值滤波可以很好地进行降噪和保护图像所蕴含的丰富信息[1]。
2.2 运动火箭目标检测与跟踪
要在视频流中提取目标,一般要依据目标前景所处的背景环境确定目标所在的区域和颜色等特征。可以使用当前监视环境中的一幅静态图像作为“静态”前景目标,然后利用背景图像与当前帧图像的差进行运动火箭目标的检测,即采用“静态”背景帧差方法[3-4]。不过此种帧差算法一般只适用于背景单一、所受干扰较小的环境。
在火箭发射开始时,由于日光、火箭喷发的气体、火花以及发射架影响使得背景复杂,使用帧差分算法很难把背景与目标分离开来。这时,模板匹配算法可以较好地实现目标的识别功能[5-6]。在实现过程中,通过灰度直方图来判断当前背景的复杂程度,进而确定采用帧差算法还是模板匹配算法。
当火箭开始升空,目标背景变得单一,外界干扰也小,系统通过灰度直方图判断背景为简单,同时火箭飞行速度也开始加快,正好适用帧差算法,从而代替计算量大的模板匹配的方法。
当火箭上升到一定高度,火箭速度加快和受到外界云层的遮挡,可能导致跟踪目标失效,此时利用卡尔曼滤波器的递推估计能力对火箭目标在下一时刻可能处于的区域进行预测,以缩小搜索的目标范围,从而保证目标跟踪的准确性[4,7]。实践中,此法满足了跟踪的实时性,同时具有很好的鲁棒性,解决了图像受污染或者遮挡导致无法识别的问题。
3 MSP430+CPLD控制系统设计
3.1 控制方案优点
系统控制方案:使用MSP430处理器作为主控芯片,负责与PC机进行通信并实现对CPLD的控制。利用CPLD内部进程并发执行特性实现多路驱动脉冲的产生,从而实现云台水平和垂直方向同时不相关独立运动。该控制方案,一方面消除了通过多片单片机进行多机通信才能实现过程中的通信时间消耗带来的步进电机失步的因素,另一方面解决了通过单片CPLD芯片实现过程中与PC机通信及实现控制消耗过多内部资源且不易实现控制、导致没有足够资源实现多路驱动脉冲产生的问题。
3.2 控制方案实现
在PC机上完成图像数据的处理后,PC机就要与控制系统进行交互,发送偏差控制数据。通过MAX1487实现MSP430与PC机之间的串行RS485通信[5],然后MSP430根据接收到的控制信息,控制CPLD芯片实现步进电机控制。控制系统流程如图2所示。
MSP430接收到偏差控制信息,经过校验无误后,根据信息控制CPLD产生具体的驱动控制信号。系统要完成云台摄像机水平和垂直方面的独立运动。其中控制信息格式如图3所示。
此信息格式分为两部分:步进电机1#与步进电机2#,分别用于控制云台系统两台步进电机,达到两电机同时不相关地独立运动。
另外加入了人为控制机制,以便及时处理跟踪中的异常情况,同时也方便调试。
3.3 步进电机定位控制
CPLD根据MSP430的控制信号(包括方向控制信号和移动定位控制信息),产生所需脉冲的数量和脉冲的频率。脉冲的数量用于控制步进电机运行步数,即摄像头的位置偏差,而脉冲的频率则用于实现跟踪图像的速度选择。
在软件上,CPLD基于VHDL语言编程,程序中可以实现不同进程并发执行。由此可知,只需要编写多路能够实现单个步进电机转向与移动定位的控制进程,便可实现云台的多角度独立控制[8]。单路进程定位控制如图4所示。
4 系统机械结构性能分析与实现
系统结构框架主要由底座、摄像机固定架、机械架构、减速机构以及限位控制机构等部分组成。
4.1 减速机减速比的计算
摄摄像机固定架如图5所示。假定像机质量为m,重心在M,Cg的距离为r=(h2+l2)1/2,则转过a角后的力矩为:
M=Grsina=mg(h2+l2)1/2sina,所以力矩最大值Mmax为mg(h2+l2)1/2,如果m=40kg,g=9.8m/s2,h=0.2m,l=0.4m,Mmax=179牛米,则变速比为179/2.4=79(实际中取80)。
4.2 物像跟踪能力计算
目标锁定图如图6所示。假定计算机计算误差的速度为t0秒/次;图像锁定范围RL为RLW×RLH像素;图像模板计算范围RC为RCW×RCH像素。只讨论垂直方向的跟踪能力。
对于一个高为H的物体O,如要能跟踪且便于观察,则其最佳位置如图6所示。若物体被锁定,且被跟踪。物体在计算误差的速度容许的前提下,物体始终处于如图6所示位置,则系统能够满足“物体被锁定,且被跟踪”的要求,即有如下条件成立:
对于云台而言,由图7可知,其垂直方向旋转角速度ω0应满足如下条件:
要注意,摄像机的运动范围一般都是已知的,由此一般要在云台中加入限位控制装置。
本文结合火箭飞行过程中目标识别跟踪算法,并通过MSP430+CPLD控制步进电机实现了云台控制系统和连续视频运动图像中火箭目标的实时跟踪,并取得了良好的效果。
参考文献
[1] 刘宇. 视觉跟踪伺服系统在火箭发射测控中的应用.重庆:重庆大学出版社, 2005.
[2] 王成, 薛小刚, 钟信潮. FPGA/CPLD设计工具-Xilinx ISE使用详解.北京:人民邮电出版社, 2005.
[3] 王强, 韩军功.一种图像序列中运动前景分割法.计算机工程,2003,29(19):48-49.
[4] 崔玉文,黄飞泉等.运动目标的快速检测与跟踪算法的研究.齐齐哈尔大学学报,2006,22(4):23-25.
[5] 应陈克,胡文江. 复杂背景下目标模板更新算法研究.遥感测控.2006,27(10):34-39.
[6] 吴益飞,李胜. 基于MSP430 单片机的云台控制系统设计与实现. 微计算机信息,2006,22(7-2):90-93.
[7] 王俊风,雷斌.卡尔曼预测在自动跟踪云台中应用.国外电子测量技术,2006,25(10):53-55.
[8] 王强,赵宇. CPLD在步进电机控制系统中的应用.电子测量技术, 2006,29(6):118-120.