APP下载

一种基于粒子群算法的小型无人直升机自适应控制

2018-09-12周健王敏洪良

现代电子技术 2018年18期
关键词:粒子群算法

周健 王敏 洪良

摘 要: 针对小型无人直升机飞行时模型的非线性和参数不确定的特点,提出一种自适应控制方法。小型无人直升机模型不确定部分由小脑模型关节控制器(CMAC)神经网络在线补偿,控制律及神经网络参数自适应律由反步法回馈递推得到,并且利用粒子群算法优化控制器固定参数来改善系统动态性能。仿真结果表明,在较大的模型气动参数不确定的情况下,所设计的控制律仍能理想地跟踪飞行指令,同时具有快速的收敛性和良好的鲁棒性。

关键词: 小型无人直升机; 自适应控制; 反步法; 小脑模型关节控制器; 在线补偿; 粒子群算法

中图分类号: TN876?34; TP273 文献标识码: A 文章编号: 1004?373X(2018)18?0117?05

A small?scale unmanned helicopter adaptive control method based on

particle swarm algorithm

ZHOU Jian, WANG Min, HONG Liang

(School of Electronics and Information , Xian Polytechnic University, Xian 710048, China)

Abstract: In allusion to the characteristics of non?linearity and parameter uncertainty of the small?scale unmanned helicopter model during its flight, an adaptive control method is proposed. The uncertainty part of the small?scale unmanned helicopter model is compensated online by the cerebellar model articulation controller (CMAC) neural network. The control law and the adaptive law of the neural network parameter are obtained by means of recursion and feedback of the backstepping method. The particle swarm algorithm is used to optimize fixed parameters of the controller, so as to improve dynamic performance of the system. The simulation results show that the designed control law can still ideally track flight instructions, and has rapid convergence performance and good robustness when big uncertainties exist in pneumatic parameters of the model.

Keywords: small?scale unmanned helicopter; adaptive control; backstepping method; cerebellar model articulation controller; online compensation; particle swarm algorithm

0 引 言

无人直升机具有固定翼无人机无法实现的悬停以及低速巡航等飞行特点,在军事和民用领域中具有广泛的应用前景[1]。由于小型无人直升机具有结构简单、体积小、重量轻和机动性好等特点,使之成为了国内外许多研究机构和院校研制无人直升机系统时首选的研究对象[2]。小型无人直升机涉及先进控制技术、材料技术、信息融合技术以及先进制造技术等前沿技术领域。只有美国、英国、德国、日本等少数发达国家掌握了小型无人直升机系统的设计与试验方法。我国开展无人直升机的研究工作比欧美国家晚。随着遥控模型直升机的不断发展和普及以及国家对无人直升机应用的迫切需求,国内许多高校纷纷开展小型无人直升机的研究工作。通过多年的努力,清华大学等高校针对小型无人直升机开展了相关研究工作并取得了一些成果[3]。

小型无人直升机在结构上与全尺寸直升机略有不同。由于较小机体结构导致了其具有较小的转动惯量,并具有较快的响应速度,使得小型无人直升机的操纵与控制难度增加。飞行控制是小型无人直升机实现超视距自主飞行的关键,飞行控制系统的性能直接影响飞行性能。其中,飞行控制律的设计是小型无人直升机技术难点。小型无人直升机飞行控制包括飞行轨迹控制和飞行姿态控制,轨迹控制又是通过姿态控制来实现的。

针对小型无人直升机动力学模型具有强非线性、高度耦合以及参数不确定性等特点,需采用非线性控制方法进行飞行控制器设计。反步控制设计方法在处理非线性问题特别是级联线性或非线性系统具有优越性,并且在航空航天领域得到了广泛应用[4?6]。

1 小型无人直升机动力学模型

小型无人直升机系统如图1所示[7]。小型无人直升机机体坐标系如图2所示。

忽略对轴向影响较小的气动力导数,构成小型无人直升机姿态控制系统的非线性动力学模型:

[u=-wq+vr+gsin θ+Xm] (1)

[v=-ur+wp-gsin ?cos θ+Ym] (2)

[w=-vp+uq-gcos ?cos θ+Zm] (3)

[p=-qr(Iyy-Izz)Ixx+LIxx] (4)

[q=pr(Izz-Ixx)Iyy+MIyy] (5)

[r=pq(Ixx-Iyy)Izz+NIzz] (6)

[?=p+qsin ?tan θ+rcos ?tan θ] (7)

[θ=qcos ?-rsin ?] (8)

式中:[p],[q],[r]为机体坐标系下的机身角速度;[u],[v],[w]为机体坐标系下的机身速度;[L],[M],[N]为力矩矢量;[θ],[?]为俯仰角和滚转角;[Ixx],[Iyy],[Izz]为机体坐标系下绕轴的转动惯量,其中:

[X=Xm+Xf] (9)

[Y=Ym+Yf+Yt+Yv] (10)

[Z=Zm+Zf+Zh] (11)

[L=Lm+Lv+Lt] (12)

[M=Mm+Mh] (13)

[N=Nm+Nt+Nv] (14)

式中:[(·)m]表示由主旋翼产生的力和力矩;[(·)f]表示由机身产生的力和力矩;[(·)t]表示由尾旋翼产生的力和力矩;[(·)v]表示由水平尾翼产生的力和力矩;[(·)h]表示由垂直尾翼产生的力和力矩。

采用叶素分析法对主旋翼进行气动力分析。小型无人直升机悬停时的主旋翼挥舞方程就可简化为:

[τma1=-a1-τmq+Abb1+B1] (15)

[τmb1=-b1-τmp-Baa1-A1] (16)

式中:[τm=16γΩ]为主旋翼响应的时间常数,[γ]为洛克系数,[Ω]为主旋翼转速;[a1],[b1]为纵向挥舞角和横向挥舞角;[Ab=8γΩ2·kβIb];[Ba=8γΩ2·kβIb];[A1=Blatδlat],[B1=Alonδlon],[A1]和[B1]分别为横向周期变距输入和纵向周期变距输入,[Alon]和[Blat]分别表示为主旋翼横纵向周期变距输入与挥舞角横纵向输出之间的有效增益系数。

定义 [y=x1=θ,?T],[x2=p,qT],[x3=a1,b1T],上述的小型无人直升机的数学模型为:

[x1=f1x1+g1x1x2x2=f2x1,x2+g2x1,x2x3x3=f3x+g3xu] (17)

式中,控制变量[u=δlon,δlatT]为纵向控制输入和横向控制输入。在实际飞行过程中气动参数为多个状态变量的非线性函数,不可能精确已知,因此,可以将不确定函数分为两部分,即标称系统部分和不确定部分,即:

[fi=fi0+Δfi, i=1,2,3gi=gi0+Δgi, i=1,2,3] (18)

2 控制器设计

在设计控制系统之前先给出与系统控制律设计相关的定义和假设[8?10]:

假设1:期望的參考轨迹[yr=x1r=θr,?rT]有界,满足[yr,yr≤cd,cd∈R]为已知的正实数。

假设2:矩阵[g1x1],[g2x1,x2],[g3x]可逆。

首先,引入跟踪误差状态变量:

[z1=y-yr=x1-x1r] (19)

[z2=x2-a1] (20)

式中,[a1]为理想的中间级虚拟控制量。对[z1]求导,可得:

[z1=f1x1+g1x1z2+g1x1a1 +Δ1] (21)

式中,[Δ1=Δf1+Δg1]为非线性广义不确定项。使用小脑模型关节控制器(CMAC)神经网络在线补偿系统不确定项:

[Δ1=wT1v1+ε1=wT1+wT1v1+ε1] (22)

式中:[w1]为期望权值矩阵;[w1]为权值向量矩阵的估计;[w1]为误差权值向量矩阵;[ε1]为理想逼近误差。理想的虚拟控制量为:

[a1=g-11x1-f1x1-k1z1+yr-wT1v1-σ1tanh z1] (23)

式中:[k1,σ1>0]为控制器设计参数,由于实际中非线性不确定项[Δ1]的信息随机且未知,得不到理想的中间级虚拟控制量[a1]。因此用估计值[w1]代替期望权值[w1];[σ1tanh z1]为用以抵消逼近误差[ε1]的影响而设计的鲁棒项,其中用双曲正切函数[tanh(·)]代替符号函数[sgn(·)]以避免控制量的不连续。

将式(23)代入式(21)可得:

[z1=-k1z1+g1x1z2+wT1v1+ε1-σ1tanh z1] (24)

选取Lyapunov函数:

[V1=12zT1z1+12β1trwT1w1]

对[V1]求导可得:

[V1=zT1z1+β-11trwT1w1 =-k1zT1z1+zT1g1x1z2+zT1wT1v1+ zT1ε1-zT1σ1tanh z1+β-11i=12wT1iw1i] (25)

选择神经网络自适应律:[w1i=-β1z1iv1],其中[0<β1<2],将其代入式(25):

[V1=-k1zT1z1+zT1g1x1z2+zT1wT1v1+ zT1ε1-zT1σ1tanh z1-i=12wT1iz1iv1] (26)

式中:[w1i]下标1表示第1步误差权值向量矩阵,[i]表示其中的[i]个列向量;[v1]表示第一步m维相联空间A中的向量;[z1i]下标1表示第1步得到到输出误差向量,[i=1,2,…,n]。通过推导可以得到:[zT1w1v1=i=1nwT1iz1iv1],将其代入式(26)中:

[V1=-k1zT1z1+zT1g1x1z2+zT1ε1-zT1σ1tanh z1] (27)

由于[a1]不是最终的控制信号,需要进行第二步设计,对[z2]求导:

[z2=f2x1,x2+g2x1,x2z3+ g2x1,x2a2+Δ2-a1] (28)

式中,[Δ2=Δf2+Δg2]为非线性广义不确定项,使用神经网络在线补偿系统不确定项:

[Δ2=wT2v2+ε2=wT2+wT2v2+ε2] (29)

式中:[Δ2=Δ2-a1];[w2=w2-w2]。

选取中间级虚拟控制量[a2]:

[a2=g-12x1,x2-f2x1,x2-k2z2- gT1x1z1-wT2v2-σ2tanh z2] (30)

将式(30)代入式(28)中:

[z2=-k2z2-gT1x1z1+g2x1,x2z3+ wT2v2+ε2-σ2tanh z2] (31)

为了使系统稳定,再次选取Lyapunov函数:

[V2=V1+12zT2z2+12β2trwT2w2]

选择神经网络自适应权值调整规则:[w2i=-β2z2iv2],其中[0<β2<2]。对[V2]求导可得:

[V2=V1+zT2z2+β-12trwT2w2 =-k1zT1z1-k2zT2z2+zT1ε1+zT2ε2+zT2g2x1,x2z3+ zT2wT2v2-zT1σ1tanh z1-zT2σ2tanh z2-i=12wT2iz2iv2] (32)

与第一步推导过程相同且可得:[zT2w2v2=][i=12wT2iz2iv2], 将其代入式(32)中:

[V2=-i=12kizTizi+i=12zTiεi+ zT2g2x1,x2z3-i=12zTiσitanh zi] (33)

定义虚拟反馈误差[z3=x3-a2],并对[z3]求导,可得:

[z3=x3-a2=f3x+g3xu+Δ3-a2] (34)

式中,[Δ3=Δf3+Δg3]為非线性广义不确定项。设计神经网络在线逼近系统不确定性:

[Δ3=wT3v3+ε3=wT3+wT3v3+ε3] (35)

式中:[Δ3=Δ3-a2];[w3=w3-w3]。

设计系统控制输入:

[u=g-13x-f3x-k3z3-gT2x1,x2z2- wT3v3-σ3tanh z3] (36)

由于[Δ3]期望权值[w3]未知,得不到理想的控制输入[u],因此用估计值[w3]代替期望权值[w3]。

将式(36)代入式(34)中:

[z3=f2x+g3xu+Δ3 =-k3z3-gT2x1,x2z2+wT3v3+ε3-σ3tanh z3] (37)

为了使系统稳定,需再次选取Lyapunov函数:

[V3=V2+12zT3z3+12β3trwT3w3]

选择神经网络自适应权值调整规则:[w3i=-β3z3iv3],其中,[0<β3<2]。对[V3]求导可得:

[V3=V2+zT3z3+β-13trwT3w3 =-i=13kizTizi+i=13zTiεi- i=13zTiσitanh zi+zT3wT3v3-i=12wT3iz3iv3] (38)

与第一步推导过程相同且可得:[zT3w3v3=][i=12wT3iz3iv3],将其代入式(38)得:

[V3=-i=13kizTizi+i=13zTiεi-i=13zTiσitanh zi] (39)

根据式(39)可知,当选择[σi>εij]时,有:

[V3=-i=13kizTizi+i=13zTiεi-σitanh zi<0] (40)

由于[V3<0],所以[V3]渐近收敛于零,即[z1],[z2],[z3]渐近收敛于零,系统的实际输出渐近收敛于期望输出[yr]。

3 优化算法

在上述控制律的设计中,需要选择[k1],[k2],[k3],[β1],[β2]和[β3]等参数,选择非常耗时,任务量大。粒子群优化算法作为一种随机搜索算法,被广泛应用于参数寻优[11?12],基于粒子群算法寻优控制律设计中的固定参数步骤如下:

1) 初始化粒子群基本参数,包括粒子维数、粒子规模、惯性权值、加速度常数等;

2) 根据优化问题的维数和范围,随机初始化粒子的位置和速度,并根据目标函数式(41)计算初始粒子群的适应度,初始化粒子的个体极值和全局极值;

[J=i=1pyit-ycit] (41)

3) 更新粒子的速度和位置,并把粒子的速度限制在优化问题所规定的范围内;

4) 计算粒子的目标函数值,并更新粒子的个体极值和群体的全局极值;

5) 检验算法是否满足终止条件,若满足,转向步骤6),输出最优解;否则转到步骤3)。粒子群优化算法终止条件为:算法达到最大迭代次数或者粒子全局极值的适应度函数值达到了给定的算法精度;

6) 算法终止,返回优化参数。

4 仿真验证与分析

选取小型无人直升机飞行仿真初始状态为稳定悬停状态,即[V0=0 m/s],[θ0=?0=0°],飞行高度[h0=200 m]。

取参考指令信号:[yr=θ,?T=25°,10°],[t∈3,9],其他时刻为配平值。为了避免跟踪指令发生阶跃突变,在参考指令信号后增加了一个时间常数为[0.1 s]的一阶惯性滤波器得到期望的跟踪指令。图3、图4分别为所设计的姿态控制器俯仰和滚转通道跟踪响应输出曲线,图5是横纵向控制输入曲线。图中,实线是期望的命令值,虚线是实际值。

图3、图4中:俯仰角[θ]和滚转角[?]能够快速、准确地跟踪参考指令,跟踪的俯仰角最大误差小于[2.58°],滚转角最大误差小于[1.26°];角速率[p],[q]响应在合理的范围内;当姿态发生变化后,横向和纵向的速度[u],[v]发生变化,但在姿态参考指令恢复初始状态后又趋于稳定。因此,由仿真结果可知,所设计的姿态控制器能够快速、准确地跟踪参考指令,具有较小的跟踪误差,并且挥舞角[a1,b1]和控制输入[δlat,δlon]的响应信号均在有效的控制输入之内。

5 结 论

本文以自主研制的小型无人直升机为研究对象,提出一种基于粒子群算法的自适应控制方法用以解决小型无人直升机飞行过程中存在的模型非线性和参数不确定性问题。通过数值仿真,即使在较大的系统建模误差条件下,该控制器仍然可以理想地跟踪参考指令,响应迅速,过渡过程良好,具有较好的鲁棒性。采用粒子群算法寻优控制器固定参数提高了控制器设计效率,改善了系统稳态性。

参考文献

[1] KENDOUL F. Nonlinear hierarchical flight controller for unmanned rotorcraft: design, stability, and experiments [J]. Journal of guidance, control, and dynamics, 2012, 32(6): 1954?1958.

[2] CAI G, CHEN B M, LEE T H. An overview on development of miniature unmanned rotorcraft systems [J]. Frontiers of electrical and electronic engineering in China, 2010, 5(1): 1?14.

[3] 王冠林,史海庆,谭洪胜,等.旋翼空中机器人系统架构及设计[J].计算机工程与应用,2010,46(27):66?69.

WANG Guanlin, SHI Haiqing, TAN Hongsheng, et al. Implementation and design of rotorcraft aerial robot system [J]. Computer engineering and applications, 2010, 46(27): 66?69.

[4] ZOU Y, ZHENG Z. A robust adaptive RBFNN augmenting backstepping control approach for a model?scaled helicopter [J]. IEEE transactions on control systems technology, 2015, 23(6): 2344?2352.

[5] CHANG Guanqing, QIAN Hanbo, FAN Guoliang, et al. Adaptive fuzzy backstepping control for a miniature helicopter [C]// Proceedings of IEEE International Conference on Automation and Logistics. Hong Kong and Macau: IEEE, 2010: 451?456.

[6] LIN F J, SHIEH P H, CHOU P H. Robust adaptive backstepping motion control of linear ultrasonic motors using fuzzy neural network [J]. IEEE transactions on fuzzy systems, 2008, 16(3): 676?692.

[7] 周健,洪良,李文超.小型单旋翼无人直升机系统的设计与实现[J].西安工程大学学报,2014,28(5):626?630.

ZHOU Jian, HONG Liang, LI Wenchao. Design and implementation of small?scale single rotor unmanned helicopter system

[J]. Journal of Xian Polytechnic University,2014, 28(5): 626?630.

[8] YAGIZ N, HACIOGLU Y. Backstepping control of a vehicle with active suspensions [J]. Control engineering practice, 2008,

16(12): 1457?1467.

[9] OZBAY U, ZERGEROGLU E, SIVRIOGLU S. Adaptive backstepping control of variable speed wind turbines [J]. International journal of control, 2008, 81(6): 910?919.

[10] ZHOU H B, PEI H L, ZHAO Y. Trajectory tracking control of a small unmanned helicopter using MPC and backstepping [C]// Proceedings of American Control Conference. San Francisco: IEEE, 2011: 1593?1597.

[11] 孙勇,章卫国,章萌.基于神经网络的反步自适应大机动飞行控制[J].系统工程与电子技术,2011,33(5):1113?1117.

SUN Yong, ZHANG Weiguo, ZHANG Meng. Backstepping adaptive high maneuvers flight control based on neural network [J]. Systems engineering and electronics, 2011, 33(5): 1113?1117.

[12] 刘少华,周志久,段征宇.战斗性机动飞行的智能反步自适应控制[J].飞行力学,2011,29(6):22?25.

LIU Shaohua, ZHOU Zhijiu, DUAN Zhengyu. Intelligent backstepping adaptive control of aggressive maneuvers flight [J]. Flight dynamics, 2011, 29(6): 22?25.

猜你喜欢

粒子群算法
几种改进的萤火虫算法性能比较及应用
基于支持向量机的短期电力负荷预测
基于云计算平台的资源调度优化研究
蚁群算法的运用及其优化分析
电力市场交易背景下水电站优化调度研究
基于粒子群算法的产业技术创新生态系统运行稳定性组合评价研究
无线传感器网络联盟初始结构生成研究
交通堵塞扰动下多车场车辆路径优化
大型风电机组组合式塔架结构优化设计