Webエンジニアが自動運転企業でやっていること

21.1K Views

November 22, 19

スライド概要

Webエンジニアが自動運転業界でできることをイメージしてもらえるよう、関連技術を広く紹介します。

profile-image

TIER IV(ティアフォー)は、「自動運転の民主化」をビジョンとし、Autowareを活用したソフトウェアプラットフォームと統合開発環境を提供しています。 #Autoware #opensource #AutonomousDriving #deeptech

シェア

またはPlayer版

埋め込む »CMSなどでJSが使えない場合

関連スライド

各ページのテキスト
1.

Webエンジニアが 自動運転企業でやっていること 2019 © Tier IV, Inc. All rights reserved.

2.

今回のテーマ ・自動運転業界に興味はあるが、自分が貢献できることが不明 な人や ・自動運転に関わる技術について漠然と興味がある といった人に向けて ・自動運転に関わる技術を広く説明する ことで ・自動運転に関連する開発をイメージしてもらえるようになる 2019 © Tier IV, Inc. All rights reserved.

3.

Agenda ・自己紹介 ・ティアフォーについて ・Autowareについて ・ROSの紹介 ・AutowareとWeb側との関わり ・Autoware開発に関わる周辺ツール ・まとめ 2019 © Tier IV, Inc. All rights reserved.

4.

自己紹介 ・森本 潤一(もりもと じゅんいち) ・所属 株式会社ティアフォー 技術本部 エンジニア ・担当 車両配車周り 開発支援ツール ・ティアフォーに入るまでにやってきたこと バックオフィス向けSaaSの新規開発・運用 自動運転の「じ」の字も無かった 2019 © Tier IV, Inc. All rights reserved.

5.

ティアフォーに入った経緯 ・面白そうな業界/サービスがあれば行ってみたい ・転職エージェントから自動運転の会社の紹介がきた ・面白そうだし話を聞いてみたい! ・けど、Webのことばっかりやってきた 自分が自動運転業界で何ができるんだろう? 2019 © Tier IV, Inc. All rights reserved.

6.

ティアフォーに入った経緯 ・面白そうな業界/サービスがあれば行ってみたい ・転職エージェントから自動運転の会社の紹介がきた ・面白そうだし話を聞いてみたい! ・けど、Webのことばっかりやってきた 自分が自動運転業界で何ができるんだろう? ・とりあえず話聞いてみよう ➡ 勢いで入社 2019 © Tier IV, Inc. All rights reserved.

7.

株式会社ティアフォー (Tier IV, Inc.) ・自動運転ソフトウェアの開発(Autoware) ・自動運転技術を活用した物流サービスの開発 ・近距離低速自動運転サービスの開発 2019 © Tier IV, Inc. All rights reserved.

8.

Autoware ・自動運転OS ・車だけでなく、車いすやゴルフカートなどにも適用可能 ・OSS戦略 国内外合わせて200社以上に使われている 1200人以上のエンジニアコミュニティ 先行他社に追いつき追い越すため ・オープン化による業界標準の確立を目指す ・2018年12月にAutoware Foundationを設立し、規模を拡大中 Autowareは、AWFの商標です 2019 © Tier IV, Inc. All rights reserved.

9.

Autoware Autowareは、AWFの商標です 2019 © Tier IV, Inc. All rights reserved.

10.

Autoware Autowareは、AWFの商標です 2019 © Tier IV, Inc. All rights reserved.

11.

Autoware搭載車両の例 Autowareは、AWFの商標です 2019 © Tier IV, Inc. All rights reserved.

12.

Autowareの構成図 Autowareは、AWFの商標です 2019 © Tier IV, Inc. All rights reserved.

13.

ROS ・AutowareはROSベース ・Robot Operation System ・最近はROS2に移行しつつある ・以下のような特徴を持つ 並列分散処理が簡単にできる 豊富な開発ツールやライブラリ C++, Python, LISPなどが使える 商用利用可能 2019 © Tier IV, Inc. All rights reserved.

14.

ROSノード 個別の処理毎にノードを複数起動し ノード間のPub/Sub通信でデータのやり取りを行う 2019 © Tier IV, Inc. All rights reserved.

15.

Pub/Sub通信 ・Subscriberは購読したいトピックを登録しておく ・Publisherは任意のタイミングでトピックに対してメッセージを発行 ・購読しているトピックの場合、Subscriberがメッセージを受信 Topic /hoge Publisher ✖ /hoge Subscriber /fuga Subscriber 2019 © Tier IV, Inc. All rights reserved.

16.

Pub/Sub通信 ・Subscriberは購読したいトピックを登録しておく ・Publisherは任意のタイミングでトピックに対してメッセージを発行 ・購読しているトピックの場合、Subscriberがメッセージを受信 Topic /images カメラ /images /images 信号認識 歩行者検知 2019 © Tier IV, Inc. All rights reserved.

17.

ROSノード 個別の処理毎にノードを複数起動し ノード間のPub/Sub通信でデータのやり取りを行う ・再利用性が高い ・分散処理を行うことが容易 ROSにはノード構成の可視化ツールもある(rqt̲graph) 2019 © Tier IV, Inc. All rights reserved.

18.

rqt̲graph 2019 © Tier IV, Inc. All rights reserved.

19.

AutowareのROSノード 2019 © Tier IV, Inc. All rights reserved.

20.

ROSBAG 実際に動かした時のROSのトピックをタイムスタンプと共に保存 rosbag record “topic1” “topic2” 保存したrosbagの再生も可能 rosbag play “rosbag1” rosbagに保存されているトピックを再生することで ・同じ状況に対してアルゴリズムを変更して試してみたり ・トラブルが起きた時の周辺状況を再確認したり といったことが可能 2019 © Tier IV, Inc. All rights reserved.

21.

rviz ROSに関する各種情報の可視化ツール 2019 © Tier IV, Inc. All rights reserved.

22.

ROS ・Robot Operation System ・AutowareはROSベース ・最近はROS2に移行しつつある ・以下のような特徴を持つ 豊富な開発ツールやライブラリ 並列分散処理が簡単にできる C++, Python, LISPなどが使える 商用利用可能 ・Web側としては、ROSでやり取りされている情報に関りたい 2019 © Tier IV, Inc. All rights reserved.

23.

rosbridge ・ROSメッセージを他のプロトコルにブリッジするROSモジュール UDP, TCP, WebSocketなど ・Rosbridge経由でトピックをPublishすることで Autowareのノードに情報を与えたり指示を出したり ・ROSトピックをrosbridge経由でSubscribeすることで Autowareから情報を吸い上げる 2019 © Tier IV, Inc. All rights reserved.

24.

rosbridge Autowareとの通信が可能 ➡ Webエンジニアの領域 AutowareからSubscribeする情報例 ・現在の位置情報 ・車両のステータス AutowareにPublishする情報例 ・車両の発進命令 ・車両の走行ルート 2019 © Tier IV, Inc. All rights reserved.

25.

データフロー FMS Core AWS IoT Core rosbridge AWS IoT Greengrass 2019 © Tier IV, Inc. All rights reserved.

26.

AWS IoT ・デバイスとAWSをセキュアに双方向接続 ・MQTTやHTTP1.1プロトコルを用いて通信 ・ルールエンジンを用いてトリガー毎の動作を定義 ・デバイス シャドウというクラウド上の仮想デバイスを持つ 2019 © Tier IV, Inc. All rights reserved.

27.

AWS IoT Greengrass ・AWS IoTをデバイス側に拡張し、エッジコンピューティングを可能にする ・IoTデバイス上で動くローカルLambda ・オフラインで処理してからクラウドと同期も可能 ・Greengrassのデーモンが起動している場合、クラウド側からデプロイ可能 ・Greengrass CoreをOTAでアップデートが可能 ・Cloud Watch Logsにログを流せる 2019 © Tier IV, Inc. All rights reserved.

28.

rosbridgeとの接続 2019 © Tier IV, Inc. All rights reserved.

29.

Autoware FMS FMS Core AWS IoT Core rosbridge AWS IoT Greengrass 2019 © Tier IV, Inc. All rights reserved.

30.

Autoware FMS Autowareで動く自動運転車両の運行管理システム 以下のような機能を持つ ・モニタリング ・スケジューリング ・経路計画 ・運行管理実績管理 Step 1 Step 2 Step 3 呼び出し 乗車 降車 迎 車 走 行 2019 © Tier IV, Inc. All rights reserved.

31.

Autoware FMS 大まかな流れ ・Autoware起動 ・位置情報をクラウド側で受け取り、車両がどこにいるかを判定 ・目的地に応じてルートを生成し、Autowareに送信 ・Autowareの状態(ステート)を見つつ、走行予定を管理 ・走行可能になったら発車命令を送信 ・走行が完了したら次のルートを送信 ・現在の状態をWebの管理画面に表示 2019 © Tier IV, Inc. All rights reserved.

32.

Autoware FMSコンソール ・車両の位置や状態のモニタリング ・エラーやオフラインになった時の通知 ・走行予定や実績の確認 2019 © Tier IV, Inc. All rights reserved.

33.

全体アーキテクチャ AWS Cloud Calls FMS FMS Core FMS API バス停アプリ Zz Autoware Calls API Amazon API Gateway 車載アプリ Message Broker Maps PCD Map IoT shadow IoT shadow Bus Stop Status Vehicle Status Drive Vector Map Route Search Web App WebRTC 車両 2019 © Tier IV, Inc. All rights reserved.

34.

全体アーキテクチャ AWS Cloud Calls FMS FMS Core FMS API Zz Autoware Calls API Amazon API Gateway Message Broker Maps PCD Map IoT shadow IoT shadow Bus Stop Status Vehicle Status 他社製アプリ Drive Vector Map Route Search Web App WebRTC 車両 2019 © Tier IV, Inc. All rights reserved.

35.

清水建設様との協業例 https://mobile.twitter.com/Shimizu_now/status/1185030271625678848 https://www.shimz.co.jp/company/about/news-release/2019/2019022.html 2019 © Tier IV, Inc. All rights reserved.

36.

清水建設様との協業例 ティアフォー 清水建設様 FMSのAPIの提供 FMSのAPIの利用 ・車両の位置 ・目的地指定 ・車両の状態 ・発車命令 ・アプリに車両位置を表示 ・アプリからの目的地指定 ・ユーザーが特定位置に来たら発車 ・乗り込んだら車載アプリで発車 2019 © Tier IV, Inc. All rights reserved.

37.

自動運転に関わるWebサービス ・車両に関わるサービス ルート生成, 配車, 監視など 遠隔運転 ・自動運転開発のためのツール 2019 © Tier IV, Inc. All rights reserved.

38.

自動運転開発のためのツール 引用元) ソフト開発は「ツールとインフラが9割」、トヨタの先行開発会社が重視すること https://monoist.atmarkit.co.jp/mn/articles/1901/31/news064.html 2019 © Tier IV, Inc. All rights reserved.

39.

ツールとは? ・マップエディター ・シミュレータ ・ラベリングツール ・ログの分析ツール ・設定を手軽にするためのGUI etc 2019 © Tier IV, Inc. All rights reserved.

40.

マップエディター ・自動運転で使用する地図を作成する 2019 © Tier IV, Inc. All rights reserved.

41.

自動運転で使用する地図とは ・Point Cloud Map(PCD): 自己位置推定に用いる点群3D地図 ・Vector Map: 交通ルールや信号機など、走行中に参照する情報を持つ地図 2019 © Tier IV, Inc. All rights reserved.

42.

Point Cloud Map 自己位置推定に用いる点群地図 2019 © Tier IV, Inc. All rights reserved.

43.

Point Cloud Mapを利用した自己位置推定 2019 © Tier IV, Inc. All rights reserved.

44.

Vector Map 交通ルールや信号機など、走行中に参照する情報を持つ地図 2019 © Tier IV, Inc. All rights reserved.

45.

Vector Mapのフォーマット 最新のAutowareではLanelet2というフォーマットを採用 2019 © Tier IV, Inc. All rights reserved.

46.

Lanelet2の概要 ・OSM形式のxmlフォーマットに則った形で定義された地図フォーマット Open Street Map: 自由に利用/編集できる世界地図 ・OSMで培われたデータやツールを活かすことができる ・要素の種類が少なく、概念としては覚えやすい ・各要素に任意の key-valueを付与することができ、拡張性が高い 2019 © Tier IV, Inc. All rights reserved.

47.

Lanelet2の概要 点とその座標 Laneletの境界、信号、その他オブジェクトを表す線 LineStringに挟まれた領域。車線など LineStringによる閉領域。駐車場など LineStringに挟まれた領域。注視する区域の指定など 他オブジェクトに関連付けて交通ルールを定義する 2019 © Tier IV, Inc. All rights reserved.

48.

マップエディター 自動運転で使用する地図を作成/編集する ・PCDの読み込み ・VectorMapの作成編集(Lanelet2) ・Waypoint(Autowareが追従して走る点)の作成編集 2019 © Tier IV, Inc. All rights reserved.

49.

マップエディター要件例 自動運転で使用する地図を作成する ・PCDの読み込み 容量が大きいのでメモリ管理が必要 ある程度の高さまでの点群表示にしたい etc ・点、直線、エリアの作成編集 重なっている部分の選択で工夫が必要 間違って削除した後に復帰したい etc 2019 © Tier IV, Inc. All rights reserved.

50.

まとめ Webエンジニアも自動運転に関してできることはたくさんある ・現在の位置情報をブラウザに表示したり ・車両のステータスを監視したり ・車両に発車命令を出したり ・車両に走行ルートを送ったり 自動運転車両に直接関わらない周辺ツールの需要もたくさんある クルマのスマホ化と言われたりする むしろ、自動運転と絡めたどんなサービスを作るか、がビジネス的にも重要 2019 © Tier IV, Inc. All rights reserved.