APP下载

横列式双旋翼矢量飞行器的改进ADRC姿态控制算法

2021-11-11杨立本魏文军杨剑锋李泰国

系统工程与电子技术 2021年10期
关键词:姿态控制旋翼适应度

杨立本, 魏文军, 杨剑锋, 李泰国, 王 栋

(1. 兰州交通大学自动化与电气工程学院, 甘肃 兰州 710072;2. 中国航天科技集团第五研究院510研究所, 甘肃 兰州 710072)

0 引 言

近年来,多旋翼飞行器在军事和民用领域得到了越来越广泛的应用[1],目前多旋翼飞行器以四旋翼、六旋翼结构为主[2],其旋翼无法实现倾转,推力方向固定,无法实现推力矢量控制。随着无人飞行器任务复杂度的提高,固定推力方向的多旋翼飞行器局限性越来越大,而推力矢量控制对无人飞行器的机动性有非常关键的作用,横列式双旋翼矢量飞行器作为一种新型无人机结构,具备续航时间长、与固定翼结合实现垂直起降(vertical take-off and landing, VTOL)等优势,其飞行包线要大于固定翼和旋翼机,具备更大的飞行范围。

作为一种新型结构的无人机,横列式双旋翼矢量飞行器稳定性较低,抗风扰能力较差,该飞行器的控制量分别为两个电机的转速和倾转角度,其控制策略也和普通多旋翼飞行器不同,偏航运动是由左右两个旋翼同时前后差动倾转控制,俯仰运动是由左右两个旋翼同时向前或向后倾转控制,滚转运动是由左右两个旋翼的转速差控制。由于旋翼距机身较远,下洗气流对机身的影响较小,但由于其机械结构复杂、抗干扰能力弱、飞行控制系统复杂的特点,目前国内外对其飞行控制的研究较少,文献[3]利用无模型自适应控制实现了可倾转双旋翼飞行器的控制;文献[4]针对其自主研发的可倾转双旋翼飞行器设计了姿态控制系统;文献[5]研制了一种倾转旋翼与固定翼结合的小型直升机。文献[6]针对倾转三旋翼飞行器,利用计算流体力学的方法实现了飞行器的精确建模;文献[7]利用模型预测控制实现了倾转三旋翼飞行器的悬停控制;文献[8]设计了三旋翼飞行器的容错控制算法;文献[9]针对倾转多旋翼飞行器,设计了一种姿态非线性时变控制器;文献[10]利用智能比例微分(proportional derivative,PD)控制器实现了对倾转多旋翼飞行器的三维轨迹控制;文献[11]针对后伺服舵机卡死故障,设计了倾转三旋翼飞行器的容错飞行控制系统。文献[12]利用线性化控制分配方案实现了倾转多旋翼飞行器的控制;文献[13]基于模型动态逆理论实现了可倾转四旋翼飞行器的控制;文献[14]利用自抗扰控制(active disturbance rejection control,ADRC)算法实现了对可倾转四旋翼飞行器的控制;文献[15]针对可倾转多旋翼飞行器的过渡过程,设计了一种鲁棒H∞控制器;文献[16]针对XV-15倾转旋翼飞行器的单发故障,设行器的姿态控制;文献[17]利用比例积分微分(proportional integral derivative,PID)控制和线性二次型最优控制实现了可倾转飞行器的姿态控制;文献[18]设计了一种可倾转多旋翼和固定翼结合的飞行器结构,延长了飞行器的续航距离;文献[19]根据仿生学原理,依据蝙蝠的飞行原理设计了一种可倾转微小型飞行器,实现了固定翼和多旋翼的结合;文献[20]推导了可倾转垂直起降飞行器的数学模型,设计了一种鲁棒回路成形控制器;文献[21]设计了一种全驱动多旋翼飞行器,具备更强的机动性,可以实现倾斜状态下的静止悬停;文献[22]利用ADRC实现了可倾转多旋翼飞行器的姿态控制。

综上所述,目前对倾转旋翼飞行器的研究主要集中在可倾转三旋翼和四旋翼,对可倾转双旋翼飞行器的抗外界干扰控制研究较少,本文针对该飞行器的控制特性,提出一种ADRC的姿态解耦控制算法,实现了该飞行器姿态控制系统的动态解耦线性化,利用扩展状态观测器(extend states observers,ESO)实现对外界干扰和状态间耦合干扰的实时估计,并对复合干扰进行实时补偿,由于姿态解耦控制算法中参数较多,本文利用改进的粒子群优化算法(particle swarm optimization, PSO)优化算法对参数进行整定。

1 可倾转横列式双旋翼矢量飞行器建模

要精确建立横列式双旋翼飞行器的模型,和传统的多旋翼飞行器相比,需设定左旋翼坐标系和右旋翼坐标系,其系统结构如图1所示。

图1 横列式双旋翼矢量飞行器结构图Fig.1 Structural diagram of tilting dual-fan vector aircraft

该飞行器的滚转运动由左右旋翼的转速差来控制,高度由同时增加或减小左右旋翼的转速来控制,俯仰运动由左右旋翼的同向倾转来控制,偏航运动由左右旋翼的差动倾转来控制。

要建立飞行器的六自由度非线性模型,需设定两个旋翼坐标系,左旋翼坐标系的原点Or1为左旋翼桨毂的几何中心,Zr1沿旋翼转轴向上,Xr1垂直于Zr1指向前方,当倾转角度为零时Xr1和机体坐标系的XB平行,Yr1根据右手法则确定,右旋翼坐标系的确定方法相同。机体坐标系的原点OB为飞行器的重心,XB垂直于机体对称轴指向前方,YB垂直于XB和机体对称轴组成的平面并指向左方,ZB根据右手法则确定。

从机体坐标系到地面坐标系的转换矩阵为

(1)

为方便表述,c代表cos,s代表sin。旋翼坐标系的Zr轴和机体坐标系的ZB轴夹角为旋翼的倾转角,飞行器的俯仰运动和偏航运动都由左右旋翼的倾转角来控制,设控制偏航运动的差动倾转角为α,则旋翼坐标系到机体坐标系的转换矩阵如下所示:

(2)

(3)

控制俯仰运动的同向倾转角为β,则旋翼坐标系到机体坐标系的转换矩阵如下所示:

(4)

根据牛顿欧拉方程,得到系统的数学模型为

(5)

式中:FB和ΓB分别代表机体坐标系下飞行器所受到的力和力矩;Ω为飞行器在机体坐标系下的角速率;VB为机体坐标系下的速度矢量。

将左右旋翼提供的升力转换到机体坐标系,其转换公式如下所示:

(6)

(7)

式中:ω1和ω2分别为左右电机的转速;kt为拉力系数。在地面坐标系下载体的位置和速度公式如下所示:

(8)

式中:ξ,v∈R3分别代表地面坐标系下的载体位置和速度。

飞行器的角运动由其所受的力矩控制,作用于飞行器上的力矩主要包括旋翼升力产生的力矩、旋翼的反扭矩、旋翼的陀螺力矩和重力力矩。由于在飞行器的平衡状态下,左右旋翼的反扭矩和陀螺力矩相互抵消,可忽略其影响,由左右旋翼升力所产生的力矩如下式所示:

(9)

(10)

(11)

(12)

(13)

(14)

(15)

(16)

定义横列式双旋翼飞行器的控制量如下:

(17)

2 可倾转横列式双旋翼矢量飞行器姿态抗干扰解耦控制

2.1 ADRC系统结构

ADRC利用ESO实现对系统复合扰动的估计[23-29],对系统建模精度要求较低,由跟踪微分器(tracking differentiator, TD)、非线性状态误差反馈控制律(nonlinear state error feedback, NLSEF)和ESO构成。文献[30]利用ADRC实现了对多输入多输出(multiple input multiple output, MIMO)非线性系统的解耦控制;文献[31]利用ADRC实现了对柔性机械手臂的控制;文献[32]利用ADRC实现了对导弹姿态的自适应控制;ADRC的结构如图2所示。

图2 ADRC控制结构Fig.2 Structure diagram of ADRC

2.2 横列式双旋翼矢量飞行器的姿态ADRC控制算法

横列式双旋翼矢量飞行器姿态控制是整个飞行控制的关键和基础,其位置控制精度由姿态控制精度决定,因此精确地控制飞行器姿态,就可以实现对其位置和速度的高精度控制。本文提出一种改进的ADRC横列式双旋翼飞行器姿态高精度控制算法,飞行器的姿态子系统方程如式(14)~式(16)所示,将其整理可得

(18)

式中:

(19)

(20)

可见其姿态控制系统为非线性耦合系统,fi(i=1,2,3)为姿态控制系统的耦合部分,本文利用ESO实现对耦合部分和外界干扰的估计,在NLSEF中对复合干扰进行实时补偿,实现了姿态控制系统的动态反馈线性化,其姿态控制结构如图3所示。

图3 横列式双旋翼矢量飞行器姿态控制系统结构Fig.3 Structure of attitude control system for tilting dual-fan vector aircraft

2.2.1 安排过渡过程

二阶最速反馈积分串联型系统如下所示:

(21)

x1(t)可在r的限定下最快速地跟踪信号u(t),x2(t)为u(t)的微分,符号函数sign(·)会导致系统产生稳态颤振,因此采用非线性函数fhan代替,则跟踪微分器如下所示:

(22)

式中:

(23)

(24)

2.2.2 基于ESO的横列式双旋翼姿态控制系统动态补偿线性化

根据式(18),将横列式双旋翼矢量飞行器的滚转角φ状态方程写成如下形式:

(25)

(26)

对上述状态方程设计扩张状态观测器如下:

(27)

式中:

(28)

合理选择参数β01、β02、β03和ai,则观测器状态变量zi能精确地跟踪系统状态变量xi,由于z3→x3=f(·,ω),f(·)和ω为未知量,扩张状态z3可实现对系统复合扰动的精确估计,横列式双旋翼矢量飞行器的俯仰角θ和偏航角Ψ采用相同的算法处理。

2.2.3 横列式双旋翼矢量飞行器的非线性误差反馈

ADRC采用非线性误差组合,其控制精度优于线性组合,NLSEF如下所示:

(29)

式中:u2为滚转角控制输入;u3为俯仰角控制输入;u4为偏航角控制输入;b1=cacβ;b2=-Tlpca;b3=-Tlmcβ;b3=-Tlmcβ;h1为精度因子。

3 自抗扰解耦控制参数的改进PSO优化

横列式双旋翼矢量飞行器姿态控制算法中需要整定的参数较多,TD中需要整定参数包括滤波因子h0和速度因子r0,ESO中的参考包括a1、a2、δ、β01、β02和β03,NLSEF的参数包括精度因子h1、阻尼系数c和控制量增益r。其中速度因子r0是由过渡过程的快慢来决定,r0和h0根据实际情况进行选择。a1一般取0.5,a2为0.25,δ一般取值为0.01左右。β01,β02,β03并不依赖于控制对象。本文利用改进的PSO算法对控制量增益r、阻尼系数c和精度因子h1这3个参数进行优化组合,从而实现姿态系统的最优控制。

3.1 适应度函数的构造

根据横列式双旋翼矢量飞行器的控制特性和性能要求来确定适应度函数。本文根据实际控制需要构造的适应度函数如下:

fitness(tr,δ,abs_e)=λ1tr+λ2δ+λ3abs_e

(30)

式中:tr为系统上升时间;δ为系统超调量;abs_e为控制误差绝对值的和;λi(i=1,2,3)为权重值。

3.2 改进PSO参数优化算法流程

下面利用改进PSO算法实现对飞行器姿态控制系统的参数优化,在PSO算法中,惯性权重的选取对优化性能影响较大,较大的惯性权重有利于跳出局部极小值,但不利于算法的收敛,较小的惯性权重有利于算法的收敛,但容易陷入局部极小值,本文设计了一种自适应的惯性权重,判断当前粒子的适应度值和粒子适应度均值的大小,当适应度小于均值时,计算其惯性权重:

(31)

式中:f为当前粒子的适应度;fmin为粒子适应度的极小值;favg为粒子适应度均值;ωmin和ωmax为惯性权重的极小值和极大值。

当适应度值大于均值时,选取最大的惯性权重,这样既有利于算法跳出局部极小值,又能够使算法收敛。

改进的参数自寻优算法如下。

步骤 1根据约束条件,产生随机的三维粒子。

步骤 2将三维粒子作为参数代入到横列式双旋翼飞行器的姿态控制算法中,计算适应度值。

步骤 3将步骤2计算得到的适应度值与粒子个体最优Pi的适应度值进行比较,如优于Pi则更新个体最优适应度值Pi。

步骤 4比较步骤3计算得到的个体最优适应度值Pi和粒子全局最优适应值Pg,如Di

步骤 5计算所有粒子的适应度均值,判断当前粒子的适应度值和适应度均值的大小,并根据式(31)更新当前粒子的惯性权重。

步骤 6对粒子的速度和位置进行更新。

步骤 7判断是否超过优化迭代次数,如果没有则返回步骤2,超过则停止。

4 算法仿真及实验

4.1 姿态角跟踪仿真

横列式双旋翼矢量飞行器的姿态角期望值由其轨迹控制器得到,姿态角初值为0,当20

图4 3种算法的滚转角控制曲线图Fig.4 Roll angle control curves of three algorithms

图5 3种算法的滚转角控制误差曲线图Fig.5 Error curves of roll angle control for three algorithms

图6 3种算法的滚转角控制误差放大图Fig.6 Magnifying curve of roll angle control error for three algorithms

图7~图9为横列式双旋翼矢量飞行器的俯仰角曲线,从图中可以看出,本文算法和反步控制及PID控制相比,抗干扰能力更强,控制精度更高。从局部放大图中可以看出,在20

图7 3种算法的俯仰角控制曲线图Fig.7 Pitch angle control curves of three algorithms

图8 3种算法的俯仰角控制误差曲线图Fig.8 Error curves of pitch angle control for three algorithms

图9 3种算法的俯仰角控制误差放大图Fig.9 Magnifying curve of pitch angle control error for three algorithms

4.2 复合干扰的估计和改进PSO参数优化

图10为ESO对滚转通道和俯仰通道复合干扰的估计,复合干扰包括外界扰动、状态间耦合项和未建模动态,从图中可以看出,ESO可以实现对复合干扰项的精确估计。图11为复合扰动下的轨迹跟踪曲线,在出现外界干扰时,本文算法改善了飞行器的轨迹跟踪性能。图12为飞行器姿态控制系统的参数寻优曲线,采用自适应的惯性权重,改进PSO参数优化的粒子为50个三维粒子,优化迭代次数为40,控制量增益r∈(10,1 000),阻尼系数c∈(0.5,50),精度因子h1∈(0.000 01,0.01)。上升时间tr的权重λ1为1,超调量δ的权重λ2为700,控制误差abs_e的权重λ3为100。可以看出,相比传统的PSO优化算法其参数寻优能力更强。在不同粒子数下,对本文改进PSO算法和传统算法进行了详细比较,其运行时间如表1所示,单位为s,改进PSO算法较传统算法最长时间差为0.906 7 s,增加0.7%的运行时间,在合理范围之内。

图10 ESO对复合干扰的估计曲线Fig.10 Estimation curve of compound interference

图11 3种姿态控制算法的轨迹跟踪对比曲线Fig.11 Trajectory tracking comparison curves of three attitude control algorithms

图12 改进PSO参数寻优曲线对比Fig.12 Comparison of improved PSO parameter optimization curves

表1 算法运行时间比较

4.3 横列式双旋翼矢量飞行器悬停实验

图13为进行的横列式双旋翼矢量飞行器的悬停实验,飞行器可以在指定高度实现稳定的悬停,由于双旋翼飞行器的旋翼个数少,其飞行噪声较低,续航时间也更长。

图13 横列式双旋翼矢量飞行器悬停试验Fig.13 Hover test of tilting dual-fan vector aircraft

5 结 论

本文针对一种新型的横列式双旋翼矢量飞行器,为解决其姿态间耦合严重,抗干扰能力弱等问题,提出了一种抗干扰姿态解耦控制算法,本文算法的创新性总结如下。

(1) 利用改进的ADRC算法实现对横列式双旋翼矢量飞行器姿态的高品质控制,由于其姿态控制系统耦合严重,抗扰动能力弱,利用ESO实现对复合扰动的精确估计,并直接通过前馈的方式对扰动进行补偿,由于复合扰动包括姿态间耦合项和外界干扰,从而实现了姿态间解耦控制,简化了姿态控制器的设计,具有较强的抗外界干扰能力。

(2) 由于传统PSO算法容易陷入局部极小值,本文引入一种自适应的惯性权重,根据粒子的适应度值来计算惯性权重,根据当前粒子的适应度值和粒子适应度均值关系,自适应计算惯性权重,既有利于算法跳出局部极小值,又能够使算法收敛。

(3) 设计了实际飞行控制硬件系统,包括惯性导航系统和飞行控制系统,可以实现对横列式双旋翼矢量飞行器的稳定悬停控制。

猜你喜欢

姿态控制旋翼适应度
改进的自适应复制、交叉和突变遗传算法
改进型自抗扰四旋翼无人机控制系统设计与实现
风扰动下空投型AUV的飞行姿态控制研究
大载重长航时油动多旋翼无人机
基于STM32的四旋翼飞行器的设计
一种基于改进适应度的多机器人协作策略
多星发射上面级主动抗扰姿态控制技术研究
四旋翼无人机动态面控制
基于空调导风板成型工艺的Kriging模型适应度研究
弹射座椅不利姿态控制规律设计