この記事は私が金沢工業大学ロボティクス学科で担当している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. 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を起動した端末上になければ動かないので注意。
お疲れ様!
終わり
コメント