使用μ综合控制的飞机横向轴
这个例子展示了如何使用mu-analysis鲁棒控制工具箱™和合成工具。它描述了一个鲁棒控制器的设计飞机的横向轴驱动方式着陆。获得的线性化模型飞机的迎角10.5度和速度140节。
性能规格
下面的插图显示了一个闭环系统的框图。图中包括名义飞机模型,控制器K
,以及元素捕获模型不确定性和性能目标(有关详细信息,请参阅下一节)。
图1:鲁棒控制设计对飞机横向轴
设计目标是使飞机有效应对飞行员的侧杆和舵踏板输入。性能规格包括:
侧杆解耦的回应
p_cmd
对滚转率p
从舵踏板beta_cmd
侧滑角β
。侧杆和舵踏板+ / - 1英寸的最大挠度。飞机处理质量(总部)反应侧滚转率
p
应与一阶响应。
特遣部队(HQ_p = 5.0 * 2.0, 2.0 [1]);步骤(HQ_p)、标题(从横向的期望响应坚持滚转率(处理质量))
图2:从横向坚持滚转率所需的响应。
飞机舵踏板的处理质量响应侧偏角
β
应该匹配阻尼二阶响应。
特遣部队(HQ_beta = -2.5 * 1.25 ^ 2, [1 2.5 - 1.25 ^ 2]);步骤(HQ_beta)、标题(的预期反应舵踏板侧偏角(处理质量))
图3:期望的反应舵踏板侧滑角。
稳定剂致动器+ / - 20度,+ / - 50度/ s限制他们的偏转角和挠度。舵传动装置有+ / - 30度,+ / -60度/ s偏转角度和速度限制。
三个测量信号(滚转率
p
,偏航率r
和横向加速度yac
通过二阶反锯齿过滤器过滤:
频率= 12.5 *(2 *π);% 12.5赫兹ζ= 0.5;yaw_filt =特遣部队(频率^ 2,[1 2 *ζ*频率频率^ 2]);lat_filt =特遣部队(频率^ 2,[1 2 *ζ*频率频率^ 2]);频率= 4.1 *(2 *π);% 4.1赫兹ζ= 0.7;roll_filt =特遣部队(频率^ 2,[1 2 *ζ*频率频率^ 2]);AAFilters = append (roll_filt yaw_filt lat_filt);
从规范权重函数
h∞设计算法寻求最小化最大闭环增益频率(h∞范数)。应用这些工具,我们必须首先重新设计规范约束闭环增益。我们使用加权函数“正常化”规范在频率和同样重量的每一个要求。
我们可以表达设计规格的加权函数如下:
捕捉动挠度大小和利率的限制,选择一个对角线,恒重
W_act
,对应于稳定剂和舵偏转率和偏转角度的限制。
W_act = ss(诊断接头([1/50,1/20,1/60,1/30]));
使用3 x3的对角线,高通滤波器
W_n
模型的频率内容滚转角速度传感器噪声,偏航率、横向加速度通道。
W_n = append(0.025,特遣部队(0.0125 * [1],[100]),0.025);clf bodemag (W_n(2, 2))、标题(的传感器噪声能力作为频率的函数)
图4:传感器噪声功率作为频率的函数
从横向坚持响应
p
从舵踏板β
应该匹配处理质量目标HQ_p
和HQ_beta
。这是一个模型匹配目的:最小化之间的区别(峰值增益)预期的和实际的闭环传递函数。性能是有限的模型中由于右半边平面零0.002 rad / s,所以准确的跟踪正弦信号低于0.002 rad / s是不可能的。因此,我们将重量第一处理质量规范与带通滤波器W_p
0.06强调之间的频率范围和30 rad /秒。
W_p =特遣部队([0.05 2.9 105.93 6.17 0.16],[1 9.19 30.80 18.83 3.95]);clf bodemag (W_p)、标题(“处理质量规格重量”)
图5:体重对处理质量规范。
同样,选择
W_beta = 2 * W_p
第二处理质量规范
W_beta = 2 * W_p;
我们按比例缩小的权重W_act
,W_n
,W_p
,W_beta
所以所有的外部输入和之间的闭环增益加权输出频率小于1。
名义上的飞机模型
飞行员可以指挥飞机的横向响应侧杆和舵踏板。飞机具有以下特点:
两个控制输入:微分稳定器偏转
delta_stab
度,和舵偏转delta_rud
在度。三个测量输出:滚转率
p
度/秒,偏航率r
度/秒,横向加速度yac
在g的。一个计算输出:侧偏角
β
。
名义上的横向方向模型LateralAxis
有四个州:
横向速度
v
偏航率
r
滚转率
p
横摇角
φ
这些变量是相关的状态空间方程:
在哪里x = [v;r;p;φ)
,u = [delta_stab;delta_rud]
,y =[β;p;r;yac]
。
负载LateralAxisModelLateralAxis
LateralAxis = = v r p vφ-0.116 -227.3 43.02 31.63 0.00265 -0.259 -0.1445 0.1853 0 pφ-0.02114 0.6703 -1.365 0 0 1 0 B = delta_stab delta_rud vφ0.0622 - 0.1013 -0.04666 - 0.003644 -0.005252 - -0.01121 r p 0 0 C = v r p phi beta 0.2469 0 0 0 r p 57.3 0 0 0 0 0 0 yac -0.002827 -0.007877 0.05106 0 D = 57.3 delta_stab delta_rudβ0 0 r p 0 0 0 0 yac 0.002886 - 0.002273连续时间状态空间模型。
完整的机体模型还包括致动器模型现代
和A_R
。致动器的输出是各自的偏转速度和角度。致动器率是用来惩罚驱动工作。
现代=[特遣部队(25[0],[1]25日);特遣部队(25、25 [1])];现代。OutputName = {“stab_rate”,“stab_angle”};A_R =现代;A_R。OutputName = {“rud_rate”,“rud_angle”};
占建模错误
名义模型只有真正接近飞机的行为。占未建模动态,你可以介绍一个相对的概念或乘性不确定性W_in * Delta_G
在植物的输入,动态的错误Delta_G
频率范围内获得小于1,权重函数W_in
反映了模型的频率范围或多或少是准确的。通常有更多的建模错误在高频率W_in
是高通。
%归一化误差动力学Delta_G = ultidyn (“Delta_G”(2 - 2),“约束”,1.0);%频率误差形成动力学w_1 =特遣部队(2.0 * 4 [1],[160]);w_2 =特遣部队(1.5 * 20 [1],[200]);W_in = append (w_1 w_2);bodemag (w_1“- - -”w_2,“——”)标题(名义模型的相对误差作为频率的函数)传说(“稳定器”,“舵”,“位置”,“西北”);
图6:相对误差在名义飞机模型作为频率的函数。
构建一个不确定的飞机动力学模型
现在我们有了量化建模错误,我们可以建立一个不确定的飞机动力学模型对应于图7中的虚线框一样(图1):
图7:飞机动力学。
使用连接
函数结合名义机身模型LateralAxis
,致动器模型现代
和A_R
和建模错误描述W_in * Delta_G
到一个不确定的模型Plant_unc
映射[delta_stab;delta_rud]
致动器和植物输出:
%执行机构模型建模的不确定性A_R Act_unc = append(现代)*(眼(2)+ W_in * Delta_G);Act_unc。InputName = {“delta_stab”,“delta_rud”};%名义飞机动力学Plant_nom = LateralAxis;Plant_nom。InputName = {“stab_angle”,“rud_angle”};%连接两个子系统输入= {“delta_stab”,“delta_rud”};输出=[现代。y;A_R。y;Plant_nom.y];Plant_unc =连接(Plant_nom Act_unc、输入、输出);
这产生一个不确定的状态(USS)模型Plant_unc
飞机:
Plant_unc
不确定连续系统的状态空间模型8输出,2输入,8个州。模型不确定性包含以下模块:Delta_G:不确定的2 x2 LTI,峰值增益= 1,Plant_unc 1事件类型”。NominalValue”的名义价值和“Plant_unc。不确定性”与不确定的交互元素。
分析建模错误如何影响开环反应
我们可以通过选择分析建模不确定性的影响未建模动态的随机样本Delta_G
和策划名义和摄动时间响应(蒙特卡罗分析)。例如,对于微分稳定器频道,不确定性的重量w_1
意味着5%的建模错误在低频率,增加到100%后93 rad /秒,如下的波德图加以证实。
%选择10个随机样本Plant_unc_sampl = usample (Plant_unc 10);%看反应微分稳定剂β图(“位置”[100100560500])次要情节(211),步骤(Plant_unc.Nominal (5、1),' r + ',Plant_unc_sampl (5、1)“b -”10)传说(“名义”,“不安”)次要情节(212)、bodemag (Plant_unc.Nominal (5、1),' r + ',Plant_unc_sampl (5、1)“b -”{0.001,1 e3})传说(“名义”,“不安”)
图8:阶跃响应和波德图。
横轴控制器设计
强劲进行设计一个控制器,实现规范,强劲,意味着对于任何扰乱飞机模型与建模误差范围一致W_in
。
首先,我们建立一个开环模型由于奥利奇
外部输入信号映射到绩效输出如下所示。
图9:开环模型映射外部输入信号绩效输出。
构建这个模型,从闭环系统的框图,把控制器块K,和使用连接
计算所需的模型。和之前一样,标签所指定的连接是每个块的输入和输出。
图10:框图建立开环模型。
块I / o %标签AAFilters。u = {“p”,“r”,“yac”};AAFilters。y =“AAFilt”;W_n。u =“噪音”;W_n。y =“Wn”;HQ_p。u =“p_cmd”;HQ_p。y =“HQ_p”;HQ_beta。u =“beta_cmd”;HQ_beta。y =“HQ_beta”;W_p。u =“e_p”;W_p。y =“z_p”;W_beta。u =“e_beta”;W_beta。y =“z_beta”;W_act。u =[A_S.y ; A_R.y]; W_act.y =“z_act”;%指定求和结Sum1 = sumblk (' %量= AAFilt + Wn ',{“p_meas”,“r_meas”,“yac_meas”});Sum2 = sumblk (“e_p = HQ_p - p”);Sum3 = sumblk (“e_beta = HQ_beta -β”);%连接一切由于奥利奇=连接(Plant_unc AAFilters W_n, HQ_p, HQ_beta,…W_p, W_beta、W_act Sum1、Sum2 Sum3,…{“噪音”,“p_cmd”,“beta_cmd”,“delta_stab”,“delta_rud”},…{“z_p”,“z_beta”,“z_act”,“p_cmd”,“beta_cmd”,“p_meas”,“r_meas”,“yac_meas”});
这就产生了状态空间模型的不确定性
由于奥利奇
有11个输出,状态空间模型不确定连续时间7输入,26个州。模型不确定性包含以下模块:Delta_G:不确定的2 x2 LTI,峰值增益= 1,1事件类型”齐上。NominalValue”的名义价值和“齐上。不确定性”与不确定的交互元素。
回忆,通过加权函数,建设一个控制器满足规格每当闭环增益小于1的频率和I / O的方向。首先设计一个最小化的h∞控制器的闭环增益名义飞机模型:
n mea = 5;%的测量nctrls = 2;%的数量控制[kinf ~, gamma_inf] = hinfsyn (n mea, OLIC.NominalValue nctrls);gamma_inf
gamma_inf = 0.9700
在这里hinfsyn
计算一个控制器kinf
使得闭环增益小于1的规格可以满足名义飞机模型。
接下来,执行mu-synthesis规格是否可以满足强劲时考虑到建模错误(不确定性Delta_G
)。使用命令musyn
执行的合成和使用musynOptions
设置网格用于mu-analysis频率。
fmu = logspace (2, 2, 60);选择= musynOptions (“FrequencyGrid”,fmu);[kmu, CLperf] = musyn(齐上,n mea、nctrls选择);
D-K迭代总结:- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -鲁棒性能符合订单- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - Iter K步峰μD适合D 1 5.097 3.487 3.488 12 2 12 4 20 3 1.31 1.292 1.312 1.242 1.242 1.693 1.693 1.544 1.545 16 5 1.223 1.223 1.551 12 6 20 7 1.284 1.283 1.299 1.533 1.464 1.465 12最好实现健壮的性能:1.22
CLperf
CLperf = 1.2226
这里最好的控制器kmu
不能保证闭环增益低于1指定模型的不确定性,说明规格可以几乎但不是完全满足家庭的飞机模型在考虑。
频域控制器的比较
比较h∞控制器的性能和鲁棒性kinf
和μ控制器kmu
。回想一下,性能规格实现闭环增益小于1时,每一个频率。使用融通
函数在每个控制器关闭循环:
clinf =融通(齐上,kinf);clmu =融通(齐上,kmu);
什么是最糟糕的性能(闭环增益)的每个控制器的建模错误有界W_in
吗?的wcgain
命令帮助你回答这个困难的问题直接不需要广泛的网格和模拟。
%计算最坏的获得作为频率的函数选择= wcOptions (“VaryFrequency”,“上”);%计算最坏的增益为kinf(作为频率的函数)[mginf, wcuinf infoinf] = wcgain (clinf,选择);%计算最坏kmu增益[mgmu, wcumu infomu] = wcgain (clmu,选择);
你现在可以比较每个控制器的名义和糟糕的性能:
f = infoinf.Frequency clf次要情节(211);gnom =σ(clinf.NominalValue f);:semilogx (f, gnom (1),“r”f infoinf.Bounds (:, 2),“b”);标题(“kinf性能分析”)包含(的频率(rad /秒))ylabel (“闭环增益”);xlim((1)依照1 e2))传说(“名义上的植物”,“最坏的”,“位置”,“西北”);次要情节f (212) = infomu.Frequency;gnom =σ(clmu.NominalValue f);:semilogx (f, gnom (1),“r”f infomu.Bounds (:, 2),“b”);标题(“kmu性能分析”)包含(的频率(rad /秒))ylabel (“闭环增益”);xlim((1)依照1 e2))传说(“名义上的植物”,“最坏的”,“位置”,“西南”);
第一个图显示,而h∞控制器kinf
符合标称模型的性能规格,其性能可以大幅恶化(15)附近的峰值增益摄动模型在我们的建模误差范围内。
相比之下,μ控制器kmu
性能稍差的名义植物相比呢kinf
,但这个性能始终保持所有摄动模型(最坏的附近获得1.25)。μ控制器因此更健壮的建模错误。
时域鲁棒控制器的验证
进一步测试μ控制器的鲁棒性kmu
在时域中,您可以比较的时间响应名义和坏的闭环模型与理想的“处理质量”的回应。要做到这一点,首先构建“真实”闭环模型CLSIM
所有的权重函数和总部参考模型已被移除:
kmu。u ={“p_cmd”,“beta_cmd”,“p_meas”,“r_meas”,“yac_meas”};kmu。y ={“delta_stab”,“delta_rud”};AAFilters。y = {“p_meas”,“r_meas”,“yac_meas”};CLSIM =连接(Plant_unc(5:最后,:),AAFilters, kmu, {“p_cmd”,“beta_cmd”},{“p”,“β”});
接下来,创建测试信号u_stick
和u_pedal
如下所示
时间= 0:0.02:15;u_stick =(时间> = 9 & < 12);u_pedal =(时间> = 1 & < 4)——(时间> = 4 & < 7);clf次要情节(211),图(时间,u_stick),轴([0 14 2 2])、标题(“侧杆命令”)次要情节(212)、情节(时间,u_pedal),轴([0 14 2 2])、标题(“舵踏板命令”)
你现在可以计算和绘制理想,名义和坏的反应测试命令u_stick
和u_pedal
。
%的理想行为IdealResp = append (HQ_p HQ_beta);IdealResp。y = {“p”,“β”};%最坏响应WCResp = usubs (CLSIM wcumu);%比较反应clf lsim (IdealResp‘g’CLSIM.NominalValue,“r”WCResp,”乙:“,(u_stick;u_pedal)、时间)传说(“理想”,“名义”,“不安”,“位置”,“东南”);标题(“与μ控制器KMU闭环反应”)
的闭环响应几乎相同的名义和坏的闭环系统。请注意,飞机的滚转角速度响应跟踪滚转率命令最初然后离开这个命令。这是由于右半边平面零在飞机模型在0.024 rad /秒。