航空機の昇降舵の制御システムの故障の検出
この例では、冗長アクチュエータによって制御される 1 組の航空機の昇降舵の故障検出、分離、回復 (FDIR) のアプリケーションを設計する方法を示します。このモデルは、Aerospace Blockset™ の例HL-20 Project with Optional FlightGear Interface (Aerospace Blockset)にある Avionics サブシステムと同じ故障検出制御ロジックを使用します。
エレベーターの制御システム
一般的な航空機では、機体の両側に 1 基ずつ、2 基のエレベーターが水平尾翼に備え付けられています。航空機の安全性を高めるため、エレベーターの制御システムには以下の冗長な部品が含まれています。
4 つの独立油圧アクチュエータ (エレベーター 1 基につき 2 つのアクチュエータ)。
アクチュエータを駆動する 3 つの油圧回路。外側のアクチュエータにはそれぞれ専用の油圧回路があります。内側のアクチュエータは 1 つの油圧回路を共有しています。
2 つのプライマリ フライト コントロール ユニット (PFCU)。
1 つのアクチュエータごとに 2 つの制御モジュール: フル レンジの制御則と、制限付きまたは低減レンジの制御則。
航空機が申し分のない高度で飛行していれば、アクチュエータの位置には一定の値が維持されます。故障検出装置は次の場合にアクチュエータの故障を記録します。
アクチュエータの位置がこのゼロ ポイントから 10 cm 上下した場合。
アクチュエータの位置が急速に変化した場合 (たとえば、0.01 秒で位置が 20 cm 以上変化した場合)。
圧力が範囲を外れていたり、急速に変化したりする場合も、故障検出装置によって油圧回路のいずれかが故障と記録されます。この例では、故障検出装置は次をチェックします。
油圧回路内の圧力が 500 kPa ~ 2 MPa の間であること。
圧力の変化が 0.01 秒で 100 kPa を超えないこと。
故障検出の制御ロジック
Stateflow® チャート Mode Logic
は、エレベーター制御システムの故障検出ロジックを定義します。チャートにはシステム内の各アクチュエータについて、1 つのパラレル サブステートが含まれています。各アクチュエータは Passive
、Standby
、Active
、Off
、Isolated
の 5 つのモードのいずれかにあります。これらの動作モードはパラレル ステートのサブステートとして表現されます。
既定では、外側のアクチュエータは Active
モードで開始され、内側のアクチュエータは Standby
モードで開始されます。外側のアクチュエータや、それらに接続されている油圧回路で故障が検出されると、故障検出装置は外側のアクチュエータをオフにして、内側のアクチュエータをオンにします。
故障検出装置への故障の投入
モデルを試すには、シミュレーション中に Failure Injection UI を介して、油圧回路とアクチュエータの位置の故障を故障検出装置に取り込むことができます。
たとえば、油圧回路 1 に故障を投入するには、H1
チェック ボックスをオンにして [更新] をクリックします。UI は次の MATLAB® コードを実行して Simulink® モデルと通信します。
function Inject_failure_Callback(hObject,eventdata,handles)
mname = gcs;
...
blockname = mname+ ... "/Signal conditioning and failures /Hydraulic Pressures/Measured "+ ... newline+"Hydraulic system 1 pressures/Hydraulic pressure/H1_fail"; val = get(handles.H1,"Value");
if val set_param(blockname,value="1"); else set_param(blockname,value="0"); end
...
end
このコードは信号条件付けサブシステムにあるスイッチをオンにして、故障検出装置により油圧回路の故障が記録されるようにします。
チャート Mode Logic
は、真理値表関数とイベント ブロードキャストを使用して油圧回路およびアクチュエータの故障に応答します。たとえば、故障検出装置が油圧回路 1 で単独の故障を記録した場合、以下が行われます。
真理値表関数
L_switch
はイベントgo_off
をサブステートLO
にブロードキャストします。サブステート
LO
はOff
モードに入ってイベントE
をサブステートLI
に送信します。サブステート
LO
はActive
モードでなくなるため、LI
はActive
モードに入ります。サブステート
LI
が Active モードになったため、RI
はActive
モードに入って 2 番目のイベントE
をサブステートRO
に送信します。サブステート
RO
はStandby
モードに入ります。
故障検出装置によって油圧回路 1 の故障が記録された後、左外側のアクチュエータはオフに、右外側のアクチュエータはスタンバイ状態に、内側のアクチュエータはアクティブになります。
故障状態からアクションへのマッピング
この例では、2 つの真理値表を使用して、航空機の昇降舵システムの故障状態を結果として生じるアクションにマッピングします。このリストは、モデルの故障検出システムの要件を示しています。
油圧 1 の故障 — 他の故障が存在しない場合、左外側のアクチュエータをオフにします。
油圧 2 の故障 — 他の故障が存在しない場合、左内側のアクチュエータと右内側のアクチュエータをオフにします。
油圧 3 の故障 — 他の故障が存在しない場合、右外側のアクチュエータをオフにします。
アクチュエータの位置の故障 — 他の故障が存在しない場合、その特定のアクチュエータを分離します。
油圧 1 と左外側のアクチュエータの故障 — 他の故障が存在しない場合、左外側のアクチュエータをオフにします。
油圧 2 と左内側のアクチュエータの故障 — 他の故障が存在しない場合、左内側のアクチュエータをオフにします。
油圧 3 と右外側のアクチュエータの故障 — 他の故障が存在しない場合、右外側のアクチュエータをオフにします。
左側の油圧とアクチュエータの多重故障 — 左外側のアクチュエータおよび左内側のアクチュエータを分離します。
右側の油圧とアクチュエータの多重故障 — 右外側のアクチュエータおよび右内側のアクチュエータを分離します。
断続的なアクチュエータの故障 — 動作中にアクチュエータのオン/オフが 5 回切り替わった場合、その特定のアクチュエータを分離します。
Mode Logic
チャートでは、1 対の真理値表関数によりこれらの要件を満たすロジックが定義されます。L_switch
は左側のエレベーターを制御し、R_switch
は右側のエレベーターを制御します。次の真理値表は左側のエレベーター用です。
最初の要件は、油圧システム 1 のみで故障が検出された場合、左外側のアクチュエータをオフにすることを示しています。真理値表では、この要件は判定 D1 により表されています。油圧システム 1 の圧力が低い場合、D1 ではアクション 2 を実行するよう指定しています。アクション 2 はイベント go_off
を左側のアクチュエータ Actuators.LO
に送信します。
同様に、他の要件が真理値表で適切なアクションにマップされています。たとえば、左外側のアクチュエータが故障した場合、D3 によってアクション 3 が実行されます。アクション 3 はイベント go_isolated
を Actuators.LO
に送信し、左側のアクチュエータを分離します。
チャートの entry アクションおよび during アクションにより真理値表関数が呼び出され、タイム ステップごとに故障チェックが行われます。
油圧故障からの回復
故障検出の制御ロジックによって、システムは油圧回路の故障から回復することができます。たとえば、油圧回路 1 をオンラインに戻すには、Failure Injection UI で H1
チェック ボックスをオフにして [更新] をクリックします。チャートでは、条件 !u.low_press[0]
が真になるので、サブステート LO
は Off
モードから Standby
モードに遷移します。その結果、この後のシミュレーションにおいて、故障検出装置によって別の故障が記録された場合、左外側のアクチュエータをアクティブにすることができます。
故障後のアクチュエータの分離
故障検出装置によっていずれかのアクチュエータで故障が記録されると、そのアクチュエータをそれ以降アクティブにすることはできません。チャート Mode Logic では、アクチュエータの故障がサブステート Isolated
によって表されます。このサブステートには出力遷移がないため、アクチュエータが 1 度 Isolated
ステートに入ると、シミュレーションが終了するまでそのステートのままになります。
参考文献
Pieter J. Mosterman and Jason Ghidella, "Model Reuse for the Training of Fault Scenarios in Aerospace," in Proceedings of the AIAA® Modeling and Simulation Technologies Conference, CD-ROM, paper 2004-4931, August 16 - 19, 2004, Rhode Island Convention Center, Providence, RI.
Jason R. Ghidella and Pieter J. Mosterman, "Applying Model-Based Design to a Fault Detection, Isolation, and Recovery System," in Military Embedded Systems, Summer, 2006.