Index
概要#
1. 要件#
位置推定の目的は、車両の姿勢、速度、加速度を推定することです。
目標:
- 車両の姿勢、速度、加速度を可能な限り長く推定できるシステムを提案します。
- 推定の安定性を診断し、推定結果が信頼できない場合にはエラー監視システムに警告メッセージを送信できるシステムを提案します。
- さまざまなセンサー構成と連携できる車両位置推定機能を設計します。
目標ではない:
- この設計文書は以下のような位置推定システムを開発することを目的としたものではありません。
- あらゆる環境において確実である
- 事前に定義されたODD(運用設計領域)の外側で機能する
- 自動運転に必要な性能より優れている
2. センサー構成例#
このセクションではセンサー構成の例とその予想されるパフォーマンスを示します。 各センサーには独自の長所と短所がありますが、複数のセンサーを融合することで全体的なパフォーマンスを向上させることができます。
3D-LiDAR + 点群地図#
想定される状況#
- 車両が都市部などの構造物が多い環境に設置されている
システムが不安定になる可能性がある状況#
- 車両が田園風景、高速道路、トンネルなどの構造物のない環境に置かれている
- マップ作成時から積雪や建物の建設・破壊などの環境変化が発生している
- 周囲のオブジェクトが遮られる
- 車の周囲が、ガラス窓、反射、吸収(暗い物体)などLiDARで検出できない物体に囲まれている
- 環境には車のLiDARセンサーと同じ周波数のレーザービームが含まれている
機能性#
- このシステムは、点群マップ上の車両の位置を最大10cmの誤差で推定できます。
- システムは夜間でも動作可能です。
3D-LiDARまたはカメラ + ベクトルマップ#
想定される状況#
- 高速道路や一般道路など、白線がはっきりしていて曲率が緩やかな道路。
システムが不安定になる可能性がある状況#
- 白い線が擦れたり、雨や雪で隠れたりする
- 交差点などの急な曲率
- 雨や塗装による路面の反射変化が大きい
機能性#
- 横方向の車両位置を修正します。
- 縦方向に沿った姿勢補正は不正確になる可能性がありますがGNSSと融合することで解決できます。
GNSS#
想定される状況#
- 車両は田園風景など周囲に物がほとんど、またはまったくないひらけた環境に配置されます。
システムが不安定になる可能性がある状況#
- GNSS信号はトンネルや建物などの周囲の物体によってブロックされます。
機能性#
- このシステムは、世界座標における車両の位置を最大10メートルの誤差以内で推定できます。
- RKT-GNSS(動的干渉測位汎地球測位航法衛星システム)を取り付けると精度は最大10cmまで向上します。
- この構成のシステムは環境マップ(点群地図とベクターマップタイプの両方)なしで動作できます。
カメラ(ビジュアルオドメトリ、ビジュアルSLAM)#
想定される状況#
- 車両は市街地などの視覚的特徴が豊かな環境に設置されます。
システムが不安定になる可能性がある状況#
- 車両はテクスチャのない環境に置かれます。
- 車両は他の物体に囲まれています。
- カメラは、太陽光、他の車両のヘッドライト、またはトンネルの出口に近づいたときなどに生じる重大な照明の変化を観察します。
- 車両は暗い環境に置かれます。
機能性#
- このシステムは、視覚的特徴を追跡することでオドメトリを推定できます。
車輪速センサー#
想定される状況#
- 車両は平坦で滑らかな道路を走行しています。
システムが不安定になる可能性がある状況#
- 車両が滑りやすい路面やでこぼこした路面を走行しているときは、車輪速度が不正確に測定される可能性があります。
機能性#
- 車速を取得し、走行距離を推定することができます。
IMU#
想定される状況#
- 平らで滑らかな道路
システムが不安定になる可能性がある状況#
- IMUには周囲の温度に依存するバイアス1があり、不正確なセンサー観測やオドメトリ ドリフトを引き起こす可能性があります。
機能性#
- このシステムは加速度と角速度を観測できます。
- これらの観測を統合することで、システムは局所的な姿勢変化を推定し、推測航法を実現できます。
地磁気センサー#
想定される状況#
- 車両が磁気ノイズの少ない環境に置かれている
システムが不安定になる可能性がある状況#
- 車両が、電磁波を発生する鉄筋やその他の材料を使用した建物や構造物など、磁気ノイズの高い環境に置かれている。
機能性#
- このシステムは、世界座標系で車両の方向を推定できます。
磁気マーカー#
想定される状況#
- 自動車は磁気マーカーが設置された環境に置かれます。
システムが不安定になる可能性がある状況#
- マーカーは保守点検されません。
機能性#
- 磁気マーカを検出することで、世界座標上での車両位置を取得できます。
- 道路が雪で覆われている場合でもシステムは機能します。
3. 要件#
推奨アーキテクチャ - さまざまなモジュールを実装することで、さまざまなセンサー構成とアルゴリズムを使用できます。 - 位置特定システムは、あいまいな初期位置から姿勢推定を開始できます。 - このシステムは、信頼性の高い初期位置推定を生成できます。 - システムは、初期位置推定の状態(初期化されていない、初期化可能、または初期化不可能)を管理し、エラーモニターに報告できます。
4. アーキテクチャ#
概要#
"Required"と"Recommended"の2つのアーキテクチャが定義されています。ただし"Required"アーキテクチャには、さまざまな位置推定アルゴリズムを受け入れるために必要な入力と出力のみが含まれています。各モジュールの再利用性を向上させるために、必要なコンポーネントは、より詳細な説明とともに"Recommended"アーキテクチャのセクションで定義されています。
必須アーキテクチャ#
入力#
- センサーメッセージ
- 例えばLiDAR、カメラ、GNSS、IMU、CANバスなど。
- 再利用可能にするために、データ型はROSでプリミティブなものである必要があります
- 地図データ
- 例えば点群マップ、lanlet2マップ、特徴量マップなど。
- マップ形式はユースケースとセンサー構成に基づいて選択する必要があります。
- 一部の特定のケース(GNSSのみの位置特定など)では地図データが必要ないことに注意してください。
- tf, static_tf
- mapフレーム
- base_linkフレーム
出力#
- スタンプ付き姿勢と共分散
- マップ座標上の車両の姿勢、共分散、およびタイムスタンプ
- 50Hz以上の周波数(計画および制御コンポーネントの要件による)
- スタンプ付きツイストと共分散
- base_link座標系における車両速度、共分散、およびタイムスタンプ
- 50Hz以上の周波数
- スタンプ付き加速度と共分散
- base_link座標系における加速度、共分散、およびタイムスタンプ
- 50Hz以上の周波数
- 診断
- 位置推定モジュールが適切に動作しているかどうかを示す診断情報
- tf
- mapからbase_linkへのtf
推奨アーキテクチャ#
姿勢推定器#
- 外部センサーの観測値と地図を照合することで、地図座標上の車両の姿勢を推定します
PoseTwistFusionFilter
に取得したポーズとその共分散を提供します。
ツイスト-加速度推定器#
- 車両速度、角速度、加速度、角加速度、およびそれらの共分散を生成します。
- ツイストとアクセラレーションの両方に対して1つのモジュールを作成することも、2つの別個のモジュールを作成することも可能です。アーキテクチャの選択は開発者次第です。
- ツイスト推定器は、内部センサーの観察から速度と角速度を生成します。
- 加速度推定器は、内部センサーの観測値から加速度と角加速度を生成します。
キネマティクスフュージョンフィルター#
- 2種類の情報を融合して計算された、最も可能性の高い姿勢、速度、加速度、およびそれらの共分散を生成します:
- 姿勢推定器から取得された姿勢
- ツイスト加速推定器から得られる速度と加速度
- 姿勢推定結果に従ってbase_linkへのマップのtfを生成します
位置推定診断#
- 複数の位置推定モジュールから取得した情報を融合することにより、姿勢推定の安定性と信頼性を監視および保証します
- エラーステータスをエラーモニターに報告します
TFツリー#
フレーム | 意味 |
---|---|
earth | ECEF(地球中心固定) |
map | 地図座標の原点(例:MGRS原点) |
viewer | rvizのユーザー定義フレーム |
base_link | 自車両の基準姿勢(後軸中心の地面への投影) |
sensor | 各センサーの基準姿勢 |
開発者は上記のtf構造が維持されている限り、オプションでodomやbase_footprintなどの他のフレームを追加できます。
位置推定モジュールの理想的な機能#
- 位置推定モジュールは、制御、計画、知覚のために姿勢、速度、加速度を提供する必要があります。
- 遅延時間とばらつきは、推定値をODD(運用設計領域) 内の制御に使用できるように、十分に小さいか調整できる必要があります。
- 位置推定モジュールは、固定座標フレーム上にポーズを生成する必要があります。
- センサーは簡単に交換できるように互いに独立している必要があります。
- 位置推定モジュールは、自律走行車が自己完結型機能または地図情報で動作できるかどうかを示すステータスを提供する必要があります。
- ツールまたはマニュアルには、位置推定モジュールの適切なパラメータを設定する方法が記載されている必要があります。
- さまざまなフレームまたはポーズの座標とセンサーのタイムスタンプを調整するには、有効なキャリブレーションパラメーターを指定する必要があります。
KPI#
安全な操作のために十分な姿勢推定パフォーマンスを維持するには、以下の指標が考慮されます:
- 安全性
- 姿勢推定が必要な精度を満たしたODD内での移動距離を、ODD内で移動した全体の距離で割った値(パーセンテージ)。
- 位置特定モジュールがODD内の姿勢を推定できない状況の異常検出率
- 車両がODDの外側に出たときの検出精度(パーセンテージ)。
- 計算負荷
- 遅延時間
5. インターフェースとデータ構造#
6. 懸念事項、仮定、制限事項#
センサーと入力の前提条件#
センサーの前提条件#
- 入力データに異常はありません。
- IMUなどの内部センサー観測により適切な周波数を継続的に維持します。
- 入力データには正確なタイムスタンプが付いています。
- タイムスタンプが正確でない場合、推定されたポーズが不正確になったり、不安定になる可能性があります。
- センサーは正確な位置に正しく取り付けられており、TFからアクセスできます。
- センサーの位置が不正確な場合、推定結果が正しくなかったり、不安定になる可能性があります。
- センサーの位置を適切に取得するには、センサーキャリブレーションフレームワークが必要です。
地図の前提条件#
- 地図内に十分な情報が含まれています。
- マップ内の情報が不十分な場合、姿勢推定が不安定になる可能性があります。
- マップに姿勢推定に適切な情報が含まれているかどうかを確認するには、テストフレームワークが必要です。
- マップは実際の環境と大きく変わりません。
- 実際の環境にマップと異なるオブジェクトがある場合、姿勢推定が不安定になる可能性があります。
- 新しいオブジェクトや季節の変化に応じてマップを更新する必要があります。
- マップは均一の座標に合わせて配置する必要があります。そうでない場合は、配置フレームワークが設置されている必要があります。
- 異なる座標系を持つ複数のマップが使用される場合、それらの間の位置ずれが位置推定のパフォーマンスに影響を与える可能性があります。
計算資源#
- 精度と計算速度を維持するには、十分な計算資源が提供される必要があります。
-
バイアスの詳細についてはVectorNav IMU specifications pageを参照してください。 ↩