日本語による説明が英語説明の後に続きます。
This repository provides sample use cases for integrating RoadRunner Scenario with MATLAB®/Simulink®.
For an explanation of how to use these files, please refer to the second half of this webinar archive (Japanese). It walks you through how to execute them. (Due to time constraints, not all the content is fully explained.)
Also note that it is assumed you already understand the basic operations of RoadRunner and RoadRunner Scenario. Please watch the first half of the webinar at the above link as well.
Below is a description of the main files:
- handsOn00_liveEditor_demo.mlx: Experience the basic operations of Live Editor.
- handsOn01_launchRR.mlx: Learn how to launch and run RoadRunner from MATLAB.
- handsOn02_changeParameters.mlx: Learn how to change RoadRunner variables from MATLAB. By changing these variables and running a for-loop for repeated execution, you can run scenario variations.
- handsOn03_simulinkCosimulation.mlx: Experience co-simulation with a simple Simulink model. You will create a simple moving model in Simulink, which moves at a fixed distance every step, and co-simulate with RoadRunner Scenario.
- handsOn04_sensorSimulaiton.mlx: Add a sensor model to a model that moves a fixed distance. Start with a LiDAR sensor, then add a camera and millimeter-wave sensor to the vehicle and visualize the measurement data.
- handsOn04_2_sensorSimulaitonObserver.mlx: Obtain and visualize data from each sensor model using Observer (R2024b or later). The vehicle moves as designed in RoadRunner Scenario while sensor data is collected.
- handsOn05_simulaitonPathFollowing.mlx: Use the RoadRunner ScenarioReader block to obtain speed and trajectory information, and then experience a Simulink model in which the vehicle follows the created trajectory. Also try the mode where a bicycle vehicle dynamics model is controlled by Stanley control, and compare the difference in each trajectory.
- handsOn06_simulaitonPathFollowing14DoF.mlx: Use the RoadRunner ScenarioReader to obtain speed and trajectory information, and then experience a Simulink model in which the vehicle follows the cretaed trajectory. Alos try the mode where a 14 DOF full vehicle model (6 DOF for the vehicle body + 2 DOF × 4 tires) is controlled by Stanley control, and compare the difference in each trajectory. Compare in a scene and scenario that enables you to see effects such as tire saturation and road gradients, which cannot be represetnted by a bicycle model.
- Create the RoadRunner project folder in advance.
- Execute in order from
handsOn00*
throughhandsOn05*
.
If HTTP_PROXY or HTTPS_PROXY environment variables for a proxy server are set, MATLAB may be unable to launch RoadRunner (i.e., RoadRunner function fails to connect MATLAB and RoadRunner).
In such cases, please remove the HTTP_PROXY/HTTPS_PROXY environment variable settings, restart, and try again.
Product Configuration (https://www.mathworks.com)
Tested with MATLAB R2024b and RoadRunner R2024b.
MATLAB and RoadRunner versions must match. If you have installed different versions, please align them.
- MATLAB
- Simulink
- Automated Driving Toolbox™
- Computer Vision Toolbox™ (required by Automated Driving Toolbox)
- Image Processing Toolbox™ (required by Computer Vision Toolbox)
- RoadRunner
- RoadRunner Scenario
- Vehicle Dynamics Blockset™ (only needed when running `handsOn05* and handsOn06*')
- Simulink 3D Animation™ (only needed when enabling 3D engine viewer in handsOn06*)
本リポジトリはRoadRunner ScenarioとMATLAB;/Simulink;を連携させるサンプルを提供しています。 実際の使用方法についての解説はウェビナーのアーカイブ後半パートにて公開されていますので、ご視聴いただきながら実行してください。(時間の関係上、全てのコンテンツについて解説できてはおりません。) また、RoadRunnerとRoadRunner Scenarioの基本的な操作を理解していることが前提になっています。上リンクのウェビナーの前半パートも合わせてご覧ください。
それぞれの主なファイルの説明は下記の通りです。
- handsOn00_liveEditor_demo.mlx: liveEditorの基本操作を体験
- handsOn01_launchRR.mlx: RoadRunnerをMATLABから起動、実行する方法を体験
- handsOn02_changeParameters.mlx: MATLABからRoadRunnerの変数を変更する方法を体験。変数を変更し、forループで繰り返し実行することでシナリオのバリエーション実行が可能。
- handsOn03_simulinkCosimulation.mlx: シンプルなSimulinkモデルとのcosimulationを体験。毎ステップごとに固定値進むだけの簡易的な移動モデルをSimulinkモデルで作成し、RoadRunner Sceanrioとcosimulation.
- handsOn04_sensorSimulaiton.mlx: 固定距離を移動するモデルにセンサモデルを追加。LiDARセンサをはじめに、カメラやミリ波センサを車両に追加し、その計測値の可視化を体験。
- handsOn04_2_sensorSimulaitonObserver.mlx: 各センサモデルの取得と可視化をObserver(R2024b以降)により実現。車両はRoadRunner Scenarioで設計した通りに動きセンサデータを取得。
- handsOn05_simulaitonPathFollowing.mlx: RoadRunner ScenarioReaderブロックより車速や軌跡情報を取得し、作成した軌跡通りに車両が追従するSimulinkモデルを体験。2輪モデルの車両ダイナミクスをStanley制御でコントロールするモードも実行し、それぞれの軌跡の差を可視化。
- handsOn06_simulaitonPathFollowing14DoF.mlx: RoadRunner ScenarioReaderブロックより車速や軌跡情報を取得し、作成した軌跡通りに車両が追従するSimulinkモデルを体験。14自由度(車体6自由度+タイヤ2自由度×4)車両ダイナミクスをStanley制御でコントロールするモードを実行し、それぞれの軌跡の差を可視化。2輪モデルでは表現できないタイヤの飽和領域や道路勾配の影響を可視化できるシーンで比較。
1.RoadRunnerのプロジェクトフォルダを事前に作成
2.handsOn00からhandsOn05まで順に実行
プロキシサーバーの環境変数(HTTP_PROXY、HTTPS_PROXY)設定によって、 MATLABからRoadRunnerが起動できない場合があります。(roadrunner関数を使用した際にMATLABとRoadRunner間の通信が接続されない。) お手数ですが、プロキシサーバーの環境変数(HTTP_PROXY、HTTPS_PROXY)設定を削除し、再起動してからの実行をお願いします。
製品構成 (https://www.mathworks.com)
MATLAB R2024b、RoadRunner R2024b(Update1以降)でテストしています。 MATLABとRoadRunnerのversionは揃える必要があるため、異なるversionをインストールしている方はversionを揃えてください。
- MATLAB
- Simulink
- Automated Driving Toolbox;
- Computer Vision Toolbox; (Automated Driving Toolboxの前提)
- Image Processing Toolbox; (Computer Vision Toolboxの前提)
- RoadRunner
- RoadRunner Scenario
- Vehicle Dynamics Blockset; (handsOn05*, handsOn06*実行時のみ必要)
- Simulink 3D Animation; (handsOn06*の詳細表示を有効にした際必要)
The license is available in the license.txt file in this GitHub repository.
Copyright 2024 The MathWorks, Inc.