ROS演習3-2018:シミュレータでTurtlebot3を動かそう!

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

0.準備

(1) VirtualBoxの場合
3Dアクセラレーション無効化。
VirtualBox->設定->ディスプレイ->3Dアクセレーション有効化のチェックを外す。
この作業をしてからVirtualBoxを起動しないとシミュレータを起動できません。

(2)  WSL(Windows Subsystem for Linux)の場合
ROS演習1-2018で実施したように、Xサーバーを起動する。

1. 設定

~/.bashrcの最後の7行をgeditなどを使って以下のように設定し保存する。

(1) VirtualBoxの場合

(2) WSLの場合

2.  Turtlebot3 リモートPC用のパッケージインストール
まず、Turtlebot用のパッケージをインストール。端末を開き、次のコマンドを実行。2番目は長いのでコピペする。$はコマンドプロンプトなので入力しない。

$ sudo apt update
$ sudo apt upgrade

$  sudo apt-get install ros-kinetic-joy ros-kinetic-teleop-twist-joy ros-kinetic-teleop-twist-keyboard ros-kinetic-laser-proc ros-kinetic-rgbd-launch ros-kinetic-depthimage-to-laserscan ros-kinetic-rosserial-arduino ros-kinetic-rosserial-python ros-kinetic-rosserial-server ros-kinetic-rosserial-client ros-kinetic-rosserial-msgs ros-kinetic-amcl ros-kinetic-map-server ros-kinetic-move-base ros-kinetic-urdf ros-kinetic-xacro ros-kinetic-compressed-image-transport ros-kinetic-rqt-image-view ros-kinetic-gmapping ros-kinetic-navigation ros-kinetic-interactive-markers


$ cd ~/catkin_ws/src/
$ git clone https://github.com/ROBOTIS-GIT/turtlebot3_msgs.git
$ git clone https://github.com/ROBOTIS-GIT/turtlebot3.git
$ cd ~/catkin_ws
$ catkin_make

3. シミュレータのインストール

$ cd ~/catkin_ws/src/
$ git clone https://github.com/ROBOTIS-GIT/turtlebot3_simulations.git
$ cd ~/catkin_ws
$ catkin_make

 

4. rvizの起動

端末を開き次のコマンドを実行

$  export TURTLEBOT3_MODEL=burger
$  roslaunch turtlebot3_fake turtlebot3_fake.launch

別の端末を開き、次のコマンドを実行

$  export TURTLEBOT3_MODEL=burger
$ roslaunch turtlebot3_teleop turtlebot3_teleop_key.launch

演習1で実施したようにキーボードでROSの視覚化ツールrviz上でturtlebot3を動かせます。動かしてみましょう!

毎回、export TURTLEBOT3_MODEL=burgerと入力するのは手間がかかるので、geditで.bashrcの最後の行に以下を追加する。
export TURTLEBOT3_MODEL=burger

5.  Simulator GAZEBOを動かそう

$ export TURTLEBOT3_MODEL=burger
$ roslaunch turtlebot3_gazebo turtlebot3_empty_world.launch

初回はネットからモデルを取得するので、私の環境で5分程度かかった。しばらくすると次のようなウインドウが開く。下のロボットがturtlebot3。
別の端末を開き、次のコマンドを入力するとキーボードからロボットを操縦するためのlaunchファイルを起動。
$  roslaunch turtlebot3_teleop turtlebot3_teleop_key.launch

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

お疲れ様!

終わり

コメント

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