基于GPS的四旋翼飞行器定位系统的设计

2016-05-19 13:52黄艳虎陈家裕陈倍昌朱逸政
电脑知识与技术 2016年8期
关键词:定位

黄艳虎+陈家裕+陈倍昌+朱逸政

摘要:四旋翼飞行器是近年来新兴的一类多用途、宽领域适用的微型飞行器。但传统的四旋翼飞行器的受控方式十分有局限,软件化控制将在自动化应用领域成为四旋翼飞行器未来控制方式的主流。借助全球定位系统GPS,经由GPRS网络进行通信,制成了一套系统,以软为主、硬件相结合的方式完成用户端的控制软件,实现四旋翼飞行器GPS数据的接收,并以地图定位的方式显示。此四旋翼飞行器定位系统将为四旋翼飞行器的应用增加便利。

关键词:四旋翼飞行器;GPS;定位;GPRS

中图分类号:TP368 文献标识码:A 文章编号:1009-3044(2016)08-0205-02

Abstract: Quadrotor aircraft is a kind of multi-purpose,micro air vehicles with wide field of application, which is emerging in recent years. But traditional quadrotors method of control is very limited, and the software control will become the main flow of quadrotor control mode in the field of automation application. By means of global positioning system (GPS), via GPRS network communication, a system, which canreceive GPS data of the quadrotor aircraft, anddisplay the map.is designed. The four rotor aircraft positioning system willmake the application of quadrotor more convenient.

Key words: four rotor aircraft; GPS; location, GPR

四旋翼飞行器是近年来新兴的一类多用途、宽领域适用的微型飞行器。该类飞行器属于常见的多用途简易轻型无人机,具有使用灵活、不受一般的交通线路约束的特点,广泛应用于勘探、物流快递、航空拍摄及其他特定应用领域。

但传统的四旋翼飞行器高度依赖于手持的遥控设备,遥控距离受限于遥控器传输距离或者数传的通信距离,这种受控方式的飞行器在商业应用上显得十分有限。软件化控制将在自动化应用领域成为四旋翼飞行器未来控制方式的主流。借助较为成熟的全球定位系统GPS,经由GPRS网络进行通信,四旋翼飞行器的软件自动控制将为四旋翼飞行器的应用增加便利。

对于四旋翼飞行器来说,GPS定位技术的应用推动了四旋翼飞行器自动驾驶技术的迅猛发展,使得各种类型的四旋翼飞行器能够进一步脱离遥控器直至最终实现全自动的稳定飞行,以完成人们在各种如勘探矿井、地震救灾、电视电影特定角度拍摄等领域的应用。如今,高精度的GPS模块已经成功运用在如ArduPilotMega飞控的四旋翼飞行器上,这使得基于GPS的四旋翼飞行器自动飞行变得更加成熟。因此,在成熟的飞行控制方案下的四旋翼飞行器的二次开发,具有十分重要的意义。

1 总设计思路

本系统针对四旋翼飞行器的自动返航任务,根据现有的ArduPilotMega飞行控制板,经由GPRS网络进行数据传输,在Windows操作系统上,使用VisualStudio2013基于C#编写的控制软件,实现控制软件对四旋翼飞行器的飞行监控,定时地接受并显示飞行器的坐标等信息,在窗口百度地图上进行显示,并在GPS定位功能基础上,实现四旋翼飞行器的模式转换,并自动返航。

系统主要包含三个主要的部分:基于GPS的四旋翼飞行器自动返航系统包括机载飞行控制板、实现模式控制及GPS数据采集回传的机载控制系统、客户端软件系统部分,如图1。

2 硬件设计

硬件设计首先进行各个模块的选择:1)飞行控制板选择ArduPilotMega飞行控制板支持的功能十分众多、丰富,包括基于陀螺仪的自稳功能、基于GPS的定高功能、PID解算姿态角控制等,并且支持稳定的地面站系统,预留有三个串行接口,系统较为稳定,故障率较低,是目前市场上最为普遍的飞控。因此飞行控制板选择了V2.8版本的ArduPilotMega飞行控制板,其可选用的三个串行接口适合本次系统设计的要求,十分适宜进行二次开发使用。2)外接GPS模块的选择 LEA-6H作为一个增强型GPS接收模块,还支持GLONASS卫星导航系统,精度较其他型号的GPS模块高很多。两个独立的GPS模块由于位置相同,故可以实现飞行器飞行位置的正确采集及回传。3)核心处理器的选择核心控制器选择了具有两个串行接口的新一代M3内核的微控制器——STM32F103R微处理器。4)GSM模块的选择四旋翼飞行器上的控制系统需要与用户软件进行通信,GTM900C模块是一款面向工业应用的GSM模块,能兼容TC35模块,并且兼容通用的AT指令集,具有标准的SIM卡接口,可外接射频天线。

机架是一个四旋翼飞行器的主要部分。四旋翼飞行器可以成两个部分:其核心是飞行控制板即飞控系统,另一部分是四旋翼飞行器的无刷电机及其对应的机桨,而这两个主要部分都由四旋翼机架进行承载。系统选用的四旋翼机架如图2。

四旋翼机架由于占据四旋翼飞行器很大一部分重量,因此其重量将成为一个十分重要的考量因素。本次设计采用华杰HJ-6504折叠四旋翼机架,其具有较大的尺寸同时提供较轻的重量,并且完美适配各类无刷电机及电调。除了机架之外,四旋翼飞行器还应包括旋桨叶片,电机以及电池等元件。

3 软件设计

当用户启动软件时,界面将加载各个控件及内容,形成一个可视化的交互界面。软件窗体界面调用webBrowser浏览器控件,通过脚本调用的方式,调用百度地图接口,载入初始化的百度地图,并且初始化载入事件Form_Load对窗口界面进行初始化,添加下拉列表的串口选择。

通过调用百度地图API实现地图功能。由于软件界面中的地图显示是通过C#调用Javascript脚本访问的方式实现的,因此必须在网页文件中添加对应的functionn函数,并进行百度地图的初始化。将网页文件添加至项目工程的debug目录下。使用webBrowser控件可以直接打开网页文件,并载入地图。

“开始服务”按键可以启动软件与四旋翼飞行器板载的飞控板进行通信,即用户软件开始监听指定的端口,等待四旋翼飞行器端的TCP通信连接。首先应建立一个新的线程,用于端口的监听,并设置好端口号,经由各个控件实现信息的交互变化,以实现人性化的交互:

4 调试与测试

本系统硬件构成部分由集成模块进行搭建,控制系统搭接如图3。STM32微处理器由最小集成系统的两个串口分别接GTM900C模块和GPS模块即可。电源部分由四旋翼飞行器机载电池进行供电。通常串口通信可简单地由3根不同的传输线进行连接,就可以实现简单的串行通信。这三根线包括GND接地线、信号输入线和信号输出线。在此我们将两个模块的地线接到STM32板的地线接口,然后另外的输入输出线分别连接STM32的两个串行输入输出线即可。

整体系统搭建起来后,用户可以仅仅依靠用户端软件对四旋翼飞行器进行控制,在飞控写入航点任务后,可以通过切换模式的方式进行航点飞行任务。基于GPS的四旋翼飞行器定位系统上位机软件界面如图4。

5 总结与展望

本课题通过一般的GPRS网络实现四旋翼飞行器和客户端软件的通信,利用C#编程语言设计客户端软件,同时使用ArduPilotMega自动驾驶仪作为四旋翼飞行器的飞行控制板,并定时接收和显示四旋翼飞行器的GPS数据,并且可以在百度地图上显示飞行器的位置,最终实现了四旋翼飞行器的自动飞行及自动返航。

该系统涵盖了软件硬件中的多个方面,其研究具有实际意义,其应用具有工程价值。面向特定的应用中,如边缘地区紧急物件的递送方面,基于GPS的四旋翼飞行器自动返航系统将具有独特的优势。

参考文献:

[1] 王丽欣. 基于GPS/GSM的车辆定位跟踪系统设计与实现[D].沈阳工业大学,2013.

[2] 刘焕晔. 小型四旋翼飞行器飞行控制系统研究与设计[D].上海交通大学,2009.

[3] 刘俊成. GPS软件接收机关键技术研究[D].国防科学技术大学,2006.

[4] 王树刚. 四旋翼直升机控制问题研究[D].哈尔滨工业大学,2006.

[5] 姜西瑞. 基于GPS和GSM/GPRS的定位系统的设计与实现[D].中国科学院研究生院(计算技术研究所) ,2006.

[6] 李家福. 基于GSM网络的智能监控模块设计[D].西南交通大学,2006.

[7] 罗亚非. 基于TCP的Socket多线程通信[J]. 电脑知识与技术,2009(3):563-565+598.

猜你喜欢
定位
《导航定位与授时》征稿简则
Smartrail4.0定位和控制
找准定位 砥砺前行
青年择业要有准确定位