Open11

Gazebo + Navigation2 (ROS 2 Foxy)

tiryohtiryoh

パッケージのインストール

必要なパッケージのダウンロード

$ mkdir -p ~/turtlebot3_ws/src
$ cd ~/turtlebot3_ws
$ wget https://raw.githubusercontent.com/ROBOTIS-GIT/turtlebot3/foxy-devel/turtlebot3.repos
$ vcs import src < turtlebot3.repos
$ rosdep install -r -y -i --from-paths src

ビルド

$ colcon build --symlink-install
tiryohtiryoh

Gazebo初回起動&動作確認

Gazeboで使用するモデルデータが多いと、初回はダウンロードのために起動に時間がかかる。

追加ダウンロードが必要なモデルが少ないempty_world.launch.pyをとりあえず起動して動作確認する。

$ source ~/turtlebot3_ws/install/setup.bash
$ export TURTLEBOT3_MODEL=burger
$ ros2 launch turtlebot3_gazebo empty_world.launch.py
tiryohtiryoh

Gazebo起動&SLAM(cartographer)(1/2)

端末起動時にsource ~/turtlebot3_ws/install/setup.bashを実行するか、.bashrcに記載しておく。

1枚目の端末

Gazeboの起動には時間がかかる場合がある。10分程度放置しても起動しなかった場合は再起動するとうまく行く場合もある。

$ export TURTLEBOT3_MODEL=burger
$ ros2 launch turtlebot3_gazebo turtlebot3_world.launch.py

2枚目の端末

$ export TURTLEBOT3_MODEL=burger
$ ros2 launch turtlebot3_cartographer cartographer.launch.py use_sim_time:=True

3枚目の端末

$ ros2 run teleop_twist_keyboard teleop_twist_keyboard
tiryohtiryoh

Navigation2

端末1枚目

Gazeboを再起動しておく

$ export TURTLEBOT3_MODEL=burger
$ ros2 launch turtlebot3_gazebo turtlebot3_world.launch.py

端末2枚目

$ export TURTLEBOT3_MODEL=burger
$ ros2 launch turtlebot3_navigation2 navigation2.launch.py use_sim_time:=True map:=$HOME/turtlebot3_ws/map.yaml