APP下载

基于无人机的图像和GPS数据采集系统的研究与实现*

2012-08-20陈贻国潘日敏

网络安全与数据管理 2012年1期
关键词:微控制器上位接收机

陈贻国,潘日敏,申 燊

(浙江师范大学 数理信息与工程学院,浙江 金华 321004)

无人机系统作为一种高端的遥控设备已经被广泛应用于军事侦查、远程监控和地质测绘等领域。通常无人机系统的首要任务是将实时采集到的图像信号通过无线通信设备传送到地面基站。国外对于这方面的研究较早,但由于技术封锁等原因,目前可供借鉴的资料很少,加之我国在该方面研究起步较晚,致使我国在无人机无线视频图像传输领域的技术较落后。现阶段的无人机图像采集技术主要有两种方式:一种是采用模拟传输方式,其频率使用率较低,系统易受干扰,其图像质量较差,信道编码效率不高,且抗多径干扰较差;另一种是采用模拟的CCD摄像头通过模数转换芯片变为数字信号,再由控制器进行压缩和处理,这样不仅加重了控制器的负担,而且也易造成系统功耗较大。同时,由于小型飞行器的载重及能量供给非常有限,对机载部分的功耗、重量和安装尺度等都提出了更为严格的要求。本文设计了一种基于CMOS摄像头和数字图像处理芯片的图像和GPS数据采集系统。该系统具有体积小、传输速率高、传输距离远、带有数据压缩和图像增强功能的特点[1-12]。

地面基站作为无人机系统的“神经中枢”,担负着采集及分析飞行数据、验证及评价飞行效果和保证飞行安全等重要任务。因而,一个好的无人机系统常常需要有功能强大的地面基站平台才能发挥最好的飞行效果。本文设计了一种利用VB编程软件在PC机上实现的具有航迹记录与预测、手动控制飞行、飞行状态监控和视频图像显示等功能的地面基站平台。地面实验表明该系统具有很好的应用效果[9]。

1 系统结构和工作原理

本系统包括机载的视频图像采集系统和地面基站平台两部分,其结构框图如图1所示。系统硬件由摄像头模块、GPS数据采集模块、STM32微控制器和NRF905无线通信模块构成。

该系统以STM32F103RBT6微控制器为核心,机载微控制器通过串口1和串口2分别与VC0706图像处理芯片和GPS接收机进行通信,主要实现以下几个功能。(1)机载微控制器通过控制指令控制VC0706图像处理芯片实现控制摄像头拍照、图像数据压缩以及数字图像传输等任务。(2)机载微控制器将GPS接收机发出的数据按照国家标准的GPS接收机数据输出格式(GB/T 20512-2006)进行解码。再将采集到的图像数据和GPS数据按照事先约定好的通信协议通过NRF905无线通信模块与地面基站的STM32微控制器进行通信,基站的微控制器再将数据通过内嵌的USB接口传送到上位机上。由此,实现了图像和GPS定位信息的采集、传输和上位机显示的功能。

2 相关问题及设计方案

本系统大体可分为图像和GPS数据采集、无线通信以及上位机编程三部分。

2.1 数据采集系统

图像数据采集需要克服数据量大、传输实时性等问题,同时,需要考虑到STM32微控制器内部数据储存容量有限[1],对图像数据需要进行分批传输。数字摄像头采集一幅 480×640的图像数据量为 307 200 B,而经过VC7076处理芯片进行压缩率为30%的压缩处理后,数据量可以减少为92 160 B左右[6]。STM32微控制器的串口传输速率可以达到115200b/s[4],而STM32F103RBT6微控制器的内部数据存储器只有20 KB,无法保存一幅完整的图像数据。由于NRF905无线发射模块每次最多发射32 B的数据,因此VC7076中接收数据只需要微控制器发送起始地址和结束地址指令即可。所以,在微控制器的软件设计中定义了两块容量为1 KB的数据存储块,并且在接收数据时使用微控制器内嵌DMA模块。初始化时,设置DMA数据为串口数据输入,这样每当微控制器的串口接收到1 B的数据,就可以通过DMA模块自动地保存到相应的地址中而不需要微控制器内部CPU的参与,这使得CPU可以空闲出来进行发送部分的处理。当一块数据接收完成后,会触发DMA中断,CPU就可以在中断中重新配置起始地址和结束地址,使得微控制器能够循环进行数据接收。在程序中,首先定义了一个用于数据接收和发送的结构体,其中的数据成员是两个容量为1 KB的存储数据块和用于指示接收和发送所用的数据块指针。数据接收的软件流程图如图2所示。

该软件程序初始定义为:

由于GPS接收机发出的数据以ASCII码的形式发出,并且按照GB/T 20512-2006标准进行信息编码,因而需要对从接收机接收到的数据进行解码从而得到能进行处理和识别的数据。GPS接收机采用的是Gstar GS-89模块,该模块能够检测当前位置的经度、纬度、海拔高度、标准定位时间和接收卫星数等信息。GPS接收机输出的信息是以语句的形式进行发送的,总共有5种语句,每条语句都以$开头,并以回车结束,同一语句中的不同数据之间采用逗号隔开。其中,GPGGA语句包含当前的定位信息,也是应用最广的语句,因而,对GPGGA语句的解码最重要。GPRMC语句的格式如下:

其中,(1)表示定位时间,(2)、(3)表示纬度,(4)、(5)表示经度,(9)表示海拔高度。对上述数据的解码是系统获取GPS数据的重点,解码的软件流程图如图3所示。

2.2 无线通信系统

无人机与地面基站之间数据的传送需要使用无线通信系统来进行。系统的无线通信部分采用的是NRF905-33A无线模块,该模块的最远通信距离可达到3 km,非常适于小范围内的通信网络,而且重量轻,适于在无人机上进行携带。

NRF905-33A无线模块一次只能传送32 B,微控制器每次需要等待无线模块传送完成后才能进行下一次的数据传送。而系统中需要进行GPS和图像两种数据的传送。为了提高无线通信的速率和通信的准确性,系统采用了分时传送的方法,即利用GPS接收机每隔1 s更新一次定位数据的特性,将GPS数据的传送设定为1 s传送一次,而其他时间则进行图像数据传送。为了区分图像数据和GPS数据,在每次不同数据转换时采用了发送32个相同数据的方法与地面基站的接收机进行同步。

2.3 上位机编程

上位机编程采用了Visual Basic编程语言。该编程语言是一种可视化的、面向对象和采用事件驱动方式的结构化高级程序设计语言,不仅简单易学,而且功能强大。

上位机需要解决的主要问题是如何进行图像的显示。由于传送到上位机的数据为JPEG格式,本文采用了一个较为巧妙的方法,即先打开一个空的JPEG格式的文件,然后在有数据发送到上位机时就检测该数据是否为图像的数据头(0xff,0xd8)或数据尾(0xff,0xd9),并将数据写入到打开的图像文件中。当检测到的数据为数据尾时,就将图像文件显示出来。其编程语句如下。

本文针对无人机系统的特性以及要求,提出了一种基于STM32微处理器实现图像和GPS数据采集、传输以及在上位机显示的设计方案。经过静态的地面测试证明,该系统能够很好地实现设计要求的功能,而且传输速度较快,可以满足无人机系统的实时性要求;该系统运行良好,抗干扰能力强,有很好的继承性和维护性。本系统模块化的设计方案和实现方法对无人机系统的设计和研究具有一定的参考价值。采用STM32微处理器,可以大大降低无人机系统的硬件设计难度,缩短设计周期。此外,STM32微处理器还支持串口烧录和在线仿真,可以大大减少软件设计的成本。随着ARM单片机功能的不断提升,基于ARM技术的STM32系列单片机以它特有的优势将在高新技术领域得到广泛的应用。

[1]张绮文.ARM嵌入式常用模块与综合系统设计实例精讲[M].北京:电子工业出版社,2007.

[2]阎石.数字电子技术基础[M].北京:高等教育出版社,2008.

[3]杨素行.模拟电子技术基础简明教程 (第三版)[M].北京:高等教育出版社,2006.

[4]张鑫.单片机原理及应用[M].北京:电子工业出版社,2005.

[5]姜志海.单片机的 C语言程序设计与应用[M].北京:电子工业出版社,2008.

[6]毕文仲.微型摄像与视频通信系统研究[D].北京:清华大学,2001.

[7]袁哲俊,谢大纲,胡忠辉.微飞行器技术的最新发展[J].航空精密制造技术,2005,41(1):1-5.

[8]张汝成,王广生,张磊.基于ARM的电梯主控制器设计[J].计算机测量与控制,2009,17(10):1958-1961.

[9]田蜂,杜洪根.无人机地面站控制系统的设计[J].计算机测量与控制,2005,13(11):1237-1239.

[10]司兵,周传忠,于歌.一种微小型无人机地面监控系统软件设计与实现[J].系统仿真技术,2007,3(2):90-95.

[11]郝志成,朱明.智能目标检测与跟踪系统的设计与实现[J].光电工程,2007,34(1):27-31.

[12]STINGU E, LEWISF L.A hardwareplatform for research in helicopter UAV control [J].Journal of Intelligent&Robotic Systems, 2009,54(1-3):387-406.

猜你喜欢

微控制器上位接收机
TASKING针对英飞凌第三代AURIX微控制器推出多核开发环境
一种宽带低功耗四合一接收机设计
一种面向ADS-B的RNSS/RDSS双模接收机设计
特斯拉 风云之老阿姨上位
物联网技术在微控制器实验教学中的应用
用于高品质电动汽车的分布式并行计算
“三扶”齐上位 决战必打赢
基于ZigBee和VC上位机的教室智能监测管理系统
数字接收机故障维修与维护
基于多接收机的圆周SAR欺骗干扰方法