罗莉 何学良 赵文乐 陈相余 黄嘉芯
(广东第二师范学院物理与信息工程系 广东省广州市 510303)
随着无刷电机、单片机控制技术的发展和传感器技术的日益成熟,四旋翼飞行器逐渐趋向于小型化、智能化发展,可应用领域也越来越广,并逐渐成为国内外研究人员的研究热点。外观结构看似简单的四旋翼飞行器却蕴含着多种技术难题,其关键技术和发展方向也得到了研究人员的广泛关注,各种技术也逐渐被攻破。四旋翼飞行器也因其灵活性高、易操控等优势,广泛应用于环境监测、灾难救援、快递运输、电力巡检等多个领域,具有极高的研究价值,目前四旋翼飞行器技术朝着智能飞行、碰撞规避等方向发展,也将被投入到更广泛的领域。
四旋翼飞行器的结构如图1 所示,包含有十字形支架、控制计算机、电机模组、旋翼等部分,其中十字形支架作为飞行器的整体支撑,四个旋翼分为两组分布在支架的四端,相对的两个电机为一组,同组电机转动方向相同,两组电机互为反方向转动,此时旋翼旋转时与空气阻力产生的反作用力矩相互抵消,在控制计算机的控制下实现飞行器的平衡飞行。
飞行器通过电机带动旋翼转动来产生不同的升力和力矩,控制每个电机转速可以实现飞行器姿态和位置的控制。从而实现飞行器的垂直运动、俯仰运动、横滚运动和偏航运动。
(1)垂直运动:当飞行器在空中自稳飞行后,四个旋翼间产生的扭矩相互抵消,并且升力等于飞行器自身的重力,这时如果四个电机的转速同时增加,旋翼产生的克服自身重力的升力增大,此时飞行器上升;同理,当转速同时降低时,飞行器则垂直下降。因此通过同时增大或降低电机转速可以实现飞行器的垂直运动。
图1:四旋翼飞行器结构图
图2:硬件系统框图
(2)俯仰运动和横滚运动:当飞行器在空中自稳飞行后,在保持一组同方向电机转速不变的情况下,另一组两个电机通过调整旋翼转速差,使扭矩失去平衡来实现运动。1、3 电机产生的升力差使机身绕 y 轴旋转,实现飞行器的俯仰运动; 2、4 电机的升力差则使机身绕x 轴旋转,实现飞行器的横滚运动。
(3)偏航运动:当飞行器在空中自稳飞行后,当增大一组同方向电机转速的同时,保持不变或降低另一组同方向电机的转速,此时作用在机身上的扭矩无法抵消,扭矩平衡被打破,使飞行器绕 z 轴转动,实现飞行器的偏航运动。当1、3 电机转速增加或2、4电机转速减小时,实现右偏航;反之,当2、4 电机转速增加或1、3 电机转速减小,实现左偏航。
系统硬件电路主要由主控制器、姿态信息采集模块、电子调速器模块、通信模块、电源管理模块构成,硬件系统设计框图如图2所示。主控制器通过姿态信息采集模块获取到加速度、陀螺仪、电子罗盘、气压等原始飞行数据,对其进行处理、计算后,结合遥控器发出的姿态控制要求,得到对应的控制信号,通过电子调速器改变电机的转速,实现姿态控制的目的。
主控制器模块是整个飞行系统的核心部分,主要负责系统传感器数据的采集、对飞行姿态进行解析、通过控制算法发出趋近目标姿态的控制指令等。本设计采用德州仪器公司的Tiva C 系列芯片TM4C123G 作为主控芯片,该芯片基于Cortex-M4F 内核,拥有80MНz 的主频,具有高效的数据处理能力和浮点运算能力,提供丰富的可编程接口和通信接口,满足系统设计的需求。
姿态信息采集模块作为飞行器的感知器官,由加速度计、陀螺仪、磁力计、气压计等传感器组成,发挥着实时监测飞行器姿态信息的作用。本设计采用了将加速度计、陀螺仪和磁力计结合在一起的9 轴传感器MPU9250 和气压计BMP280 作为姿态信息采集模块,其连接电路如图3 所示。
使用9 轴传感器MPU9250 可以达到简化电路设计,减轻飞行器重量的目的,其内部由两部分组成,一部分是3 轴加速度计和3轴陀螺仪,精度高达16 位数字输出,可以进行精密的慢速或者快速运动跟踪,另一部分是AKM 公司的3 轴磁力计AK8963,测量范围为±4800uT,通过把得到的磁场变化数值与加速度值、陀螺仪的数值相结合,可以计算得到飞行器当前的俯仰角、偏航角和横滚角,从而确定飞行器的姿态。MPU9250 与控制器使用I2C 进行连接,而气压传感器利用MPU9250 的辅助I2C 接口与控制器进行通信,为飞行器提供气压高度数据。
无刷电机具有转速高、声音小、寿命长和运行时无火花等优点,本系统选用无刷电机作为飞行器的动力来源,电机KV 值可以是1000 到2400 之间,由于控制器输出的PWM 电压最高不超过3.3V,无法提供足够的能量驱动无刷电机,因此需要使用20A 的电子调速器,借助功率管驱动无刷电机,通过控制器输出PWM 波形到电子调速器达到控制电机转速的目的。
飞行器使用航模锂电池提供能量来源,单节电池电压为3.7V,通常会将多节电池串联起来作为电池模组使用,为使本系统电池选用灵活和能适应更多的电池模组,本设计选用了TPS5430 芯片和MIC5219 芯片作为降压、稳压芯片,为系统提供5V 和3.3V 电压,因此2-6 节锂电池串联的电池模组都能很好的适应本系统,其电路图如图4 所示。
飞行器的姿态包括开启飞行器、起飞、降落、偏航等都可以由无线遥控器进行控制,系统启动后,首先对系统的传感器等部分进行初始化,自检通过后,则采集当前的姿态数据,同时获取遥控器发出的飞行信号,使用基于四元数和欧拉角的姿态解算以及互补滤波算法将传感器数据解算成飞行器的姿态,使用PID 算法得到输出姿态控制量,以PWM 波控制各电机的转速,达到飞行器姿态控制的目的,程序流程图如图5 所示。
系统设计兼容匿名科创地面站软件,利用上位机软件可以查看飞行器的姿态、显示相关数据以及进行PID 调试,飞行器状态的显示包括有YAW(偏航角)、PITCН(俯仰角)和ROLL(翻滚角)、传感器原始数据和电机输出等信息,并可以读取显示当前的PID 参数,将修改设定好的PID 参数写入到控制器中。通过系统测试,飞行器飞行效果良好,系统响应速度快,满足飞行器一般的使用要求。
图3:传感器电路图
图4:电源电路图
本文主要阐述了一款基于TI 公司的TM4C123G 芯片的四旋翼飞行器控制系统,依据四轴飞行器的飞行原理,介绍了主要的硬件电路设计和对软件流程设计进行了简单介绍,通过测试证明,飞行器飞行效果良好,系统可靠性高,有一定的抗干扰能力,具有高性能、低功耗、处理速度快等特点。本控制系统能实现飞行器的基本功能外还预留了多个接口,可用于连接光流、视觉模块、定位模块等,使飞行器拥有更多额外的功能,这让飞行器飞行更稳定的同时也让设计变得更有趣。
图5:程序流程图