ROS2演習4-2021:シミュレータでTurtlebot3を動かそう!

この記事は私が金沢工業大学ロボティクス学科で担当している2020年度後学期に担当したロボットプログラミングⅡをROS2用に変更したものです。今回は、シミュレータGAZEBOを使い、Turtlebot3を動かします。次のTurtleBot3 e-Manualを参考にしています。

1. 準 備

  • これからの演習で必要になるパッケージを次のコマンドでインストールします。
    • Gazeboのインストール
      • $ sudo apt install gazebo11 ros-foxy-gazebo-ros-pkgs
    • Cartographerのインストール
      • $ sudo apt install ros-foxy-cartographer
      • $ sudo apt install ros-foxy-cartographer-ros
    •  Navigation2のインストール
      • $ sudo apt install ros-foxy-navigation2
      • $ sudo apt install ros-foxy-nav2-bringup
    •  Turtlebot3関連パッケージのインストール
      • $ source ~/.bashrc
      • $ sudo apt install ros-foxy-dynamixel-sdk
      • $ sudo apt install ros-foxy-turtlebot3-msgs
      • $ sudo apt install ros-foxy-turtlebot3
      • $ cd ~/colcon_ws/src
      • $ git clone -b foxy-devel https://github.com/ROBOTIS-GIT/turtlebot3_simulations.git
      • $ cd ~/colcon_ws
      • $ colcon build --symlink-install

2. 設 定

geditを使って~/.bashrcの最後(124行)に次の1行を追加して保存する。exportは環境変数を設定するコマンド。ここでは、TURTLEBOT3_MODELをburgerに設定している。なお、上の準備でインストールしたTurtlebot3パッケージには、ロボットがburger、waffle、waffle_piの3種類ある。ここでは、一番シンプルなburgerを選択する。burgerは私の研究室にも3台ある。

  • export  TURTLEBOT3_MODEL=burger

  • 設定を反映するためにsourceコマンドを実行する。
    • $  source ~/.bashrc

3.  Simulator GAZEBOを動かそう

次のコマンドでROS2のシミュレータGazeboを起動する。

  • $ ros2 launch turtlebot3_gazebo empty_world.launch.py

初回の起動はネットからモデルを取得するので、私の環境で5分程度かかった。しばらくすると次のようなウインドウが開く。図の青い円はLIDARが到達する範囲を示している。シミュレータの環境がempty_worldだけにロボット以外は何も存在しない環境である。格子が1辺1mなのでBurgerが搭載しているLIDARは3.5m届く。マウスでドラッグするとシミュレータの視点を変えることができる。下の画面が拡大してBurgerを表示したもの。実際のBurgerよりモデルが単純化されているのは残念。

  • 左マウスボタンをドラッグ:視点の平行移動
  • マウスホイールをスクロール/右マウスボタンをドラッグ:拡大、縮小
  • マウスホイールをドラッグ:視点の回転

次に、別の端末を開き、次のコマンドを入力するとキーボードからロボットを操縦するためにturtlebot3_teleopパッケージのteleop_keyboardノードを起動する。

  • ros2 run turtlebot3_teleop teleop_keyboard

端末に下のように表示される。w a s d x キーでロボットを操作できる。いずれかのキーを押してロボットを動かそう!マウスのカーソルがturtlebot3_teleop_key.launchを起動した端末上になければ動かないので注意。

  • w:前進。増速
  • a:左回転。増速
  • s/スペースキー:ストップ
  • d:右回転。減速
  • x:後進。減速。

お疲れ様!

コメント

Folding@home Kanazawa (ID 257261)

みんなのためにおうちで新型コロナウイルスを解析しよう!

タイトルとURLをコピーしました