Turtlebotパッケージのインストールと動作確認(Kinetic)

目的

Turtlebot2を動かすためにパッケージをインストールし,動作を確認します.

パッケージのインストールと設定

Turtlebot2及びKinect v1を動かすためのパッケージをインストールします.ROSのディストリビューションによってインストールするパッケージが異なるため注意してください.なお,以降はROS Kineticをインストールしているものとして話を進めます.

$ sudo apt update

上記のコマンドで「署名が無効です:KEYEXPRED XXXXXXXX」というエラーが出た場合には,下記のキーの更新を行ってから作業してください.

$ sudo apt-key del 421C365BD9FF1F717815A3895523BAEEB01FA116
$ sudo -E apt-key adv --keyserver 'hkp://keyserver.ubuntu.com:80' --recv-key C1CF6E31E6BADE8868B172B4F42ED6FBAB17C654

下記の手順で必要なパッケージをインストールしましょう.

$ sudo apt install ros-kinetic-turtlebot ros-kinetic-turtlebot-apps ros-kinetic-turtlebot-interactions ros-kinetic-turtlebot-simulator ros-kinetic-kobuki-ftdi ros-kinetic-ar-track-alvar-msgs ros-kinetic-freenect*
$ . /opt/ros/kinetic/setup.bash
$ rosrun kobuki_ftdi create_udev_rules
$ source ~/.bashrc
安全の確保

ロボットを動かす際には,必ず下記の点に注意してください.

  • 衣服の巻き込み等に対応できる服装を着用すること
  • ロボットを持ち上げて運ぶ際には,不安定な部分を持たないこと
  • ロボットを動かす際には周りに声を掛けること
  • ロボットを動かす場合には可動範囲を予想し,その範囲に人や不要な物がないことを確認すること
  • ロボットが予想外の動きをした場合には,即座に停止させること
  • ロボットが異音,発熱,不審な挙動をした場合には,即座にロボットを停止させ,教員に連絡すること
  • 教員の指示に従うこと
デモンストレーション

いよいよTurtlebotを動かします.

0. 起動の準備

Turtlebotの上にノートPCを載せましょう.動いているTurtlebotが停止すると,反動でノートPCが落ちてしまう可能性があるため,機体の真ん中に載せましょう.不安定ならば滑り止めシート等を利用してください.そして,ノートPCとTurtlebotをUSBケーブルによって接続します.Turtlebot及びKinectの2本USBケーブルがありますので両方ともノートPCに接続します.

次にTurtlebotの電源をONにします.電源ボタンは機体の側面にあります.電源をONにすると,音が鳴ると共にStatus LEDが点灯します.

最後に端末に下記を入力します.

$ roslaunch turtlebot_bringup minimal.launch

上記を実行するとTurtlebotから電子音が鳴ります.Turtlebotが動作するための様々なノードが立ち上がります.Turtlebotを動かす際には,必ず上記を実行する必要が有ります.

1. ダッシュボード

Turtlebotとの通信状態を確認するためのlaunchファイルが用意されています.

roslaunch turtlebot_dashboard turtlebot_dashboard.launch

正常に起動したら左上の3つのアイコンが緑色になります.赤色や灰色の場合には,Turtlebotとの接続ができていない,もしくはTurtlebotとの通信ができていないことを表しています.USBケーブルが正常に接続できているか,roslaunchでminimal.launchを実行したかを確認してください.

次に,Turtlebotの状態を確認するために,左上の3つ並んだアイコンの中から一番左のアイコンをクリックします.そして,Turtlebotのバンパーを押してください.下記のようにメッセージ欄に「Wall Hit!」が出力されます.他にも,どのようなメッセージを受け取れるか試してみましょう.

turtlebot_dashboard

2. キーボードによる操作

turtlesimと同様に,キーボードによる操作するパッケージが用意されています.

$ roslaunch turtlebot_teleop keyboard_teleop.launch

端末に操作方法が出力されます.こちらを見て操作してみましょう.

3. Kinect

Turtlebotにはmicrosoftから販売されているKinectが搭載されています.kinectは,可視光画像と距離画像を取得できるカメラです.kinectから画像を取得し,表示してみましょう.
まずは,パソコンとkinectの通信をするために,下記を実行します.

$ roslaunch freenect_launch freenect.launch

Kinectが利用可能になったら下記のコマンドで画像ビューアーを立ち上げましょう.

$ rosrun rqt_image_view rqt_image_view

ウィンドウが立ち上がるので,GUIから表示したい画像トピックを選択してください.カラー画像は/camera/rgb/image_color,距離画像は/camera/depth/imageとなります.