基于模糊控制的共轴飞行器姿态自稳算法

2019-01-14 08:40陈保国史春景吴东旭郝永平
探测与控制学报 2018年6期
关键词:双桨舵机控制算法

陈保国,史春景,王 磊,吴东旭,郝永平

(沈阳理工大学兵器科学技术研究中心,辽宁 沈阳 110159)

0 引言

近年来,随着无人机(UAV,Unmanned Aerial Vehicle)行业的发展,自主飞行控制越来越成为无人机领域研究的热点[1-2]。共轴双桨飞行器(Coaxial Dual Rotor Aircraft)相比于其他机型有着结构紧凑、气动特性对称、推重比大、悬停效率高等优点[3-4]。旋翼折叠后可将整个飞行器放入弹体内,通过炮射或其他方法在短时间内到达指定空域,完成侦查、照明等任务,解决了普通飞行器航程短的问题,在军用方面有着广阔的应用前景[6-7]。

目前,对于共轴双桨飞行器姿态的控制,传统PID控制算法效果不理想[8],诸如基于神经网络和深度学习的现代智能控制算法在仿真过程中有很好的表现,但由于其计算量大,在嵌入式系统中不能做到实时解算,因此难以获得理想的控制效果[9-10]。本文针对上述在共轴双桨飞行器悬停飞行姿态控制过程中存在的问题,提出一种在姿态解耦基础上利用串级PID与模糊控制相结合的半自适应控制算法。

1 飞行器数学建模

在对共轴双桨飞行器姿态稳定算法进行数值模拟仿真之前,建立一个合理准确的数学模型是必不可少的[11]。建模过程中需要用到两个坐标系:地面坐标系E(O,E,N,U)和机体坐标系B(O,X,Y,Z),如图1所示。

对于地面坐标系,其坐标原点位于飞行器起飞点,E,N,U三个坐标轴分别指向东、北和天三个方位;对于机体坐标系,其坐标原点位于飞行器重心,X,Y,Z三个坐标轴分别指向飞行器的前、左和上三个方位。建立飞行器数学模型时本文假定飞行器为刚体,因此其遵循六自由度运动学方程和牛顿-欧拉动力学方程。

1.1 运动学分析

由刚体运动学方程,飞行器在地面坐标系下的线位移与在机体坐标系下的线速度的关系为:

(1)

式(1)中,x,y,z为飞行器在地面坐标系下的线位移;u,v,w为飞行器在机体坐标系下的线速度;φ,θ,ψ为飞行器的姿态角。c*,s*分别表示cos(*),sin(*)。

飞行器的姿态角与的角速度的关系为:

(2)

式(2)中,p,q,r为飞行器在机体坐标系下的角速度。

1.2 动力学分析

根据牛顿-欧拉公式,飞行器的动力学方程为:

(3)

(4)

式(3)、式(4)中,m为飞行器的质量,可直接测得;Fx,Fy,Fz为飞行器所受合力在三个坐标轴上的投影;J为飞行器的转动惯量;Mx,My,Mz为飞行器所受合力矩在三个坐标轴上的投影。

式(3)中飞行器所受的力包括旋翼推力Ti(i∈{up,lw},代表上旋翼和下旋翼)、飞行器重力和机体阻力。本文只研究飞行器悬停飞行过程,飞行器机体阻力较小,可以忽略:

(5)

(6)

|Ti|=KT,iΩ2i

(7)

式(7)中,KT,i为推力系数,可通过试验台试验求得;ai,bi为上下旋翼桨叶纵向/横向挥舞角;Ω为旋翼角速度。

式(4)中飞行器转动惯量为:

(8)

本团队研制的共轴双桨飞行器样机采用对称设计,Jxy,Jyz,Jxz数值非常小,可以忽略;Jxx,Jyy,Jzz为飞行器的固有属性,可在建模软件中对相关零件赋值真实密度直接获得。

式(4)中飞行器所受力矩包括旋翼推力产生的力矩,桨叶挥舞力矩,旋翼阻力矩和旋翼反作用力矩:

(9)

式(9)中,Ii为飞行器重心到上下桨毂的距离,可在样机中直接测量;Ksp,i为上下旋翼桨叶刚度系数,为桨叶固有参数;Qd,i为旋翼阻力矩;Qr,i为旋翼反作用力矩。

上式中上旋翼桨叶挥舞角与平衡杆滞后角有关,下旋翼桨叶挥舞角与倾斜盘角度即舵机输入量有关。由于旋翼转速高,桨叶挥舞角变化区间小,本文假定桨叶挥舞角与平衡杆滞后角和舵机输入量之间为线性关系:

aup=Aa,upθsb+Ab,upφsb+Aup

(10)

bup=Bb,upφsb+Ba,upθsb+Bup

(11)

alw=Aa,lwδele+Ab,lwδail+Alw

(12)

blw=Ba,lwδail+Bb,lwδele+Blw

(13)

式(10)—(13)中,Aa,lw,Bb,lw为舵机输入与挥舞角的同轴比例系数;Ab,lw,Ba,lw为舵机输入与挥舞角的离轴比例系数;Aup,Bup,Alw,Blw为旋翼横向/纵向挥舞补偿量;θsb,φsb为平衡杆的横向和纵向滞后角;δele,δail为纵向和横向控制舵机的输入量。上述各系数与补偿量均可在通过试验台试验获得。

式(10)、式(11)中平衡杆滞后角与飞行器的滚转角和俯仰角有关:

(14)

(15)

式(14)、式(15)中,τsb为时间常数,本文取在悬停速度下旋翼转1/4圈所需要的时间,可通过试验台试验获得。

式(9)中由旋翼角速度产生的阻力矩为:

Qd,up=|Qd,up|[0 0 1]′

(16)

Qd,lw=|Qd,lw|[0 0 -1]′

(17)

|Qd,i|=KQ,iΩ2i

(18)

式(18)中,KQ,i为力矩系数,可通过试验台试验获得;[0 0 1]′,[0 0 -1]′表示上下旋翼阻力矩的方向。

式(9)中由旋翼角加速度产生的反作用力矩为:

(19)

(20)

式(9),式(20)中,Jup,Jlw为上下旋翼相对转轴的转动惯量,可在建模软件中对相关零件赋值真实密度直接获得;[0 0 1]′和[0 0 -1]′表示上下旋翼反作用力矩的方向。

旋翼角速度和角加速度与电机参数和控制量有关,本文研究飞行器悬停飞行过程,旋翼转速变化铰小,可以假定旋翼角加速度与电机输入量的差值成正比:

(21)

式(21)中,Km,i为电机转速系数,可通过试验台试验获得;Δδi为电机本次控制量与前一次控制量的差值。

至此,共轴双桨飞行器的六自由度数学模型建立完毕。建模过程中涉及到较多试验,要搭建多个试验台,需要高速摄像机、测力计、转速表等设备,考虑到篇幅问题,本文不再详细描述。

2 飞行器姿态控制算法

本文针对共轴双桨飞行器悬停飞行过程提出的在姿态解耦基础上利用串级PID与模糊控制相结合的半自适应控制算法主要由三部分组成:姿态解耦器、模糊控制器和PID控制器,其总体结构如图2所示。

2.1 姿态解耦器

对飞行器姿态控制进行解耦可以缩小控制器的控制量区间,在改变飞行器姿态设定值时使控制更加高效。共轴双桨飞行器存在两种耦合:滚转/俯仰与高度的耦合,倾斜盘角度即舵机输入与滚转/俯仰运动的耦合。

飞行器滚转角和俯仰角改变时,旋翼产生的推力在地面坐标系Z轴上的分量也会改变,这就是滚转/俯仰与高度的耦合。因此要保证飞行器飞行高度不变,在给舵机控制量时也要相应给电机控制量,对于这种耦合可以用PID控制器进行补偿。

对于倾斜盘角度即舵机输入量与滚转/俯仰运动的耦合,若给定舵机的控制量未进行调整,飞行器悬停过程中机体会有歪扭现象,这种耦合对飞行器悬停过程影响较大。本文通过对输入量进行基于当前飞行姿态的线性转换进行解耦。由式(12)、式(13)可得出解耦方程:

(22)

(23)

飞行器姿态由解耦器和“控制器”共同控制,在改变飞行器姿态设定值时,解耦器使“控制器”需要产生的控制量减小,同时减小了姿态耦合对姿态控制的影响。

2.2 姿态控制器

对于控制器中的PID控制,采用串级PID。外环PID期望角度值为ra(k),实际角度值为ca(k),控制偏差为:

ea(k)=ra(k)-ca(k)

(24)

其控制规律为:

ua(k)=Kpoea(k)+KIoeai(k)+KDoead(k)

(25)

(26)

ead(k)=ea(k)-ea(k-1)

(27)

式(25)中,Kpo为外环比例系数;KIo为外环积分系数;KDo为外环微分系数。Kpo,KIo,KDo的取值均需要在现场飞行试验过程中整定。

对于内环PID,期望角速度值为外环PID的输出值ua(k),实际角速度值为cv(k),控制偏差值为:

ev(k)=|ua(k)-cv(k)|

(28)

其控制率为:

uv(k)=KPiev(k)+KIievi(k)+KDievd(k)

(29)

(30)

evd(k)=ev(k)-ev(k-1)

(31)

式(29)中,Kpi为内环比例系数;KIi为内环积分系数;KDi为内环微分系数。Kpi,KIi,KDi的取值分为现场整定部分和模糊控制器的输出部分:

Kpi=kp+Δkp

(32)

KIi=ki+Δki

(33)

KDi=kd+Δkd

(34)

式中,kp,ki,kd的取值均需在现场飞行试验过程中整定。Δkp,Δki,Δkd为模糊控制器的输出。

对于模糊控制器,选取偏差E、偏差变化率EC和控制器输出量Δkp,Δki,Δkd的模糊子集为{NL,NM,NS,ZO,PS,PM,PL}将输入量和输出量均量化为7个等级。对于横滚/俯仰控制的模糊论域的取值见表1,航向控制的模糊论域的取值见表2。

表1 横滚/俯仰控制的模糊论域

表2 航向的模糊论域

模糊控制器中,输入变量和输出量均采用高斯隶属度函数,对三个姿态角的控制采用相同的模糊规则,利用“中心-平均”法进行反模糊化。为了能够直观看出控制器输入与输出的立体结果,本文用空间曲面的形式将整个论域上的输出量与输入量之间的函数关系显示出来,在曲面观察器中得到的控制输出的数值空间分布如图3(a),(b),(c)所示,依次为横滚/俯仰控制中Δkp,Δki, Δkd的数值空间分布,航向控制的输出与横滚/俯仰输出在趋势上相同。

由图3可以看出,Δkp的取值随E和EC总体上呈线性变化;当E和EC在0附近时,Δki变化较快,当E和EC绝对值较大时,Δki变化会逐渐变缓;当E和EC在0附近时,Δkd的值变化较慢且基本为0,当E和EC的绝对值较大时,Δkd的值将会近似呈指数型增长。对于该模糊控制器,总体上不同输入产生的输出曲面非常平滑,这说明控制过程没有突变,原理上控制器设计较好。

3 飞行器仿真与实验

为了验证本文提出算法的可行性,首先在数值模拟仿真系统中对算法在原理上的可行性进行了验证。

3.1 仿真系统与样机

在仿真系统中,将飞行器及其控制过程分为五个模块:手动输入模块、自动控制模块、上旋翼模块、下旋翼模块和总体模块,如图4所示。其中,手动输入模块模拟操作员的手动输入和外部干扰,自动控制模块模拟嵌入式控制系统,下旋翼模块负责飞行器下旋翼系统的动力学解算,上旋翼模块负责飞行器上旋翼系统的动力学解算,总体模块负责飞行器整体的运动学解算。

本团队根据项目要求自主研制的共轴双桨飞行器试验样机如图4中整体部分所示,主要分为上旋翼系统、下旋翼系统和动力与传动系统三个部分。上旋翼系统由平衡杆、上旋翼和内传动轴等构成;下旋翼系统由操纵机构动环、下旋翼和外传动轴等构成;动力与传动系统主要由安装台、两个伺服舵机、两个直流无刷电机、嵌入式飞控系统和供电模块等构成。

3.2 仿真结果分析

在数值模拟仿真过程中,前0.2 s对飞行器施加外部干扰,0.2 s之后消除外部干扰,分别得出无控制、采用传统PID控制、采用本文提出的控制和采用神经网络PID控制情况下的飞行器姿态角的变化。仿真过程中飞行器姿态角的期望值均为0,仿真过程姿态角变化的时域描述如图5所示。

由图5可以看出,在给定的外界扰动下,采用传统PID控制,滚转角和俯仰角最大误差值达到了0.018 rad,航向角最大误差值达到了0.073 rad;而采用本文设计的控制算法,滚转角和俯仰角误差约为0.013 rad,航向角误差约为0.025 rad;采用神经网络PID控制,滚转角和俯仰角最大误差值约为0.009 rad,航向角最大误差值约为0.018 rad。采用传统PID,需要1 s左右才能使飞行器达到稳态,而本文设计的控制算法使飞行器达到稳态仅需要约0.3 s,采用神经网络PID控制使飞行器达到稳态也只需要约0.3 s。由仿真结果可以看出,在数值模拟仿真系统中,传统PID控制算法、本文提出的控制算法和神经网络PID控制算法都能够使飞行器的姿态角收敛,但本文提出的控制算法和神经网络PID控制算法能够使姿态角收敛速度更快,在更短时间达到稳态,同时产生的超调量都比采用传统PID控制产生的超调量小。神经网络PID控制算法在抑制误差方面要比本文提出的控制算法略优,在收敛时间方面两者没有太大差别。

数值模拟仿真的结果验证了本文提出的在姿态解耦基础上利用串级PID与模糊控制结合的半自适应控制算法在原理上的可行性。

3.3 现场飞行试验

在数值模拟仿真系统中,神经网络PID控制和本文提出的控制算法都有较好的控制效果,并且神经网络PID要优于本文提出的控制算法。为了验证这两种控制算法在实际应用中的可行性,本文将算法烧录到嵌入式系统中,搭载到本团队自主研制的共轴双桨飞行器样机上进行了现场飞行试验。

对于神经网络PID控制算法,尽管在现场飞行试验中进行了大量参数整定,但最终效果并不理想,过程中甚至出现了促进偏差的控制量。通过调试程序发现这是由于控制程序未完整运行造成的,这可以说明有着较大计算量的智能算法虽然能够在数值模拟仿真系统中表现较好,但是现阶段在运算速度并不是特别快的嵌入式系统中并不适用。

对于本文提出的控制算法,在现场飞行试验中进行一系列参数整定后,飞行器能够较好地实现悬停飞行过程中的姿态稳定,飞行试验中飞行器姿态角的时域描述如图6所示。开始对飞行器施加外部干扰,对飞行器的滚转角、俯仰角和航向角分别造成了约0.1,0.2,0.1 rad的扰动,去除干扰后在本文提出的控制算法的闭环控制下,飞行器的姿态角误差在1 s时间里稳定在了0.03 rad以内,在1.5 s时间里姿态角误差基本为0。

通过对现场飞行试验结果的分析可以发现,虽然外部干扰对飞行器的姿态角产生了较大影响,但是飞行器在本文提出的控制算法的闭环控制下依然能快速恢复稳态。可以说明,对于共轴双桨飞行器在姿态解耦基础上利用串级PID与模糊控制结合的半自适应控制方法能够在嵌入式系统中应用,而且有良好的控制效果。飞行试验验证了该算法在实际应用中的可行性与有效性。

4 结论

本文提出一种在姿态解耦基础上利用串级PID与模糊控制相结合的半自适应控制算法。该算法创新性地在共轴双桨飞行器的姿态控制器中加入了姿态解耦器,并利用模糊控制器实现了PID控制器内环参数的自适应。仿真实验和飞行试验表明,该控制算法在数值模拟仿真系统中比传统PID控制效果要好很多,比神经网络PID控制效果略差,但是在现场飞行试验中神经网络PID由于其计算量较大并不能在嵌入式系统中应用,而本文提出的控制算法却能表现出较好的控制效果。

猜你喜欢
双桨舵机控制算法
基于模型预测控制算法的智能密度控制系统在选煤厂的应用
直升机某型舵机自动测试系统设计分析
让我们荡起双桨
基于Backstepping的非线性无人船航向控制算法
双机、双桨轴系下水前的安装工艺
基于dsPIC单片机的飞艇舵机控制实现
高精度位置跟踪自适应增益调度滑模控制算法
ABS自动优化控制算法及应用
苦普洱
超音速舵机保护器