客机的容错控制
这个例子展示了如何调优一个固定的结构控制器的多个操作模式植物。
背景
这个示例处理容错飞行控制客机发生故障的电梯和副翼执行机构。飞行控制系统必须保持稳定,满足性能和舒适性要求的名义操作和退化的条件,一些执行机构不再有效控制表面损伤。在所有条件下狂风一定缓解。这个应用程序有时被称为可靠的控制飞机安全飞行必须维护在极端条件。
飞机模型
控制系统建模仿真软件。金宝app
open_system (“faultTolerantAircraft”)
飞机被建模为一个刚性6阶状态空间系统,下面的状态变量(单位是英里速度和角速率度/秒):
u: x-body轴速度
w: z-body轴速度
问:俯仰率
v: y-body轴速度
p:滚转率
接待员:偏航率
可用的状态矢量控制以及轨道银行角率μ(度/秒),攻角α(度)和侧滑角β(度)。变形量的控制输入是正确的电梯,电梯,右副翼,左副翼和方向舵。变形量都在度。电梯被分组对称生成攻角。副翼分组反对称生成辊运动。这导致3控制行动所示仿真软件模型。金宝app
控制器由状态反馈控制的内循环和文中积分作用的外循环。增益矩阵Ki
和Kx
分别是3 x3和3-by-6,所以控制器有27个可调参数。
执行器故障
我们使用一个9 x5矩阵编码名义模式和各种执行器失效模式。每一行对应一个飞行条件、零故障指示相应的挠度。
OutageCases = […1 1 1 1 1;…%的名义运作模式0 1 1 1 1;…%对电梯故障1 0 1 1 1;…%离开电梯故障1 1 0 1 1;…%对副翼停机1 1 1 0 1;…%左副翼停机1 0 0 1 1;…%左电梯和右副翼停机0 1 0 1 1;…%对电梯和右副翼停机0 1 1 0 1;…%对电梯和左副翼停机1 0 1 0 1;…%左电梯和左副翼停机];
设计要求
控制器:
提供良好的跟踪性能在μα,β名义工况与适当的解耦的三个轴
保持性能的10英里每小时的风速
限制稳定和性能下降的驱动器故障。
表示第一个要求,您可以使用一个LQG-like成本函数,处罚集成跟踪误差e
和控制工作u
:
对角线的重量和是主要的调谐旋钮交易响应和控制努力和强调一些渠道。使用WeightedVariance
要求表达这种成本函数,放松性能重量2倍的故障场景。
我们=诊断接头(20 15 [10]);吴=眼(3);%名义跟踪要求SoftNom = TuningGoal.WeightedVariance (“选点”,{“e”,“u”吴},blkdiag(我们),[]);SoftNom。模型= 1;%名义模型%跟踪中断条件要求SoftOut = TuningGoal.WeightedVariance (“选点”,{“e”,“u”},blkdiag(我们/ 2,吴),[]);SoftOut。模型= 9;%故障场景
阵风缓和,限制误差信号的方差e
由于白噪声工作组
驾驶风速模型。再次使用的故障场景要求不是那么严格。
%名义阵风缓和需求HardNom = TuningGoal.Variance (“工作组”,“e”,0.02);HardNom。模型= 1;%阵风缓和停机条件要求HardOut = TuningGoal.Variance (“工作组”,“e”,0.1);HardOut。模型= 9;
控制器调优名义飞行
将风速度设置为10英里每小时和初始化控制器的可调状态反馈和集成商收益。
GustSpeed = 10;Ki =眼(3);Kx = 0 (3、6);
使用slTuner
界面设置调优任务。列表块进行调优和指定通过九个飞行条件的变化停机
仿真软件模型中的变量。金宝app因为你只能改变标量参数slTuner
,独立指定值的每个条目停机
向量。
OutageData =结构(…“名字”,{“停机(1)”,“中断(2)”,“停机(3)”,“停机(4)”,“停机(5)”},…“价值”mat2cell (OutageCases 9 [1 1 1 1 1]));ST0 = slTuner (“faultTolerantAircraft”,{“吻”,“Kx”},OutageData);
使用systune
调整控制器增益的名义要求。治疗风阵风缓和硬约束。
[圣,fSoft gHard] = systune (ST0, SoftNom HardNom);
最后:迭代软= 22.6,= 0.9987,= 287
检索获得的值和模拟响应命令μα,β
的名义和退化的飞行条件。所有模拟包括风影响,红色曲线是名义上的反应。
Ki = getBlockValue(圣,“吻”);Ki = Ki.d;Kx = getBlockValue(圣,“Kx”);Kx = Kx.d;%的倾斜角选点模拟plotResponses (OutageCases 1 0,0);
选点%攻角仿真plotResponses (OutageCases 0 1 0);
%侧滑角选点模拟plotResponses (OutageCases 0 0 1);
名义反应不错,但性能恶化是不可接受当面对驱动器故障。
控制器调优受损的飞行
提高可靠性、重新调整控制器增益满足名义工厂的名义要求以及放松要求所有8个故障场景。
[圣,fSoft gHard] = systune (ST0 [SoftNom; SoftOut], [HardNom; HardOut]);
最后:迭代软= 25.7,= 0.99815,= 490
最优性能(√LQG成本)是仅略低于名义调优(26日和23)。检索获得的值并重新运行模拟(红色曲线是名义上的响应)。
Ki = getBlockValue(圣,“吻”);Ki = Ki.d;Kx = getBlockValue(圣,“Kx”);Kx = Kx.d;%的倾斜角选点模拟plotResponses (OutageCases 1 0,0);
选点%攻角仿真plotResponses (OutageCases 0 1 0);
%侧滑角选点模拟plotResponses (OutageCases 0 0 1);
所有故障的控制器现在提供可接受的性能场景被认为是在这个例子。设计可以通过添加进一步细化规范最低稳定的利润率和增益等限制,以避免执行机构饱和。
另请参阅
systune (slTuner)
(金宝app仿真软件控制设计)|slTuner
(金宝app仿真软件控制设计)|TuningGoal.WeightedVariance
|TuningGoal.Variance