メインコンテンツ

このページの内容は最新ではありません。最新版の英語を参照するには、ここをクリックします。

Simulation 3D Motorcycle

R2026a

3D 環境でのオートバイの実装

  • Simulation 3D Motorcycle block

ライブラリ:
Vehicle Dynamics Blockset / Vehicle Scenarios / Sim3D / Sim3D Vehicle / Components

説明

メモ

Simulation 3D Motorcycle ブロックを含むモデルのシミュレーションには、Simulink® 3D Animation™ が必要です。

Simulation 3D Motorcycle ブロックは、3D シミュレーション環境に二輪のオートバイを実装します。

このブロックを使用するには、必ず Simulation 3D Scene Configuration ブロックをモデルに含めます。このブロックの [サンプル時間] パラメーターを -1 に設定すると、ブロックは Simulation 3D Scene Configuration ブロックに指定されているサンプル時間を使用します。

ブロックの入力には、SAE J6701 で定義されている、Z が下向きとなる "右手" (RH) "直交" の車両座標系を使用します。この座標系は慣性系であり、初期状態で車両の幾何学的中心に一致します。

  • "X" 軸 — 車両の縦軸に沿い、前方向を指します。

  • "Y" 軸 — 車両の横軸に沿い、右を指します。

  • "Z" 軸 — 下を指します。

ヒント

Simulation 3D Motorcycle ブロックが Simulation 3D Scene Configuration ブロックの前に実行されることを確認します。これにより、Simulation 3D Motorcycle で準備された信号データが Unreal Engine® 3D 可視化環境で受信されます。ブロックの実行順序を確認するには、ブロックを右クリックして [プロパティ] ボタン をクリックします。[一般] タブで、[優先順位] の設定が次のようになっていることを確認します。

  • Simulation 3D Scene Configuration — 0

  • Simulation 3D Motorcycle — -1

実行順序の詳細については、実行順序の制御と表示を参照してください。

例

端子

入力

すべて展開する

オートバイおよびコンポーネントの並進 (m 単位)。配列の次元は 4 行 3 列です。

  • Translation(1,1)、Translation(1,2)、Translation(1,3) — Z が下向きの慣性車両座標系における "X"、"Y"、"Z" の各軸に沿ったオートバイの並進。

  • Translation(...,1)、Translation(...,2)、Translation(...,3) — Z が下向きの車両座標系における "X"、"Y"、"Z" の各軸に沿った、車両を基準とするオートバイのコンポーネントの並進。

信号は、位置に応じた並進情報を含みます。

Translation=[XvYvZvXHYHZHXFYFZFXRYRZR]

並進配列の要素並進の軸

オートバイ、Xv

Translation(1,1)Z が下向きの慣性車両座標系の "X" 軸

オートバイ、Yv

Translation(1,2)Z が下向きの慣性車両座標系の "Y" 軸

オートバイ、Zv

Translation(1,3)Z が下向きの慣性車両座標系の "Z" 軸

ハンドルバー、XH

Translation(2,1)Z が下向きの車両座標系の "X" 軸

ハンドルバー、YH

Translation(2,2)Z が下向きの車両座標系の "Y" 軸

ハンドルバー、ZH

Translation(2,3)Z が下向きの車両座標系の "Z" 軸

前輪、XF

Translation(3,1)Z が下向きの車両座標系の "X" 軸

前輪、YF

Translation(3,2)Z が下向きの車両座標系の "Y" 軸

前輪、ZF

Translation(3,3)Z が下向きの車両座標系の "Z" 軸

後輪、XR

Translation(4,1)Z が下向きの車両座標系の "X" 軸

後輪、YR

Translation(4,2)Z が下向きの車両座標系の "Y" 軸

後輪、ZR

Translation(4,3)Z が下向きの車両座標系の "Z" 軸

オートバイおよびコンポーネントの回転 (rad 単位)。配列の次元は 4 行 3 列です。

  • Rotation(1,1)、Rotation(1,2)、Rotation(1,3) — Z が下向きの慣性車両座標系における "X"、"Y"、"Z" の各軸を中心としたオートバイの回転。

  • Rotation(...,1)、Rotation(...,2)、Rotation(...,3) — Z が下向きの車両座標系における "X"、"Y"、"Z" の各軸を中心とした、車両を基準とするオートバイのコンポーネントの回転。

信号は、位置に応じた回転情報を含みます。

Rotation=[RollvPitchvYawvRollHPitchHYawHRollFPitchFYawFRollRPitchRYawR]

回転配列の要素回転軸

車両、Rollv

Rotation(1,1)Z が下向きの慣性車両座標系の "X" 軸

車両、Pitchv

Rotation(1,2)Z が下向きの慣性車両座標系の "Y" 軸

車両、Yawv

Rotation(1,3)Z が下向きの慣性車両座標系の "Z" 軸

ハンドルバー、RollH

Rotation(2,1)Z が下向きの車両座標系の "X" 軸

ハンドルバー、PitchH

Rotation(2,2)Z が下向きの車両座標系の "Y" 軸

ハンドルバー、YawH

Rotation(2,3)Z が下向きの車両座標系の "Z" 軸

前輪、RollF

Rotation(3,1)Z が下向きの車両座標系の "X" 軸

前輪、PitchF

Rotation(3,2)Z が下向きの車両座標系の "Y" 軸

前輪、YawF

Rotation(3,3)Z が下向きの車両座標系の "Z" 軸

後輪、RollR

Rotation(4,1)Z が下向きの車両座標系の "X" 軸

後輪、PitchR

Rotation(4,2)Z が下向きの車両座標系の "Y" 軸

後輪、YawR

Rotation(4,3)Z が下向きの車両座標系の "Z" 軸

ライト コントロールの入力信号。1 行 5 列の boolean ベクトルとして指定します。次の表に示すように、ベクトルの各要素は車両の特定のライトをオンまたはオフにします。値 1 はライトをオンにし、値 0 はライトをオフにします。

ベクトルの要素車両ライト

(1,1)

ヘッドライトのハイビーム

(1,2)

ヘッドライトのロービーム

(1,3)

ブレーキ

(1,4)

左折指示

(1,5)

右折指示

依存関係

この端子を作成するには、[ライト コントロール] タブで [ライト コントロールを有効にする] を選択します。

データ型: Boolean

パラメーター

すべて展開する

車両パラメーター

[タイプ] パラメーターは、オートバイのタイプを指定するために使用します。次の表は、オートバイの寸法へのリンクを示しています。

設定車両の寸法
スポーツ バイク

スポーツ バイク

モーター バイク

モーター バイク

スクーター

スクーター

プログラムでの使用

ブロック パラメーターの値をプログラムによって設定するには、set_param 関数を使用します。

ブロック パラメーターの値をプログラムによって取得するには、get_param 関数を使用します。

パラメーター: Mesh
値: Sports bike (既定値) | Motor bike | Scooter
データ型: character vector

車両の色を選択します。

プログラムでの使用

ブロック パラメーターの値をプログラムによって設定するには、set_param 関数を使用します。

ブロック パラメーターの値をプログラムによって取得するには、get_param 関数を使用します。

パラメーター: MotorcycleColor
値: Red (既定値) | Orange | Yellow | Green | Blue | Black | White | Silver | Dazzle Camouflage
データ型: character vector

オートバイの名前。既定では、モデルでこのブロックを使用した場合、ブロックは [名前] パラメーターを SimulinkVehicleX に設定します。X の値は、モデル内にある 3D シミュレーション ブロックの数によって決まります。

プログラムでの使用

ブロック パラメーターの値をプログラムによって設定するには、set_param 関数を使用します。

ブロック パラメーターの値をプログラムによって取得するには、get_param 関数を使用します。

パラメーター: ActorName
値: SimulinkVehicle1 (既定値) | character vector
データ型: character vector

サンプル時間、Ts。グラフィックスのフレーム レートはサンプル時間の逆数です。

プログラムでの使用

ブロック パラメーターの値をプログラムによって設定するには、set_param 関数を使用します。

ブロック パラメーターの値をプログラムによって取得するには、get_param 関数を使用します。

パラメーター: SampleTime
値: -1 (既定値) | scalar
データ型: double

ライト コントロール

車両のヘッドライトをコントロールするかどうかを選択します。有効になったパラメーターを使用して、ライトのパラメーター (ヘッドライトの強度など) を設定します。

依存関係

このパラメーターを選択すると、次が行われます。

  • 入力端子 Light controls の作成

  • 次のライトのパラメーターの有効化

    ライトライトのパラメーター
    ヘッドライト

    • ヘッドライト カラー

    • ハイビーム強度

    • ロービーム強度

    • ハイビーム円錐の半角

    • ロービーム円錐の半角

    • 左ヘッドライト ビーム方向

    • 右ヘッドライト ビーム方向

    ブレーキ ライト

    ブレーキ ライト強度

    方向指示灯

    • 方向指示灯強度

    • 周期

    • パルス幅

プログラムでの使用

ブロック パラメーターの値をプログラムによって設定するには、set_param 関数を使用します。

ブロック パラメーターの値をプログラムによって取得するには、get_param 関数を使用します。

パラメーター: MotorcycleLightsControl
値: Off (既定値) | On
データ型: character vector

ヘッドライト

ヘッドライト カラー。正規化された RGB 3 成分値からなる 1 行 3 列のベクトルとして指定します。

依存関係

このパラメーターを有効にするには、[ライト コントロールを有効にする] を選択します。

プログラムでの使用

ブロック パラメーターの値をプログラムによって設定するには、set_param 関数を使用します。

ブロック パラメーターの値をプログラムによって取得するには、get_param 関数を使用します。

パラメーター: HeadlightColor
値: [1,1,1] (既定値) | vector
データ型: double

ハイビーム強度 (cd 単位)。

依存関係

このパラメーターを有効にするには、[ライト コントロールを有効にする] を選択します。

プログラムでの使用

ブロック パラメーターの値をプログラムによって設定するには、set_param 関数を使用します。

ブロック パラメーターの値をプログラムによって取得するには、get_param 関数を使用します。

パラメーター: HighBeamIntensity
値: 100000 (既定値) | scalar
データ型: double

ロービーム強度 (cd 単位)。

依存関係

このパラメーターを有効にするには、[ライト コントロールを有効にする] を選択します。

プログラムでの使用

ブロック パラメーターの値をプログラムによって設定するには、set_param 関数を使用します。

ブロック パラメーターの値をプログラムによって取得するには、get_param 関数を使用します。

パラメーター: LowBeamIntensity
値: 60000 (既定値) | scalar
データ型: double

ハイビーム円錐の半角 (rad 単位)。

依存関係

このパラメーターを有効にするには、[ライト コントロールを有効にする] を選択します。

プログラムでの使用

ブロック パラメーターの値をプログラムによって設定するには、set_param 関数を使用します。

ブロック パラメーターの値をプログラムによって取得するには、get_param 関数を使用します。

パラメーター: HighBeamConeAngle
値: 1.22 (既定値) | scalar
データ型: double

ロービーム円錐の半角 (rad 単位)。

依存関係

このパラメーターを有効にするには、[ライト コントロールを有効にする] を選択します。

プログラムでの使用

ブロック パラメーターの値をプログラムによって設定するには、set_param 関数を使用します。

ブロック パラメーターの値をプログラムによって取得するには、get_param 関数を使用します。

パラメーター: LowBeamConeAngle
値: 1.22 (既定値) | scalar
データ型: double

"Z" が下向きの座標系におけるヘッドライト ビーム方向のピッチとヨーの向き。1 行 2 列のベクトル (rad 単位) として指定します。ベクトルの 1 番目の要素 [1,1] はピッチ角です。ベクトルの 2 番目の要素 [1,2] はヨー角です。

依存関係

このパラメーターを有効にするには、[ライト コントロールを有効にする] を選択します。

プログラムでの使用

ブロック パラメーターの値をプログラムによって設定するには、set_param 関数を使用します。

ブロック パラメーターの値をプログラムによって取得するには、get_param 関数を使用します。

パラメーター: HeadlightOrientation
値: [0,0] (既定値) | vector
データ型: double

ブレーキ ライト

ブレーキ ライト強度 (cd/m^2 単位)。

依存関係

このパラメーターを有効にするには、[ライト コントロールを有効にする] を選択します。

プログラムでの使用

ブロック パラメーターの値をプログラムによって設定するには、set_param 関数を使用します。

ブロック パラメーターの値をプログラムによって取得するには、get_param 関数を使用します。

パラメーター: BrakelightIntensity
値: 500 (既定値) | scalar
データ型: double

方向指示灯

方向指示灯強度 (cd/m^2 単位)。

依存関係

このパラメーターを有効にするには、[ライト コントロールを有効にする] を選択します。

プログラムでの使用

ブロック パラメーターの値をプログラムによって設定するには、set_param 関数を使用します。

ブロック パラメーターの値をプログラムによって取得するには、get_param 関数を使用します。

パラメーター: SignallightIntensity
値: 500 (既定値) | scalar
データ型: double

方向指示灯の周期 (秒単位)。

依存関係

このパラメーターを有効にするには、[ライト コントロールを有効にする] を選択します。

プログラムでの使用

ブロック パラメーターの値をプログラムによって設定するには、set_param 関数を使用します。

ブロック パラメーターの値をプログラムによって取得するには、get_param 関数を使用します。

パラメーター: SignallightPeriod
値: 1 (既定値) | scalar
データ型: double

方向指示灯のパルス幅 (周期のパーセント)。

依存関係

このパラメーターを有効にするには、[ライト コントロールを有効にする] を選択します。

プログラムでの使用

ブロック パラメーターの値をプログラムによって設定するには、set_param 関数を使用します。

ブロック パラメーターの値をプログラムによって取得するには、get_param 関数を使用します。

パラメーター: SignalPulseWidth
値: 50 (既定値) | scalar
データ型: double

初期値

オートバイおよびコンポーネントの初期並進 (m 単位)。配列の次元は 5 行 3 列です。

  • Translation(1,1)、Translation(1,2)、Translation(1,3) — Z が下向きの慣性車両座標系における "X"、"Y"、"Z" の各軸に沿った車両の初期並進。

  • Translation(...,1)、Translation(...,2)、Translation(...,3) — Z が下向きの車両座標系における "X"、"Y"、"Z" の各軸に沿った、車両を基準とするオートバイのコンポーネントの初期並進。

パラメーターは、位置に応じた並進情報を含みます。

Translation=[XvYvZvXHYHZHXFYFZFXRYRZR]

並進配列の要素並進の軸

オートバイ、Xv

Translation(1,1)Z が下向きの慣性車両座標系の "X" 軸

オートバイ、Yv

Translation(1,2)Z が下向きの慣性車両座標系の "Y" 軸

オートバイ、Zv

Translation(1,3)Z が下向きの慣性車両座標系の "Z" 軸

ハンドルバー、XH

Translation(2,1)Z が下向きの車両座標系の "X" 軸

ハンドルバー、YH

Translation(2,2)Z が下向きの車両座標系の "Y" 軸

ハンドルバー、ZH

Translation(2,3)Z が下向きの車両座標系の "Z" 軸

前輪、XF

Translation(3,1)Z が下向きの車両座標系の "X" 軸

前輪、YF

Translation(3,2)Z が下向きの車両座標系の "Y" 軸

前輪、ZF

Translation(3,3)Z が下向きの車両座標系の "Z" 軸

後輪、XR

Translation(4,1)Z が下向きの車両座標系の "X" 軸

後輪、YR

Translation(4,2)Z が下向きの車両座標系の "Y" 軸

後輪、ZR

Translation(4,3)Z が下向きの車両座標系の "Z" 軸

プログラムでの使用

ブロック パラメーターの値をプログラムによって設定するには、set_param 関数を使用します。

ブロック パラメーターの値をプログラムによって取得するには、get_param 関数を使用します。

パラメーター: Translation
値: zeros(4,3) (既定値) | 4-by-3 array
データ型: double

Z が下向きの車両座標系における "X"、"Y"、"Z" の各軸を中心としたオートバイおよびコンポーネントの初期回転。

配列の次元は 5 行 3 列です。

  • Rotation(1,1)、Rotation(1,2)、Rotation(1,3) — Z が下向きの慣性車両座標系における "X"、"Y"、"Z" の各軸を中心としたオートバイの初期回転。

  • Rotation(...,1)、Rotation(...,2)、Rotation(...,3) — Z が下向きの車両座標系における "X"、"Y"、"Z" の各軸を中心とした、車両を基準とするオートバイのコンポーネントの初期回転。

パラメーターは、位置に応じた回転情報を含みます。

Rotation=[RollvPitchvYawvRollHPitchHYawHRollFPitchFYawFRollRPitchRYawR]

回転配列の要素回転軸

車両、Rollv

Rotation(1,1)Z が下向きの慣性車両座標系の "X" 軸

車両、Pitchv

Rotation(1,2)Z が下向きの慣性車両座標系の "Y" 軸

車両、Yawv

Rotation(1,3)Z が下向きの慣性車両座標系の "Z" 軸

ハンドルバー、RollH

Rotation(2,1)Z が下向きの車両座標系の "X" 軸

ハンドルバー、PitchH

Rotation(2,2)Z が下向きの車両座標系の "Y" 軸

ハンドルバー、YawH

Rotation(2,3)Z が下向きの車両座標系の "Z" 軸

前輪、RollF

Rotation(3,1)Z が下向きの車両座標系の "X" 軸

前輪、PitchF

Rotation(3,2)Z が下向きの車両座標系の "Y" 軸

前輪、YawF

Rotation(3,3)Z が下向きの車両座標系の "Z" 軸

後輪、RollR

Rotation(4,1)Z が下向きの車両座標系の "X" 軸

後輪、PitchR

Rotation(4,2)Z が下向きの車両座標系の "Y" 軸

後輪、YawR

Rotation(4,3)Z が下向きの車両座標系の "Z" 軸

プログラムでの使用

ブロック パラメーターの値をプログラムによって設定するには、set_param 関数を使用します。

ブロック パラメーターの値をプログラムによって取得するには、get_param 関数を使用します。

パラメーター: Rotation
値: zeros(4,3) (既定値) | 4-by-3 array
データ型: double

参照

[1] Vehicle Dynamics Standards Committee. Vehicle Dynamics Terminology J670. Warrendale, PA: SAE International, 2008.

バージョン履歴

R2021b で導入

すべて展開する