四旋翼无人机毕业设计 - 图文

更新时间:2023-12-16 05:15:01 阅读量: 教育文库 文档下载

说明:文章内容仅供预览,部分内容可能不全。下载后的文档,内容与下面显示的完全一致。下载之前请确认下面内容是否您想要的,是否完整无缺。

渤海大学本科毕业论文(设计)

四旋翼无人机设计与制作

The Manufacture and Design of Quad Rotor Unmanned

Aerial Vehicle

学 院(系): 专 业: 学 号: 学 生 姓 名: 入 学 年 度: 指 导 教 师: 完 成 日 期:

四旋翼无人机设计与制作

摘 要

四旋翼无人机飞行器因为它的结构简单,而且控制起来也很方便,因此它成为了近几年来发展起来的热门产业。在这里本文详细的介绍了四旋翼飞行器的设计和制作的过程,其中包括了四旋翼无人机飞行器的飞行原理,硬件的介绍和选型,姿态参考算法的推导和实现,系统软件的具体实现。该四旋翼飞行器控制系统以STM32f103zet单片机为核心,根据各个传感器的特点,采用不同的校正方法对各个传感器数据进行校正以及低通数字滤波处理,之后设计了互补滤波器对姿态进行最优估计,实现精确的姿态测量。最后结合GPS控制与姿态控制叠加进行PID控制四旋翼飞行器的四个电机,来达到实现各种飞行动作的目的。在制作四旋翼飞行器的过程中,进行了大量的调试并且与现有优秀算法做对比验证,最终设计出能够稳定飞行的四旋翼无人机飞行器。

关键词:姿态传感器;四元数姿态解算; STM32微型处理器;数据融合;PID

- I -

四旋翼无人机设计与制作

The Manufacture and Design of Quad Rotor Unmanned Aerial

Vehicle

Abstract

Quad-rotor unmanned aerial vehicle aircraft have a simple structure, and it is very easy to control, so it has become popular in recent years. Here article describes in detail the design and the process of making the four-rotor aircraft, including Quad-rotor UAV aircraft flight principle, hardware introduction and selection, implementation and realization of derivation attitude reference algorithm, the system software . The Quad-rotor aircraft control system STM32f103zet microcontroller core, and the advantages and disadvantages based on the accelerometer sensor, a gyro sensor and electronic compass sensors using different correction methods for correcting various sensor data and low-pass digital filter processing, after design complementary filter to estimate the optimal posture, precise attitude measurement. Finally, GPS control and attitude control PID control is superimposed four-rotor aircraft four motors to achieve a variety of flight maneuvers to achieve the purpose. Four-rotor aircraft in the production process, a lot of debugging and do comparison with the existing excellent algorithm validation, the final design to stabilize the Quad-rotor UAV flying aircraft.

Key Words:MEMS Sensor; Quaternion; STM32 Processor; Data Fusion; PID

- II -

四旋翼无人机设计与制作

目 录

摘 要 ................................................................................................................................ I Abstract ................................................................................................................................. II 1 绪论 ................................................................................................................................ 1

1.1 研究背景及意义 .................................................................................................. 1 1.2 国内外四旋翼飞行器的研究现状 ...................................................................... 1

1.2.1国外四旋翼飞行器的研究现状 .................................................................. 1 1.2.2国内四旋翼飞行器的研究现状 .................................................................. 3 1.3 本文研究内容和方法 .......................................................................................... 4 2 四旋翼飞行器工作原理 ................................................................................................. 5

2.1 四旋翼飞行器的飞行原理 .................................................................................. 5 2.2 四旋翼飞行器系统结构 ...................................................................................... 5 3 四旋翼飞行器硬件系统设计 ......................................................................................... 7

3.1 微惯性组合系统传感器组成 .............................................................................. 7

3.1.1 MEMS陀螺仪传感器 .............................................................................. 7 3.1.2 MEMS加速度计传感器 .......................................................................... 7 3.1.3 三轴数字罗盘传感器 ............................................................................... 8 3.2 姿态测量系统传感器选型 .................................................................................. 8 3.3 电源系统设计 .................................................................................................... 10 3.4 其它硬件模块 .................................................................................................... 10

3.4.1 无线通信模块 ......................................................................................... 10 3.4.2 电机和电机驱动模块 ............................................................................. 11 3.4.3 机架和螺旋桨的选型 ............................................................................. 12 3.4.4 遥控控制模块 ......................................................................................... 13

4 四旋翼飞行器姿态参考系统设计 ............................................................................... 15

4.1 姿态参考系统原理 ............................................................................................ 15 4.2 传感器信号处理 ................................................................................................ 16

4.2.1 加速度传感器信号处理 ......................................................................... 16 4.2.2 陀螺仪信号处理 ..................................................................................... 16 4.2.3 电子罗盘信号处理 ................................................................................. 17 4.3 坐标系 ................................................................................................................ 17 4.4 姿态角定义 ........................................................................................................ 18 4.5 四元数姿态解算算法 ........................................................................................ 19 4.6 校准载体航向角 ................................................................................................ 27 5 四旋翼飞行器系统软件设计 ....................................................................................... 29

5.1 系统程序设计 .................................................................................................... 29

5.1.1 姿态参考系统软件设计 ......................................................................... 29 5.1.2 PID控制算法设计 .................................................................................. 30

结论 ..................................................................................................................................... 32 参 考 文 献 ....................................................................................................................... 33

- III -

四旋翼无人机设计与制作

1 绪论

1.1

研究背景及意义

随着MEMS传感器、无刷电机、单片机以及锂电池技术的发展,四旋翼飞行器现在已经成为航模界的后起之秀。与固定翼飞行器相比之下四旋翼飞行器具有结构简单,控制起来非常方便,能够垂直起降,成本非常的低、稳定性也高,机动性非常强等特点。在民用可以代替有人机完成一些任务,在军事上有很强的战场生存能力。因此在这些领域应用广泛,如军事侦查、农林业调查、灾害检测、输电线巡查、玩具航模、航拍、气象探测等。四旋翼飞行器的飞行原理虽然简单,但是涉及到的知识面非常的广[1],从机体结构的设计、传感器滤波算法、控制系统的设计和软件的设计都需要理论的支持。本次设计针对四旋翼飞行器姿态控制系统进行更深入的研究,它的研究将推动中国四旋翼飞行器的研究发展,为四旋翼飞行器在环境保护、气象、火灾、侦查追踪等民用和军用领域实现产业化作出突出贡献。廉价并且高性能的飞行器的研究将会拥有巨大的经济效益,能够对我国的科研事业起到巨大的推动作用。

1.2 国内外四旋翼飞行器的研究现状

1.2.1国外四旋翼飞行器的研究现状

目前国外四旋翼飞行器的研究也是主要集中在飞行器姿态控制系统的新的理论的研究,比如:神经元网络控制算法、模糊自适应控制算法等。国外还在四旋翼飞行器的自主飞行以及多机协同运作等方面有很多研究。下面对一些四旋翼飞行器进行简单的介绍:

首先非常具有代表性的是美国Draganflyer公司研发出来的Draganflyer系列四旋翼飞行器[2],如图1.1所示。这种四旋翼飞行器主要使用碳纤材料制作,因其载重能力强能携带高清摄像机,因此主要用途为航拍。另外还有Parrot公司研发的AR.Drone飞行器也是非常具有代表性,如图1.2所示。AR.Drone可以用手机远程控制,使用MEMS高精度姿态传感器,并且配备多种传感器和摄像头,使AR.Drone可以非常轻松地进行飞行任务[3]。

德国在四旋翼飞行器研究方面也具有较高的水平,德国的MicroDrones公司推出的一款四旋翼飞行器MD4-200[4],如图1.3所示。该型号飞行器采用全碳纤工艺制作,负载能力强,而且非常省电。该型号飞行器配备有GPS卫星导航系统和摄像设备,

–1–

四旋翼无人机设计与制作

能够很轻松的在室内和室外执行航拍任务。

图1.1 DraganflyerX4四旋翼飞行器 图 1.2 AR.Drone飞行器

现在许多科研院所已开始开展四旋翼飞行器相关科研项目,主要是针对四旋翼飞行器系统建模的研究和四旋翼飞行器飞行功能的实现。美国宾夕法尼亚大学GRASP实验室设计出了一种能够编队飞行的四旋翼无人机飞行器,在这些飞行器上都安装有光源,通过安装在室内墙壁上的摄像头设备进行拍摄,从而确定飞行器的空间位置并且对其进行编队飞行控制操作,如图1.4所示。

麻省理工学院设计的一款可以在室内进行地图测绘,定位和壁障的四旋翼无人飞行器系统,该系统通过激光雷达对周围环境进行测量,而且能够自动生成三维地图数据,并且根据周围的环境进行自主壁障和飞行路径规划,可以用于为危险环境的探测和搜救,如图1.5所示。

图 1.3 德国MD4-200四旋翼飞行器 图 1.4 宾夕法尼亚大学四旋翼编队飞行

–2–

四旋翼无人机设计与制作

1.2.2国内四旋翼飞行器的研究现状

现今四旋翼飞行器的研究在国内逐渐发展壮大并且已经形成产业。目前国内己经有许多公司(如Dj大疆公司)将四旋翼飞行器应用于商业化,如图1.6所示。

图 1.5 麻省理工学院四旋翼飞行器 图 1.6 大疆四旋翼飞行器

目前对四旋翼飞行器的研究主要集中在以下几个方面:

(1)四旋翼飞行器的姿态控制。四旋翼飞行器研究的最主要技术难点在于对飞行姿态的控制。因其旋翼多,因此四旋翼飞行器比传统的直升机控制起来复杂。目前该领域的研究方向主要集中在飞行器的数学建模、控制算法和滤波算法。目前主要的研究算法有刚体旋转理论、非线性滤波法、四元数、捷联惯导算法、PID控制算法、模糊自适应控制等。

(2)适合于四旋翼飞行器的新的传感器技术的发展,国内外逐渐出现了通用的整合于一体的传感器模块,例如MPU6050传感器就是把加速度计和陀螺仪集成在一起。

(3)电机和电池领域的发展。近些年来,无刷电机和空心杯电机的进一步普及和应用于四旋翼飞行器上,四旋翼飞行器的动力得到了很大程度的提高。锂电池和燃料电池的出现和应用大大增加了飞行器的续航能力。

(4)GPS的发展。随着卫星定位技术的发展壮大,GPS也逐渐应用于旋翼飞行器,人们可以不用害怕飞行器故障之后会不会找不到,因为我们可以用GPS进行卫星定位,而且还可以设置航点,实现飞行器的自主飞行。

(5)无线传输模块的发展。现如今无线传输可以应用的范围越来越广泛,蓝牙、WIFI等无线传输方式越来越被普遍应用到飞行器上,从而实现手机的遥控控制。

–3–

四旋翼无人机设计与制作

1.3 本文研究内容和方法

本文研究基于MEMS传感器的姿态参考系统,通过对姿态测量传感器数据的分析,设计出了有效去噪的滤波方法;通过大量的查找资料对姿态解算算法和数据融合算法有了更深的理解,最后应用于设计的飞行控制器上实现了姿态角的测量。最后通过大量的实验验证了它们的准确性,实验数据和曲线验证了该姿态参考系统能够稳定的工作,具有很好地工作性能。

本文一共分为五章,主要内容安排如下:

第一章绪论部分主要介绍了该项目的研究背景及意义、四旋翼飞行器在国内外的研究现状和发展趋势。

第二章主要介绍了四旋翼飞行器的飞行原理和系统结构框架。

第三章详细介绍了四旋翼无人机控制系统的硬件设计的工作。介绍了MEMS传感器的原理、特性和型号的选择和硬件电路图。飞行器控制芯片选择STM32,外围电路包括有姿态测量系统、电源模块、无线通讯、串口通讯、电机驱动、遥控器控制电路、GPS模块。

第四章说明了姿态参考系统的核心算法----捷联惯性导航算法的研究和实现过程。

第五章针对软件实现部分进行了介绍,给出了编程的软件流程图和串级PID控制和定高控制方法。

最后对本次设计进行了总结,提出了不足之处并对今后的研究工作进行了展望。

–4–

四旋翼无人机设计与制作

2 四旋翼飞行器工作原理

2.1 四旋翼飞行器的飞行原理

四旋翼飞行器有两种模式,也就是X字模式(如图2.1所示)和十字模式(如图2.2所示)。其实这两种模式差别不大,到X模式使用广泛,因此我们采用X字模式。四旋翼飞行器的四个电机对称分布在各个轴上,并且同一条轴线上电机的旋转方向要保证相同,相邻的电机旋转方向相反[5]。如果电机1、 3按照逆时针方向旋转的话,电机2 、4就要按照顺时针方向旋转,这样做为了克服反扭矩的影响。我们要通过控制4个电机的转速来完成飞行器俯仰、横滚、偏航等动作。

y 14 1yx 2x4 233

图 2.1 X型四旋翼飞行器模型 图 2.2 十字型四旋翼飞行器模型

2.2 四旋翼飞行器系统结构

四旋翼无人机采用模块化设计,如图2.3所示。分别由控制模块、姿态测量系统、电源供电系统、无线通信模块、GPS卫星定位系统、遥控器控制模块、电机驱动模块、串口通信模块、地面站系统。

四旋翼飞行器控制器的核心任务是姿态的测量,它的作用是为飞行器控制系统提供实时、精确的飞行状态测量数据。常见的四旋翼飞行器人们大多是采用基于MEMS传感器来测量飞行器姿态数据[6]。但是这些初始的传感器数据并不能直接应用于姿态解算,需要对传感器数据进行滤波处理,并且需要对陀螺仪漂移问题进行实时的数据

–5–

四旋翼无人机设计与制作

补偿,这样做能够有效提高飞行器姿态测量精度,确保控制系统的姿态角的准确性和稳定性。

无线模块地面站遥控接收器遥控器SPI三轴加速度计和三轴陀螺仪TIMER电子调速器PWM输出IICSTM32f103USART无刷电机三轴数字罗盘GPS超声波传感器USART电源模块电源系统

图 2.3 四旋翼飞行器系统结构框架

四旋翼飞行器的主控板选择的是意法半导体公司生产的STM32f103zet芯片,STM32系列的单片机是基于Cortex-M3内核的处理器,功耗低,处理速度非常快,最高工作频率可达72MHz,7通道DMA控制器,支持定时器、ADC、SPI、IIC、USART等外设,多达112个I/O口,8个Timer定时器, 5个串行USART接口,3个SPI接口,2个IIC接口[7]。

电源模块采用11.1V锂电池外部供电,连接电子调速器为控制器提供5V电压。控制器上还有3.3V稳压芯片,为控制芯片供电。

遥控器控制模块,控制器对遥控器数据进行捕获处理该部分我们通过对STM32定时器进行输入捕获配置,捕获接收机发出的PWM信号,把该信号转化成控制量在经过PID控制把输出量给四个电机,进而控制飞行器的动作。

GPS卫星定位导航系统,配合上位机在上位机上输入一些GPS坐标点,控制系统就会自动生成航线,并且能够从GPS系统中读取定位数据[8],并且与存储的定位坐标做实时的对比,然后修正航线,将定位坐标显示在上位机上,处理并显示当前位置。

–6–

四旋翼无人机设计与制作

3 四旋翼飞行器硬件系统设计

3.1 微惯性组合系统传感器组成

3.1.1 MEMS陀螺仪传感器

陀螺仪是一种能用来维持方向与角速度(获取角速度)的装置,设计原理是角动量守恒。简单的说就是一个高速旋转的物体的旋转轴所指的方向在不受外力影响时不会改变。这种用来保持方向而制造出来的装置就叫陀螺仪[9],如图3.1所示。陀螺仪多用于导航定位系统中,姿态控制系统中多采用三轴陀螺仪,如图3.2所示。

图3.1 陀螺仪 图 3.2 MEMS三轴陀螺仪

3.1.2 MEMS加速度计传感器

能将物体加速度的信息转换为电信号的传感器称之为加速度传感器。在姿态控制系统中,加速度传感器用来测量与重力方向的夹角。当应用到实际中时我们就可以理解加速度传感器输出的信号是当地坐标系下加速度在导航坐标系下投影。加速度计能够在没有加速度存在的条件下可以感应重力产生的加速度,然而在有加速度存在时,根本无法测量出姿态角,需要陀螺仪传感器的数据相结合,才能够实现动态条件下的姿态测量[10]。

–7–

四旋翼无人机设计与制作

3.1.3 三轴数字罗盘传感器

数字电子罗盘也叫指南针,顾名思义指南针是用来指示方向的。传统罗盘通过磁针来感应地磁场方向,电子罗盘通过磁阻传感器测量地磁方向信息,再将所测信息转换为信号输出。数字电子罗盘的优势在于它克服了只能够在水平面使用的缺点,这种数字电子罗盘内部有倾斜补偿装置,这个装置一般是由加速度传感器来完成,如果在完全动态的情况下,也需要陀螺仪检测姿态角,通过这个角度和磁场方向信息可以补偿得到准确的角度信息,而姿态测量系统中的电子罗盘实际上就是三轴数字电子罗盘。

3.2 姿态测量系统传感器选型

目前市场上出现的一款InvenSense公司的MPU6050芯片内部集成了三轴加速度计和三轴陀螺仪,这样做不仅消除了焊接电路时易造成加速度计和陀螺仪之间的对准误差的问题,而且因为芯片内部结构上有数字可编程低通滤波器。所以在飞行器经受较大震动的时候,可以用软件设置适当频率的低通滤波器,滤掉高频震动,这种方法很有效的减少了四旋翼机身震动对姿态测量的影响。因此MPU6050被广泛应用于姿态控制系统之中,其特征如下:

(1)三轴角速度传感器具有±250、±500、±1000 与±2000(°/s)测量范围

[11]

;三轴加速度量程控制范围有±2g、±4g、±8g、和±16g。

(2)具备较低功耗:芯片供电电压VDD 为2.5V±5%、3.0V±5%、3.3V±5%[12];

陀螺仪工作电流5mA,待机电流为5uA;加速度计工作电流为500uA,在10Hz低功耗模式下仅需40uA的电流[13]。

(3)陀螺仪和加速度计都具备16 位ADC 同步采样功能。

(4)IIC接口传输频率可高达400KHz,内建频率发生器在所有温度范围只有1%频率变化。

综合MPU6050特性,我们采用如图3.3所示的电路读取三轴加速度和三轴陀螺仪数据。

–8–

四旋翼无人机设计与制作

图 3.3 MPU6050电路图

HMC5883传感器是三轴数字罗盘,它可以用来测量四轴飞行器所处位置的三轴磁场信息,该传感器内置了三轴磁阻模块和放大采样电路,直接输出数字信号,用来测量航向角并进行姿态解算,HMC5883电路图如图3.4所示。HMC5883的特点如下: 1. IIC 数字量输出总线接口,设计使用简单,尺寸非常小。 2.有较高的测量精度,内置12位 A/D转换。

图 3.4 HMC5883电路图

4. 拥有自动校准功能,简化了应用的步骤。

5. 内置有自测试电路,量产测试非常方便,不需要增加额外的高昂测试设备[14]。 6. 功耗较低,供电电压只需要1.8V,睡眠模式功耗-2.5uA,测量模式功耗-0.6mA。

–9–

四旋翼无人机设计与制作

3.3 电源系统设计

为了满足飞行控制系统的需要,电源系统为飞行控制器和功能模块提供了12V、5V和3.3V电压,电路设计如图3.5所示。选择12V的锂电池作为供电电源,通过稳压芯片将12V电压降为5V,为GPS模块、超声波传感器、接收机等提供供电电源;然后通过AMS1117_3.3稳压芯片再把5V电压降为3.3V,为飞行控制主板、姿态测量传感器和无线通信模块提供电能。

图 3.5 电源系统电路图

3.4 其它硬件模块

3.4.1 无线通信模块

该模块为上位机和控制器建立了联系。通过两块NRF24L01进行数据的传输,控制器将姿态和高度等信息传输至地面站,地面站将位置信息和导航信息告诉控制器,从而达到可控的要求。NRF24L01的工作频段为2.4 ~ 2.5GHz,而且具备自动重发功能,有6个数据传输通道,最大传输速率高达2Mbits[15]。STM32主控板可以通过SPI接口对NRF24L01的寄存器进行配置,无线通信模块的电路设计图,如图3.6所示。

–10–

四旋翼无人机设计与制作

图 3.6 NRF24L01电路图

3.4.2 电机和电机驱动模块

我们常用的直流电机按结构及工作原理可以划分为无刷电机和有刷电机。无刷电机是航模电机的主流选择,因为它力量大而且耐用。小型的四旋翼飞行器一般选用空心杯电机,属于有刷电机一类。由于我们设计的是大型四旋翼飞行器,故采用的是无刷电机。

无刷电机根据厂商的不同,种类也是非常的多,市面上的主要有朗宇、新西达、银燕等品牌。在这些无刷电机中口碑最好的就是朗宇电机,用的人非常的多,因此采用朗宇无刷电机。

四旋翼飞行器所用的无刷电机主要有电机尺寸和电机KV值两个参数。电机尺寸指的是电机转子的直径和高度,电机KV值是指外加1V电压时对应的每分钟空载转速。根据参数设置最后选择采用朗宇A2212、KV1400无刷电机。电机实物图,如图3.9所示。

无刷电机的驱动就是俗称的电子调速器也称电调,如图3.10所示。黑色和红色的是11.1V电源线,红色接电源正极,黑色接电源负极。右边三根线和电机的三根线相连,如果转向反了,只需将其中任意两根线互换就可以。白红黑三根线是和电调相连的,白色为信号线,红色为控制板提供5V供电电源,黑色的线接控制器的GND。

–11–

四旋翼无人机设计与制作

图 3.9 朗宇无刷电机 图 3.10 电子调速器实物图

3.4.3 机架和螺旋桨的选型

对于机架的选择,差的机架会使姿态传感器读取到的数据噪声较大,加大四旋翼飞行器在飞行过程中的不稳定性,因此选用结构稳定,质量较轻的碳纤机架,这样很大程度上也提高了飞行器的载重。机架实物图如图3.11所示。

螺旋桨是由电机转动带动为四旋翼飞行器提供升力的。螺旋桨分为正反桨,顺时针方向转的电机需要配正桨,逆时针转的电机需要配反桨。桨的选型需要结合所选的电机来配备,从桨的型号我们可以读出桨的直径和角度,例如1047中的前两位10表示桨的直径单位是英寸,后两位代表桨的角度。的螺旋桨,同样转速情况下产生的升力就会越大,也就需要更大的电机驱动,这就需要根据电机的大小去选择桨的型号。在设计时选用1047的桨,桨的实物图如图3.12所示。

–12–

四旋翼无人机设计与制作

图 3.11 四旋翼飞行器机架 图 3.12 1047正反桨

3.4.4 遥控控制模块

该遥控器控制模块是由一个7通道的遥控器和配套的接收机组成的,接收机上的油门、副翼、升降舵、方向舵通道分别与控制器上的接口相连。控制器能通过定时器的捕获功能,捕获到遥控器通过接收机传出的控制信号,遥控器就是这样控制四旋翼飞行器的飞行动作的。遥控器和接收机的实物图如图3.13所示。

图 3.13遥控器和接收机实物图

–13–

四旋翼无人机设计与制作

–14–

四旋翼无人机设计与制作

4 四旋翼飞行器姿态参考系统设计

4.1 姿态参考系统原理

姿态参考系统是利用惯性导航器件来测量载体姿态角的一种惯性导航系统。因为MEMS传感器的数据带有噪声,因此姿态参考系统需要对MEMS传感器的测量信息进行滤波处理。然后对滤波信号进行姿态解算。由于姿态传感器各自特点的不同,所以需要对每个传感器信号进行滤波然后进行数据融合,以此来提高测量的精度和系统的动态特性。姿态参考系统的原理图,如图4.1所示。

三轴加速度计低通滤波/均值滤波四元数/欧拉角姿态解算三轴陀螺仪卡尔曼滤波/均值滤波互补滤波 俯仰角 横滚角 航向角三轴电子罗盘去极值滤波航向解算 图 4.1 姿态参考系统原理图

从MEMS传感器采集到的数据传输到控制器处理的过程中会受到很多因素的干扰,造成传输误差,为了减小误差,提高检测的精度就需要用滤波器进行数据处理。滤波器可以通过硬件实现,也可以通过软件实现,具有较大的灵活性[16]。

从加速度传感器提取到的信号经过姿态解算后的姿态角信号在和陀螺仪数据进行融合的过程中以低频信号为主的。根据这一特性,加速度传感器的输出信号可以通过低通滤波器或者均值滤波器提高信噪比。

陀螺仪信号具有高动态的特点,它的信号噪声主要为高斯白噪音,我们可以通过卡尔曼滤波器来滤除这种高斯白噪声。因为需要融合加速度传感器获得的姿态角信号,所以选择均值滤波来去除噪声。

电子罗盘传感器测量的是地磁强度,我们都知道物体在运动时地磁强度变化慢,它在姿态测量系统中属于低频信号,因此采用均值滤波来滤除噪声信号。

–15–

四旋翼无人机设计与制作

欧拉角和四元数方法都是针对陀螺仪姿态测量进行处理的数学方法,可以有效地解算处姿态角。把解算出来的姿态角进行数据融合。考虑到高动态下陀螺仪测得的数据解算出的姿态角比较准确因此在高动态条件下选用陀螺仪信号,低动态下加速度信号解算出的姿态角更稳定因此在低动态条件下选择加速度信号。

4.2 传感器信号处理

4.2.1 加速度传感器信号处理

加速度传感器的输出信号主要表示直线加速度大小和与重力方向的夹角[17]。 常用的数字滤波器有很多种,例如:限值滤波、递推平均滤波法(又称滑动平均滤波法)、算术平均滤波法、中位值滤波法和中位值平均滤波法等[18]。

在实际的姿态解算中一般采用低通滤波器或者均值滤波器去除高频噪声干扰信号。均值滤波因其具备低通滤波的特性并且计算简单,因此选用均值滤波来处理加速度信号。

4.2.2 陀螺仪信号处理

陀螺仪信号滤波要选择卡尔曼滤波算法。对于卡尔曼滤波器,首先要清楚系统状态的描述方法,系统状态的更新方法和系统测量值的更新方法,从卡尔曼滤波算法的数学公式,我们可以归纳出它的核心思想:首先根据系统上一次得来的最优值计算出当前的估计值和协方差,再根据协方差大小计算出卡尔曼增益的大小,最后根据当前估计值和测量值计算出当前最优值和协方差。下面分步建立卡尔曼滤波方程式: 预估计最优值方程:

X(k|k-1) = A(k,k-1) * X(k-1|k-1) + B(k) * U(k) (4-1) 上式中,X(k|k-1)表示的是根据k-1时刻的最优值计算出的k时刻估计值;X(k|k-1)表示k-1时刻的最优值;A(k,k-1)是状态转移矩阵;B(k)是输入控制加权矩阵;U(k)表示k时刻的输入控制信号,这些参数需要根据具体的应用场合进行设计。 预估计最优值协方差:

P(k|k-1) = A(k,k-1) * P(k-1|k-1) * A(k,k-1) + Q(k) (4-2) 其中,P(k|k-1)表示预估计最优值X(k|k-1)对应的协方差;P(k-1|k-1)表示X(k-1|k-1)对应的协方差,表示了对预测值的信任度;Q(k)表示k时刻系统过程的协方差,即对上一次测量估计值的信任程度,Q矩阵值越大表示信任度越低,需要根据具体应用进行设计。P和Q矩阵的区别在于Q矩阵是根据模型直接得到的,P矩阵是算法过程中通过计算获得的。

计算卡尔曼增益矩阵:

–16–

四旋翼无人机设计与制作

????0?nsinmsin??22?100????????2cos?nsin?CbR??0100?lsin??2?22?????001??????msinlsin0???22?? (4-12)

??222?2?2??(m?n)sinlmsinlnsin??222???????2?lmsin2?(l2?n2)sin2mnsin2??222??2?2?222??lnsinmnsin?(m?l)sin??222???令

??q?cos?02??q?lsin??12 (4-13) ??q?msin??22???q3?nsin?2并以q0、q1、q2、q3构造四元数:

Q?q0?q1i0?qj2?0qk3?c(?m0os?li0j?nk02?cos??2?uRsin?2)s0in2 (4-14)

?可得如下结论:

(1)四元数 Q?cos?2?uRsin?2描述了刚体的定点运动[31], Q包含了等效旋转的

全部信息,uR为旋转瞬轴的旋转方向,?为转过的角度。

(2)四元数可以确定出b系至R系的坐标变换矩阵。将(4-8)代入(4-7)得:

22?1?2(q2?q3)2(q1q2?q0q3)2(q1q3?q0q2)???2)2(q2q3?q0q1)? (4-15) CbR??2(q1q2?q0q3)1?2(q12?q32??2(q1q3?q0q2)2(q2q3?q0q1)1?2(q12?q2)??–22–

四旋翼无人机设计与制作

222?q12?q2?q3?(l2?m2?n2)sin2由于Q?q0?2?1,所以可进一步得出如下结论:

222?q0?q12?q2?q3? CbR??2(q1q2?q0q3)?2(q1q3?q0q2)?2(q1q2?q0q3)222q0?q12?q2?q32(q2q3?q0q1)2(q1q3?q0q2)??2(q2q3?q0q1)? (4-16) 222?q0?q12?q2?q3?如果将向量rR和rb看作零标量的四元数,则rR和rb间的变换关系可采用四元数乘法表示:

rR?Q?rb?Q*

该式称为坐标变换的四元数乘表示方法,其中Q为R系至b系的旋转四元数。证明如下:

?0?Q?rb?Q*?QQ*?b??r?q1q2q3??0??q0?q1?q2?q3??q0?q???q??rb?q?qqq?qq10321032????x? ?? (4-17) b?q2q3?????q0?q1?q2q3q0?q1ry??????q0???q3?q2q1q0??rzb??q3?q2q1000????0???q2?q2?q2?q2??rb?2(qq?qq)2(qq?qq)012312031302??x???2222??2(q1q2?q0q3)q0?q1?q2?q32(q2q3?q0q1)??ryb??2222??b??2(qq?qq)2(qq?qq)q?q?q?q130223010123??rz??对比式(4-11)知上式矩阵中右下角的3?3方块即为CbR,所以式(4-12)可写成:

??000???0?0?????? ??rR???b?CbR?????r??????即

rR?CbRrb

该式称为坐标变换的矩阵表示法。所以四元数乘法表示法和矩阵表示法是等价的。

如果参考坐标系R是导航坐标系n,刚体的固联坐标系b为机体坐标系,则坐标变换矩阵CbR就是姿态矩阵Cbn,而由姿态矩阵可计算出姿态角[32]。

–23–

四旋翼无人机设计与制作

?T11T12T13??,由于在坐标系旋转的过程中坐标系始终保持直角坐标系,所TTT记Cbn??212223????T31T32T33??以Cbn为正交矩阵

?cos?cos??sin?sin?sin?bCn=??cos?sin????sin?cos??cos?sin?sin?cos?sin??sin?sin?cos?cos?cos?sin?sin??cos?cos?sin??sin?cos??? sin??cos?cos????T11T21T31?? bCn?(Cbn)T??TTT122232????T13T23T33??对比上式可得姿态角

?????arcsin(T32)?T ???arctan(?31) (4-18)

T33??T???arctan(?12)T22?因此,四元数Q包含了所有的姿态信息,姿态解算实际上是如何计算四元数Q。下面来介绍如何计算四元数: (1)初始化四元数

假设当前的坐标系为地理坐标系,则四元数列向量

q?[q0,q1,q2,q3]T=[1,0,0,0]T

(2)从传感器获取载体加速度和角速度

从MPU6050读取三轴加速度计的测量值即加速度accx、accy、accz,陀螺仪的测量值即角速度?x,?y,?z。

(3)将加速度计得出来三个轴的加速度值accx、accy、accz转化为三维的单位向量得到:

–24–

四旋翼无人机设计与制作

?accx?ax??accx2?accy2?accz2?accy? ?ay? (4-19)

222accy?accy?accz??accz?a?222?zacc?acc?accyyz?(4)将地理坐标系的重力向量转换到机体坐标系可得三轴的重力量vx,vy,vz:

22222(q1q2?q0q3)?vx??q0?q1?q2?q3?v???2(qq?qq)q2?q2?q2?q212030123?y???2(q2q3?q0q1)?vz????2(q1q3?q0q2)

?2(q1q3?q0q2)????2(qq?qq)2301??2222??q0?q1?q2?q3??2(q1q3?q0q2)??0???2(q2q3?q0q1)???0??2222?q0?q1?q2?q3???1?? (4-20)

(5)将地理坐标系转换到载体坐标系下的重力向量和载体坐标系测量的加速度向量外积,得到两坐标系的误差[33]:

?ex??ax??vx??ayvz?azvy??e???a???v???av?av? (4-21)

xz??y??y??y??zx???ez????az????vz????axvy?ayvx?(6)陀螺仪误差是导致机体坐标系误差的根本原因,因此用两坐标系误差的PI来补偿陀螺仪使得机体坐标系更加准确。

??xin???x??et??????kp?e? ?yint???y?????t??zin????z???e??e?x??ki?ey?????e?z???x??y (4-22) ?z?其中:kp和ki是调整参数,在实际调试中确定。其中ki可以等于0,kp可以以0为初始值,0.01步进调节。 (7)四元数姿态更新方程[34]。

四元数微分方程为:

?=1Qω (4-23) Q2其中Q?q0?q1ib?q2jb?q3kb,ω?0??xib??yjb??zkb 将上式写成矩阵形式

–25–

四旋翼无人机设计与制作

?0??0?q?q?x?1?1????? ?q?2?2??y????q??3???z??x0??z??y?z0??x?y??z??q0??q???y???1? (4-24) ?x??q2????0???q3?对四元数一阶微分方程进行一阶毕卡算法可得:

?t?q?q?(?q??q??q?)01xint2yint3zint?02??q?q?(q??q??q?)?t10xint2zint3xint?12 (4-25) ??q?q?(q??q??q?)?t20yint1zint3xint?22??t?q3?q3?(q0?zint?q1?yint?q2?xint)?2(8)对四元数进行规范化处理,于是得下式4-21:

??q0????q1??? ??q??2???q3???q0q02?q12?q22?q32q1q02?q12?q22?q32 (4-26)

q2q02?q12?q22?q32q3q02?q12?q22?q32(9)以上得到的新的四元数代表完成了一次四元数的运算,将此四元数回到开头,将旧的四元数更新为新四元数,作为下一次四元数运算的初始数,再从(1)开始下一次的四元数运算[35]。与此同时将新的四元数更新规范化后转化成三个欧拉角得下式(4-22),完成了姿态的初步运算[36]:

?????arcsin(2(q2q3?q0q1))?2(qq?qq) ???arctan(?21232022) (4-27)

q0?q1?q2?q3??2(qq?qq)???arctan(?21222032)q0?q1?q2?q3?–26–

四旋翼无人机设计与制作

4.6 校准载体航向角

通过三轴数字电子罗盘可以校准陀螺仪积分获得的航偏角以消除累计误差。如果电子设备干扰强烈的情况下需要暂停数字罗盘的数据融合[37],因为这样测到的数据误差非常的大。对地磁传感器常用的校准方法之一是平面校准法[38]:使用数字罗盘前,对其进行初始化,然后进行磁场校准,将传感器水平放置并旋转一周得到新的圆周圆心位置((xmax?xmin)/2,(ymax?ymin)/2) [39]。这是对水平的xy平面的校准,校准前后对比如图4.4所示。

图 4.4 xy平面校准前后对比

同理需要对竖直平面xz进行校准,校准前后的对比图,如图4.5所示。

图 4.5 xz平面校准前后对比

bHb???HxbHyRHzb?在导航坐标系R系各轴的分量HR???,?HxTRHyT

当载体静止时,设地球磁场强度H在载体坐标系b系各个轴的分量为

HzR?根据 ?,

HR?CbRHb可得:

–27–

四旋翼无人机设计与制作

?HxR??cos??R?? ?Hy???0?HzR?????sin?sin?sin?cos??sin?cos?b??cos?sin???Hx??Hb? (4-28) sin???y?b?cos?cos??Hz????R

将4-22式求得的?、?代入上式,即可求出HxR和Hy。航向角?可由式4-24得

出:

??arctaHRHnyR x–28–

(4-29)

四旋翼无人机设计与制作

5 四旋翼飞行器系统软件设计

5.1 系统程序设计

5.1.1 姿态参考系统软件设计

姿态参考系统的软件部分主要是对MEMS传感器数据和三轴数字电子罗盘传感器的数据进行处理和数据融合,图5.1给出了姿态参考系统的软件流程图。

开始系统初始化初始化IIC接口初始化MEMS传感器初始化数字电子罗盘读取传感器ID是否正确?Y配置MEMS传感器参数N配置地磁传感器参数读取加速度数据读取陀螺仪数据读取地磁传感器数据低通滤波or平均滤波卡尔曼滤波去极值滤波四元数姿态结算姿态结算互补滤波输出姿态角结束

图 5.1 姿态参考系统程序流程图

–29–

四旋翼无人机设计与制作

通过软件流程图可以清楚地看到,系统首先完成MCU内部初始化的工作,即配置STM32使用到的外设,包括时钟系统、NVIC中断控制器、USART串口通信、I2C接口、定时器;然后进行硬件初始化以及系统的姿态解算,采用模块化的设计,具体包括以下4个部分:(1)初始化硬件;(2) MEMS惯性测量单元的数据采集模块;(3)多传感器数据融合的姿态解算模块;(4)姿态信息输出模块。

首先开启定时器中断,在2.5ms的计时中断实现通过I2C接口读取MEMS传感器和三轴数字电子罗盘的测量数据,根据传感器的特点进行滤波后,再利用初始校正所得到的校正数据对读取的数据作校正,校正完后转换成实际的物理量,再对其做加权平均减小误差,然后进行四元数姿态解算和地磁数据校准,最后进行数据融合输出姿态角信息。

5.1.2 PID控制算法设计

根据四旋翼飞行器的工作原理知,因为其结构对称,所以改变电机的转速差能够实现对飞行器的姿态控制,而飞行器的位置控制要靠电机的总升力和飞行器姿态改变的[40]。所以,将飞行控制系统分为位置控制系统和姿态控制系统分别进行控制设计。由于飞行器姿态会直接影响到飞行器的位置,认为飞行器姿态控制器为内环控制器,位置控制器为外环控制器。这种数字式PID控制有位置式PID控制算法和增量式PID控制算法两种形式,这里采用的是增量式PID算法[41],其表达式为:

k?e(k)?Ik?(ek)?Dk[?(ek)??(e?k??u(k)?P ? (5-1)

?1)?u(k)??u(k)?u(k其中,kP为比例系数,kI为积分系数,kD微分系数。u(k)是第k次采样时刻计算的PID输出值,e(k)是第k次采样时刻控制器输入的偏差。

?e(k)?e(k)?e(k?1),?e(k?1)?e(k?1)?e(k?2)

四旋翼飞行器的姿态可分为俯仰角、横滚角和偏航角,针对每一个自由度都是一个二阶系统[42]。对每个姿态角都进行PID控制,这样就可以将复杂的非线性多变量输入多变量输出控制问题化简为两变量输入单变量输出的问题[43]。如式5-2所示。

?P1???P2? ??P3??P??4PP??P??Ph??PP??P??Ph?? (5-2)

PP??P??Ph??PP??P??Ph??–30–

四旋翼无人机设计与制作

这里P1、P2、P3、P4代表的是控制四个电机所需要的PWM值,Ph表示的是飞行器停留在空中需要的PWM值,可以由遥控器输入或者自动高度修正,P?、P?、P?分别表示的是俯仰角偏差、横滚角偏差和航向角偏差、及其变化率所需的PWM值,把PWM限制在一定的范围之内。

P?、P?、P?采用串级PID控制算法,内回路是角速度控制回路,外回路是角度控制回路。三个角度的控制规律是一致的,以俯仰角的控制为例,如图5.2所示,其中?为控制飞行器的期望俯仰角,?和??分别表示飞行器俯仰角角度和俯仰角角速

r度。?1是外环PID的输出值,?out是内环PID控制器的输出值,且?out?P?。

期望的欧拉角? +r +角度PID控制-??1-??角速度PID控制?out电机四旋翼飞行器姿态

图 5.2 串级PID控制图

首先需要求出四旋翼飞行器姿态误差信号也就是期望值的姿态角与当前获取到的姿态角的差值,然后通过串级PID控制算法求得各个电机的调整量,将调整信号传递给四个旋转电机,改变电机的转速来控制整个系统的姿态,使其姿态误差始终趋于最小,形成双级闭环回路控制系统。

–31–

本文来源:https://www.bwwdw.com/article/8sh5.html

Top