Victor Tango​チーム​の​Odin:DARPA Urban Challenge​に​NI LabVIEW​を​使用​した​自動​運転​車​が​出場

Patrick Currier​氏 (バージニア​工科大学)

「直観​的​な​LabVIEW​グラフィカル​プログラミング​インタフェース​と、​LIDAR​など​の​センサ​用​に​すぐ​に​使える​ドライバ​が​用意​さ​れ​て​いる​おかげ​で、​機械​工学部​の​学部​生​チーム​でも、​カスタム​組​込​ソフトウェア​を​短時間​で​効率​よく​開発​する​こと​が​でき​ま​した」

Patrick Currier​氏 (バージニア​工科大学)

課題:

都市​環境​における​自律​地上​車​レース​で​ある、​米国​防​総省​の​国防​高等​研究​計画​庁 (DARPA) の​「Urban Challenge」​を​完走​できる​自動​運転​車​を​開発​する。

ソリューション:

NI LabVIEW​グラフィカル​プログラミング​環境​と​NI​の​ハードウェア​を​使用​する​こと​で、​開発、​テスト、​試作​を​短期間​で​行い、​見事​に​完走​を​果​た​した (89​チーム​中​3​位​となり​50​万​ドル​の​賞金​を​獲得)。

作成​者:

Patrick Currier - バージニア​工科大学
​Jesse Hurdus - TORC Technologies, LLC、​バージニア​工科大学
​Dr.Charles Reinholtz - エンブリー・​リ​ドル​航空​大学
​Dr.Al Wicks - バージニア​工科大学

 

DARPA Urban Challenge​は、​地上​車​が​都市​環境​で​自動​走行​する​レース​ですが、​道路​や​交差点、​駐車​場​など​の​ある​コース​を​6​時間​以内​に​約​95​キロメートル​走行​し​なく​て​は​なり​ま​せん。​レース​の​スタート​時に​ミッション​ファイル​によって、​特定​の​順序​で​通る​べ​き​チェックポイント​が​ロード​ネットワーク​マップ​上​で​指定​さ​れ​ます。

 

 

できる​限り​高速​で​チェックポイント​に​到達​する​に​は、​速度​制限​や​障害​物​の​可能性、​交通​状況​など​を​考慮​し​て​ルート​を​選ぶ​必要​が​あり​ます。​走行​時​は​交通​ルール​を​順守​し、​有人/​無人​車両​に​合わせ​て​適切​に​走行​し​なく​て​は​なり​ま​せん。​また、​車両はレーンからはみ出すことはできず、​他の​車両​の​スピード​に​合わせ​たり、​追い越し​たり​する​こと​で​安全​に​配慮​し​ます。​さらに、​交差点​では​優先​権​規則​に従い、​余裕​をもって​安全​運転​し、​静的/​動的​障害​物​は​最大​時速​30​マイル​で​回避​し​ます。

 

私​たち​の​チーム​「Victor Tango」​では、​この​よう​な​高度​な​チャレンジ​の​ため​の​車両​を​たった​1​年​で​開発​する​ことに​なり​ま​した。​そこで​問題​点​を​ベース​プラットフォーム、​認知、​計画、​通信​という​4​つ​の​部分​に​分け​ま​した。

 

問題​の​各​部分​について、​NI​の​ソフトウェア​と​ハードウェア​を​活用​しま​した。​NI​の​ハードウェア​は、​車両​の​既存​システム​と​の​通信​と、​オペレータ​向け​の​インタフェース​を​提供​し​ます。​通信​アーキテクチャ、​センサ​処理/​オブジェクト​認識​アルゴリズム、​レーザ​測距​器​と​映像​による​道路​検出、​高​レベル​運転​動作、​低​レベル​車両​インタフェース​など、​さまざま​な​ソフトウェア​の​開発​に、LabVIEWグラフィカル​プログラミング​環境​を​使用​しま​した。

 

ベース​プラットフォーム

Odin​は、​2005 Ford Escape Hybrid​を​自動​運転​用​に​改造​した​もの​です。NI CompactRIO システム​が​Escape​の​システム​と​通信​を​行い、​スロットル、​ステアリング、​シフト、​ブレーキ​など​の​ドライブ​バイ​ワイヤ​制御​を​可能​にし​ます。​私​たち​の​チーム​は、​LabVIEWとLabVIEW​制御​系​設計/​シミュレーション​モジュールを​使用​し​て、​経路​の​湾曲/​速度​制御​システム​を​開発​しま​した。​この​システム​を​LabVIEW Real-​TimeとLabVIEW FPGAモジュール​を​使​って​CompactRIO​に​実装​し​て、​スタンドアロン​車両​プラットフォーム​を​完成​さ​せ​ま​した。​ダッシュボード​に​設置​した​NI TPC-2006​タッチ​パネル​コンピュータ​の​ユーザ​インタフェース​の​作成​に​は、LabVIEW​タッチ​パネル​モジュールを​使用​しま​した。

 

 

認知

Urban Challenge​の​行動​要件​を​満たす​ため、​Odin​は​自身​の​位置​を​認識​し、​周辺​の​道路​範囲​と​走行​レーン​を​検出​し、​経路​上​に​ある​すべて​の​障害​物​を​認識​し​て、​他の​車両​を​正しく​識別​する​こと​が​必要​です。​その​要件​を​満たす​ため​に、​バンパー位置に装着された​3​台​の​IBEO4​レーン​レーザ​測距​器 (LRF)、​ルーフラックに取り付けられた​4​台​の​SICK LRF​と​2​台​の​コンピュータ​ビジョン​カメラ、​そして​高​精度​な​Novatel GPS/​IMU​システム​など、​複数​の​センサ​が​使用​さ​れ​ま​した。

 

それぞれ​の​認知​の​要件​について、​複数​の​センサ​を​使用​し​て​最大限​の​忠実​性​と​信頼​性​を​実現​しま​した。​センサ​を​柔軟​に​統合​する​ため​に、​プランニング​ソフトウェア​では​生​の​センサデータ​を​無視​し、​タスク​別​コンポーネント​により​生成​さ​れ​た​センサ​に​依存​しない​認知​メッセージ​を​使用​し​てい​ます。​位置​特定​コンポーネント​に​は、​車両​の​位置​と​向き​を​追跡​する​LabVIEW Kalman​フィルタ​が​組み​込​まれ​てい​ます。​道路​検出​コンポーネント​では、​NI Vision​開発​モジュール​を​使用​し​て​カメラ​と​LRF​データ​を​組み合わせ、​道路​範囲​マップ​と​隣接​セグメント​内​の​各​レーン​の​位置​を​特定​し​ます。​オブジェクト​分類​コンポーネント​では​LabVIEW​を​使用​し​て​IBEO​データ​を​処理​し、​障害​物​を​検出​し​て​それら​が​静的​か​動的​か​を​識別​し​ます。​そして​動的​障害​物​予測​により​他の​車両​の​経路​と​動作​を​予測​し​ます。

 

計画

Odin​の​プランニング​ソフトウェア​では、​ハイブリッド​deliberative-​reactive​モデル​を​使用​し​て、​上位​判断​と​下位​応答​を​別々​の​コンポーネント​に​分け​てい​ます。​この​2​つ​の​コンポーネント​は​それぞれ​独立​した​レート​で​同時に​実行​さ​れる​ため、​車両​は​経路​全体​を​再​計画​し​なく​て​も​緊急​事態​に​対応​する​こと​が​でき​ます。​条件​判断​を​別々​の​コンポーネント​に​分ける​こと​で、​各​システム​を​個別に​テスト​でき、​並行​で​の​開発​が​し​や​すく​なり​ます。​これ​は​Urban Challenge​まで​の​短い​期間​で​の​開発​に​は​必要​な​こと​で​した。

 

ルート​プランナー​コンポーネント​では、​A*​検索​アルゴリズム​を​使用​し​て、​すべて​の​チェックポイント​を​通過​する​に​は​道路​の​どの​セグメント​を​通る​べ​き​か​を​決め​ます。​運転​動作​コンポーネント​では、​動作​に​基づく​LabVIEW​ステート​マシン​アーキテクチャ​を​使用​し​ます。​これ​は、​交通​ルール​を​守り​予定​の​経路​に​沿​って​車両​が​走行​する​よう​に​導く​という​役割​が​あり​ます。​モーション​計画​コンポーネント​では、​対話​式​軌道​検索​を​行​って​障害​物​を​回避​し、​望ましい​経路​に​車両​を​導​き​ます。​その後モーションプロファイルが車両インタフェースに渡され、​そこで​アクチュエータ​制御​信号​に​変換​さ​れ​ます。

 

通信

通信​フレーム​ワーク​は、​すべて​LabVIEW​を​使用​し​て​開発​さ​れ​ま​した。​SAE AS-4 JAUS (Joint Architecture for Unmanned Systems) プロトコル​を​実装​した​こと​で、​自動​で​の​動的​構成​が​可能​と​な​っ​た​ほか、​将来​の​再​利用​性​と​Urban Challenge​ソフトウェア​の​商品​化​の​可能性​も​高まり​ま​した。​また、​各​ソフトウェア​モジュール​を​JAUS​コンポーネント​として​実装​し、​モジュール​間​の​全​通信​が​この​LabVIEW​フレーム​ワーク​を​経由​し​て​行​われる​よう​に​しま​した。​各​ソフトウェア​モジュール​は​スタンドアロン​コンポーネント​として​動作​し、​Windows OS​また​Linux® OS​で​非同期​的​に​実行​でき​ます。​この​よう​な​通信​基盤​が​ある​ため、​LabVIEW​で​作成​した​ソフトウェア​モジュール​と​他の​言語​で​作成​した​ソフトウェア​モジュール​の​間​で​の​通信​や​再​利用​が​非常​に​簡単​です。

 

LabVIEW​の​利点

LabVIEW​が​チーム​にとって​素晴らしい​プログラミング​環境​と​な​っ​た​の​に​は、​いくつか​の​理由​が​あり​ます。​チーム​メンバー​の​ほとんど​が​メカニカル​エンジニア​という​状況​で​した​が、​LabVIEW​を​使用​した​こと​で、​コンピュータ​サイエンス​の​知識​を​持​た​ない​開発​者​でも​高度​な​認知/​計画​アルゴリズム​の​開発​を​行う​こと​が​でき​ま​した。​さらに、​LabVIEW​と​ハードウェア​間​の​通信​が​容易​だ​っ​た​ため、​センサ​処理​や​車両​制御​など​極めて​重要​な​タイム​クリティカル​処理​も​実装​し​や​すく​なり​ま​した。

 

また、​LabVIEW​では​デバッグ​も​直観​的​な​環境​で​行える​ため、​ソース​コード​を​リアルタイム​で​実行・​監視​し​ながら​HIL (hardware-​in-​the-​loop) デバッグ​を​簡単​に​行う​こと​が​でき​ま​した。​LabVIEW​環境​を​使用​した​こと​で、​テスト​を​最大限​効率​的​に​実施​でき​た​と同時に、​ラピッド​プロ​ト​タイ​ピン​グ​と​設計​サイクル​数​の​増加​も​推進​でき​ま​した。​時間​が​十分​で​なか​っ​た​こと​と​問題​の​特異性​を​考える​と、​LabVIEW​の​その​よう​な​特性​は​大きな​助け​に​な​っ​た​と​思い​ます。

 

私​たち​は​LabVIEW​と​NI​ハードウェア​を​使​って、​Urban Challenge​という​ロボット​史上​初めて​の​課題​を​完走​できる​自動​運転​車​を​開発​する​こと​が​でき​ま​した。​Odin​は​1​位​から​数分​遅れ​という​優​れ​た​タイム​で​3​位​を​獲得​した

 

Linux®​は、​Linus Torvalds​氏​の​米国​および​その他​の​国​における​登録​商標​です。

 

著者​情報:

Patrick Currier
バージニア​工科大学
​Mechanical Engineering Department Virginia Tech M/​C 0238
​Blacksburg, VA 24061
​United States
​電話:​(540) 231-6417
​ファックス:​(540) 231-9100
pcurrier@vt.edu

​ ​LabVIEW​ベースのソフトウェアで制御された​Odin​が​DARPA Urban Challenge​で​自動​走行 ​
​ ​この​図​は​Victor Tango​ソフトウェア​アーキテクチャ​で​の​NI​ハードウェア​と​LabVIEW​の​使用​方法​を​示し​てい​ます。 ​