基于自抗扰的四旋翼无人机控制方法
2024-01-15孙嫚憶胡树欣
孙嫚憶, 张 安, 胡树欣, 杨 盼
(西北工业大学航空学院,西安 710000)
0 引言
由于四旋翼无人机成本较低、隐蔽性强,与传统机器人相比,能够适应各类复杂的环境,受地理因素限制较少,所以广泛应用于各个领域[1]。
然而,鉴于四旋翼无人机存在非线性、强耦合、欠驱动等特点,难以对其进行精确建模,同时,在外部干扰和模型不确定性的影响下,快速稳定的控制方法的设计仍然面临诸多挑战。传统的飞行控制方法(如PID控制、滑模控制、自适应控制、反步控制、H∞控制等)的研究有很多:文献[2]针对四旋翼无人机的系统特性,将PID控制和模型预测控制(Model Predictive Control,MPC)方法相结合,设计了以误差为切换条件的MPC-PID复合控制器;文献[3]针对外部干扰,基于Lyapunov函数理论,提出了改进滑模控制算法,以提高控制器的鲁棒性;文献[4]基于非线性动态逆和模型跟踪神经自适应技术,提出自适应非线性控制算法,实现对四旋翼无人机的控制;文献[5]在反步法框架下,为四旋翼无人机设计了一种姿态受限的动态稳定控制器,并采用积分势垒Lyapunov函数来保证姿态响应的有界性,限制滚转和俯仰指令;文献[6]针对四旋翼无人机飞行过程中受到的外部干扰、由模型不确定性引起的内部扰动的情况,在H∞控制的基础上,利用扰动观测器来补偿,以提高控制器的鲁棒性。随着现代控制理论的发展,控制方法越来越多,但目前在工程应用中利用率最高的控制方法仍然是PID方法。
基于对PID方法的缺点和改进方法的不断思考总结,在1998年,韩京清教授正式提出了自抗扰控制(ADRC)[7]。近年来自抗扰控制技术发展趋于成熟,其适用范围不断扩大,在航空领域,自抗扰控制已在不同构型的无人机飞行控制系统中得到应用[8]。文献[9]针对四旋翼无人机系统的特性,提出双闭环的自抗扰控制方法,使得四旋翼无人机在外部干扰下,仍能快速、准确地跟踪期望轨迹;文献[10]提出了基于扰动观测器的反步控制策略,利用扰动观测器抑制模型失配和外部扰动,从而实现四旋翼无人机的高性能轨迹跟踪;文献[11]针对系统存在外部干扰和参数不确定性的情况,提出了自抗扰和预测控制相结合的控制方法,以实现对四旋翼无人机的轨迹跟踪。
本文设计了基于ADRC的四旋翼姿态控制器,并在此基础上,针对fal函数不平滑引起的扩张状态观测器(Extended State Observer,ESO)抖振问题,构造nfal函数来代替fal函数,以提升 ESO 的状态估计效果,通过Lyapunov函数证明在满足一定条件下,改进后的系统是渐近稳定的;利用遗传算法进行参数整定,提高整定效率;通过软件仿真和半实物仿真平台对控制系统的有效性进行验证。
1 四旋翼无人机动力学模型
图1 四旋翼无人机结构
四旋翼无人机的动力学方程可表述为
(1)
式中:m为飞行器的质量;g为重力加速度;f为螺旋桨产生的总拉力;τx,τy,τz为螺旋桨上产生的力矩。具体表示为
(2)
式中:CT∈R+,是推力系数;Cm∈R+,是扭矩系数;d∈R+,表示飞行器质心到旋翼旋转轴之间的距离;Jxx,Jyy,Jzz分别为四旋翼无人机沿着xb轴、yb轴、zb轴的转动惯量。Ga=[Ga,φGa,θGa,ψ]T∈R3,是电机在产生滚转、俯仰和偏航动作的陀螺仪扭矩,可以表示为
(3)
式中,Jm∈R+,是总惯性矩。
2 基于自抗扰的四旋翼无人机姿态控制
2.1 自抗扰控制原理
传统自抗扰控制[7]由跟踪微分器(TD)[12]、扩张状态观测器[13]、非线性状态误差反馈(NLSEF)控制律[14]组成,这3部分的形式都不唯一,具体根据控制需求和系统特点进行选择。
考虑带有未知扰动的不确定对象
(4)
式中:f(·),w(t)均未知;b为扰动;u为控制输入。
图2为ADRC结构图。
图2 ADRC结构
由图2可以看出,控制量被分为两个部分,即
u(t)=u0(t)-z3(t)/b0
(5)
式中:z3(t)/b0为补偿扰动的分量;u0(t)为误差反馈控制量。
2.2 基于自抗扰的四旋翼无人机姿态控制
对于2.1节建立的四旋翼无人机飞行动力学模型进行小角度简化,建立含有外界未知扰动的四旋翼无人机的近似模型。根据控制对象数学模型中的被控状态量,建立二阶自抗扰控制系统,并确定系统的各个组成部分以及输入和输出的关系。
针对俯仰、偏航、滚转3个通道存在的耦合情况,采用自抗扰内外扰动均视为总扰动的思路,使用扩张状态观测器对各通道的总扰动独立进行实时估计并补偿,从而实现解耦的目标。系统的结构见图3,系统分为高度控制回路、俯仰控制回路、滚转控制回路和偏航控制回路4个独立回路,输入高度、俯仰角、滚转角和偏航角的期望值,将自抗扰控制分别应用于每个回路。
图3 基于自抗扰的四旋翼无人机控制
根据上述控制系统的思想,结合式(1),可得
(6)
式中,fi,ωi分别为内部扰动和外部扰动,i=1,2,3,4。
以俯仰通道为例,给出其离散形式自抗扰控制算法。
被控对象模型为
(7)
1) 生成微分信号、安排过渡过程。
(8)
式中:v(k)为第k时刻的输入信号;T为控制器的执行周期;θd为期望俯仰角;fhan(·)为最速控制综合函数,表达式为
(9)
式中:r0,h0为可调参数;fsg(·)为利用符号函数的特性简化条件语句和适当参数划归的等价函数。
2) 估计状态和总扰动。
(10)
式中,fal函数表达式为
(11)
式中:δ为线性段区间长度;α为0~1之间的常数;e为输入误差。
3) 控制量的形成。
(12)
3 自抗扰控制的改进
3.1 fal函数改进
函数fal(e,α,δ)是扩张状态观测器的关键,其连续非光滑的特性决定了扩张状态观测器也具有此特性,因而对模型中的不确定性及外界未知扰动适应性不强,鲁棒性较差,需要调节fal函数的相关参数以适应不同场景需求。同时,由于幂次函数具有拐点,且在原点附近斜率较大,当测量噪声作用于反馈环节时,会影响ESO的估计效果[15]。
fal函数是特殊的非线性结构,它是对“大误差,小增益;小误差,大增益”这一控制工程界经验的数学拟合[16]。
为了保证当出现测量噪声时,不影响ESO良好的估计效果,本文提出用nfal函数代替fal函数,在相同参数前提下,全状态空间内每一点(除了初始点和原点外)处,改进的fal函数具有更快的全局收敛速度;原点处收敛速度为零,从而使得原点处不会发生抖振;分段点处fal函数的两个子函数是连续的。
本文采用狄拉克函数来构造fal函数的光滑近似函数。根据文献[17]有狄拉克函数δ(x)满足
∀x≠0δ(x)=0
(13)
δ(0)→∞
(14)
(15)
直观来看,δ(x)可以视为一个连续型的概率密度函数,采样空间为全体实数R,只在x=0的位置概率非零,即均值为0,方差也为0,采样值也为0,因此式(16)和式(17)恒等式成立,可得狄拉克函数的性质
(16)
(17)
如果可以找到δ(x)的一个光滑近似φ(x)≈δ(x),则根据狄拉克函数的性质,可得
(18)
构建f(x)的光滑近似的核心思路在于借助狄拉克函数的光滑近似:由于φ(x)是光滑的,所以g(x)也是光滑的,即g(x)是f(x)的一个光滑近似,而且在这个过程中,对f(x)的形式和连续性并没有太多限制。
狄拉克函数的光滑近似有很多,此处选择
(19)
将fal光滑近似后可以得到nfal函数
(20)
图4为fal函数和nfal函数曲线仿真对比图及原点放大图。由图4可以看出,nfal函数可以避免fal函数在原点附近斜率过大且存在拐点的问题,在原点附近更光滑。
图4 fal函数和nfal函数曲线仿真对比及原点放大图
图5为ADRC阶跃响应比较图,幅度无单位。由图5可知,当在系统中输入一个阶跃响应时,改进后的ESO超调量明显小于原来的ESO。
图5 ADRC阶跃响应比较
综上分析表明,与fal函数相比,nfal函数在保留“小误差,大增益;大误差,小增益”优点的基础上,避免了零点附近增益量过大引发的高频抖振的问题,在原点附近具有更好的平滑性、连续性、收敛性。设计ESO时若采用该种非线性光滑nfal函数,就可以提高观测器的观测能力,增强系统的抗干扰性能。
3.2 基于遗传算法的参数整定
自抗扰控制的控制效果很大程度上受到参数的选择的影响,但由于参数多,彼此之间有一定程度的影响,导致参数整定一直是个难点。很多文献中选择试凑法来确定参数[18],但这种方法往往需要借助经验,且效率较低,本文采用遗传算法[19]进行参数整定。
基于遗传算法(GA)的ADRC(GA-ADRC)参数整定具体实现步骤如下。
1) 首先将ADRC中需要调整的9个参数(r0,h0,β1,β2,β3,c,r1,h1,b)组合在一起作为遗传算法的每个个体,由文献[20]的参数整定方法,确定出9个参数的初值(r0=2,h0=0.1,β1=100,β2=1000,β3=2500,c=15,r1=150,h1=3,b=100),采用实数编码生成初始种群。
2) 计算个体适应度值。对种群中的每个个体,利用适应度函数进行适应度计算。ITAE是时间乘以误差绝对值积分的性能指标,即
(21)
式中,Gmax表示最大迭代次数。
ITAE具有较好实用性和选择性,因此选择其作为ADRC控制系统的性能评价指标[21]。为防止控制输入过大,在目标函数中加入控制输入的平方项,故可得参数选取的最优性能指标为
(22)
式中:u为控制器的输入;w1为误差在目标函数中的权值;w2为控制输入的平方项在目标函数中的权值。
3) 进行遗传操作。将得到的个体进行选择、交叉和变异操作,从而产生新的种群。根据已确定的适应度函数选择出适应度高的参数:采用整体算术杂交方法对父代参数进行线性重组获得子代;选取非均匀变异算子,将变异算子的结果和代数联系起来,使得在进化的初期,变异的范围相对较大,而随着进化的推进,变异的范围会逐渐变小,从而达到对进化系统微调的目的。
4) 计算新产生的一组参数的适应度指标大小(参照步骤2))。若适应度指标达到预设要求,则表示找到一组最佳参数,对该组参数进行选择、交叉、变异操作。否则,回到3),重新产生新的参数组,直至满足终止条件。
3.3 改进扩张状态观测器的收敛性条件
由式(10)和式(20)可以得到如下改进ESO形式
(23)
在不考虑外部扰动时,系统误差表示为
(24)
将其组合表示为
(25)
令Fi=nfal(e1,αi,δ)/e1,B=β1β2F1-β3F2,可得Fi>0。当B>0条件成立时,则存在矩阵D
(26)
使DA(e)为对称正定矩阵。式中,η,λ1,λ2>0,且为无穷小量。
构造如下形式的Lyapunov函数
(27)
式中,C0是一常数。将其展开后可得
η(β3F2)2dt+C0
(28)
因为η为无穷小量,故可进一步化简得到
(29)
(30)
当且仅当e= 0时,V(t)=0。故当系统满足B>0时,由式(29)、式(30)可知系统平衡点处是渐近稳定的。
4 仿真与分析
本文主要在软件和基于Links-RT实时仿真系统的无人机飞控半实物实验平台两方面对改进后的ADRC (以下简称GA-ADRC)的控制效果进行仿真验证。仿真中用到的四旋翼飞行器数据如表1所示,ADRC的9个参数数据如表2所示,采用双环级联的PID控制方法进行对比验证,角度环采用比例控制,角速度环采用比例、积分、微分控制,数据如表3所示。
表1 四旋翼飞行器参数
表2 ADRC参数
表3 PID控制器参数
4.1 基于软件的仿真验证
1) 姿态角跟踪实验。
验证改进ADRC对飞行器稳定控制的效果。设定四旋翼飞行器3个姿态角的初始值均为0°,采样(执行)周期T= 0.01 s,在0.4 s时给出目标指令θd=35°,φd=20°,ψd=25°,在GA-ADRC,ADRC和PID的控制下,系统的输出曲线如图6所示。
图6 姿态角跟踪控制对比
由图6可以看出,3种方法均能稳定收敛到期望值。为实现快速响应控制,在该仿真参数设置下,相较于PID,GA-ADRC和ADRC的调节时间更短,响应更快,然而这两种方法均存在一定程度的超调,产生的超调在可接受范围内。
2) 抗扰性能测试。
为验证经过遗传算法进行参数整定后的ADRC的抗干扰能力,在四旋翼无人机定点悬停状态下,在姿态角3个通道中加入高斯白噪声来模拟干扰力矩,同时,加入幅值为0.06 N·m,频率为1 Hz的方波信号来模拟无人机受到外部干扰的情况,外部扰动如图7所示。
图7 扰动信号
图8所示为干扰下姿态角响应曲线。由图8可以看出,在外部干扰下,GA-ADRC方法的输出幅值明显小于PID和ADRC方法,因而可以证明GA-ADRC方法的抗扰能力有明显提升;另外,对fal函数的改进和整定后的参数提升了ADRC方法的抗扰能力。
图8 干扰下姿态角响应曲线
为验证改进后的ADRC在模型不确定性的情况下抗扰能力的提升效果,在悬停状态下进行仿真实验。在3个姿态角通道中分别加入高斯白噪声来模拟模型不确定性带来的干扰,四旋翼无人机姿态响应曲线如图9所示。
图9 模型不确定性下姿态角响应曲线
由图9可以看出,在存在模型不确定性的情况下,GA-ADRC和ADRC方法都能在一定程度上抑制扰动,但GA-ADRC方法抑制效果更好,可见对fal函数的改进和参数调整能提升控制能力。
4.2 半实物仿真平台验证
ADRC方法的主要应用场景在于工程实践,半实物平台对软件而言具有明显优势,可以提供三轴转台实时模拟飞行器姿态,激励真实IMU中的三轴陀螺输出,而且半实物仿真实验具有真实、经济、高效的特点。
半实物实验平台主要由主机、实时仿真机、三维飞行视景系统、地面站系统、遥控器和Pixhawk飞控板组成。如图10所示。
图10 半实物实验平台结构
1) 开发主机:基于 Windows 系统,提供系统建模、运行管理环境。
2) 实时仿真机:1台嵌入式计算机,部署I/O板卡,可通过RS232串口、UDP网口、PWM通道、伺服电机控制接口等与三轴仿真转台和Pixhawk飞控板实物构成硬件在环。
3) 三轴仿真转台:内置3轴伺服驱动器,受实时仿真机控制,可动态模拟无人机三轴姿态(俯仰角、偏航角和滚转角),激励内框中放置的Pixhawk飞控板载IMU输出。
遥控器给出输入信号,滚转角和俯仰角期望与响应随时间变化曲线如图11所示。图中,roll_cmd表示滚转角数值,roll_Data表示滚转角实际值,pitch_cmd表示俯仰角数值,pitch_Data表示俯仰角实际值。
图11 滚转角和俯仰角期望与响应随时间变化曲线
4) 配套设备:包括遥控器、接收机、电台等。
当用遥控器输入实时信号时,通过GA-ADRC方法的控制,能在转台上实时显示出滚转角和俯仰角的偏转角度,在监视面板上可以观察到滚转角和俯仰角的响应曲线。由此可见,GA-ADRC方法能在半实物仿真平台上达到较好的控制效果。
5 结束语
本文主要设计了基于ADRC方法的四旋翼姿态控制器,构造nfal函数代替fal函数,提升了ESO估计补偿扰动的能力,从而提升ADRC方法控制效果;采用遗传算法,提升了ADRC方法的参数整定效率;通过Lyapunov函数证明在满足一定条件下,改进后的系统是渐近稳定的;在仿真中,将GA-ADRC方法与PID,ADRC方法进行对比,证明GA-ADRC方法的控制效果有所提升;并在基于Links-RT实时仿真系统的无人机飞控半实物实验平台中,验证了该控制方法的有效性。