simulink®+unreal® engine連携による · unreal engine 4...

57
1 © 2015 The MathWorks, Inc. Simulink®+Unreal® Engine連携による ADAS/自動運転シミュレーション環境 MathWorks Japan アプリケーションエンジニアリング部 宮川 浩

Upload: others

Post on 29-Feb-2020

18 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Simulink®+Unreal® Engine連携による · Unreal Engine 4 Editorと接続して協調シミュレーションするための サポートパッケージを提供(Unreal Engine

1© 2015 The MathWorks, Inc.

Simulink®+Unreal® Engine連携によるADAS/自動運転シミュレーション環境

MathWorks Japanアプリケーションエンジニアリング部宮川 浩

Page 2: Simulink®+Unreal® Engine連携による · Unreal Engine 4 Editorと接続して協調シミュレーションするための サポートパッケージを提供(Unreal Engine

3

Session Key Take Away

MathWorksは、自動運転システム開発に必要な

フルビークルモデルを提供します

Page 3: Simulink®+Unreal® Engine連携による · Unreal Engine 4 Editorと接続して協調シミュレーションするための サポートパッケージを提供(Unreal Engine

4

自動車業界のメガトレンド

ConnectivityAutonomous

Driving

Electrification(Car) Sharing

Page 4: Simulink®+Unreal® Engine連携による · Unreal Engine 4 Editorと接続して協調シミュレーションするための サポートパッケージを提供(Unreal Engine

5

ADAS/自動運転システム開発の課題

自動運転の車両の信頼性を実証するために必要なテスト走行距離は?

調査機関の報告によると、

170億[km]以上!

やりきるためには、約500年100台の自動運転車で、

40[km/h]、24時間/日、365日/年 稼働

Page 5: Simulink®+Unreal® Engine連携による · Unreal Engine 4 Editorと接続して協調シミュレーションするための サポートパッケージを提供(Unreal Engine

6

ADAS/自動運転システム開発の課題

▪ 限られた数の試作

▪ 短期間で優れた設計を実現

▪ 膨大なテストパターン

▪ 路上でテストするには危険を伴う動作テスト

制御ロジックの設計と検証のための単一のシミュレーション環境

Page 6: Simulink®+Unreal® Engine連携による · Unreal Engine 4 Editorと接続して協調シミュレーションするための サポートパッケージを提供(Unreal Engine

7

ADAS/自動運転開発・検証の統合プラットフォームMATLAB® / Simulink® / Automated Driving System Toolbox™

認識

位置特定行動経路

決定

制御

Sensors• Cameras

• RADAR

• LIDAR

• GPS

Commands• Motion control

• Actuator

Connectivity

シナリオ作成と

シミュレーション

LiDAR信号処理、

センサーデータの可視化

センサーフュージョン

フルビークルモデル

/ Vehicle Dynamics Blockset™

Page 7: Simulink®+Unreal® Engine連携による · Unreal Engine 4 Editorと接続して協調シミュレーションするための サポートパッケージを提供(Unreal Engine

8

Agenda

▪ Vehicle Dynamics Blockset™の紹介

▪ ゲームエンジンとの協調シミュレーション

▪ 自動運転制御ロジックを検証するためのシミュレータ構成

Page 8: Simulink®+Unreal® Engine連携による · Unreal Engine 4 Editorと接続して協調シミュレーションするための サポートパッケージを提供(Unreal Engine

9

Agenda

▪ Vehicle Dynamics Blockset™の紹介

▪ ゲームエンジンとの協調シミュレーション

▪ 自動運転制御ロジックを検証するためのシミュレータ構成

Page 9: Simulink®+Unreal® Engine連携による · Unreal Engine 4 Editorと接続して協調シミュレーションするための サポートパッケージを提供(Unreal Engine

10

Vehicle Dynamics Blockset仮想3D空間で車両ダイナミクスのモデル化とシミュレーション

以降で利用可

▪ 以下の利用を想定:

– Ride & handling: 標準車両運転テストにおける車両性能の把握(例:ISO 3888-1:1999)

– Chassis controls: シャーシ制御システムの設計、テスト

– ADAS / AD: ADAS/自動運転機能の仮想3Dテスト環境の構築

Ride & handling Chassis controls ADAS / AD

Unreal® is a trademark or registered trademark of Epic Games, Inc. in the United States of America and elsewhere

Page 10: Simulink®+Unreal® Engine連携による · Unreal Engine 4 Editorと接続して協調シミュレーションするための サポートパッケージを提供(Unreal Engine

11

ADAS/自動運転システム開発の課題

▪ 限られた数の試作

▪ 短期間で優れた設計を実現

▪ 膨大なテストパターン

▪ 路上でテストするには危険を伴う動作テスト

制御ロジックの設計と検証のための単一のシミュレーション環境

Page 11: Simulink®+Unreal® Engine連携による · Unreal Engine 4 Editorと接続して協調シミュレーションするための サポートパッケージを提供(Unreal Engine

12

オープンかつドキュメント化された車両ダイナミクスのモデリング用ライブラリ

Vehicle Dynamics Blocksetで手早くモデリング

Page 12: Simulink®+Unreal® Engine連携による · Unreal Engine 4 Editorと接続して協調シミュレーションするための サポートパッケージを提供(Unreal Engine

13

オープンかつドキュメント化された車両ダイナミクスのモデリング用ライブラリ

ドキュメント充実

Page 13: Simulink®+Unreal® Engine連携による · Unreal Engine 4 Editorと接続して協調シミュレーションするための サポートパッケージを提供(Unreal Engine

14

カスタマイズ可能なリファレンスアプリケーション

フルビークルモデルをプリアセンブリ済み

Page 14: Simulink®+Unreal® Engine連携による · Unreal Engine 4 Editorと接続して協調シミュレーションするための サポートパッケージを提供(Unreal Engine

15

カスタマイズ可能なリファレンスアプリケーション

同梱のリファレンスアプリケーションを使ってジャンプスタート!

ISOなどで規定されているスタンダードテス

トシナリオ

Vehicle Dynamics Blocksetは低負荷

Page 15: Simulink®+Unreal® Engine連携による · Unreal Engine 4 Editorと接続して協調シミュレーションするための サポートパッケージを提供(Unreal Engine

16

ADAS/自動運転システム開発の課題

▪ 限られた数の試作

▪ 短期間で優れた設計を実現

▪ 膨大なテストパターン

▪ 路上でテストするには危険を伴う動作テスト

制御ロジックの設計と検証のための単一のシミュレーション環境

Page 16: Simulink®+Unreal® Engine連携による · Unreal Engine 4 Editorと接続して協調シミュレーションするための サポートパッケージを提供(Unreal Engine

17

ダブルレーンチェンジ テスト : 50[km/h]

ISO 3888-2のドライバーの操作手順:

1. 右レーンで設定速度まで加速

2. アクセルオフ

3. 左のレーンへレーンチェンジ

4. 右のレーンへレーンチェンジ

リアルでは再現テストが困難!

▪ 自然環境– 天候(雨、風)、路面状態、気温、気圧、

etc.

▪ 車両コンディション

▪ ドライバーのコンディション

シミュレーション活用が重要!

Page 17: Simulink®+Unreal® Engine連携による · Unreal Engine 4 Editorと接続して協調シミュレーションするための サポートパッケージを提供(Unreal Engine

18

▪ ゲームエンジンと閉ループ構築可能

Vehicle Dynamics Blocksetに同梱

ユーザ様インストール

ゲームエンジンとの協調シミュレーション

Simulinkモデル

ゲームエンジンの実行ファイル(コンパイル済みのモデル)

Unreal Engine(ゲームエンジンのエディター)

コンパイル

車速、車輪速、車体傾き、など

カメラモジュール信号(RGB)車高など

※Unreal Engineのコマーシャルユースに関しては開発元(Epic Games社)にご確認ください

Page 18: Simulink®+Unreal® Engine連携による · Unreal Engine 4 Editorと接続して協調シミュレーションするための サポートパッケージを提供(Unreal Engine

19

Unreal Engine4 Editorを使ったシーンのカスタマイズ

▪ Unreal Engine 4 Editorと接続して協調シミュレーションするためのサポートパッケージを提供(Unreal Engine 4のプロジェクトファイルを同梱)

– Vehicle Dynamics Blockset interface for Unreal Engine 4

▪ Unreal Engine 4上で任意のシナリオを作成することが可能

Page 19: Simulink®+Unreal® Engine連携による · Unreal Engine 4 Editorと接続して協調シミュレーションするための サポートパッケージを提供(Unreal Engine

20

Unreal Engine4 Editorを使ったシーンのカスタマイズ

▪ Unreal Engine 4 Editorと接続して協調シミュレーションするためのサポートパッケージを提供(Unreal Engine 4のプロジェクトファイルを同梱)

– Vehicle Dynamics Blockset interface for Unreal Engine 4

▪ Unreal Engine 4上で任意のシナリオを作成することが可能

US Highway US City BlockMcity

R2018bで追加された3Dシーン

Page 20: Simulink®+Unreal® Engine連携による · Unreal Engine 4 Editorと接続して協調シミュレーションするための サポートパッケージを提供(Unreal Engine

21

MCity

© 2018 The Regents of the University of Michigan

Page 21: Simulink®+Unreal® Engine連携による · Unreal Engine 4 Editorと接続して協調シミュレーションするための サポートパッケージを提供(Unreal Engine

22

Mcity

Page 22: Simulink®+Unreal® Engine連携による · Unreal Engine 4 Editorと接続して協調シミュレーションするための サポートパッケージを提供(Unreal Engine

23

Agenda

▪ Vehicle Dynamics Blockset™の紹介

▪ ゲームエンジンとの協調シミュレーション

▪ 自動運転制御ロジックを検証するためのシミュレータ構成

Page 23: Simulink®+Unreal® Engine連携による · Unreal Engine 4 Editorと接続して協調シミュレーションするための サポートパッケージを提供(Unreal Engine

24

▪ ゲームエンジンと閉ループ構築可能

Vehicle Dynamics Blocksetに同梱

ユーザ様インストール

ゲームエンジンとの協調シミュレーションVehicle Dynamics Blockset™

Simulinkモデル

ゲームエンジンの実行ファイル(コンパイル済みのモデル)

Unreal Engine(ゲームエンジンのエディター)

コンパイル

車速、車輪速、車体傾き、など

※Unreal Engineのコマーシャルユースに関しては開発元(Epic Games社)にご確認ください

カメラモジュール信号(RGB)車高など

Page 24: Simulink®+Unreal® Engine連携による · Unreal Engine 4 Editorと接続して協調シミュレーションするための サポートパッケージを提供(Unreal Engine

25

Vehicle Dynamics BlocksetとUnreal Engineとのインターフェース

コンフィグブロック:接続先を選択(スタンドアロンのゲーム or ゲームエディタ)

トランスフォームブロック:(車両のXYZ軸方向変位、XYZ軸中心角度)×(車両ボデー、4輪)

カメラゲットブロック:3Dシーンのカメラ画像

地形センサブロック:車体前方のオブジェクトまで距離、車輪から地面までの距離

トランスフォームブロック:(車両のXYZ軸方向変位、XYZ軸中心の角度)×(車両ボデー、4輪)

Page 25: Simulink®+Unreal® Engine連携による · Unreal Engine 4 Editorと接続して協調シミュレーションするための サポートパッケージを提供(Unreal Engine

26

ADAS/AD向けの仮想3Dテスト環境

Unreal Engine上の車載カメラ画像はSimulinkに取り込み可能

ビジョンベースのアルゴリズム(例:レーン検出など)のテストに使用

Page 26: Simulink®+Unreal® Engine連携による · Unreal Engine 4 Editorと接続して協調シミュレーションするための サポートパッケージを提供(Unreal Engine

27

Vehicle Dynamics Blocksetデモ

▪ ベースモデル:Scene Interrogation リファレンスアプリケーション

変更:停止標識を見つけたら自動で停車する(ブレーキをかける)

Page 27: Simulink®+Unreal® Engine連携による · Unreal Engine 4 Editorと接続して協調シミュレーションするための サポートパッケージを提供(Unreal Engine

28

Vehicle Dynamics Blocksetデモ: 標識認識とブレーキング

カメラ信号取り込みブロック

RGB信号【停止標識】検出器

ブレーキ制御部

mp4録画※要Computer Vision

System Toolbox™

Page 28: Simulink®+Unreal® Engine連携による · Unreal Engine 4 Editorと接続して協調シミュレーションするための サポートパッケージを提供(Unreal Engine

29

Vehicle Dynamics Blocksetデモ: 標識認識とブレーキング

カメラ信号取り込みブロック

RGB信号【停止標識】検出器

ブレーキ制御部

mp4録画※要Computer Vision

System Toolbox™

Page 29: Simulink®+Unreal® Engine連携による · Unreal Engine 4 Editorと接続して協調シミュレーションするための サポートパッケージを提供(Unreal Engine

30

Vehicle Dynamics Blocksetデモ: 標識認識とブレーキング(無灯火)

Page 30: Simulink®+Unreal® Engine連携による · Unreal Engine 4 Editorと接続して協調シミュレーションするための サポートパッケージを提供(Unreal Engine

31

Tips:停止標識の検出器

▪ Computer Vision SystemToolbox™に付随のデモ

▪ 学習させた停止標識の検出器は、MATファイル形式で保存可能

Page 31: Simulink®+Unreal® Engine連携による · Unreal Engine 4 Editorと接続して協調シミュレーションするための サポートパッケージを提供(Unreal Engine

32

Agenda

▪ Vehicle Dynamics Blockset™の紹介

▪ ゲームエンジンとの協調シミュレーション

▪ 自動運転制御ロジックを検証するためのシミュレータ構成

Page 32: Simulink®+Unreal® Engine連携による · Unreal Engine 4 Editorと接続して協調シミュレーションするための サポートパッケージを提供(Unreal Engine

33

自動運転制御システム概要

Perception Control制御検出

センサ信号

操作量

Page 33: Simulink®+Unreal® Engine連携による · Unreal Engine 4 Editorと接続して協調シミュレーションするための サポートパッケージを提供(Unreal Engine

34

自動運転制御システム概要

Perception Control制御検出

単眼カメラ画像

操作量

検出器:レーン/車両検出

Page 34: Simulink®+Unreal® Engine連携による · Unreal Engine 4 Editorと接続して協調シミュレーションするための サポートパッケージを提供(Unreal Engine

35

自動運転制御システム概要

Perception Control制御検出

検出器:レーン/車両検出

単眼カメラ画像

舵角操作加速度操作

制御器:加速度操舵角

Page 35: Simulink®+Unreal® Engine連携による · Unreal Engine 4 Editorと接続して協調シミュレーションするための サポートパッケージを提供(Unreal Engine

36

自動運転制御システム:レーン/車両検出

検出器シミュレーションベンチ

検出器

動画P

検出器開発者

Page 36: Simulink®+Unreal® Engine連携による · Unreal Engine 4 Editorと接続して協調シミュレーションするための サポートパッケージを提供(Unreal Engine

37

自動運転制御システム:舵角&加速度制御

制御器シミュレーションベンチ

制御器

“Cuboid” 環境 & センサモデル

車両モデル

検出結果

制御器開発者

C

操作量

Page 37: Simulink®+Unreal® Engine連携による · Unreal Engine 4 Editorと接続して協調シミュレーションするための サポートパッケージを提供(Unreal Engine

38

システムレベルのシミュレーションベンチ構築

制御器シミュレーションベンチ

制御器

“Cuboid” 環境 & センシング結果

車両モデル

検出器シミュレーションベンチ

検出器

動画

検出結果

P

検出器開発者制御器開発者

C

操作量

Page 38: Simulink®+Unreal® Engine連携による · Unreal Engine 4 Editorと接続して協調シミュレーションするための サポートパッケージを提供(Unreal Engine

39

“Cuboid” 環境 & センサモデル

システムレベルのシミュレーションベンチ構築:閉ループを構築するための外界環境モデルは?

システムシミュレーションベンチ

制御器検出器

車両モデル

動画

システム開発者

S

操作量

検出結果

Page 39: Simulink®+Unreal® Engine連携による · Unreal Engine 4 Editorと接続して協調シミュレーションするための サポートパッケージを提供(Unreal Engine

40

システムレベルのシミュレーションベンチ構築:Unreal Engineをループに含めたシミュレーションベンチ

システムシミュレーションベンチ

Unreal Engine

制御器検出器

3D Scene

Camera sensor 車両モデル

動画

システム開発者

S

操作量

検出結果

Page 40: Simulink®+Unreal® Engine連携による · Unreal Engine 4 Editorと接続して協調シミュレーションするための サポートパッケージを提供(Unreal Engine

41

ADAS/自動運転開発・検証の統合プラットフォームMATLAB® / Simulink® / Automated Driving System Toolbox™

認識

位置特定行動経路

決定

制御

Sensors• Cameras

• RADAR

• LIDAR

• GPS

Commands• Motion control

• Actuator

Connectivity

シナリオ作成と

シミュレーション

LiDAR信号処理、

センサーデータの可視化

センサーフュージョン

フルビークルモデル

/ Vehicle Dynamics Blockset™

ゲームエンジンとのIF

Page 41: Simulink®+Unreal® Engine連携による · Unreal Engine 4 Editorと接続して協調シミュレーションするための サポートパッケージを提供(Unreal Engine

42

Electronics[Simscape]

Simulink as your Simulation Integration Platform

Suspension[Tool B]

Control[Simulink]

FMI

Model

Export

Data exchange

Data Access API

Cosim S-function

統合プラットフォームとしてのSimulink

Powertrain[Simulink]

VehicleDynamics[Simulink]

OtherComponent

[Tool A]Electronics[Simscape]

Control[Simulink]

OtherComponent

[Tool A]

Suspension[Tool B]

Page 42: Simulink®+Unreal® Engine連携による · Unreal Engine 4 Editorと接続して協調シミュレーションするための サポートパッケージを提供(Unreal Engine

43

Electronics[Simscape]

Simulink as your Simulation Integration Platform

Suspension[Tool B]

Control[Simulink]

FMI

Model

Export

Data exchange

Data Access API

Cosim S-function

統合プラットフォームとしてのSimulinkの利点

Powertrain[Simulink]

VehicleDynamics[Simulink]

OtherComponent

[Tool A]Electronics[Simscape]

Control[Simulink]

OtherComponent

[Tool A]

Suspension[Tool B]

豊富な機能をシームレスに統合

多くのユーザ様が使える!

Simulink以外のモデルも統合可能

優れたコストパフォーマンス

業務効率UP!

Page 43: Simulink®+Unreal® Engine連携による · Unreal Engine 4 Editorと接続して協調シミュレーションするための サポートパッケージを提供(Unreal Engine

44

システムレベルのシミュレーションベンチ構築

システムシミュレーションベンチ

Unreal Engine

制御器検出器

3D Scene

Camera sensor 車両モデル

システム開発者

S

操作量動画

検出結果

Page 44: Simulink®+Unreal® Engine連携による · Unreal Engine 4 Editorと接続して協調シミュレーションするための サポートパッケージを提供(Unreal Engine

45

自動運転制御システム:レーン/車両検出

検出器シミュレーションベンチ

検出器

動画P

検出器開発者

Page 45: Simulink®+Unreal® Engine連携による · Unreal Engine 4 Editorと接続して協調シミュレーションするための サポートパッケージを提供(Unreal Engine

46

自動運転制御システム:レーン/車両検出

MATLAB System

コードベースであってもSimulinkに実装可能

Page 46: Simulink®+Unreal® Engine連携による · Unreal Engine 4 Editorと接続して協調シミュレーションするための サポートパッケージを提供(Unreal Engine

47

自動運転制御システム:舵角&加速度制御

制御器シミュレーションベンチ

制御器

“Cuboid” 環境 & センサモデル

車両モデル

検出結果

制御器開発者

C

操作量

Page 47: Simulink®+Unreal® Engine連携による · Unreal Engine 4 Editorと接続して協調シミュレーションするための サポートパッケージを提供(Unreal Engine

48

自動運転制御システム:舵角&加速度制御

制御器

車両モデル

“Cuboid” 環境 & センサモデル

Page 48: Simulink®+Unreal® Engine連携による · Unreal Engine 4 Editorと接続して協調シミュレーションするための サポートパッケージを提供(Unreal Engine

49

自動運転制御システム:統合

Simulinkとゲームエンジンとのインターフェース

検出器

Simulinkとゲームエンジンとのインターフェース

Page 49: Simulink®+Unreal® Engine連携による · Unreal Engine 4 Editorと接続して協調シミュレーションするための サポートパッケージを提供(Unreal Engine

50

自動運転制御システム シミュレーションベンチ前走車シナリオ:

位置方向

検出器:レーン検出前走車検出

制御器:センサーフュージョン

加速度制御操舵制御

フルビークルモデル

Simulinkとゲームエンジンとのインターフェース

Page 50: Simulink®+Unreal® Engine連携による · Unreal Engine 4 Editorと接続して協調シミュレーションするための サポートパッケージを提供(Unreal Engine

51

自動運転制御システム シミュレーション

Page 51: Simulink®+Unreal® Engine連携による · Unreal Engine 4 Editorと接続して協調シミュレーションするための サポートパッケージを提供(Unreal Engine

52

自動運転制御システムのシミュレーションを構築するためのMathWorks製品群

MATLAB

Simulink

Model Predictive

Control Toolbox

VehicleDynamicsBlockset

AutomatedDriving System

Toolbox

Control SystemToolbox

Computer Vision System Toolbox

Image Processing Toolbox

Page 52: Simulink®+Unreal® Engine連携による · Unreal Engine 4 Editorと接続して協調シミュレーションするための サポートパッケージを提供(Unreal Engine

53

自動運転制御システムのシミュレーションを構築するためのMathWorks製品群

MATLAB

Simulink

Model Predictive

Control Toolbox

VehicleDynamicsBlockset

AutomatedDriving System

Toolbox

Control SystemToolbox

Computer Vision System Toolbox

Image Processing Toolbox

コア製品

舵角制御加速度制御

前走車シナリオレーン検出前走車検出自車ダイナミクス

ゲームエンジンとのIF

Page 53: Simulink®+Unreal® Engine連携による · Unreal Engine 4 Editorと接続して協調シミュレーションするための サポートパッケージを提供(Unreal Engine

54

まとめ

▪ Vehicle Dynamics Blockset™の紹介

▪ ゲームエンジンとの協調シミュレーション

▪ 自動運転制御ロジックを検証するためのシミュレータ構成

Page 54: Simulink®+Unreal® Engine連携による · Unreal Engine 4 Editorと接続して協調シミュレーションするための サポートパッケージを提供(Unreal Engine

55

次のステップ!

▪ Webページ

– ADAS/自動運転のソリューションページ

– Vehicle Dynamics Blockset紹介ページ

▪ 評価版、各種お問合せ

Page 55: Simulink®+Unreal® Engine連携による · Unreal Engine 4 Editorと接続して協調シミュレーションするための サポートパッケージを提供(Unreal Engine

56

展示ブースでご覧いただけます!

自動運転・ADAS

Page 56: Simulink®+Unreal® Engine連携による · Unreal Engine 4 Editorと接続して協調シミュレーションするための サポートパッケージを提供(Unreal Engine

57

Session Key Take Away

MathWorksは、自動運転システム開発に必要な

フルビークルモデルを提供します

Page 57: Simulink®+Unreal® Engine連携による · Unreal Engine 4 Editorと接続して協調シミュレーションするための サポートパッケージを提供(Unreal Engine

58© 2018 The MathWorks, Inc.

© 2018 The MathWorks, Inc. MATLAB and Simulink are registered trademarks of The MathWorks, Inc. See www.mathworks.com/trademarks for a list of additional trademarks. Other product or brand names may be trademarks or registered trademarks of their respective holders.