无人直升机串级LADRC控制器设计及其视景仿真实现
来源:用户上传
作者:
摘 要: 针对无人直升机控制器严重非线性、强耦合的控制问题,该文基于亚拓600系列无人直升机动力学模型,设计一种改进的二阶线性自抗扰控制器。先将跟踪微分器添加到线性扩张状态观测器中,并估计影响输出结果的干扰;其次改进控制器结构与反馈补偿系数,同时针对传统仿真系统难以适应飞行控制器仿真需要的问题,完成对包括飞行控制器、视景平台的升级改进,并针对飞行控制器和视景仿真平台之间的通信交互机制进行了详细设计,使之完全等效于实际飞行场景。仿真结果表明,该系统飞行控制模块能够快速响应所输入的指令,并能够按设定的角度位置进行飞行,三维视景中直观显示所设计的控制器对于无人直升机的姿态位置有较好的控制效果。
关键词: 线性自抗扰控制器; 飞行控制器; 无人直升机; 三维视景仿真; Matlab引擎; 姿态位置控制
中图分类号: TN972?34; TP391 文献标识码: A 文章编号: 1004?373X(2020)02?0101?05
Design and visual simulation of cascade LADRC for unmanned helicopter
LIU Zequn, DAI Jiyang, YING Jin, HU Feng
Abstract: An improved second?order LADRC is designed based on the dynamics model of the Align 600 series unmanned helicopter to solve the serious nonlinearity and strong coupling control of the unmanned helicopter controller. The tracking differentiator is added to the linear extended state observer and the interference affecting the output is estimated. The controller structure and feedback compensation coefficient are improved. At the same time, in allusion to the problem that the traditional simulation system is difficult to adapt to the needs of flight controller simulation, the upgrade and improvement including the flight controller and the vision platform are completed. The communication interaction mechanism between the flight controller and the visual simulation platform is designed in detail to make it completely equivalent to the actual flight scene. The simulation results show that the flight control module of the system can respond quickly to the input commands, and fly according to the set angular position. The designed controller can be displayed visually in 3D scene, which has good control effect for the attitude position of the unmanned helicopter.
Keywords: LADRC; flight controller; unmanned helicopter; 3D visual simulation; OSG; Matlab engine; attitude position control
0 引 言
无人直升机是一种多输入多输出的非线性系统,具有强耦合性的六自由度刚体[1],执行飞行任务时对其响应时间及稳定性要求很高。此外,无人直升机极易受到外界的干扰,这也对无人直升机飞行控制器的设计带来困难。文献[2?6]在自抗扰控制器的基础上,提出线性自抗扰控制器(LADRC),不仅有良好的跟踪效果和抗干扰能力,而且算法简单易实现,需要调节的参数也较少。在文献[7]的基础上,本文采用线性扩张状态观测器,增加跟踪微分器,并改进线性自抗扰控制器的结构与反馈补偿系数,对亚拓600直升机的姿态角进行控制,通过对比分析文献[7]中模糊PID控制系统与本文控制系统的仿真实验结果发现,改进后的控制器具有更快的响应时间和更小的跟踪误差。同时在OpenSceneGraph平台上搭建一个无人机三维视景仿真平台,用所设计的飞行控制器的输出驱动视景仿真,验证所设计的飞行控制器的控制效果。
1 无人直升机串级LADRC控制器的设计
1.1 无人直升机数学模型 本文通过分析无人直升机的动力学特性,分别计算出无人直升机的主旋翼、尾旋翼、平尾、垂尾及机身的气动力与力矩,然后将这些力与力矩的合成值输入到直升机运动方程中,得出无人直升机的非线性模型:
[uvwpqrφθψ=vr-wq-gsin θ+Fxm-ur+wp+gcos θsin φ+Fymuq-vp+gcos θcos φ+Fzmqr(Iyy-Izz)Ixx+LIxxrp(Izz-Ixx)Iyy+MIyypq(Ixx-Iyy)Izz+NIzzp+(qsin φ+rcos φ)tan θqcos φ-rsin φ(qsin φ+rcos φ)sec θ] (1)
式中:[u],[v],[w]是机体线速度;[p],[q],[r]是机体欧拉角速度;[φ],[θ],[ψ]是欧拉角;[L],[M],[N]为三轴的力矩;[Fx],[Fy],[Fz]是直升机机体合力在三个坐标轴的分力。
同时采用小扰动法对无人直升机非线性模型进行线性化。由此方法可得直升机在机体轴系下的增量线性状态方程。
[ΔX=AΔX+BΔδ] (2)
式中:
[ΔX=Δu Δv Δw Δp Δq Δr Δφ Δθ Δψ a1 b1T] (3)
[Δδ=ΔδlatΔδlonΔδpedΔδcolT] (4)
并将其写成状态空间方程的形式,便可得到系统矩阵[A]与输入矩陣[B];[Δδlat],[Δδlon],[Δδped]和[Δδcol]分别表示旋翼横向周期变距、纵向周期变距、尾桨总距和主旋翼总距。并将参考文献[8]中亚拓600直升机的各个参数代入到矩阵[A]和矩阵[B]中,便得到了亚拓600直升机悬停状态下的线性化模型。
1.2 改进线性自抗扰控制设计
本文采用二阶线性自抗扰控制LADRC设计无人直升机的控制器,在文献[7]的基础上加入了跟踪微分器用来获得微分信号,并设计了新的控制器结构,同时改进反馈补偿系数。主要由两部分模块组成:跟踪微分器和线性扩张状态观测器。共有跟踪微分器中的参数:[r],[h],[T];线性扩张状态观测器中的参数:[wo],[bo];反馈补偿回路中的参数:[wo],[wc],[kd]等七个参数需要整定。改进后的控制器结构如图1所示,其中[v]为系统输入,[y]为系统输出。
1.2.1 跟踪微分器
离散型微分跟踪器表达式如下:
[X1(k+1)=X1(k)+TX2(k)X2(k+1)=X2(k)+Tfhan(X1(k),X2(k),u(k),r,h)] (5)
式中:[X1(k+1),X2(k+1)]为分别跟踪输入值[u]和其微分值的两个输出量;T为采样周期;r决定跟踪速度的快慢;h对扰动有一定的滤波效果;fhan函数为非线性函数。常用在自抗扰控制技术中,该函数的表达式如下:
[Y=X1+hX2d=rhd0=hda0=d2+8rYa=X2+a0-d2sign(Y),Y>d0X2+Yh, Y≤d0fhan=-rsign(a),a>d-rad, a≤d] (6)
1.2.2 线性扩张状态观测器
在控制器中可采用二阶线性扩张状态观测器来表示姿态角的运动[9],其表达式如下:
[z1=z2-β01z1+β01yz2=z3-β02z1+β02y+bouz3=-β03z1+β03y] (7)
该方程的特征方程为[s3+β01s2+β02s+β03],并将其配置成[s+wo3]的形式,其中参数[β01],[β02],[β03]分别赋值为[3wo],[3w2o],[w3o]。式中[wo]为观测器的带宽,即LESO仅需整定[wo]和[bo]两个参数。观测器的状态空间方程为:
[z1z2z3=-3wo10-3w2o01-3w3o00z1z2z3+03wobo3w2o03w3ouy] (8)
1.3 无人直升机飞行控制器设计
本文所设计的一种串级线性自抗扰控制器,是将无人直升机模型的4个总距输入通道[Δδcol],[Δδlat],[Δδlon],[Δδped]与9个输出值[p],[q],[r],[u],[v],[w],[θ],[φ],[ψ]作为测量与研究的变量,与LADRC控制器形成了三个环节的控制。其中:[p],[q],[r]为三个飞行线速度变量;[u],[v],[w]为三个姿态角度变量;[φ],[θ],[ψ]为三个姿态角变量。该控制器包括姿态角度的控制环、线速度的控制环和位置的控制环。首先给定无人直升机一个飞行指令,然后获得飞行的姿态和速度等,再将姿态和速度等反馈给控制器所对应的环节,使无人直升机不断地更新自身的速度与位置,串级LADRC的无人直升机控制系统总结构图如图2所示。
1.3.1 姿态控制器
无人直升机的位置速度会随着姿态的变化而变化,姿态角随着角速度的变化而变化。本文采用三个二阶的线性自抗扰控制器分别对横滚角通道、俯仰角通道与偏航角通道三个通道进行控制,定义[f1],[f2],[f3]分别为对应的三个通道的总扰动,则姿态角的控制器表达式如下:
[φ(2)=f1+B1Δulatθ(2)=f2+B2Δulonψ(2)=f3+B3Δuped] (9) 式中,[B1],[B2],[B3]分别为横向周期变距、纵向周期变距以及尾桨变距的控制增益。
除以上三通道的控制,还需要单独对偏航角[ψ]进行计算。偏航角的目标输入值可由以下计算方程获得:
[ψ=2π-arccos(dxD), dx≤0,dy>0arccos(dxD), dx<0,dy≤0π+arccos(dxD), dx≥0,dy>0π-arccos(dxD), dx>0,dy≤0] (10)
式中:[D]表示无人直升机距离目标点的直线距离。
[D=(dx)2+(dy)2]
式中,[dx=xt-x],[dy=yt-y],表示为无人直升机当前的位置与目标点位置[x]轴与[y]轴上的误差。
1.3.2 线速度控制器
线速度控制器作用是将直升机飞行运动时的线速度[u],[v],转换成对应的无人直升机姿态角[φ],[θ],并将得到的角速度输入到姿态环中,再将[z]轴上的线速度[w]转换成主旋翼总距输入参量[Δucol],采用三个二阶线性自抗扰控制器分别对三个线速度通道进行控制。定义[f4],[f5],[f6]表示对应的三个通道的总扰动,则线速度的控制器表达式如下:
[u(2)=f4+B4φv(2)=f5+B5θw(2)=f6+B6Δucol] (11)
式中,[B4,B5,B6]分别为滚转角、俯仰角和总距通道的控制增益。
1.3.3 位置控制器
三坐标轴的坐标信息分别对应三个坐标轴方向的线速度,并形成相对应的输入输出关系,本文使用三个二阶线性自抗扰控制器来控制对应的三个位置通道,定义[f7],[f8]与[f9]分别为对应的三个通道的总扰动,则位置控制器的表达式如下:
[x(2)=f7+B7uy(2)=f8+B8vz(2)=f9+B9w] (12)
式中,[B7,B8,B9]分别为三轴线速度的控制增益。
2 视景仿真系统实现
2.1 视景系统组成结构
本研究根据实际开发需求和所设计的姿态控制算法,将系统分为3ds MAX模型建立、OpenSceneGraph场景渲染和飞行控制器仿真三个模块。利用VC++结合三个模块进行编程。其框图如图3所示,OpenSceneGraph和3ds MAX间的数据类型有所区别,需要使用OSGExp(OSG的一个扩展模块)来解决双方的数据传递问题。
2.2 视景系统功能
视景系统功能如下:
1) 能够提供真实的飞行场景与天空穹顶。天空盒是一种创建背景图像的方法。它使用立方体来显示天空、山脉和海洋,有时也可以由球体或半球构成的(称为穹顶)。它可以为用户应用创建逼真的3D环境。与单个背景图像相比,提供了丰富的特征。因此本研究采用的是半球体穹顶天空盒。
2) 提供多线程的数据传递。视景系统中通过调用Matlab计算引擎在后台完成C++和Matlab的数据互通[10]。通过Matlab的引擎库中的接口函数,可以直接在本系统中以计算引擎的方式调用Matlab/Simulink文件。
3) 具有多方位的视口观察。不同方位的视点可以使用户从全局和局部观察整个三维仿真的运行,本系统采用OSG中的CompositeViewer函数来创建多视口,可以从全方位实时观察三维仿真的情况。该函数负责多个视图的管理及同步工作,继承自osgViewer::ViewerBase类。对于osgViewer:: CompositeViewer,它内部已经包含了多个视图osg::View。
3 无人直升机串级LADRC控制器视景仿真验证
根据系统的设计要求,应用本文所述技术,针对亚拓600型无人直升机,设计并实现了一个串级LADRC控制器控制器。通过改变参数[ra,h,wc,w0,b0]来控制无人直升机的姿态、速度与位置的变化。给定直升机的三个姿态角[φ,θ,ψ]固定角度1°,三个线速度固定的速度值3 m/s,三个坐标固定的位置5 m,通过改变参数,得到姿态角、线速度、三坐标值达到目标值最优响应。
基于以上无人直升机的串级LADRC控制器与参数的给定,同时为了检测该飞行控制器的性能,给无人直升机位置控制通道输入一个随时间上升的螺旋曲线,该曲线的表达式为:
[x=cos ty=sin tz=-t] (13)
通过Matlab仿真得到了无人直升机跟踪上升螺旋曲线的仿真结果图,如图4所示。
通过传统仿真图5可以看出,无人直升机可以快速且较准确地跟踪上升螺旋曲线。由图6~图8可知,在整个跟踪过程中,偏航角从定义的初始角度360°一直向左偏转,从360°减到0°,逐次环绕。并通过视景仿真系统验证,由上至下依次为不同时间点的系统整体效果图。经过测试验证表明,串级LADRC控制器控制具有良好的控制效果,使无人直升机具有较快速的响应时间。仿真系统各项功能正常,达到了预期設计目标。
4 结 语
本文通过建立的亚拓600系列无人直升机动力学模型,在常规的LADRC控制器中加入跟踪微分器TD,并改进控制器的结构,然后设计了无人直升机的姿态角控制模块、线速度控制模块与位置控制模块,同时设计飞行三维视景仿真系统,能够为控制器的仿真提供真实直观的飞行状态。
最终通过调节控制器参数,给无人直升机输入位置指令,进行无人直升机的飞行轨迹跟踪视景仿真。通过观察分析仿真结果可以看出,串级LADRC控制器有良好的控制效果,使无人直升机有较快速的响应时间;同时设计的视景仿真平台能够在满足系统设计对响应延迟等参数要求的条件下达到良好的视觉效果。 参考文献
[1] DAI Bo, HE Yuqing, ZHANG Guangyu. Acceleration feedback enhanced h∞ control of unmanned aerial vehicle for wind disturbance rejection [J]. Journal of guidance control & dynamics, 2018, 33(4): 1236?1250.
[2] WU Zhenlong, LI Donghai, HE Ting. A comparison study of a high order system with different ADRC control strategies [C]// 2018 37th Chinese Control Conference. Wuhan: IEEE, 2018: 1429?1434.
[3] YUAN Y, ZHANG K. Design of a robust guidance law via active disturbance rejection control [J]. Journal of systems engineering and electronics, 2015, 26(2): 353?358.
[4] 丁力,马瑞,单文桃,等.小型无人直升机航向线性自抗扰控制[J].农业机械学报,2017,48(5):22?27.
[5] WANG X Y, WANG F, WEI W. Linear active disturbance rejection control of dissolved oxygen concentration based on benchmark simulation model number 1 [J]. Mathematical problems in engineering, 2015(4/5): 1?9.
[6] 吴超,王浩文,张玉文,等.基于LADRC的无人直升机轨迹跟踪[J].航空学报,2015,36(2):473?481.
[7] 夏慧.小型无人直升机的模型辨识与鲁棒控制技术研究[D].南京:南京理工大学,2015.
[8] LI D, WU H T, YAO Y. Chaotic artificial bee colony algorithm for system identification of a small?scale unmanned helicopter [J]. International journal of aerospace engineering, 2016(3): 1?11.
[9] 韩京清.自抗扰控制技术:估计补偿不确定因素的控制技术[M].北京:国防工业大学出版社,2009.
[10] 刘维.精通Matlab与C/C++混合程序设计[M].北京:北京航空航天大学出版社,2015.
作者简介:刘泽群(1995—),男,江西景德镇人,硕士研究生,主要研究领域为智能控制技术与视景仿真。
代冀阳(1966—),男,湖北黄梅人,教授,博士生导师,主要研究领域为鲁棒控制理论及应用、智能控制技术及其应用、飞行器控制、航空发动机控制。
转载注明来源:https://www.xzbu.com/8/view-15122188.htm