张权权+ 王立成+ 李浩
【摘 要】利用惯性传感器MPU6050和STM32微控制器设计一种微型四旋翼飞行控制器,采用双闭环PID控制飞行器的姿态,系统稳定,抗干扰能力强。
【关键词】四旋翼飞行器;惯性传感器;PID控制
0 引言
微型四旋翼飞行器不仅具有体积小、结构简单、成本低廉等优点,而且能够在狭小的空间内垂直起降、定点悬停,能够适应各种复杂环境,具有广阔的应用前景。
但是,四旋翼飞行器是一个典型的非线性、强耦合、多变量的欠驱动系统[1],并且在飞行过程中容易受到外界的干扰因素影响,使得飞控系统的设计变得尤为困难。因此,本文采用STM32处理器为核心控制器,结合MPU6050陀螺仪加速度计、2.4G无线通信模块,设计双闭环PID控制算法,实现微型四旋翼飞行器的稳定飞行。
1 系统总体设计
四旋翼飞行器总体结构如图1所示,由主控器模块、电池组供电模块、无线通信模块、动力输出模块和传感器模块构成。操控者通过遥控器向飞行器发送飞行指令,飞行器的主控芯片STM32F103C8T6接收到飞行指令后,通过IIC总线采集陀螺仪、加速度计芯片MPU6050以及GPS芯片 的实时信息,经过滤波算法后进行飞行姿态算解,使用闭环PI算法计算四个电机的PWM占空比,最终通过控制四个电机的转速实现飞行器姿态的控制。
2 系统硬件设计
2.1 系统主控制器
飞行器选用意法半导体(ST)公司的STM32F103C8T6作为主控芯片,该芯片采用Cortex-M3内核,主频最高72MHz,内置64KB程序存储器,20KB数据存储器,3个通用定时器,1个高级定时器,2个12位10通道ADC,32个通用IO口,支持SPI、IIC、UART、USB、CAN等总线接口。满足飞控系统的各项要求。
2.2 陀螺仪与加速度计传感器模块
陀螺仪与加速度计传感器采用MPU6050,该芯片集成了3轴陀螺仪和3轴加速度计。陀螺仪可测范围为±250dps,±500dps,±1000dps,±2000dps;加速度计可测范围为±2g,±4g,±8g,±16g。使用IIC总线和主控芯片进行通信。
3 系统软件设计
3.1 飞控算法设计
整个飞控算法包括飞行姿态算解、姿态控制。
姿态算解就是根据MPU6050的陀螺仪和加速度计分别获得获得三轴转动的角速度和三轴方向上的加速度,求解四旋翼飞行器的方位和姿态。MPU6050内部集成了数字运动处理(DMP)单元,利用卡尔曼滤波对六轴数据进行数据融合产生四元数。主控芯片通过IIC总线直接从MPU6050的数据缓存中读出四元数,利用公式(1)把四元数转化为欧拉角[2-3],从而获得飞行器的当前姿态。
3.2 双闭环PID控制
四旋翼飞行器在飞行过程中不可避免的会受到外部的干扰,因此,采用双闭环串级控制算法实现飞行器飞行姿态的调整和控制,提高系统的抗干扰能力,控制框图如图2所示。内环对飞行器的角速度进行PID控制,外环对飞行器的姿态角进行PID控制。
4 实物图片
微型四旋翼飞行器的实物如图3所示。
5 結论
微型四旋翼飞行器在硬件上采用高性能的STM32F103C8T6和MPU6050芯片,结构简单可靠。在软件上使用MPU6050芯片的DMP功能直接读取飞行器的姿态结合双闭环PID控制飞行器姿态,获得更稳定的飞行姿态控制。
【参考文献】
[1]齐书浩.微型四旋翼飞行器总体设计及其运动控制[D].上海:上海交通大学,2013.
[2]陈哲.捷联惯导系统原理[M].北京宇航出版社,1986.
[3]贾瑞才.基于四元数EKF的低成本MEMS姿态估计算法[J].传感技术学报,2014(1):90-95.
[责任编辑:朱丽娜]