基于STM32单片机对飞行器控制技术的研究
   来源:中国科技博览     2021年07月19日 17:28

余婷++庄燕青++林朋雨++张容川++赵春阳

[摘 要]文章介绍了基于STM32单片机的X形四旋翼飞行器飞行控制系统。通过对角速度进行方位余弦计算及与加速度进行互补滤波,得到飞行器的飞行姿态,最终通过PID控制算法控制飞行器的四个电机的推力,使飞行器保证稳定并按照遥控器指令进行飞行。

[关键词]四旋翼飞行器;STM32;方位余弦;互补滤波

中图分类号:V249 文献标识码:A 文章编号:1009-914X(2017)05-0096-01

1 飞行器研究背景

四旋翼飞行器较普通的直升机有机械结构简单,易于制作、易于小型化、同等规模下载重量大等优点,在最近2-3年中逐渐得到关注。但是,由于四旋翼飞行器自身特性为一个多变量耦合非线性不稳定系统,基本上无法由人直接操控,必须加入自动控制系统来辅助稳定飞行姿态。所以,四旋翼飞行器自动飞行控制系统性能的好坏直接关系着飞行器飞行性能及操控性。所以本设计就飞行控制系统的算法以及如何提高控制性能进行研究。

2 飞行器研究方法

飞行器的结构形式和工作原理:

(1)结构形式

多旋翼飞行器的最主要特点就是机械结构简单,不像普通直升机包含大量拉杆、铰鏈和传动结构,多旋翼飞行器一般采用电机直接驱动旋翼的结构形式,根据旋翼多少的不同,一般可分为四旋翼、六旋翼、八旋翼以及双层四旋翼等。旋翼的多少主要的区别在于载重能力和抗风能力上的差别,本设计主要研究的是飞行器的智能控制,所以拟采用结构最简单的四旋翼飞行器作为研究对象。

(2)工作原理

典型的传统直升机配备有一个主转子和一个尾桨。他们是通过控制舵机来改变螺旋桨的桨距角,从而控制直升机的姿态和位置。多旋翼飞行器与此不同,以四旋翼飞行器来说,是通过调节四个电机转速来改变旋翼转速,实现升力的变化,从而控制飞行器的姿态和位置。

下面以本设计选取X字四旋翼飞行器为例,介绍本设计的飞行器的飞行原理。四旋翼飞行器的4个电机转动的方向是不同的,对角的两个电机转动方向必须一致,而相邻的两个电机转动方向必须相反。基于这个原则,本次研究安排了电机的转动方向。

当飞行器需要向上运动时,4个电机转速增加,同时保持4个电机的推力一致,当4个电机推力总和大于飞行器自重时,飞行器就开始向上运动。同理,当需要向下运动时,4个电机转速减小,同时保持4个电机的推力一致,当4个电机推力总和小于飞行器自重时,飞行器就开始向下运动。

当飞行器需要进行俯仰(绕Y轴转动)运动时,以1和2号电机为一组,同时降低转速,以3和4号电机为另一组同时增加转速。这样飞行器前后受力不平衡,飞行器1和2号电机方向就会下沉,3和4号电机方向就会上升,即可以实现俯仰运动,如1和2号电机加速,3和4号电机减速,转动方向就会相反。同理,以1和4号电机为一组,2和3号电机为另一组同时加速或减速时,飞行器即可实现横滚(绕X轴转动)运动。

当飞行器需要进行偏航运动时,根据角动量守恒原理,当以1和3号电机为一组,2和4号电机为另一组,同时增加或减小转速,飞行器就会绕自身中心进行偏航旋转,旋转方向与减速一组的电机旋转方向一致。

当飞行器需要进行前后、左右运动时,只需要往要运动的方向旋转一定的角度,这样4个电机的推力就会在那个方向上出现一个分力,从而使飞行器朝那个方向运动。

通过上诉描述可以知道,四旋翼飞行器可以进行六个状态的运动(上下、左右、前后、俯仰、横滚、偏航运动),而四旋翼飞行器只能控制四个电机的推力作为控制量,所以它属于欠驱动、多变量耦合的不稳定系统系统,单靠人手动操纵难道极大,必须引用一套基于姿态的自动控制系统才能很好控制飞行器的稳定。

3 飞行器控制系统介绍

本设计是飞行控制系统是基于ST公司的ARM32位单片机STM32,飞行控制系统由主控制板、遥控器接收模块、WIFI通信模块、电机模块、电源模块等五部分组成。

3.1 电源模块

电源模块在系统中的地位是极其重要的,四旋翼无人直升机要稳定工作必须有稳定的电源供给作为保障,为系统的各个模块提供动力。稳定的电源可以使系统在各种环境下长时间稳定的工作,而如果电源模块设计得不够合理,那么就像在系统中埋下了一颗不定时炸弹,系统随时都可能因此而崩溃。所以电源模块的设计必须非常慎重,以保证系统工作的稳定性。多旋翼飞行器采用12V锂电池供电。12V电压直接供给电机,通过降压模块将12V降压到5V供飞行控制系统、遥控系统等使用。

3.2 主控制板

中心控制模块即飞行控制系统的核心处理器作为整个系统的核心控制部分,主要负责采集传感器检测到的姿态角速率(俯仰角速率、横滚角速率和偏航角速率)、三轴的线加速度和航向信息并实时解算;根据检测到的飞行信息,结合既定的控制方案,计算输出控制量;同时,能实时采集遥控接收器发出的控制信号,对遥控器给出的控制命令做出响应。本次设计的四旋翼飞行控制板计划采用STM32作为主控制器,STM32是一款基于ARM的32位MCU,CPU工作在72MHz。可以实时计算各种复杂姿态算法和控制算法,STM32丰富的片上资源可以满足各类型传感器通讯需求及遥控器输入信号处理及电子调速器PWM控制需求,大大块降低了开发成本,节约了资源。是一款非常适合本设计开发使用的单片机。飞行控制模块上采用集成了3轴加速度计和3陀螺仪的MPU6050芯片为姿态传感器。由于该芯片集成度高,封装小巧,可以极大地提高飞行控制模块的可靠性和减小模块尺寸。

3.3 遥控器接收模块

该模块用于接收遥控器发射的信号并转换成PWM的形式输出。介于该部分关系到飞行器的飞行安全。出于提高安全性及降低开发难度的目的,这部分模块直接采用了目前航模普遍使用的成品2.4GPPM无线遥控器和接收器。

结束语

本课题利用STM32单片机设计的无人机飞行控制系统,同时在设计中由于采取了贴片封装和低功耗器件,使设计的六轴旋翼飞行器具有重量轻、功耗低、体积小等特点,经过调试飞行能够满足飞行器起飞、降落、前进、后退等飞行姿态的控制要求。

参考文献

[1] BOUABDALLAHSIEGWARTR.Towards Intelligent Miniature Flying Robots[C]//Proceedingsof Fieldand Service Robotics,Australia,PortDouglas,2005.

[2] ALTUGE.Vision Based Controlof Unmanne Aerial Vehicleswith Ap-plicationsto Autonomous Four Rotor Helicopter Quadrotor[D].Universityof Pennsylvania,2003.

[3] 李占科,宋笔锋,宋海龙.微型飞行器的研究现状及其关键技术[J].飞行力学,2003,21(4):124.

[4] 贺海鹏,四旋翼无人机非线性控制研究[D].东南大学,2015.

作者简介

余婷(1995.10-),女,河南驻马店人,河南大学欧亚国际学院2014级本科生,通信工程专业,研究方向:通信工程。

运动 飞行器 文章