Simulation 3D Vehicle
3D 環境での車両の実装

ライブラリ:
Vehicle Dynamics Blockset /
Vehicle Scenarios /
Sim3D /
Sim3D Vehicle /
Components
説明
メモ
Simulation 3D Vehicle ブロックを含むモデルのシミュレーションには、Simulink® 3D Animation™ が必要です。
Simulation 3D Vehicle ブロックは、3D シミュレーション環境に 4 輪車両を実装します。
このブロックを使用するには、必ず Simulation 3D Scene Configuration ブロックをモデルに含めます。このブロックの [サンプル時間] パラメーターを -1 に設定すると、ブロックは Simulation 3D Scene Configuration ブロックに指定されているサンプル時間を使用します。
ブロックの入力には、SAE J6701 で定義されている、Z が下向きとなる "右手" (RH) "直交" の車両座標系を使用します。この座標系は慣性系であり、初期状態で車両の幾何学的中心に一致します。
"X" 軸 — 車両の縦軸に沿い、前方向を指します。
"Y" 軸 — 車両の横軸に沿い、右を指します。
"Z" 軸 — 下を指します。
ヒント
Simulation 3D Vehicle ブロックが Simulation 3D Scene Configuration ブロックの前に実行されることを確認します。これにより、Simulation 3D Vehicle で準備された信号データが Unreal Engine® 3D 可視化環境で受信されます。ブロックの実行順序を確認するには、ブロックを右クリックして [プロパティ] ボタン
をクリックします。[一般] タブで、[優先順位] の設定が次のようになっていることを確認します。
Simulation 3D Scene Configuration —
0Simulation 3D Vehicle —
-1
実行順序の詳細については、実行順序の制御と表示を参照してください。
Simulation 3D Vehicle ブロックを構成することにより、カスタム メッシュのインポートおよび車両ライトのコントロールができます。
例
カメラおよびレイ トレーシング リファレンス アプリケーションによるシーン調査
カメラおよびレイ トレーシング リファレンス アプリケーション プロジェクトを使用して、車両運動モデルにおける 3D Unreal Engine シーンについて調査する。
端子
入力
車両および車輪の並進 (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" の各軸に沿い、車両を基準とする車輪の並進です。
信号は、車軸と車輪の位置に応じた並進情報を含みます。
| 並進 | 配列の要素 | 並進の軸 |
|---|---|---|
車両、Xv | Translation(1,1) | Z が下向きの慣性車両座標系の "X" 軸 |
車両、Yv | Translation(1,2) | Z が下向きの慣性車両座標系の "Y" 軸 |
車両、Zv | Translation(1,3) | Z が下向きの慣性車両座標系の "Z" 軸 |
左前輪、XFL | Translation(2,1) | Z が下向きの車両座標系の "X" 軸 |
左前輪、YFL | Translation(2,2) | Z が下向きの車両座標系の "Y" 軸 |
左前輪、ZFL | Translation(2,3) | Z が下向きの車両座標系の "Z" 軸 |
右前輪、XFR | Translation(3,1) | Z が下向きの車両座標系の "X" 軸 |
右前輪、YFR | Translation(3,2) | Z が下向きの車両座標系の "Y" 軸 |
右前輪、ZFR | Translation(3,3) | Z が下向きの車両座標系の "Z" 軸 |
左後輪、XRL | Translation(4,1) | Z が下向きの車両座標系の "X" 軸 |
左後輪、YRL | Translation(4,2) | Z が下向きの車両座標系の "Y" 軸 |
左後輪、ZRL | Translation(4,3) | Z が下向きの車両座標系の "Z" 軸 |
右後輪、XRR | Translation(5,1) | Z が下向きの車両座標系の "X" 軸 |
右後輪、YRR | Translation(5,2) | Z が下向きの車両座標系の "Y" 軸 |
右後輪、ZRR | Translation(5,3) | Z が下向きの車両座標系の "Z" 軸 |
車両および車輪の回転 (rad 単位)。配列の次元は 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" の各軸を中心とする車輪の回転です。
信号は、車軸と車輪の位置に応じた回転情報を含みます。
| 回転 | 配列の要素 | 回転軸 |
|---|---|---|
車両、Rollv | Rotation(1,1) | Z が下向きの慣性車両座標系の "X" 軸 |
車両、Pitchv | Rotation(1,2) | Z が下向きの慣性車両座標系の "Y" 軸 |
車両、Yawv | Rotation(1,3) | Z が下向きの慣性車両座標系の "Z" 軸 |
左前輪、RollFL | Rotation(2,1) | Z が下向きの車両座標系の "X" 軸 |
左前輪、PitchFL | Rotation(2,2) | Z が下向きの車両座標系の "Y" 軸 |
左前輪、YawFL | Rotation(2,3) | Z が下向きの車両座標系の "Z" 軸 |
右前輪、RollFR | Rotation(3,1) | Z が下向きの車両座標系の "X" 軸 |
右前輪、PitchFR | Rotation(3,2) | Z が下向きの車両座標系の "Y" 軸 |
右前輪、YawFR | Rotation(3,3) | Z が下向きの車両座標系の "Z" 軸 |
左後輪、RollRL | Rotation(4,1) | Z が下向きの車両座標系の "X" 軸 |
左後輪、PitchRL | Rotation(4,2) | Z が下向きの車両座標系の "Y" 軸 |
左後輪、YawRL | Rotation(4,3) | Z が下向きの車両座標系の "Z" 軸 |
右後輪、RollRR | Rotation(5,1) | Z が下向きの車両座標系の "X" 軸 |
右後輪、PitchRR | Rotation(5,2) | Z が下向きの車両座標系の "Y" 軸 |
右後輪、YawRR | Rotation(5,3) | Z が下向きの車両座標系の "Z" 軸 |
車両および車輪のスケール (無次元)。配列の次元は 5 行 3 列です。
Scale(1,1)、Scale(1,2)、Scale(1,3)— Z が下向きの慣性車両座標系における "X"、"Y"、"Z" の各軸に沿った車両のスケールです。Scale(...,1)、Scale(...,2)、Scale(...,3)— Z が下向きの車両座標系における "X"、"Y"、"Z" の各軸に沿い、車両を基準とする車輪のスケールです。
信号は、車軸と車輪の位置に応じたスケール情報を含みます。
| スケール | 配列の要素 | スケールの軸 |
|---|---|---|
車両、Xvscale | Scale(1,1) | Z が下向きの車両座標系の "X" 軸 |
車両、Yvscale | Scale(1,2) | Z が下向きの車両座標系の "Y" 軸 |
車両、Zvscale | Scale(1,3) | Z が下向きの車両座標系の "Z" 軸 |
左前輪、XFLscale | Scale(2,1) | Z が下向きの車両座標系の "X" 軸 |
左前輪、YFLscale | Scale(2,2) | Z が下向きの車両座標系の "Y" 軸 |
左前輪、ZFLscale | Scale(2,3) | Z が下向きの車両座標系の "Z" 軸 |
右前輪、XFRscale | Scale(3,1) | Z が下向きの車両座標系の "X" 軸 |
右前輪、YFRscale | Scale(3,2) | Z が下向きの車両座標系の "Y" 軸 |
右前輪、ZFRscale | Scale(3,3) | Z が下向きの車両座標系の "Z" 軸 |
左後輪、XRLscale | Scale(4,1) | Z が下向きの車両座標系の "X" 軸 |
左後輪、YRLscale | Scale(4,2) | Z が下向きの車両座標系の "Y" 軸 |
左後輪、ZRLscale | Scale(4,3) | Z が下向きの車両座標系の "Z" 軸 |
右後輪、XRRscale | Scale(5,1) | Z が下向きの車両座標系の "X" 軸 |
右後輪、YRRscale | Scale(5,2) | Z が下向きの車両座標系の "Y" 軸 |
右後輪、ZRRscale | Scale(5,3) | Z が下向きの車両座標系の "Z" 軸 |
ライト コントロールの入力信号。1 行 6 列の boolean ベクトルとして指定します。次の表に示すように、ベクトルの各要素は車両の特定のライトをオンまたはオフにします。値 1 はライトをオンにし、値 0 はライトをオフにします。
| ベクトルの要素 | 車両ライト |
|---|---|
(1,1) | ヘッドライトのハイビーム |
(1,2) | ヘッドライトのロービーム |
(1,3) | ブレーキ |
(1,4) | 後退 |
(1,5) | 左折指示 |
(1,6) | 右折指示 |
依存関係
この端子を作成するには、[ライト コントロール] タブで [ライト コントロールを有効にする] を選択します。
データ型: Boolean
パラメーター
車両パラメーター
車両タイプを指定します。次の表は、車両の寸法へのリンクを示しています。
| 車両タイプ の設定 | 車両の寸法 |
|---|---|
マッスル カー | |
セダン | |
SUV | |
小型ピックアップ トラック | |
ハッチバック | |
ボックス トラック | |
フォーミュラ スチューデント車両 |
依存関係
[カスタム] を選択すると、車両のカスタム メッシュをインポートするためのパラメーターが有効になります。
プログラムでの使用
ブロック パラメーターの値をプログラムによって設定するには、set_param 関数を使用します。
ブロック パラメーターの値をプログラムによって取得するには、get_param 関数を使用します。
| パラメーター: | PassVehMesh |
| 値: | Muscle car (既定値) | Sedan | Sport utility vehicle | Small pickup truck | Hatchback | Box Truck | Formula student vehicle | Custom |
| データ型: | character vector |
カスタム メッシュへのパス。
車両のカスタム メッシュを作成するには、Unreal Editor 用のカスタム車両メッシュの準備を参照してください。
例: /MathWorksSimulation/Vehicles/Muscle/Meshes/SK_Sedan.SK_Sedan
依存関係
このパラメーターを有効にするには、[タイプ] を [カスタム] に設定します。
プログラムでの使用
ブロック パラメーターの値をプログラムによって設定するには、set_param 関数を使用します。
ブロック パラメーターの値をプログラムによって取得するには、get_param 関数を使用します。
| パラメーター: | MeshPath |
| 値: | /MathWorksSimulation/Vehicles/Muscle/Meshes/SK_MuscleCar.SK_MuscleCar (既定値) | valid path |
| データ型: | character vector |
車両名。既定では、モデルでこのブロックを使用した場合、ブロックは [名前] パラメーターを SimulinkVehicle に設定します。X の値は、モデル内にある Simulation 3D Vehicle with Ground Following ブロックと Simulation 3D Vehicle ブロックの数によって決まります。X
プログラムでの使用
ブロック パラメーターの値をプログラムによって設定するには、set_param 関数を使用します。
ブロック パラメーターの値をプログラムによって取得するには、get_param 関数を使用します。
| パラメーター: | ActorName |
| 値: | SimulinkVehicle1 (既定値) | character vector |
| データ型: | double |
ライト コントロール
車両のヘッドライトをコントロールするかどうかを選択します。有効になったパラメーターを使用して、ライトのパラメーター (ヘッドライトの強度など) を設定します。
依存関係
このパラメーターを選択すると、次が行われます。
入力端子
Light controlsの作成次のライトのパラメーターの有効化
ライト ライトのパラメーター ヘッドライト ヘッドライト カラー
ハイビーム強度
ロービーム強度
ハイビーム円錐の半角
ロービーム円錐の半角
左ヘッドライト ビーム方向
右ヘッドライト ビーム方向
ブレーキ ライト ブレーキ ライト強度
後退灯 後退灯強度
方向指示灯 方向指示灯強度
周期
パルス幅
プログラムでの使用
ブロック パラメーターの値をプログラムによって設定するには、set_param 関数を使用します。
ブロック パラメーターの値をプログラムによって取得するには、get_param 関数を使用します。
| パラメーター: | VehLightsControl |
| 値: | Off (既定値) | On |
| データ型: | character vector |
ヘッドライト
"Z" が下向きの座標系における左ヘッドライト ビーム方向のピッチとヨーの向き。1 行 2 列のベクトル (rad 単位) として指定します。ベクトルの 1 番目の要素 [1,1] はピッチ角です。ベクトルの 2 番目の要素 [1,2] はヨー角です。
依存関係
このパラメーターを有効にするには、[ライト コントロールを有効にする] を選択します。
プログラムでの使用
ブロック パラメーターの値をプログラムによって設定するには、set_param 関数を使用します。
ブロック パラメーターの値をプログラムによって取得するには、get_param 関数を使用します。
| パラメーター: | LeftHeadlightOrientation |
| 値: | [0,0] (既定値) | vector |
| データ型: | double |
"Z" が下向きの座標系における右ヘッドライト ビーム方向のピッチとヨーの向き。1 行 2 列のベクトル (rad 単位) として指定します。ベクトルの 1 番目の要素 [1,1] はピッチ角です。ベクトルの 2 番目の要素 [1,2] はヨー角です。
依存関係
このパラメーターを有効にするには、[ライト コントロールを有効にする] を選択します。
プログラムでの使用
ブロック パラメーターの値をプログラムによって設定するには、set_param 関数を使用します。
ブロック パラメーターの値をプログラムによって取得するには、get_param 関数を使用します。
| パラメーター: | RightHeadlightOrientation |
| 値: | [0,0] (既定値) | vector |
| データ型: | 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" の各軸に沿い、車両を基準とする車輪の初期並進。
パラメーターは、車軸と車輪の位置に応じた並進情報を含みます。
| 並進 | 配列の要素 | 並進の軸 |
|---|---|---|
車両、Xv | Translation(1,1) | Z が下向きの慣性車両座標系の "X" 軸 |
車両、Yv | Translation(1,2) | Z が下向きの慣性車両座標系の "Y" 軸 |
車両、Zv | Translation(1,3) | Z が下向きの慣性車両座標系の "Z" 軸 |
左前輪、XFL | Translation(2,1) | Z が下向きの車両座標系の "X" 軸 |
左前輪、YFL | Translation(2,2) | Z が下向きの車両座標系の "Y" 軸 |
左前輪、ZFL | Translation(2,3) | Z が下向きの車両座標系の "Z" 軸 |
右前輪、XFR | Translation(3,1) | Z が下向きの車両座標系の "X" 軸 |
右前輪、YFR | Translation(3,2) | Z が下向きの車両座標系の "Y" 軸 |
右前輪、ZFR | Translation(3,3) | Z が下向きの車両座標系の "Z" 軸 |
左後輪、XRL | Translation(4,1) | Z が下向きの車両座標系の "X" 軸 |
左後輪、YRL | Translation(4,2) | Z が下向きの車両座標系の "Y" 軸 |
左後輪、ZRL | Translation(4,3) | Z が下向きの車両座標系の "Z" 軸 |
右後輪、XRR | Translation(5,1) | Z が下向きの車両座標系の "X" 軸 |
右後輪、YRR | Translation(5,2) | Z が下向きの車両座標系の "Y" 軸 |
右後輪、ZRR | Translation(5,3) | Z が下向きの車両座標系の "Z" 軸 |
プログラムでの使用
ブロック パラメーターの値をプログラムによって設定するには、set_param 関数を使用します。
ブロック パラメーターの値をプログラムによって取得するには、get_param 関数を使用します。
| パラメーター: | Translation |
| 値: | zeros(5,3) (既定値) | 5-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" の各軸を中心とする車輪の初期回転。
パラメーターは、車軸と車輪の位置に応じた回転情報を含みます。
| 回転 | 配列の要素 | 回転軸 |
|---|---|---|
車両、Rollv | Rotation(1,1) | Z が下向きの慣性車両座標系の "X" 軸 |
車両、Pitchv | Rotation(1,2) | Z が下向きの慣性車両座標系の "Y" 軸 |
車両、Yawv | Rotation(1,3) | Z が下向きの慣性車両座標系の "Z" 軸 |
左前輪、RollFL | Rotation(2,1) | Z が下向きの車両座標系の "X" 軸 |
左前輪、PitchFL | Rotation(2,2) | Z が下向きの車両座標系の "Y" 軸 |
左前輪、YawFL | Rotation(2,3) | Z が下向きの車両座標系の "Z" 軸 |
右前輪、RollFR | Rotation(3,1) | Z が下向きの車両座標系の "X" 軸 |
右前輪、PitchFR | Rotation(3,2) | Z が下向きの車両座標系の "Y" 軸 |
右前輪、YawFR | Rotation(3,3) | Z が下向きの車両座標系の "Z" 軸 |
左後輪、RollRL | Rotation(4,1) | Z が下向きの車両座標系の "X" 軸 |
左後輪、PitchRL | Rotation(4,2) | Z が下向きの車両座標系の "Y" 軸 |
左後輪、YawRL | Rotation(4,3) | Z が下向きの車両座標系の "Z" 軸 |
右後輪、RollRR | Rotation(5,1) | Z が下向きの車両座標系の "X" 軸 |
右後輪、PitchRR | Rotation(5,2) | Z が下向きの車両座標系の "Y" 軸 |
右後輪、YawRR | Rotation(5,3) | Z が下向きの車両座標系の "Z" 軸 |
プログラムでの使用
ブロック パラメーターの値をプログラムによって設定するには、set_param 関数を使用します。
ブロック パラメーターの値をプログラムによって取得するには、get_param 関数を使用します。
| パラメーター: | Rotation |
| 値: | zeros(5,3) (既定値) | 5-by-3 array |
| データ型: | double |
車両および車輪の初期スケール (無次元)。配列の次元は 5 行 3 列です。
Scale(1,1)、Scale(1,2)、Scale(1,3)— Z が下向きの慣性車両座標系における "X"、"Y"、"Z" の各軸に沿った車両の初期スケール。Scale(...,1)、Scale(...,2)、Scale(...,3)— Z が下向きの車両座標系における "X"、"Y"、"Z" の各軸に沿い、車両を基準とする車輪の初期スケール。
このパラメーターは、車軸と車輪の位置に応じたスケール情報を含みます。
| スケール | 配列の要素 | スケールの軸 |
|---|---|---|
車両、Xvscale | Scale(1,1) | Z が下向きの車両座標系の "X" 軸 |
車両、Yvscale | Scale(1,2) | Z が下向きの車両座標系の "Y" 軸 |
車両、Zvscale | Scale(1,3) | Z が下向きの車両座標系の "Z" 軸 |
左前輪、XFLscale | Scale(2,1) | Z が下向きの車両座標系の "X" 軸 |
左前輪、YFLscale | Scale(2,2) | Z が下向きの車両座標系の "Y" 軸 |
左前輪、ZFLscale | Scale(2,3) | Z が下向きの車両座標系の "Z" 軸 |
右前輪、XFRscale | Scale(3,1) | Z が下向きの車両座標系の "X" 軸 |
右前輪、YFRscale | Scale(3,2) | Z が下向きの車両座標系の "Y" 軸 |
右前輪、ZFRscale | Scale(3,3) | Z が下向きの車両座標系の "Z" 軸 |
左後輪、XRLscale | Scale(4,1) | Z が下向きの車両座標系の "X" 軸 |
左後輪、YRLscale | Scale(4,2) | Z が下向きの車両座標系の "Y" 軸 |
左後輪、ZRLscale | Scale(4,3) | Z が下向きの車両座標系の "Z" 軸 |
右後輪、XRRscale | Scale(5,1) | Z が下向きの車両座標系の "X" 軸 |
右後輪、YRRscale | Scale(5,2) | Z が下向きの車両座標系の "Y" 軸 |
右後輪、ZRRscale | Scale(5,3) | Z が下向きの車両座標系の "Z" 軸 |
プログラムでの使用
ブロック パラメーターの値をプログラムによって設定するには、set_param 関数を使用します。
ブロック パラメーターの値をプログラムによって取得するには、get_param 関数を使用します。
| パラメーター: | Scale |
| 値: | ones(5,3) (既定値) | 5-by-3 array |
| データ型: | double |
詳細
カスタム車両を定義するためにカスタム メッシュをインポートするには、次の手順に従います。
Vehicle Dynamics Blockset™ Interface for Unreal Engine Projects サポート パッケージをインストールします。車両運動のシミュレーションのための 3D シーンのカスタマイズを参照してください。
ブロックの [パラメーター] タブで、[タイプ] を
[カスタム]に設定します。[カスタム メッシュへのパス] フィールドに、Unreal Engine プロジェクト内の車両メッシュへのパスを入力します。たとえば、「
/MathWorksSimulation/Vehicles/Muscle/Meshes/SK_MuscleCar.SK_MuscleCar」と入力します。車両のカスタム メッシュを作成するには、Unreal Editor 用のカスタム車両メッシュの準備を参照してください。
カスタム メッシュの車両の寸法を使用して、対応するブロック パラメーター フィールドに寸法を入力します。
シーン内で車両ライトをコントロールするには、次の手順に従います。
Vehicle Dynamics Blockset Interface for Unreal Engine Projects サポート パッケージをインストールします。車両運動のシミュレーションのための 3D シーンのカスタマイズを参照してください。
ブロックの [ライト コントロール] タブで [ライト コントロールを有効にする] を選択します。
有効になったパラメーターを使用して、車両の次のライトを指定します。
ヘッドライト
ブレーキ ライト
後退灯
方向指示灯
入力端子
Signal lightsに boolean のライト コントロール信号を接続します。
参照
[1] Vehicle Dynamics Standards Committee. Vehicle Dynamics Terminology. SAE J670. Warrendale, PA: Society of Automotive Engineers, 2008.
[2] Technical Committee. Road vehicles — Vehicle dynamics and road-holding ability — Vocabulary. ISO 8855:2011. Geneva, Switzerland: International Organization for Standardization, 2011.
バージョン履歴
R2019b で導入R2024b 以降、Simulation 3D Vehicle ブロックの [色、VehColor] で [ダズル迷彩] を指定できます。
Simulation 3D Vehicle ブロックを含むモデルのシミュレーションには、Simulink 3D Animation が必要です。
MATLAB Command
You clicked a link that corresponds to this MATLAB command:
Run the command by entering it in the MATLAB Command Window. Web browsers do not support MATLAB commands.
Web サイトの選択
Web サイトを選択すると、翻訳されたコンテンツにアクセスし、地域のイベントやサービスを確認できます。現在の位置情報に基づき、次のサイトの選択を推奨します:
また、以下のリストから Web サイトを選択することもできます。
最適なサイトパフォーマンスの取得方法
中国のサイト (中国語または英語) を選択することで、最適なサイトパフォーマンスが得られます。その他の国の MathWorks のサイトは、お客様の地域からのアクセスが最適化されていません。
南北アメリカ
- América Latina (Español)
- Canada (English)
- United States (English)
ヨーロッパ
- Belgium (English)
- Denmark (English)
- Deutschland (Deutsch)
- España (Español)
- Finland (English)
- France (Français)
- Ireland (English)
- Italia (Italiano)
- Luxembourg (English)
- Netherlands (English)
- Norway (English)
- Österreich (Deutsch)
- Portugal (English)
- Sweden (English)
- Switzerland
- United Kingdom (English)
