此示例示出了如何设计为一对由致动器冗余控制飞机升降机的故障检测,隔离和恢复(FDIR)应用程序。该模型使用相同的故障检测控制逻辑作为航空航天模块库™例的航空电子子系统HL-20项目与可选FlightGear的接口(航天模块组)。
典型的飞机有两台电梯,一个在机身的每一侧,附着在水平尾翼。为了提高飞机的安全,电梯控制系统包含这些多余的部分:
四个独立的液压执行机构(每个电梯两个执行机构)。
驱动执行器的三个液压回路。每个外部驱动器有一个专用的液压回路。内部执行机构共享一个液压回路。
两个主飞行控制单元(PFCU)。
每个执行器的两个控制模块:全方位的控制法和限制/减小的范围控制律。
如果飞机是完美的水平飞行,那么执行器的位置应该保持一个恒定的值。如果:故障检测系统注册执行器故障:
的致动器的增加的位置或通过从该零点10厘米减小。
所述致动器改变位置迅速(例如,如果位置改变为至少20cm在0.01秒内)。
故障检测系统也在液压回路中的一个寄存器中的故障如果压力出界或者如果压力快速变化。在这个例子中,故障检测系统检查的是:
在液压回路中的压力为500千帕和2兆帕之间。
压力在0.01秒内变化不超过100千帕。
所述Stateflow®图表模式逻辑定义了用于电梯控制系统中的故障检测逻辑。图表包含在系统中的每个致动器的平行子状态。每个致动器可以在五种模式之一:被动
,支持
,活跃的
,从
,隔离的
。这些操作模式被表示为平行状态的子状态。
默认情况下,外部驱动器中启动活跃的
模式和内致动器在启动支持
模式。如果在外部执行器或与它们相连的液压回路中检测到故障,故障检测系统通过禁用外部执行器和激活内部执行器作出响应。
为了对模型进行实验,在仿真过程中可以通过故障注入UI将液压回路和执行器位置故障引入到故障检测系统中。
例如,为了在注入液压回路1中的故障时,选择H1
复选框,然后单击更新。UI运行此MATLAB®代码与Simulink®模型通信:万博1manbetx
块名称= [MNAME '/信号调节' ... '和失败/液压/测量',CHAR(10),... '液压系统1',... '压力/液压/ H1_fail'];VAL = GET(handles.H1, '值');
如果val set_param (blockname、“价值”、“1”);其他set_param (blockname、“价值”、“0”);结束
该代码打开信号调节子系统中的一个开关,使故障检测系统在液压回路中记录故障。
图表模式逻辑响应液压回路故障和执行器使用真值表函数和事件广播。例如,如果故障检测系统在液压回路1中记录到一个孤立故障,则:
真值表功能L_switch
广播事件go_off
到亚态罗
。
子状态罗
进入从
模式,并发送该事件Ë
到亚态李
。
因为亚态罗
不再在活跃的
模式,李
进入活跃的
模式。
因为亚态李
现在处于主动模式RI
进入活跃的
模式并发送第二个事件Ë
到亚态RO
。
子状态RO
进入支持
模式。
在液压回路1中的故障检测系统的寄存器在发生故障后,左外致动器关闭时,右外侧致动器被放置在待机状态下,与内致动器被激活。
故障检测控制逻辑使系统能够从液压回路故障中恢复。例如,要使液压回路1恢复联机,在故障注入UI中,清除H1
复选框,然后单击更新。在该图表中,条件!u.low_press [0]
为真,那么子状态罗
转换的从
模式的支持
模式。因此,当故障检测系统在稍后的仿真中注册另一个故障时,可以激活左侧的外部驱动器。
当故障检测系统登记在致动器中的一个故障时,该致动器可以不再被激活。在图表模式逻辑,致动器的故障是由所述子状态表示隔离的
。此子状态没有传出转换,因此一旦执行器进入隔离的
状态时,它仍然在该州为模拟的其余部分。
“航空航天故障场景训练中的模型重用”,国立台湾科技大学土木工程研究所硕士论文在AIAA®建模与仿真技术研讨会论文集,论文2004-4931,2004年8月16 - 19日,罗德岛会议中心,普罗维登斯,国际扶轮。
贾森R. Ghidella和彼得J. Mosterman,“将基于模型的设计到故障检测,隔离和恢复系统”,在军用嵌入式系统夏天,2006年。