基于LPV系统的三自由度直升机控制方法与流程

文档序号:13766965阅读:来源:国知局
技术特征:1.三自由度直升机的增益调度控制方法,包括如下步骤:步骤1.建立三自由度直升机系统的LPV模型;1.1,根据三自由度直升机系统的运动特性能够分析其受力情况,首先建立高度轴运动方程。直升机前后电机带动螺旋桨,产生的升力分别为Ff与Fb,升力之和为Fm=Ff+Fb,前后螺旋桨质量相同,mf=mb,配重块质量为mw。根据力矩平衡方程能够得到:Jzϵ..=KfLa(Uf+Ub)cos(p)-Tbcos(ϵ)---(1)]]>Tg为有效重力矩,代表配重块与螺旋桨质量对力矩的影响,表示如下:Tg=mfgLa+mbgLa-mwgLw(2)重力矩是一个常数,而且通过式2可以看出,当我们加长配重块到旋转轴之间的距离Lw就可以消除它的影响,因此建立高度轴运动方程时可以忽略其影响。最后得到高度轴运动方程如下:ϵ··=KfLa(Uf+Ub)Jϵ---(3)]]>为高度轴的旋转加速度;ε为高度角;p为俯仰角;g为重力加速度;Jε为高度轴的转动惯量,单位是Kg·m2;Kf为电机推力系数,单位为N/V;Uf和Ub分别为前后电机的控制输入电压,单位为V;mf为螺旋桨的质量,单位为Kg;mw为配重块的质量,单位为Kg;La为旋转轴到电机的距离,单位为m;Lw为旋转轴到配重块中心的距离,单位为m。1.2,俯仰角的变化是靠两个电机的电压差实现的,当电机存在电压差时,俯仰轴与水平线会存在一个夹角,电机产生的水平方向的力能够引起旋转角的变化。但是对于俯仰角度的控制,却与直升机当前的高度和旋转的角度是无关的,这也说明了当直升机处于运动状态中,我们选择的参数变化时,关于俯仰角的控制策略是不变的。建立俯仰轴运动方程如下:Jpp··=KfLh(Uf-Ub)---(4)]]>为俯仰轴的旋转加速度;Jp为俯仰轴的转动惯量,Jp=2mfLh2,单位是Kg·m2;Lh为俯仰轴到电机中心的距离,单位是m。1.3,同高度轴和俯仰轴类似,建立旋转轴初始运动方程如下所示:Jλλ··=KfLa(Uf+Ub)cos(ϵ)sin(p)+KfLh(Uf-Ub)sin(ϵ)---(5)]]>在这里不能再忽略高度角和俯仰角对旋转角的控制影响,旋转角的变化与它们存在着耦合关系。当我们对旋转角进行控制时,依靠的是俯仰角度的改变,形成横向作用力,实际应用中为了系统稳定性考虑,产生的俯仰角度p是很小的,其实p≈sin(p),为了能准确地建立LPV模型,将运动方程化为如下形式:λ··=KfLa(Uf+Ub)cos(ϵ)Jλp+KfLh(Uf-Ub)sin(ϵ)Jλ---(6)]]>为旋转轴的旋转加速度;ε和p分别为高度角和俯仰角;Jλ为俯仰轴的转动惯量,Jλ=2mfLh2+2mfLa2+mwLw2,单位是Kg·m2。1.4,为了建立三自由度直升机系统的LPV模型,我们定义状态变量x和输入参数u分别如下(7)-(8)所示:xT=ϵpλϵ··p··λ··---(7)]]>uT=[UfUb](8)xT,uT分别为x,u的转置,定义yT输出为高度角、俯仰角和旋转角的矩阵:yT=[εpλ](9)最后根据各个轴的运动方程,建立起的直升机LPV模型如下:x·=Ax+Buy=Cx+Du---(10)]]>其中:A=0001000000100000010000000000000(2mfLa-mwLw)gJλcos(ϵ)0000]]>B=000000KfLaJϵKfLaJϵKfLhJp-KfLhJp00C=100000010000001000D=000000]]>查阅三自由度直升机技术手册,可以得到各个系统参数的值,随之能够计算得到各个轴的转动惯量。其中:Kf=0.1188(N/V)mf=0.713(Kg)mw=1.87(Kg)La=0.660(m)Lh=0.178(m)Lw=0.470(m)Jε=1.034(Kg·m2)Jp=0.045(Kg·m2)Jλ=1.079(Kg·m2)步骤2.设计并应用增益调度控制器2.1,根据步骤1得到三自由度直升机系统的LPV模型,在MATLAB中建立被控系统的计算机模型,为得到增益调度控制器参数做准备,所建立的计算机模型以M语言表示如下:%定义S_0A_0=[000100;000010;000001;000000;000000;000000];B_0=[00;00;00;0.07580.0758;0.4680-0.4680;00];C_0=[100000;010000;001000];D_0=[00;00;00];S_0=ltisys(A_0,B_0,C_0,D_0);%定义S_p1A_p1=[000000;000000;000000;000000;000000;00.56580000];B_p1=[00;00;00;00;00;00];C_p1=[000000;000000;000000];D_p1=[00;00;00];S_p1=ltisys(A_p1,B_p1,C_p1,D_p1,0);由于在实际系统中俯仰角不是任意变化的,当俯仰角较大时,直升机系统旋转角变化速率过快,易导致系统不稳定,因此这里规定俯仰角变化范围为[-π/6,π/6],即可变参数θ∈[0.866,1],θ=cos(ε),且认为可变参数速率建立的直升机系统模型pds_hel如下:%定义参数变化范围range=[0.8661];rate=[-0.50.5];pv=pvec('box',range,rate);pds_hel=psys(pv,[S_0S_p1]);2.2,设计三自由度直升机系统闭环反馈回路,并选择适当的权重函数,加上权重函数后的三自由度直升机闭环系统。选择权重函数并通过M语言建立反馈回路如下:[pdP,nmc]=sconnect('r(3)','e1=r(1)-G(1);e2=r(2)-G(2);e3=r(3)-G(3);K','K:e1;e2;e3','G:K',pol_hel);其中每一个参数均以引号隔开,意义如下:①第一个参数r(3)代表输入信号,同时也指出输入信号的维数。这个系统中只有唯一的输入信号,就是标量参考信号r(3)。②第二个参数分成4部分,分别是e1=r(1)-G(1),e2=r(2)-G(2),e3=r(3)-G(3)以及K。因为我们需要观测系统状态,前面3个部分代表参考信号和直升机系统输出之间的差值,第4部分则代表控制输入u。③第三个参数K:e1;e2;e3不仅定义了控制器的名字,同时也为其指定了输入,控制器输入即为参考信号和直升机输出之间的差值。④其余参数都是成对出现的,并且为回路中的系统定义了输入列表和系统矩阵。G:K表明直升机系统G的输入是控制器K的输出,pol_hel即为系统状态空间模型的多胞形式,可由仿射参数依赖模型转换而来。2.3,计算增益调度控制器参数,搭建控制器Simulink模块。相应的控制器参数能够通过以下语句计算得到:[gopt,pdK]=hinfgs(Paug,nmc)其中pdK中即包含了增益调度控制器的各个参数。2.4,在Simulink中连接控制器模块与三自由度直升机模块,构成反馈回路。三自由度直升机整体硬件构成包括直升机主体、计算机系统、数据采集卡、功率放大器、控制手柄与急停开关。此时能够通过MATLAB给定跟踪信号,经计算机计算得到控制电压后联动官方软件QuaRC将数据写入数据采集卡,然后控制信号流经功率放大器,直接对直升机主体进行控制。外部的数据采集卡还会读取各个自由度编码器数值,作为半实物仿真平台的反馈信息,使整个系统构成闭环回路。当前第2页1 2 3 
当前第2页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1