メインコンテンツ

このページは機械翻訳を使用して翻訳されました。最新版の英語を参照するには、ここをクリックします。

Aero.FixedWing.State クラス

名前空間: Aero

Aero.FixedWing航空機の時刻の状態を定義する

R2021a 以降

説明

Aero.FixedWing.State クラスを使用して、ある瞬間における Aero.FixedWing 航空機の状態を定義します。Aero.FixedWing.State オブジェクトには、ある時点における航空機の現在の状態に関する情報が含まれています。サブクラスは Aero.FixedWing.State を継承できます。

  • サブクラスによって定義された依存プロパティを取得するには、getState メソッドを使用します。

  • 依存プロパティを設定するには、setState メソッドを使用します。

  • Aero.FixedWing オブジェクト メソッド内でカスタム状態プロパティを使用するには、サブクラスを作成します。

クラスの属性

Sealed
false

クラス属性の詳細については、クラスの属性を参照してください。

作成

説明

Aero.FixedWing.State は、デフォルトのプロパティ値を持つ単一の Aero.FixedWing.State オブジェクトを作成します。

Aero.FixedWing.State(N)Aero.FixedWing.StateNN 列の行列を作成します。

Aero.FixedWing.State(M,N,P,...) または Aero.FixedWing.State([M N P ...]) は、 M x N x P x ... の Aero.FixedWing.State の配列を作成します。

Aero.FixedWing.State(size(A)) は、A およびすべての Aero.FixedWing.State オブジェクトと同じサイズの Aero.FixedWing.State オブジェクトを作成します。

Aero.FixedWing.State(__,property,propertyValue) は、Aero.FixedWing 配列オブジェクトのそれぞれに propertypropertyValue のペアを適用した Aero.FixedWing.State オブジェクトの配列を作成します。プロパティの一覧については、プロパティを参照してください。

入力引数

すべて展開する

固定翼オブジェクトの数。スカラーとして指定されます。

固定翼オブジェクトの数。スカラーとして指定されます。

固定翼オブジェクトの数。スカラーとして指定されます。

固定翼オブジェクトのサイズ。スカラーとして指定します。

プロパティ

すべて展開する

パブリック プロパティ

単位系。スカラー文字列または文字ベクトルとして指定します。

属性:

GetAccess
public
SetAccess
public

データ型: string | char

角度システム。'Radians' または 'Degrees' として指定されます。

属性:

GetAccess
public
SetAccess
public

データ型: string | char

温度システム。'Kelvin''Celsius''Rankine'、または 'Fahrenheit' として指定されます。

属性:

GetAccess
public
SetAccess
public

データ型: string | char

固定翼航空機の質量。単位はスカラー数値で指定します。

単位単位系

ニュートン (N)

'Metric'

ナメクジ(ナメクジ)

'English (kts)' および 'English (ft/s)'

属性:

GetAccess
public
SetAccess
public

データ型: string | char

航空機の慣性行列。この行列形式で機体を指定する数値の 3 行 3 列の表として指定されます。

 XYZ
Xイクスイクシーイクス
Yイクスいやーアイズ
Zイズクスイジーイズ

マトリックスには次の単位があります:

単位単位系

キログラムメートル2乗 (kg m^2)

'Metric'

スラグフィートの二乗 (スラグ ft^2)

'English (kts)' および 'English (ft/s)'

属性:

GetAccess
public
SetAccess
public

データ型: string | char

固定翼航空機のボディ座標系における重心の位置。次の単位で 3 要素ベクトルとして指定されます。

単位単位系

メートル (m)

'Metric'

フィート(ft)

'English (kts)' および 'English (ft/s)'

属性:

GetAccess
public
SetAccess
public

データ型: string | char

固定翼航空機のボディ座標系における圧力中心の位置。3 要素ベクトルとして指定され、単位は次の通りです。

単位単位系

メートル (m)

'Metric'

フィート(ft)

'English (kts)' および 'English (ft/s)'

属性:

GetAccess
public
SetAccess
public

データ型: string | char

海抜高度。次の単位でスカラー数値として指定されます。

単位単位系

メートル (m)

'Metric'

フィート(ft)

'English (kts)' および 'English (ft/s)'

属性:

GetAccess
public
SetAccess
public

データ型: string | char

海抜からの地上高。次の単位でスカラー数値として指定されます。

単位単位系

メートル (m)

'Metric'

フィート(ft)

'English (kts)' および 'English (ft/s)'

属性:

GetAccess
public
SetAccess
public

データ型: string | char

固定翼航空機の北の位置。次の単位でスカラー数値として指定されます。

単位単位系

メートル (m)

'Metric'

フィート(ft)

'English (kts)' および 'English (ft/s)'

属性:

GetAccess
public
SetAccess
public

データ型: string | char

固定翼航空機の東の位置。次の単位のスカラー数値として指定されます。

単位単位系

メートル (m)

'Metric'

フィート(ft)

'English (kts)' および 'English (ft/s)'

属性:

GetAccess
public
SetAccess
public

データ型: string | char

地上速度の前方成分。次の単位でスカラー数値として指定されます。

単位単位系

メートル毎秒 (m/s)

'Metric'

フィート/秒 (ft/s)

'English (kts)'

ノット(kts)

'English (ft/s)'

属性:

GetAccess
public
SetAccess
public

データ型: string | char

地上速度の横方向成分。次の単位でスカラー数値として指定されます。

単位単位系

メートル毎秒 (m/s)

'Metric'

フィート/秒 (ft/s)

'English (kts)'

ノット(kts)

'English (ft/s)'

属性:

GetAccess
public
SetAccess
public

データ型: string | char

地上速度の下向き成分。次の単位でスカラー数値として指定されます。

単位単位系

メートル毎秒 (m/s)

'Metric'

フィート/秒 (ft/s)

'English (kts)'

ノット(kts)

'English (ft/s)'

属性:

GetAccess
public
SetAccess
public

データ型: string | char

オイラーロール角度。AngleSystem プロパティに応じてラジアンまたは度単位のスカラー数値として指定されます。

属性:

GetAccess
public
SetAccess
public

データ型: string | char

オイラーピッチ角。AngleSystem プロパティに応じてラジアンまたは度単位のスカラー数値として指定されます。

属性:

GetAccess
public
SetAccess
public

データ型: string | char

オイラーヨー角。AngleSystem プロパティに応じてラジアンまたは度単位のスカラー数値として指定されます。

属性:

GetAccess
public
SetAccess
public

データ型: string | char

車体のロール速度。AngleSystem プロパティに応じて、ラジアン/秒または度/秒の単位でスカラー数値として指定されます。

属性:

GetAccess
public
SetAccess
public

データ型: string | char

ボディピッチレート。AngleSystem プロパティに応じて、ラジアン/秒または度/秒の単位でスカラー数値として指定されます。

属性:

GetAccess
public
SetAccess
public

データ型: string | char

ボディのヨーレート。AngleSystem プロパティに応じて、ラジアン/秒または度/秒の単位でスカラー数値として指定されます。

属性:

GetAccess
public
SetAccess
public

データ型: string | char

固定翼航空機の迎え角率。AngleSystem プロパティに応じて、ラジアン/秒または度/秒の単位でスカラー数値として指定されます。

属性:

GetAccess
public
SetAccess
public

データ型: string | char

固定翼航空機の横滑り率の角度。AngleSystem プロパティに応じて、ラジアン/秒または度/秒の単位でスカラー数値として指定されます。

属性:

GetAccess
public
SetAccess
public

データ型: string | char

ベクトルとして指定された現在の制御状態の値。

  • 制御状態を設定するには、setupControlStates を使用します。

  • 制御状態の位置を設定するには、setState を使用します。

  • 制御状態の位置を取得するには、getState を使用します。

非対称制御サーフェスで作成された有効な制御変数を設定することはできません。

属性:

GetAccess
public
SetAccess
public

データ型: string | char

Aero.Aircraft.Environment オブジェクトに含まれる、スカラーとして指定された現在の環境の定義。

属性:

GetAccess
public
SetAccess
public

データ型: string | char

保護プロパティ

固定翼航空機の重量。スカラー数値として指定され、単位は次のとおりです。

単位単位系

ニュートン (N)

'Metric'

ポンド力 (lbf)

'English (kts)' および 'English (ft/s)'

Weightは、Aero.Aircraft.EnvironmentオブジェクトのMassGravityプロパティの値に依存し、次の式で表されます。

Weight = Mass * Environment . Gravity .

属性:

GetAccess
アクセスを制限
SetAccess
protected

データ型: double

地上からの高度。次の単位でスカラー数値として指定されます。

単位単位系

メートル (m)

'Metric'

フィート(ft)

'English (kts)' および 'English (ft/s)'

AltitudeAGL は、次の式に従って、パブリック プロパティ AltitudeMSL および GroundHeight の値に依存します。

AltitudeAGL = AltitudeMSL - GroundHeight

属性:

GetAccess
アクセスを制限
SetAccess
protected

データ型: double

固定翼航空機のダウン位置。次の単位のスカラー数値として指定されます。

単位単位系

メートル (m)

'Metric'

フィート(ft)

'English (kts)' および 'English (ft/s)'

XDAltitudeMSLパブリックプロパティの値に依存し、次の式で表されます。

XD = -1 * AltitudeMSL

属性:

GetAccess
アクセスを制限
SetAccess
protected

データ型: double

固定翼航空機の現在の対気速度。次の単位でスカラー数値として指定されます。

単位単位系

メートル/秒 (m/s)

'Metric'

フィート/秒 (ft/s)

'English (ft/s)'

ノット(kts)

'English (kts)'

Airspeedは、UrVrWrパブリックプロパティの値に依存し、次の式で表されます。

Airspeed = sqrt(Ur2 + Vr2+Wr2)。

属性:

GetAccess
アクセスを制限
SetAccess
protected

データ型: double

固定翼航空機の現在の対地速度。次の単位で 3 要素ベクトルとして指定されます。

単位単位系

メートル/秒 (m/s)

'Metric'

フィート/秒 (ft/s)

'English (ft/s)'

ノット(kts)

'English (kts)'

Groundspeedは、UVRパブリックプロパティの値に依存し、次の式で表されます。

Groundspeed = [U VW]。

属性:

GetAccess
アクセスを制限
SetAccess
protected

データ型: double

固定翼航空機のマッハ数。数値スカラーとして指定されます。

MachNumberは、AirSpeedSpeedOfSoundのパブリックプロパティの値に依存し、次の式で表されます。

MachNumber = AirSpeed/Environment.SpeedOfSound

属性:

GetAccess
アクセスを制限
SetAccess
protected

データ型: double

固定翼航空機の機体速度。3 要素ベクトルとして指定されます。

BodyVelocityは、GroundSpeedPhiThetaPsiのパブリックプロパティの値に依存し、次の式で表されます。

BodyVelocity = GroundVelocity - InertialToBodyMatrix * Environment . WindVelocity .

属性:

GetAccess
アクセスを制限
SetAccess
protected

データ型: double

固定翼航空機の地上速度は、3要素ベクトルとして指定され、次の式で定義されます。

GroundVelocity = [UVW]。

属性:

GetAccess
アクセスを制限
SetAccess
protected

データ型: double

X ボディ速度成分。スカラー数値として指定されます。UrBodyVelocity に依存します。

属性:

GetAccess
アクセスを制限
SetAccess
protected

データ型: double

Y ボディ速度成分。スカラー数値として指定されます。UrBodyVelocity に依存します。

属性:

GetAccess
アクセスを制限
SetAccess
protected

データ型: double

Z ボディ速度成分。スカラー数値として指定されます。UrBodyVelocity に依存します。

属性:

GetAccess
アクセスを制限
SetAccess
protected

データ型: double

飛行経路角度。AngleSystem プロパティに応じてラジアンまたは度単位のスカラー数値として指定されます。FlightPathAngle は次の式で定義されます。

FlightPathAngle = atan2(WU)。

.

属性:

GetAccess
アクセスを制限
SetAccess
protected

データ型: double

コース角度。AngleSystemプロパティに応じてラジアンまたは度単位でスカラー数値として指定します。CourseAngleVUに依存し、次の式で表されます。

CourseAngle = atan2(VU)。

属性:

GetAccess
アクセスを制限
SetAccess
protected

データ型: double

迎え角。AngleSystem プロパティに応じてラジアンまたは度単位のスカラー数値として指定されます。Alpha は、次の式で WrUr に依存します。

Alpha = atan2(WrUr)。

属性:

GetAccess
アクセスを制限
SetAccess
protected

データ型: double

ラジアンまたは度単位のスカラー数値として指定されるサイドスリップの角度は、AngleSystem プロパティに依存します。Beta は、次の式で VrAirspeed に依存します。

Beta = asin(Vr/Airspeed)。

属性:

GetAccess
アクセスを制限
SetAccess
protected

データ型: double

慣性からボディ軸への変換行列。安定軸をボディ軸に変換するための 3 行 3 列の行列として指定されます。このプロパティは、PhiTheta、および Psi プロパティに依存します。

属性:

GetAccess
アクセスを制限
SetAccess
protected

データ型: double

ボディ軸から安定軸への変換行列。安定軸をボディ軸に変換するための 3 行 3 列の行列として指定されます。このプロパティは、PhiTheta、および Psi プロパティに依存します。

属性:

GetAccess
アクセスを制限
SetAccess
protected

データ型: double

ボディ軸から風軸への変換行列。ボディ軸を風軸に変換するための 3 行 3 列の行列として指定されます。このプロパティは、Alpha プロパティと Beta プロパティに依存します。

属性:

GetAccess
アクセスを制限
SetAccess
protected

データ型: double

風からボディ軸への変換行列。風軸をボディ軸に変換するための 3 行 3 列の行列として指定されます。このプロパティは、Alpha プロパティと Beta プロパティに依存します。

属性:

GetAccess
アクセスを制限
SetAccess
protected

データ型: double

ボディ軸から安定軸への変換行列。3 行 3 列の行列として指定されます。BodyToStabilityMatrix の定義については、アルゴリズム を参照してください。

属性:

GetAccess
アクセスを制限
SetAccess
protected

データ型: string | char

安定軸からボディ マトリックス軸への変換マトリックス。3 行 3 列のマトリックスとして指定されます。StabilityToBodyMatrix の定義については、アルゴリズム を参照してください。

属性:

GetAccess
アクセスを制限
SetAccess
protected

データ型: string | char

現在の状態での動圧。次の単位でスカラー数値として指定されます。

単位単位系

パスカル(Pa)

'Metric'

ポンド/フィート2 (lbf/ft2)

'English (ft/s)' および 'English (kts)'

この特性は次の式で定義される。

DynamicPressure = 0.5 * Environment.Density * Airspeed2

属性:

GetAccess
アクセスを制限
SetAccess
protected

データ型: double

メソッド

すべて展開する

すべて折りたたむ

固定翼オブジェクト航空機の動的動作と現在の状態を作成して設定します。

固定翼オブジェクトを作成します。

aircraft = Aero.FixedWing()
aircraft = 

  FixedWing with properties:

        ReferenceArea: 0
        ReferenceSpan: 0
      ReferenceLength: 0
         Coefficients: [1×1 Aero.FixedWing.Coefficient]
     DegreesOfFreedom: "6DOF"
             Surfaces: [1×0 Aero.FixedWing.Surface]
              Thrusts: [1×0 Aero.FixedWing.Thrust]
          AspectRatio: NaN
           UnitSystem: "Metric"
          AngleSystem: "Radians"
    TemperatureSystem: "Kelvin"
           Properties: [1×1 Aero.Aircraft.Properties]

航空機の動的動作を定義するには、その係数を設定します。

aircraft = setCoefficient(aircraft, "CD", "Zero", 0.27)
aircraft = 

  FixedWing with properties:

        ReferenceArea: 0
        ReferenceSpan: 0
      ReferenceLength: 0
         Coefficients: [1×1 Aero.FixedWing.Coefficient]
     DegreesOfFreedom: "6DOF"
             Surfaces: [1×0 Aero.FixedWing.Surface]
              Thrusts: [1×0 Aero.FixedWing.Thrust]
          AspectRatio: NaN
           UnitSystem: "Metric"
          AngleSystem: "Radians"
    TemperatureSystem: "Kelvin"
           Properties: [1×1 Aero.Aircraft.Properties]

航空機の現在の状態を定義します。

state = Aero.FixedWing.State("Mass", 500)
state = 

  State with properties:

                   Alpha: 0
                    Beta: 0
                AlphaDot: 0
                 BetaDot: 0
                    Mass: 500
                 Inertia: [3×3 table]
         CenterOfGravity: [0 0 0]
        CenterOfPressure: [0 0 0]
             AltitudeMSL: 0
            GroundHeight: 0
                      XN: 0
                      XE: 0
                      XD: 0
                       U: 50
                       V: 0
                       W: 0
                     Phi: 0
                   Theta: 0
                     Psi: 0
                       P: 0
                       Q: 0
                       R: 0
                  Weight: 4905
             AltitudeAGL: 0
                Airspeed: 50
             GroundSpeed: 50
              MachNumber: 0.1469
            BodyVelocity: [50 0 0]
          GroundVelocity: [50 0 0]
                      Ur: 50
                      Vr: 0
                      Wr: 0
         FlightPathAngle: 0
             CourseAngle: 0
    InertialToBodyMatrix: [3×3 double]
    BodyToInertialMatrix: [3×3 double]
        BodyToWindMatrix: [3×3 double]
        WindToBodyMatrix: [3×3 double]
         DynamicPressure: 1.5312e+03
             Environment: [1×1 Aero.Aircraft.Environment]
              UnitSystem: "Metric"
             AngleSystem: "Radians"
       TemperatureSystem: "Kelvin"
           ControlStates: [1×0 Aero.Aircraft.ControlState]
        OutOfRangeAction: "Limit"
        DiagnosticAction: "Warning"
              Properties: [1×1 Aero.Aircraft.Properties]

航空機にかかる力とモーメントを計算します。

[F, M] = forcesAndMoments(aircraft, state)
F =

           0
           0
        4905


M =

     0
     0
     0

アルゴリズム

BodyToStabilityMatrix 変換は次の行列によって定義されます。

BodyToStabilityMatrix = 
[cos(Alpha),  0, sin(Alpha)]
[     0,      1,      0    ]
[-sin(Alpha), 0, cos(Alpha)]

StabilityToBodyMatrix 変換は BodyToStabilityMatrix 変換の転置です。

StabilityToBodyMatrix = BodyToStabilityMatrix'

バージョン履歴

R2021a で導入