Skip to content

位置推定起動ファイル#

概要#

Autoware の起動ページで説明したように、 Autoware ローカリゼーション スタックはautoware_launch.xmlで起動を開始します。 autoware_launchパッケージには、autoware_launch.xmlから位置推定を開始する 起動ファイルの呼び出すためのtier4_localization_component.launch.xmlが含まれています。 この図は、autoware_launchautoware.universeパッケージでの Autoware ローカリゼーション起動ファイル フローの一部を説明しています。

localization-launch-flow

Autoware位置推定起動フロー図

注記

Autoware プロジェクトは大規模なプロジェクトです。 したがって、Autoware プロジェクトを管理する際には、 起動ファイル内の特定の引数を利用します。 ROS 2 は、これらの起動ファイルの引数をオーバーライドする機能を提供します。 詳細については公式 ROS 2 起動ドキュメントを参照してください。 たとえば、 トップレベルの起動で引数を定義すると、 下位レベルの起動ではその値がオーバーライドされます。

tier4_localization_component.launch.xml#

tier4_localization_component.launch.xml起動ファイルは、autoware_launchパッケージで起動されるメインのローカリゼーション コンポーネントです。 この起動ファイルは、autoware.universeリポジトリからtier4_localization_launchパッケージのlocalization.launch.xmlを呼び出します。 tier4_localization_component.launch.xml でローカリゼーション起動引数を変更できます。

TIER IV によって実装されている現在の位置推定ランチャーは、複数のローカライゼーション方法 (姿勢推定器とねじれ推定器の両方) をサポートしています。T tier4_localization_component.launch.xmlには、起動する推定器を選択するための 2 つの引数があります:

  • pose_source: この引数は、位置推定用のpose_estimatorを指定しますが、現在ndt(デフォルト)、yablocartagおよびeagleyeをサポートしています。 デフォルトでは、Autoware は姿勢推定器としてndt_scan_matcher起動します。 YabLoc をカメラベースの位置特定方法として使用できます。 YabLoc の詳細については、 autoware.universe のYabLoc の READMEを参照してください。 また、Eagleye を GNSSIMU、ホイール オドメトリ ベースの位置特定方法として使用することもできます。Eagleye の詳細については、Eagleyeを参照してください。

    tier4_localization_component.launch.xmlpose_source引数を設定できます。 たとえば、eagleye をポーズソースとして使用したい場合は、 tier4_localization_component.launch.xmlを次のように更新する必要があります:

    - <arg name="pose_source" default="ndt" description="select pose_estimator: ndt, yabloc, eagleye"/>
    + <arg name="pose_source" default="eagleye" description="select pose_estimator: ndt, yabloc, eagleye"/>
    

    また、コマンドラインを使用して起動引数をオーバーライドすることもできます:

    ros2 launch autoware_launch autoware.launch.xml ... pose_source:=eagleye
    
  • twist_source: この引数は、Twist_estimatorを指定します。現在(gyro_odom デフォルト) およびeagleyeをサポートしています。 デフォルトでは、 Autoware はねじれ推定器としてgyro_odometerを起動します。 また、ツイストソースに eagleye を使用することもできます。Eagleyeを参照してください。 ツイストソースを eaglee に変更したい場合は、tier4_localization_component.launch.xmlを次のように更新できます:

    - <arg name="twist_source" default="gyro_odom" description="select twist_estimator. gyro_odom, eagleye"/>
    + <arg name="twist_source" default="eagleye" description="select twist_estimator. gyro_odom, eagleye"/>
    

    または、コマンドラインを使用して起動引数をオーバーライドすることもできます:

    ros2 launch autoware_launch autoware.launch.xml ... twist_source:=eagleye
    
  • input_pointcloud: この引数は、ローカリゼーション ポイントクラウド パイプラインの入力ポイントクラウドを指定します。デフォルト値は、 センシングからのポイントクラウド前処理/ パイプラインの出力である/sensing/lidar/top/outlier_filtered/pointcloudです。 LiDAR トピック名に応じてこの値を変更することも、 連結された点群の使用を選択することもできます:

    - <arg name="input_pointcloud" default="/sensing/lidar/top/outlier_filtered/pointcloud" description="The topic will be used in the localization util module"/>
    + <arg name="input_pointcloud" default="/sensing/lidar/concatenated/pointcloud"/>
    

これらの例のように、 必要なすべての引数をtier4_localization_component.launch.xml 起動ファイルに追加できます。 ジャイロ オドメーター ツイスト入力トピックを変更したい場合は、 tier4_localization_component.launch.xml起動ファイルに次の引数を追加できます:

+ <arg name="input_vehicle_twist_with_covariance_topic" value="<YOUR-VEHICLE-TWIST-TOPIC-NAME>"/>

注記: 速度コンバーター パッケージから提供されるジャイロ走行距離計入力トピック。このパッケージは sensor_kit で起動されます。 詳細については、 速度コンバータ パッケージを確認してください。