機体データの作成
Tatさんの書かれた、フライトモデル解説を元にこちらにまとめてみました。 そのため、基本的にA6M2を題材に解説していきますが、加筆などをお待ちしています。

<airplane>

フライトモデル全てを包含するトップレベルのタグです。

<approach>タグ

着陸時(アプローチ時)の機体の飛行パラメタを記述します。Yasim は JSBSim とは異なり、飛行特性を推定するために必要な航空力学上の詳細な係数を記述する必要がありません(従って比較的簡単にフライトモデルが記述できます)。このため、アプローチ時及び最高速時の機体の速度等様々なパラメタから、数百回のシミュレーションを行った上で飛行特性を推定します。

<approach speed="60" aoa="9">
<control-setting axis="/controls/engines/engine[0]/throttle" value="0.30"/>
<control-setting axis="/controls/engines/engine[0]/mixture" value="0.55"/>
<control-setting axis="/controls/engines/engine[0]/propeller-pitch" value="0.6"/>
<control-setting axis="/controls/engines/engine[0]/boost" value="0.0"/>
<control-setting axis="/controls/flight/flaps" value="1.0"/>
<control-setting axis="/controls/gear/gear-down" value="1"/>
</approach>

approach タグの属性として speed (60ノット), aoa (Angle of Attack: 迎え角) 9度を指定しています。アプローチ時の速度はストール速度、またはそれより若干速めに設定します。タグ内では、制御可能な操作機器の状態を記述します。 1.0は全開であることを、0.0 は全閉であることを示します。A6M2 ではそれぞれ以下の意味になります。

これらのパラメターを記述する際には、資料に記述された正確な値にこだわる必要はありません。ある程度の値を設定しておき、着陸時のストール直前の速度や最高速が資料等に記述されたものと一致するように調整すると良いでしょう。

cruise タグ

最高速で飛行中の状態を approach タグと同様に記述します。ここでの速度は「真対気速度」です。従って計器から読み取れる速度ではなくカタログスペックを speed 属性に記述します。alt (altitude: 高度 )属性には 最高速で飛行する際の高度を ft 単位で指定します。

cockpit タグ

パイロットの視点位置を記述します。この位置は3Dモデルの中心を (0, 0, 0) とした相対座標として表現したもので、単位はメートルです。

fuselage タグ

機体胴体の形状を両端の座標、最大幅、先細り具合、最大幅となる位置とで示します。fuselage タグの属性を以下に示します。機体胴体とはエンジンカウル先端(プロペラ軸は含みません)から機体の最後尾までの筒として捉えられます。以下に fuselage タグの属性について説明します。

wing タグ

主翼の形状や特性を設定します。wing タグの属性では主翼の左半分の形状と抗力(ドラッグ)を指定します。この要素タグは一つしか使うことが出来ません。(しかし、後述するvstabタグを使えばさらに揚力を発生する面を追加することが出来ます。) また、後述のstallタグやflap,slat,spoilerタグを子要素で持つことが出来ます。 航空実用辞典-翼型 airfoil, wing sectionと翼wingも参考にしてください。

以下に A6M2 の wing タグを示します。wing タグ中では、失速時の挙動と、フラップ及びエルロンの設定をタグで記述します。これらのタグの説明は後述します。

<wing x="0.0" y="0.4" z="-0.35" taper="0.44" incidence="-0.5" length="5.6" chord="2.464" sweep="0.0" dihedral="6.5" camber="0.05" twist="-1.8" idrag="1.25">
<stall aoa="14" width="5" peak="1.5"/>
<flap0 start="0.0" end="0.4" lift="1.7" drag="1.9"/>
<flap1 start="0.4" end="1.0" lift="1.4" drag="1.1"/>
<control-input axis="/controls/flight/flaps" control="FLAP0"/>
<control-output control="FLAP0" prop="/surface-positions/flap-pos-norm"/>
<control-speed control="FLAP0" transition-time="7"/>
<control-input axis="/controls/flight/aileron" control="FLAP1" split="true"/>
<control-output control="FLAP1" side="left" prop="surface-positions/left-aileron-pos-norm"/>
<control-output control="FLAP1" side="right" prop="surface-positions/right-aileron-pos-norm"/>
<control-speed control="FLAP1" transition-time="1"/>
<control-input axis="/controls/flight/aileron-trim" control="FLAP1" split="true"/>
</wing>

hstab タブ

水平尾翼の左側の形状や特性を記述します。hstab は wing オブジェクトであるため、記述内容は wing タグと同等ですが、水平尾翼の「効き具合」を示す effectiveness 属性が追加されています。また、wing と同様に右半分はミラーされることになります。なお、hstab オブジェクトは xml ファイルに1つしか記述できません。以下に A6M2 の例を示します。

vstab タグ

垂直尾翼の形状と特性とを記述します。hstab 同様に wing オブジェクトであるため、wing タグと同等の属性やサブ要素を記述します。hstab と同様に effectiveness 属性があります。wing タグや hstab タグと異なるところは、左右にミラーされないことです。これは複数の 垂直尾翼が存在する場合は、vstab タグを複数記述する必要があります。

stall タグ

wing タグ内に記述される子要素で、失速時の挙動を表します。stall タグではこの失速時の挙動を以下に示す3つの属性で決定します。

flap0, flap1, slat, spoiler タグ

stall タグと同様、 wing/hstab/vstab タグ内に記述することでエルロンやフラップなどの「舵」の位置、形状、及び効き具合を定義します。

control-input タグ

舵の制御に用いるフライトギアのプロパティ名を定義します。wing, hstab, vstab, cruise 及び approach タグのサブ要素として記述することができます。control-input タグの必須属性は axis と contorl です。属性の説明は以下の通りです。

control-output タグ

各制御装置の状態を保存する為のフライトギアのプロパティを指定します。このタグにより書き出された値は、Nasal スクリプトや計器表示、アニメーション等で利用されます。指定されたプロパティに書き出される値は、control-input タグの属性や control-speed により加工された値となります。

control-speed タグ

control-input で指定されたプロパティが変化した時の制御速度を指定します。例えば、']' キーを押してフラップを一段下げた場合に /controls/flight/flap は0.0から0.25に変化します。このとき control-speed で2秒と指定しておくと、フラップは2秒掛けて 0.25 の位置に移動する事になります。control-output で指定されたプロパティは 2秒間で 0 から 0.25 に徐々に変化します。A6M2 のフラップに対する control-speed は次のように記述されています。

propeller タグ

プロペラ及びエンジンについて記述します。このタグは、<piston-engine>または<turbine-engine>の子要素を必要とします。

actionpt タグ

propeller タグのサブ要素であり、プロペラの位置情報を記述します。

piston-engine タグ

ピストンエンジンの特性を記述します。先述したとおり、propeller タグのサブ要素として記述しなければなりません。

turbine-engineタグ

タービンエンジン(ターボプロップ)を定義します。この要素は、<propeller>タグの子要素でなければなりません。

rotorタグ

(未翻訳)


07/12/01〜 -新規作成(フォーラムのフライトモデル解説に、自分が機体データの作成内に書いていた、docs/README.yasimの翻訳文を統合し、さらに追記) -sambar


トップ   新規 一覧 単語検索 最終更新   ヘルプ   最終更新のRSS