LoginSignup
4
4

More than 1 year has passed since last update.

Navigation2をrviz2からWaypointを指定して実行する

Last updated at Posted at 2021-09-02

はじめに

この記事は以下の記事の続きです。
ROS2 Foxy環境にTurtleBot3のGazeboシミュレーションをインストールしてNavigation2を動かすまで

Navigation2では新たにWaypoint Followerという機能が追加され、Waypointを指定してNavigationを実行できるようになりました。

今回この機能をTurtleBot3のGazeboシミュレーション環境を使ってrviz2からWaypointを指定して動かします。

実行

TurtleBot3 シミュレーションを起動

$ ros2 launch turtlebot3_gazebo turtlebot3_world.launch.py

Navigation2の実行

$ ros2 launch turtlebot3_navigation2 navigation2.launch.py

rviz2が起動したら、上の2D Pose Estimateで初期位置を指定して以下の画面

rviz_screenshot_2021_03_09-20_26_27.png

  1. 左下UI画面のWaypoint modeをクリック

  2. 上のNavigation2 Goalで経由したいWaypointを順番に指定

  3. 右下UI画面のStart Navigationをクリックして実行

次は中継地点で止まるようにパラメータを変更
turtlebot3/turtlebot3_navigation2/param以下にある設定ファイルを編集
burgerを使っている場合burger.yamlに以下を追記

burger.yaml
waypoint_follower:
  ros__parameters:
    loop_rate: 20
    stop_on_failure: false
    waypoint_task_executor_plugin: "wait_at_waypoint"
      wait_at_waypoint:
        plugin: "nav2_waypoint_follower::WaitAtWaypoint"
        enabled: True
        waypoint_pause_duration: 1000

waypoint_pause_durationでロボットが停止できる時間を指定(単位はミリ秒)

こちらの動画でもWayPoint modeで動かす手順が紹介されています。

Navigation2 Waypoint Follower Tutorial (ROS World 2020)

参考

4
4
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
4
4