このページは機械翻訳を使用して翻訳されました。最新版の英語を参照するには、ここをクリックします。
軽量飛行機設計
このモデルは、軽量航空機の設計を使用して、航空機設計の技術的およびプロセス上の課題に対処するために MathWorks ® 製品を使用する方法を示しています。
設計プロセスは反復的であり、最終的な構成を選択する前に多くの車両構成を試します。理想的には、ハードウェアを構築する前に反復を実行します。課題は反復を迅速に実行することです。通常、異なるグループがプロセスの異なるステップで作業します。この課題に対処するには、これらのグループ間の効果的な連携と適切なツールセットが不可欠です。
車両ジオメトリの定義
この軽量航空機の形状は参考資料 1 からのものです。この形状の当初の設計目標は、特定のミッションとパフォーマンスの制約内で安全かつ簡単に飛行でき、簡単に保守できる 4 人乗りの一般航空機です。これらの制約の詳細については、参考文献 1 を参照してください。
この航空機の潜在的な性能要件は次のとおりです。
水平巡航速度
許容可能な上昇率
許容失速速度
航空機の飛行制御では、上昇率が設計要件であり、2,000 メートルで毎秒 2 メートル (m/s) を超えると想定されます。
図 1: 軽量4人乗り単葉機[1]。
車両の空力特性の決定
航空機の幾何学的構成によって、その空力特性が決まり、それによって性能と操縦性が決まります。幾何学的構成を選択すると、次の方法で空力特性を得ることができます。
分析予測
縮小モデルまたは実物大のプロトタイプの風洞試験
飛行試験
風洞テストと飛行テストは高忠実度の結果をもたらしますが、実際のハードウェアで実行する必要があるため、コストと時間がかかります。航空機の形状が確定したら、これらの方法を使用するのが最適です。メモ: 解析予測は、設計の初期段階で空力特性を予測するための、より迅速かつ安価な方法です。
この例では、分析予測に一般的なソフトウェア プログラムである Digital Datcom を使用します。アメリカ空軍はこれをデータ概要 (DATCOM) のデジタル版として開発しました。このソフトウェアは一般に公開されています。
まず、航空機の幾何学的構成と空力係数を取得するために必要な飛行条件を定義する Digital Datcom 入力ファイルを作成します。
type asbSkyHoggDatcom.in
$FLTCON NMACH=4.0,MACH(1)=0.1,0.2,0.3,0.35$ $FLTCON NALT=8.0,ALT(1)=1000.0,3000.0,5000.0,7000.0,9000.0, 11000.0,13000.0,15000.0$ $FLTCON NALPHA=10.,ALSCHD(1)=-16.0,-12.0,-8.0,-4.0,-2.0,0.0,2.0, ALSCHD(8)=4.0,8.0,12.0,LOOP=2.0$ $OPTINS SREF=225.8,CBARR=5.75,BLREF=41.15$ $SYNTHS XCG=7.9,ZCG=-1.4,XW=6.1,ZW=0.0,ALIW=1.1,XH=20.2, ZH=0.4,ALIH=0.0,XV=21.3,ZV=0.0,VERTUP=.TRUE.$ $BODY NX=10.0, X(1)=-4.9,0.0,3.0,6.1,9.1,13.3,20.2,23.5,25.9, R(1)=0.0,1.0,1.75,2.6,2.6,2.6,2.0,1.0,0.0$ $WGPLNF CHRDTP=4.0,SSPNE=18.7,SSPN=20.6,CHRDR=7.2,SAVSI=0.0,CHSTAT=0.25, TWISTA=-1.1,SSPNDD=0.0,DHDADI=3.0,DHDADO=3.0,TYPE=1.0$ $HTPLNF CHRDTP=2.3,SSPNE=5.7,SSPN=6.625,CHRDR=0.25,SAVSI=11.0, CHSTAT=1.0,TWISTA=0.0,TYPE=1.0$ $VTPLNF CHRDTP=2.7,SSPNE=5.0,SSPN=5.2,CHRDR=5.3,SAVSI=31.3, CHSTAT=0.25,TWISTA=0.0,TYPE=1.0$ $SYMFLP NDELTA=5.0,DELTA(1)=-20.,-10.,0.,10.,20.,PHETE=.0522, CHRDFI=1.3, CHRDFO=1.3,SPANFI=.1,SPANFO=6.0,FTYPE=1.0,CB=1.3,TC=.0225, PHETEP=.0391,NTYPE=1.$ NACA-W-4-0012 NACA-H-4-0012 NACA-V-4-0012 CASEID SKYHOGG BODY-WING-HORIZONTAL TAIL-VERTICAL TAIL CONFIG DAMP NEXT CASE
Digital Datcom は、指定された飛行条件における車両の空力安定性と制御導関数および係数を提供します。飛行制御エンジニアは、安定性と制御導関数を調べることで、航空機の性能と操縦特性に関する洞察を得ることができます。分析するには、このデータを MATLAB ® テクニカル コンピューティング環境にインポートする必要があります。通常、これは手動のプロセスです。
Aerospace Toolbox ソフトウェアを使用すると、1 つのコマンドだけで複数の Digital Datcom 出力ファイルを MATLAB テクニカル コンピューティング環境に取り込むことができます。手動で入力する必要はありません。各 Digital Datcom 出力は、構造体のセル配列として MATLAB 技術コンピューティング環境にインポートされ、各構造体は異なる Digital Datcom 出力ファイルに対応します。Digital Datcom 出力をインポートした後、Digital Datcom を通じて複数の構成を実行し、MATLAB テクニカル コンピューティング環境で結果を比較します。
alldata = datcomimport({'asbSkyHoggDatcom.out' 'asbSkyHoggDatcom_old.out'}, true, 0);
私たちのモデルでは、車両が本質的に安定しているかどうかを確認する必要があります。これを行うには、図 2 を使用して、対応する係数 Cm によって記述されるピッチング モーメントが航空機の復元モーメントを提供するかどうかを確認します。復元モーメントにより、航空機の迎え角はゼロに戻ります。
構成 1 (図 2) では、迎え角がゼロ未満の場合には Cm は負になります。つまり、この構成では、負の迎え角に対する復元モーメントが提供されず、望ましい飛行特性が得られません。構成 2 では、重心を後方に移動することでこの問題を解決します。重心を移動すると、すべての負の迎え角に対して復元モーメントを提供する Cm が生成されます。
h1 = figure; plot(alldata{2}.alpha,alldata{2}.cm(:,1),alldata{1}.alpha,alldata{1}.cm(:,1)); axis([-4 8 -0.3 0.1]); legend('Configuration 1','Configuration 2'); xlabel('Angle of Attack, \alpha (degrees)'); ylabel('Pitching Moment Coefficient, C_m'); grid;
図 2: Digital Datcom のピッチングモーメント係数の視覚的分析。
close (h1);
飛行機シミュレーションの作成
空力安定性と制御導関数を決定したら、航空機の縦方向のダイナミクスを評価するためのオープンループ プラント モデルを構築できます。モデルが完成したら、Simulink Report Generator ™ ソフトウェアを使用してモデルを Web ビューにエクスポートすることで、Simulink ® ソフトウェアを持っていない人も含めて同僚にモデルを見せることができます。Web ビューはモデルのインタラクティブな HTML レプリカであり、モデル階層をナビゲートしたり、サブシステム、ブロック、信号のプロパティを確認したりできます。
一般的なプラント モデルには、次のコンポーネントが含まれます。
運動方程式:力とモーメントから車両の位置と姿勢を計算します。
力とモーメント:空気力、重力、推力およびモーメントを計算します。
アクチュエータの位置:アクチュエータコマンドに基づいて変位を計算します。
環境:風の乱れ、重力、大気の環境的影響を考慮します。
センサー:測定デバイスの動作をモデル化します。
この機能のほとんどは、Aerospace Blockset ™ ブロックを使用して実装できます。このモデルでは、Aerospace Blockset ブロックを含むサブシステムがオレンジ色で強調表示されます。Aerospace Blockset ブロックが赤で強調表示されます。
open_system('asbSkyHogg'); snapshotModel('asbSkyHogg');
図 3: 軽量航空機モデルのトップレベル
まず、Aerospace Blockset ライブラリの Equations of Motion ライブラリの 3DOF ブロックを使用してプラント モデルを構築します (図 4)。このモデルは、飛行機が縦方向に安定していて制御可能かどうかを判断するのに役立ちます。サブシステムを、6 自由度 (DOF) バージョンと同じインターフェースを持つように設計します。3 DOF のパフォーマンス、安定性、および制御性に満足したら、6 DOF バージョンを実装し、航空機から目的の動作が得られるまで他の制御面ジオメトリを繰り返します。
open_system('asbSkyHogg/Vehicle System Model/Vehicle/3DOF to 6DOF'); snapshotModel('asbSkyHogg/Vehicle System Model/Vehicle/3DOF to 6DOF');
図 4: Aerospace Blockset ライブラリの 3DoF Euler ブロックを使用して実装された運動方程式。
車両に作用する空気力とモーメントを計算するには、Aerospace Blockset ライブラリの Digital Datcom Forces and Moments ブロックを使用します (図 5)。このブロックは、Aerospace Toolbox が Digital Datcom から空力係数をインポートするときに作成する構造を使用します。
一部の Digital Datcom ケースでは、動的微分には最初の迎え角の値のみが含まれます。これらの導関数は迎え角とは無関係であるため、欠落しているデータ ポイントは最初の迎え角の値で埋めることができます。Digital Datcom データ ポイントの欠落データを入力する方法のサンプル コードを確認するには、asbPrepDatcom 関数を調べてください。
open_system('asbSkyHogg/Vehicle System Model/Vehicle/Aerodynamics'); snapshotModel('asbSkyHogg/Vehicle System Model/Vehicle/Aerodynamics');
図 5: 空気力学的な力とモーメントは、Aerospace Blockset Digital Datcom Forces and Moment ブロックを使用して部分的に実装されています。
また、Aerospace Blockset ブロックを使用して、アクチュエーター、センサー、環境モデルを作成します (それぞれ図 6、7、8)。メモ: モデルの次の部分を作成することに加えて、標準の Aerospace Blockset ブロックを使用して、ボディ軸から風軸への変換とその逆の変換が正しく行われるようにします。
open_system('asbSkyHogg/Vehicle System Model/Vehicle/AirframeActuators'); snapshotModel('asbSkyHogg/Vehicle System Model/Vehicle/AirframeActuators');
図 6: Aerospace Blockset ブロックを使用したアクチュエータ モデルの実装。
open_system('asbSkyHogg/Vehicle System Model/Flight Sensors'); snapshotModel('asbSkyHogg/Vehicle System Model/Flight Sensors');
図 7: Aerospace Blockset ブロックを使用した飛行センサー モデルの実装。
open_system('asbSkyHogg/Environment'); snapshotModel('asbSkyHogg/Environment');
図 8: Aerospace Blockset ブロックを使用した風、大気、重力の環境効果。
飛行制御法の設計
Simulink プラント モデルを作成したら、エレベーターの位置を指示して高度を制御する縦方向コントローラーを設計します。この設計に選択された従来の 2 ループ フィードバック制御構造 (図 9) には、高度を制御するための外側のループ (黄色の補償器 C1) とピッチ角を制御するための内側のループ (青色の補償器 C2) があります。図 10 は、Simulink モデルの対応するコントローラー構成を示しています。
図 9: 縦方向コントローラの構造。
open_system('asbSkyHogg/Vehicle System Model/Avionics/Autopilot'); snapshotModel('asbSkyHogg/Vehicle System Model/Avionics/Autopilot');
図 10: Simulink モデルの縦方向コントローラー。
Simulink Control Design ™ ソフトウェアを使用すると、さまざまなツールとテクニックを使用して、Simulink でコントローラーを直接調整できます。
Simulink Control Design インターフェイスを使用して、次を指定して制御問題を設定します。
2つのコントローラーブロック
閉ループ入力または高度コマンド
閉ループ出力信号または感知高度
定常状態またはトリム状態
この情報を使用して、Simulink Control Design ソフトウェアはモデルの線形近似を自動的に計算し、設計で使用するフィードバック ループを識別します。内側ループと外側ループのコントローラを設計するには、開ループにはルート軌跡とボード線図を使用し、閉ループ応答にはステップ応答プロットを使用します (図 11)。
図 11: コントローラーのチューニング前の設計プロット。
次に、これらのプロットを使用して、内側のループと外側のループの補償器を対話的に調整します。補償器を調整するとプロットがリアルタイムで更新されるため、これらの変更が他のループや閉ループ応答に及ぼす結合効果を確認できます。
マルチループ設計をより体系的にするには、順次ループ閉鎖手法を使用します。この手法により、設計プロセス中に他のループのダイナミクスを段階的に考慮できるようになります。Simulink Control Design を使用して、外側のループ コントローラーの出力に追加のループ開口部を持つように内側のループを構成します (図 12 の C1)。このアプローチは、内側のループを外側のループから分離し、内側のループ コントローラーの設計を簡素化します。内側のループを設計したら、外側のループ コントローラーを設計します。図 13 は、最終的に調整された動作点での調整済み補償器の設計を示しています。
図 12: 追加のループ開口部を構成することによって分離された内部ループのブロック図。
図 13: コントローラの調整後のトリム条件での設計プロット。
Simulink Control Design ソフトウェアでコントローラーを調整するには、いくつかの方法があります。次に例を示します。
グラフィカルなアプローチを使用して、満足のいく応答が得られるまで、コントローラーのゲイン、極、ゼロを対話的に移動できます (図 13)。
Simulink Control Design ソフトウェア内の Simulink Design Optimization ™ ソフトウェアを使用して、コントローラーを自動的に調整できます。
ゲインマージンや位相マージン、時間領域要件などの周波数領域要件を指定すると、Simulink Design Optimization ソフトウェアはそれらの要件を満たすようにコントローラー パラメーターを自動的に調整します。許容可能なコントローラー設計を開発すると、Simulink モデル内の制御ブロックが自動的に更新されます。コントローラーのチューニングの詳細については、Control Systems Toolbox の例の 制御システム デザイナー入門 (Control System Toolbox) と Simulink Control Design の例の 補償器エディターを使用した Simulink ブロックの調整 (Simulink Control Design) を参照してください。
これで、飛行制御ロジックを使用して非線形シミュレーションを実行し、コントローラーのパフォーマンスが許容範囲内であることを確認できます。図 15 は、トリムされた動作点から開始して、要求された高度を 2000 メートルから 2050 メートルに増加させた場合の、非線形 Simulink モデルの閉ループ シミュレーションの結果を示しています。パイロットは高度の段階的な変更を要求しますが、実際の管制官の高度要求率は、乗客に快適で安全な乗り心地を提供するために制限されています。
図 14: 最終チェックでは、コントローラー設計を使用して非線形シミュレーションを実行し、高度 (紫) が高度要求 (黄色) を安定して許容できる方法で追跡することを確認します。
これらのシミュレーション結果を使用して、航空機の設計がパフォーマンス要件を満たしているかどうかを判断できます。要件では上昇率が 2 m/s 以上であることが求められました。ご覧のとおり、航空機は 20 秒未満で 2000 メートルから 2050 メートルまで上昇し、上昇率は 2.5 m/s を超えています。したがって、この特定の幾何学的構成とコントローラー設計は、当社のパフォーマンス要件を満たしています。
従来の時間プロットに加えて、FlightGear の Aerospace Blockset インターフェイスを使用してシミュレーション結果を視覚化できます (図 15)。
図15:FlightGear の Aerospace Blockset インターフェースを使用してシミュレーション結果を視覚化します。
また、FlightGear の Aerospace Toolbox インターフェイスを使用して、シミュレーション結果または実際の飛行テスト データを使用して MATLAB データを再生することもできます。
設計プロセスの完了
次のステップは
リアルタイムのパフォーマンスをテストするためのハードウェアインザループ システムを構築します。
実際の車両のハードウェアとソフトウェアを構築します。
飛行試験を実施しています。
飛行試験データの分析と視覚化。
これらの手順はこの例の焦点ではないため、ここでは説明しません。代わりに、Embedded Coder ®、Simulink Real-Time ™、Aerospace Toolbox ソフトウェアなどの適切なツールを使用して、これらすべてを合理化および簡素化できることが単に述べられています。
まとめ
この例では、次の方法を示しました。
Digital Datcom と Aerospace Toolbox ソフトウェアを使用して、飛行体の初期設計を迅速に開発し、さまざまな幾何学的構成を評価します。
Simulink および Aerospace Blockset ソフトウェアを使用して、車両の飛行シミュレーションを迅速に作成します。
Simulink Control Design ソフトウェアを使用して飛行制御法則を設計します。
このアプローチにより、車両の最適な幾何学的構成を決定し、ハードウェアを構築する前にそのパフォーマンスとハンドリング品質を予測できるため、設計コストが削減され、エラーが排除されます。さらに、単一のツール チェーンを使用すると、さまざまなグループ間のコミュニケーションが容易になり、設計時間が短縮されます。
参考文献
[1] キャノン,M,ガバード,M,マイヤー,T,モリソン,S,スコシック,M,ウッズ,D.「Swineworks D-200 Sky Hogg 設計提案」AIAA®/General Dynamics Corporation チーム航空機設計コンペティション、1991-1992 年。
[2] Turvesky, A.、Gage, S.、Buhr, C.、「Accelerating Flight Vehicle Design」、MATLAB Digest、2007年1月。
[3] Turvesky, A.、Gage, S.、Buhr, C.、「新型軽量航空機のモデルベース設計」、AIAA論文2007-6371、AIAAモデリングおよびシミュレーション技術会議および展示会、サウスカロライナ州ヒルトンヘッド、2007年8月20日~23日。
参考
Digital DATCOM Forces and Moments | Aerodynamic Forces and Moments