楕円形のトラックの作成および使用
RoadRunner で楕円形のトラックを作成し、Unreal® とコシミュレートする Vehicle Dynamics Blockset™ のシミュレーションで使用できます。この例では、楕円形のトラック上のウェイポイントの追従 の例で使用する楕円形のトラックを作成するワークフローを示します。
開始する前に、ワークフローに従うために必要な製品があることを確認してください。
| 手順 | 必要な製品 | |
|---|---|---|
1 | RoadRunner | |
2 | RoadRunner Unreal Engine® 5.3 RoadRunner プラグイン Visual Studio® 2022 | |
| 3 | ||
4 | Unreal Engine 5.3 Vehicle Dynamics Blockset Vehicle Dynamics Blockset Interface for Unreal Engine Projects | |
手順 1: RoadRunner でのトラックの作成
この例では、次の図に指定された楕円形のトラックを作成します。位置と参照姿勢は、RoadRunner の座標系 (X、Y、θ) で表されています。位置 X および Y はメートル単位です。参照姿勢 θ は度単位です。

| 凡例 | |
|---|---|
緑 | 区画境界の位置、X、Y |
赤 | 直線セグメントの交点、X、Y |
黒 | トラックの位置と参照姿勢、X、Y、θ |
RoadRunner を使用して、楕円形のトラックを作成します。トラック作成の詳細については、Road Plan Tool (RoadRunner)を参照してください。
直線セグメントの作成
[Road Plan Tool] を開きます。
[ライブラリ ブラウザー] 、 [RoadStyles] に移動します。
[Residential]を選択します。直線道路の始点と終点を右クリックして配置します。
各直線セグメントの後に、左クリックして上記の手順を繰り返します。
道路の制御点を選択します。上の図を使用して、座標情報を入力します。
円弧の作成
[Road Plan Tool] を開きます。直線セグメントの作成から続行している場合、
[Residential]の道路が既定の道路です。弧の始点と終点を右クリックして配置します。この方法を使用して直線を接続する場合、複数の制御点が存在することがあります。1 点を残してその他すべての制御点を削除します。
制御点を作成するには、道路の任意の位置を右クリックします。上の図に赤で示されているように配置するには、それぞれの弧の制御点で左クリックします。
円弧を作成するには、制御点の位置を編集します。ある道路の始点を別の道路の終点としてマークすると、RoadRunner がそれらの道路を接続します。
道路幅の調整
[Lane Width Tool] を開きます。
幅の調整が必要な道路を選択します。
道路幅を調整するには、紫または赤のセグメントを選択します。
道路の全幅が 14 m、つまり道路のセンターラインから両端まで 7 m になるようにラインを変更します。
区画の作成
[Surface Tool] を開きます。
右クリックして 4 つのノードを作成します。
最初のノードを右クリックして、ループを閉じます。既定の表面は緑です。
木の追加
車両の走行速度を示す視覚的なヒントを提供する目的で、木を追加できます。
[Prop Curve Tool] を開きます。
シーンに配置するアセットを選択します。たとえば、
Props\Trees\Eucalyptus_Sm01を選択します。軌跡の内側の境界を右クリックして選択します。木を緑の領域内に制限するには、制御点の正接を調整します。
Unreal Engine へのインポートを高速にするには、シーン内の木の本数を制限するよう適切な間隔を選択します。インポート時間は、シーンのアセット数に比例します。
手順 2: RoadRunner からのトラックのエクスポート
RoadRunner で、シーンを開きます。
[ファイル] 、 [Export] 、 [Unreal (.fbx, .xodr + rrdata.xml)] を選択します。
[Export Unreal] ダイアログ ボックスで [Split by Segmentation] を選択し、フォルダーをエクスポートします。[Export] をクリックします。
手順 3: Unreal Engine へのトラックのインポート
RoadRunner からエクスポートしたら、Unreal Engine にデータをインポートします。
空のプロジェクトの作成
Unreal Engine での空のプロジェクトの作成に記載されている手順に従って、空のプロジェクトを作成します。
RoadRunner プラグインの取得とリビルド
RoadRunner プラグインをダウンロードします。詳細については、プラグインのダウンロード (RoadRunner)を参照してください。
RoadRunner プラグインの
.zipファイルを抽出します。Unreal Engine プラグインの下にあるRoadRunnerImporterフォルダーとRoadRunnerMaterialsフォルダーを見つけます。メモ
Unreal Engine プラグイン フォルダーには、
RoadRunnerCarla統合プラグインも含まれます。CARLA を使用しない場合は、このフォルダーをコピーしないでください。RoadRunnerImporterとRoadRunnerMaterialsのフォルダーを、プロジェクト フォルダーの下の Plugins フォルダーにコピーします。Plugins フォルダーが存在しない場合は、作成します。
a または b を使用して、プラグインをリビルドします。
プロジェクト ファイルを生成します。
Windows® – .
uprojectファイルを右クリックして、[Generate Visual Studio project files] を選択します。Linux® – 環境変数
UE4_ROOTを Unreal Engine インストール フォルダーに設定します。コマンド ラインで次のコードを実行します。$UE4_ROOT/GenerateProjectFiles.sh -project="<Path to .uproject file>" -game -engine
プロジェクトを開きます。[Yes] を選択して、プラグインをビルドします。
a と b のどちらも失敗した場合は、Visual Studio を使用してバイナリをビルドしてみてください。
RoadRunner と MathWorks Interface のプラグインが有効になっていることを確認します。[Edit] 、 [Plugins] を選択します。[Enabled] が選択されていることを確認します。
Unreal Engine へのインポート
Unreal Editor で [Import] をクリックします。手順 2 の
.fbxファイルを選択します。メモ
[File] 、 [Import Into Level] を選択すると、エクスポートした RoadRunner の
xmlは使用されません。代わりに、Unreal のインポーターが使用されます。[RoadRunner Import Options] ダイアログ ボックスで、既定のオプションを使用します。[Import] をクリックします。
[Scene] タブで、[Import as Dynamic] を選択します。これにより、シーン全体の変換が可能になります。
[Static Meshes] の [Remove Degenerates] をオフにします。[Normal Input Method] を
[Input Normals]に設定します。[Import] をクリックします。このインポートが完了するまで、最大 1 時間かかることがあります。[World Outliner] で、インポートしたシーン (
FbxScene_OvalTrack1など) を選択します。RoadRunner と Unreal の座標系を揃えるには、Z 軸を中心とする 90° の回転を入力します。
オプションとして、エディターを使用してシーンに地形や木々を追加することを検討します。
プロジェクト (
.uproject) ファイルを保存します。Unreal Editor を閉じます。
手順 4: Vehicle Dynamics Blockset でのコシミュレーション
Simulink® モデルを開きます。Unreal Editor を開かないでください。
Simulation 3D Scene Configuration ブロックを開きます。
[シーン ソース] を
[Unreal Editor]に設定します。[プロジェクト] を手順 3: Unreal Engine へのトラックのインポートで保存したプロジェクト (
.uproject) ファイルに設定します。[適用] をクリックします。
[Unreal Editor を開く] をクリックします。
プロジェクトが Unreal Editor で開きます。
[Blueprints] 、 [Open Level Blueprint] を選択します。
レベル ブループリントで、次を行います。
[File] 、 [Reparent Blueprint] を選択します。
[Sim3dLevelScriptActor] を選択します。
[Save] をクリックします。
レベル ブループリントを閉じます。
Editor で [Save Current] をクリックします。
これにより、コシミュレーション中に車両が地面を適切に特定するようになります。
シミュレーションを実行します。
Simulink モデルで [実行] をクリックします。
Unreal Editor で開かれるプロジェクトがシーンのソースであるため、シミュレーションは開始されません。
Simulink の [診断ビューアー] ウィンドウに次のメッセージが表示されていることを確認します。
In the Simulation 3D Scene Configuration block, you set the scene source to 'Unreal Editor'. In Unreal Editor, select 'Play' to view the scene.これは、Simulink が Unreal Engine 3D 環境で車両および他のアセットをインスタンス化したことを示す確認のメッセージです。
Unreal Editor で [Play] をクリックします。Unreal Editor で現在開いているシーンでシミュレーションが実行されます。
参考
Simulation 3D Scene Configuration
トピック
- 楕円形のトラック上のウェイポイントの追従
- MATLAB および Simulink とのシーンの統合 (RoadRunner)