杨 森,马添麒
(江苏科技大学 电信学院,江苏 镇江 210016)
近年来,多旋翼无人机技术,在救援,航拍,农业,侦察等各个民用领域都得到了广泛的关注与研究,应用前景非常可观。微型多旋翼无人机由于其本身所具备的特殊性,如优秀的低速性能和垂直起降性能、简单紧凑的机械结构、机身小巧便于隐藏和携带、可拓展性强、方便部署与维护等优点,在民用领域得到多方面应用[1]。
相比较于室外,室内由于其空间狭小,障碍物较多,高度低等问题,往往对于飞行器的低速性能有着较高的要求,对于其本身的大小有极大的限制,因此在本设计中多旋翼无人机采用六旋翼为代表,为了有效突出六轴的可控性,本文在飞行控制器设计中加入了超宽带(Ultra Wide Band,UWB)室内定位系统[2],将室内相对坐标位置与陀螺仪所采集的三轴角速度、磁力计采集的三轴磁力信息、加速度传感器采集的三轴加速度以及气压计所采集的高度信息相融合,并采用卡尔曼滤波算法[2],此算法不仅可以有效地减弱陀螺仪自身的温漂现象、零漂现象[3],还可以使得多传感器之间优势互补,进一步提高六旋翼飞行控制系统的控制精度。
飞行控制器主控板主要由意法半导体公司STM32系列的STM32F03C8T6、MPU6050(六轴陀螺仪),MS5611(气压传感器),HMC5883L(电子罗盘)、LG33-MIC5219(5 V~3.3 V稳压模块)、DWM1000室内定位模块及其各自周边电路组成,飞机的供电由3.7 V锂电池经过稳压3.3 V5 V给主控板各芯片及周边电路供电。
按功能来分,可分为主控制模块、传感器数据采集模块、电源管理模块、数据通信模块、动力驱动模块、UWB室内定位功能模块等六大模块。
六旋翼飞行控制系统主控制模块芯片采用意法半导体公司的STM32系列的STM32F103C8T6增强型存储容量64 K完全满足目前飞控固件大小,支持后续飞控程序功能拓展,支持飞行姿态数据的精确浮点运算以及速度更快的ARM Cortex M4内核的计算。核心控制器芯片硬件引脚如图1所示。
图1 STM32F103C8T6硬件引脚
电源模块,系统总电源采用直流电源3.7 V锂电池进行供电,通过分电单元将电源分6路供给6路电机,通过3.3 V5 V稳压模块引出3.3 V5V电源给主控板各芯片及周边电路供电,且主控板上各电源正极相通,地相通,便于各芯片同时供电。主控板上LTC3200,MIC5219(3.3 V5 V稳压模块)用于将供电3.7 V电压转化为部分模块需要的3.3 V以及5 V电压。部分硬件电路如图2—3所示。
图2 LTC3200硬件电路
图3 LG33-MIC5219硬件电路
系统考虑到协同,载荷等因素选用了820空心杯电机,一个简单的N型金属氧化物半导体(N-Mental-Oxide-Semiconductor,NMOS)电路即可很好地驱动。如图4所示,R6电阻主要是考虑到对互连延迟引起的时序问题以及串扰、传输线效应等信号完整性。R7电阻主要起到下拉作用,防止因为单片机未给控制信号时出现的不确定状态而导致电机转动。
图4 电机及其驱动相关电路
MPU6050功能模块与主控微控制单元(Micro Control Unit,MCU)的通信协议是集成电路总线(Inter Integrated Circuit,IIC),系统运行时主控单片机需要对传感器进行数据的读写[4],即对MPU6050传感器的寄存器用IIC进行数据读写,程序中先将MPU6050的数字运动处理器(Digital Motion Processor,DMP)相关参数配置好,通过MPU6050采集运动信息,通过传感器自带的DMP直接将原始数据解算出四元数和姿态,而不需要在程序中进行额外的数学运算,大大减轻了MCU的算法处理方面的压力。得到四元数等数据后再经过数学运算便可求得欧拉角,计算出目标欧拉角与实际欧拉角的差,输入比例积分导数(Proportion Integral Derivative,PID)控制器即可。MPU6050的接线图如图5所示。
其中用MPU6050的XCL,XDA端子与HMC5883L的SCL,SDA端子相连,这样一来就可以从此IIC接口读出一个9轴的信息,包括三轴的MEMS陀螺仪姿态信息即3个轴的角速度;三轴的加速度;以及三轴的磁感应强度[4]。这三者之间相互矫正可以为飞行控制系统提供较为精确的姿态以及运动方向信息。其中三轴数字罗盘HMC5883L,以及气压传感器MS5611的硬件接线如图6—7所示。
图5 MPU6050硬件电路
图6 HMC5883L硬件电路
图7 MS5611硬件电路
数据通信功能模块大致上可分为两个部分:一是USB串口通信,二是接收发送PWM信号的2.4G无线接收机以及遥控器。
如果系统多个飞行器之间需要协同,那就需要各自的相对以及绝对位置等各方面信息,于是给每一个飞行控制系统配备了一个DWM1000模块,这个模块采用的是DecaWave公司的DW1000 Ultra Wideband收发集成电路[1],是一个集成了天线,所有射频电路,电源管理以及时钟电路的模块。它可以用于双向测距或者TDOA定位系统,可以精确到最小10 cm[1],并且支持高达6.8 Mbps的数据速率,对于微型六旋翼这种可以高速移动、更新频率要求较高的载体非常实用。
这里只作单个飞行控制系统的传感器数据回传、PID参数整定调试。
飞行控制系统搭载了MPU6050三轴陀螺仪传感器、三轴加速度传感器、三轴数字罗盘HMC5883L以及气压传感器MS5611,具体回传数据波形如图8所示。
系统采用的是角度和角速度的双闭环PID控制算法。PID控制算法中P比例环节的作用是加快系统的响应速度,同时提高系统的调节精度,但若不设限,随着P的增大,系统极易产生超调,稳定性变差;I即积分环节,这个环节可以帮助系统消除静态误差;D即微分环节,可以对偏差进行提前预知,抑制偏差变化,改善系统动态性能。
在飞行控制系统中,对于比例环节,P如果太小会导致角速度的误差难以修正,系统响应速度也比较慢。但P如果太大,也会导致系统产生震荡。因此选取一个合适的P参数不仅可以使得系统响应速度加快,也可以避免系统发生震荡。而微分环节的参数D则可以显著地抑制方向回中后的振荡现象。对于积分环节的参数I,I可以在一定范围内改善由于重力影响使得六轴发生偏移的现象。
本文从微型六旋翼飞行器的原理入手,以STM32F103C8T6为飞行控制系统主控芯片,集成了室内定位系统所需的超宽带定位模块DWM1000,MPU6050(六轴陀螺仪),MS5611(气压传感器),HMC5883L(电子罗盘),多个传感器模块,经过系统及其周边的相关电路设计、制作,实现了微型UWB室内定位协同六旋翼实验平台的搭建,经过多次飞行试验证明了本设计硬件平台的可行性。
图8 传感器数据回传
[参考文献]
[1]于雅莉,孙枫,王元昔.基于多传感器的四旋翼飞行器硬件电路设计[J].传感器与微系统,2011(8):113-115,123.
[2]解延春,唐佳,倪荣霈,等.基于DW1000的超宽带室内定位系统设计[J].数字技术与应用,2016(4):187-190.
[3]李运堂,贾宇宁,王鹏峰,等.基于多传感器的四旋翼飞行器硬件系统设计[J].传感器与微系统,2015(2):119-142.
[4]冯新宇,范红刚,辛亮.四旋翼无人飞行器设计[M].北京:清华大学出版社,2017.