高 明, 张培亮
(西安工业大学 光电工程学院, 陕西 西安 710021)
多数据融合的四轴飞行器硬件电路设计*
高 明, 张培亮
(西安工业大学 光电工程学院, 陕西 西安 710021)
根据四轴飞行器的结构和飞行模式,设计了系统的总体硬件电路结构。硬件电路基于Cortex—M4内核STM32F407系列ARM芯片。设计的外围电路包括无线通信模块、视频采集模块和GPS接收,发送模块以及测量飞行姿态的各个传感器模块。通过实验验证了所设计硬件电路系统的可行性。
四轴飞行器; 全球定位系统定位; 图像采集; 姿态测量; STM32
鉴于四轴飞行器的自身特点,增加图像采集模块,则能实现远程对灾区信息的采集和获取,大大提高了减灾效果,提升了灾害现场勘查能力,避免了因重灾区域短时难以抵达、交通受阻而无法掌握具体灾情的“信息盲区”现象[1~3]。全球定位系统(GPS)定位是无人飞行器实现自主导航和位置获取的重要环节,可以基于GPS定位信息,并按照一定的评价标准,寻找一条从起始状态到目标状态的最优路径[4]。
四轴飞行器是一个非线性多耦合的欠驱动系统,其控制问题一直以来都是科学研究者比较关注的问题[5,6]。四轴飞行器是一个具有六自由度 ( 位置与姿态 ) 和 4 个控制输入 ( 旋翼转速 ) 的欠驱动系统,具有多变量、非线性、强耦合和干扰敏感的特性,使得飞行控制系统的设计变得非常困难[7]。为此,本文对采集的姿态传感器数据进行融合,采用卡尔曼滤波算法来融合加速度和陀螺仪的数据,同时对图像信息和GPS信息也进行处理。对于位姿解算,本文采用四元数法并结合方向余弦矩阵完成姿态解算,并以解算的姿态角作为反馈完成四轴飞行器的飞行控制。
飞行器通过平衡2个螺旋桨产生的力来实现稳定的盘旋以及精确飞行[8,9]。飞行器的输入转矩由无刷电机提供,通过调节各个带桨电机的转速,可以改变飞行器升力和推力的大小,实现飞行姿态与航向的控制。
四轴飞行器输入4个电机的转速,输出却是 6 个自由度方向的运动,故而属于欠驱动系统,具有高度耦合的动态特性,其直观地体现在飞行器一个螺旋桨转速发生改变的情况下,将产生至少 3 个自由度方向上的运动。控制电机转速的精度对四轴飞行器的稳定飞行具有重要的意义。
硬件总体结构图如图1。微处理器模块选用ARM Cortex-M4内核的STM32F407ZGT6,它的时钟频率可以达到168 MHz,并且拥有I2C总线接口、JTAG接口、SPI接口、AD采集接口、多路PWM输出和多个串口,且该芯片集成FPU和DSP指令,便于多样化传感器的挂接和复杂运算。此微控制器具有14个定时器,对于信号采集和PWM输出均能满足。
图1 硬件总体结构图
2.1 电源模块设计
四轴飞行器要求整体设计质量较轻,体积较小,因此在电池的选取方面,采用体积小、质量轻、容易大的锂电池供电最合适。本电路采用AMS1117—3.3核心芯片和电调提供5 V电源部分。将11.4 V电池电源经过电调后降到5 V后再输入AMS1117—3.3稳压为3.3 V,为STM32F407和无线通信模块供电。
2.2 姿态测量模块设计
四轴飞行器受电机振动和外界干扰影响较大,精确数学模型建立较难,且其载重有限,一般以惯性器件作为姿态测量装置,姿态测量部件是整个硬件系统的重要部分。本设计综合考虑硬件设计原则,采用MPU—6050模块作为飞行器的姿态传感器。MPU—6050通过I2C协议接口进行通信,只需要将MPU—6050的SDA数据线和SCL时钟线与STM32通用I/O口相连接。
2.3 无线通信模块设计
系统在GPS方位信息回传和图像采集两方面需要无线通信,并且在上位机和飞控端需要数据传输。结合通信距离、成本等因素,本设计选用NRF24L01无线模块器件。其发射电路可以通过LC振荡电路构成。为了便于维修,利用接口将无线模块独立出来。
2.4 图像采集模块设计
图像采集模块采用的摄像头OV2640 是 OV(OmniVision)公司生产的1/4 in(1in=2.54cm)的 CMOS UXGA(1 632×1 232)图像传感器。该传感器体积小、工作电压低,支持SCCB接口,并兼容I2C接口。通过 SCCB 总线控制,可以输出整帧、子采样、缩放和取窗口等方式的各种分辨率 8/10 位影像数据。
2.5 高度测量模块设计
高度测量模块采用的MS5611—01BA气压传感器是由MEAS(瑞士)推出的SPI和I2C总线接口的新一代高分辨率气压传感器,分辨率可达到10 cm。该传感器模块包括一个高线性度的压力传感器和 一个超低功耗的24位Σ模/数转换器(工厂校准系数)。MS5611提供了一个精确的24位数字压力值和温度值以及不同的操作模式,可以提高转换速度并优化电流消耗。高分辨率的温度输出无须额外传感器可实现高度计/温度计功能。MS5611压力传感器只有5.0 mm×3.0 mm×1.0 mm的小尺寸可以集成在移动设备中。具体电路图如图2所示。
图2 高度测量电路
2.6 串口电路设计
这是USB串口同STM32F407ZGT6的串口1进行连接的接口,标号RXD和TXD是USB转串口的2个数据口(对CH340G来说),而PA9(TXD)和PA10(RXD)则是STM32的串口1的两个数据口(复用功能下)。将它们连接在一起,即可实现STM32的程序下载以及串口通信。
2.7 数字罗盘电路设计
在本设计中所选用的磁阻传感器为 Honeywell 公司的 HMC5883L 三轴磁阻式地磁传感器。它可以同时测量三个轴向的磁场分量,具有轴向高灵敏度以及线性度高的特点;采用无铅表面封装技术,带有 I2C 接口,尺寸为 3.0 mm×3.0 mm×0.9 mm;磁场测量范围最大能达到±8.1 G,最小分辨率可达到 0.73 mGs/LSB。具体电路如图3所示。
图3 数字罗盘电路
3.1 惯性测量数据测试
整个飞控系统的姿态解算芯片是采用Cortex—M4内核的STM32F407ZGT6来进行解算,并采用MPU6050作为系统的惯性测量单元,可以输出角速度和加速度的原始数据,通过卡尔曼滤波进行滤波处理,滤波处理后通过四元数法进行解算,并运用龙哥—库塔法更新四元数,最后输出姿态角和其他测量信息。在实验时随意的转动四轴飞行器,然后将解算的各种飞行器姿态信息通过无线模块回传到上位机上进行显示。解算后的信息如图4所示。
图4 惯性测量数据解算图
通过图4可以看到,随意的晃动四轴飞行器,通过求解四元数微分方程可以实时地对姿态角和各轴的加速度信息进行解算和显示。
3.2 图像采集测试
OV2640摄像头的图像输出格式一般有SXGA(1 280×1 024),XGA(1 024×768),SVGA(800×600),VGA(640×480),CIF(352×288),WQVGA(400×240),QCIF(176×144)等,图像的输出主要在控制像素时钟(PCLK)、帧同步信号(VSYNC)、行参考信号(HREF)、行同步信号(HSYNC)的控制下进行。要实现对图像的采集,对OV2640进行相关配置,如图像窗口设置、图像输出大小设置等等;按照OV2640读取数据的时序操作,得到图像数据。OV2640的图像数据输出格式有RGB565和JPEG两种,本设计中采用JPEG方式,其输出的数据是压缩后的JPEG数据。
整个读取图像数据的具体操作如下:等待VSYNC为高电平→等待HREF为高电平→等待PCLK的上升沿→读取JPEG数据→等待HREF为高电平→等待PCLK的上升沿→读取JPEG数据→等待HREF为高电平…→VSYNC为低电平→完成一帧JPEG数据读取。对以上循环执行,即可完成图像的读取。
当完成OV2640对一帧图像的读取后,JPEG数据是存放在预先定义的一个数组中,当该数组中数据满后,采用ZigBee串口模块将其发向上位机。上位机采用网上的开源软件“串口摄像头软件”,当接收到一帧数据后就会显示出来。循环执行上述过程,即可完成图像的无线采集和显示。
3.3 GPS数据回传显示测试
本设计的GPS采用的BN—280是深圳北天通讯公司研发的高性能、低功耗GPS定位模块,模块通过串口与飞控连接,其水平定位精度可达2.0 m左右,测速精度可达0.1 m/s,航向角经度可达0.5°。该模块一般可输出GPS和GLONASS两种数据帧,常用的比如有GPGSV,GNGGA,GNGSA,GNRMC,GNVTG等等。在对GPS原始数据解析时采用目前的NMEA—0183标准协议,当GPS接收机上电后,会自动通过串口或USB口发送NMEA0183格式的数据包,它是一组包含有各种地理位置信息的字符串,它包含了定位时间、纬度、经度、高度、定位所用的卫星数、DOP值、差分状态和校正时段等,其他的有速度、跟踪、日期等。数据帧格式一般为
$信息类型,xxx,xxx,xxx,xxx,xxx,xxx,xxx
每行开头的字符都是‘$’,接着是信息类型,后面是数据,以逗号分隔开。比如鉴于此特征,即可通过判断帧头“$信息类型”和分离逗号的方法将接收的数据解析成经纬度、高度等信息。将得到的位置数据通过无线模块传回进行解析显示,显示的图片如图5所示。
图5 GPS位置信息显示图
通过实验可以看到该硬件系统的姿态测量传感器可以有效完成对飞行过程姿态数据的解算和处理,图像采集模块和GPS模块也可以有效地完成图像信息和GPS定位信息的采集和实时回传。
[1] 江 哲.基于STM32的四旋翼飞行器的设计与实现[D].上海:华东理工大学,2015.
[2] 周新春,昂海松.微型飞行器研究进展与关键技术[J].传感器与微系统,2008,27(6):1-4.
[3] Huang Y B,Thomson S J,Hoffmann W C,et al.Development and prospect of unmanned aerial vehicle technologies for agricultural production management[J].International Journal of Agricultural & Biological Engineering,2013,6(3):1-10.
[4] 付佳贺.小型四轴飞行器自主飞行控制系统的设计与实现[D].成都:电子科技大学,2015.
[5] Chovancová A,Fico T,Chovanec L’uboš,et al.Mathematical mo-delling and parameter identification of quadrotor(a survey)[J].Procedia Engineering,2014,96:172-181.
[6] Mahony R,Kumar V,Corke P.Multirotor aerial vehicles:Mode-ling,estimation,and control of quadrotor[J].IEEE Robotics & Automation Magazine,2012,19(3):20-32.
[7] 贾 峰,孙 曼,秦 磊.基于STM32的四旋翼飞行姿态串级控制[J].科学技术与工程,2015,15(6):220-225.
[8] 李运堂,贾宇宁,王鹏峰,等.基于多传感器的四旋翼飞行器硬件系统设计[J].传感器与微系统,2015,34(2):119-121.
[9] 周 权,黄向华,朱理化.四旋翼微型飞行平台姿态稳定控制试验研究[J].传感器与微系统,2009,28(5):72-74.
[10] 汪 勤.基于LQR的三自由度飞行器最优控制系统的研究[J].自动化技术与应用,2016,35(8):33-36.
Design of quadrotor hardware circuit with multi-data fusion*
GAO Ming, ZHANG Pei-liang
(School of Optoelectronic Engineering,Xi’an Technological University,Xi’an 710021,China)
Hardware circuit structure of the system is designed based on structure and flight mode of Quadrotor.The MCU of hardware circuit is based on Cortex-M4 STM32F4 series of ARM chips.The hardware circuit includes wireless communication module,video capture module and GPS receiving and transmitting module and each sensor modules which measure flight attitude.Feasibility of the designed hardware circuit system is validated by experiments.
quadrotor; GPS positioning; image acquisition; attitude measurement; STM32
10.13873/J.1000—9787(2017)03—0113—03
2016—12—16
陕西省教育厅重点实验室科学研究计划项目(14JS034)
V 275
A
1000—9787(2017)03—0113—03
高 明(1964-),男,博士,教授,主要从事光学设计理论及技术,光电精密测试技术,光大气传输理论及技术的研究工作。
张培亮,通讯作者,E-mail:ZPL304@163.com。