Help us understand the problem. What is going on with this article?

Navigation Stack を理解する - 2.1 move_base: ROSで遊んでみる

More than 3 years have passed since last update.

目次

  1. 導入
  2. move_base (ナビゲーション)
    1. ROSで遊んでみる ← いまココ
    2. ソフトウェア構成をみる
  3. amcl (自己位置推定)
    1. ROSで遊んでみる
    2. ソフトウェア構成をみる
    3. 原理をみる (準備編)
    4. 原理をみる (応用編)
  4. gmapping (地図生成)
    1. ROSで遊んでみる
    2. ソフトウェア構成をみる
    3. 原理をみる(応用編)
    4. 原理をみる(準備編 その1)
    5. 原理をみる(準備編 その2)

はじめに

本節ではNavigation Stack の親分的存在である,move_base について記述します.ソフトウェア構成内の位置づけとしては,下記の図に示すとおりです.

  • ROS Wiki の図中
    00_位置づけ1.png

  • 導入部で示したパッケージの図中
    00_位置づけ2.png

環境

Husky Move Base Demo について

move_base を使ってナビゲーションを行います.ただし,自己位置推定は動作モデルによるオドメトリのみに頼るものです.したがって,このチュートリアルでは,外乱によってオドメトリに誤差がのってもそれをリカバーする手段はありません.とにかく,まずはナビゲーションとはどんなものかを体感するために必要な最低限の要素で構成されたチュートリアルとなっています.まずはここから,という感じですね.

00_位置づけ3.png

ROSで遊んでみる

というわけで,とりあえず遊んでみましょう.

インストール

チュートリアルに従って淡々と.

$ sudo apt-get install ros-indigo-husky-navigation ros-indigo-husky-gazebo ros-indigo-husky-viz

各種launch ファイルの実行

i. Husky シミュレータの起動(gazebo)

$ roslaunch husky_gazebo husky_playpen.launch

01.png

ii. ビジュアライザの起動(rviz)

$ roslaunch husky_viz view_robot.launch

地図も無く,ロボットにとっての頼みの綱はオドメトリのみです.従って,ワールド座標系の原点は /odom フレームとしておきます.初期状態では,/odom フレームと /base_link フレームは一致しています.
02_rviz.png

iii. move_base の起動

$ roslaunch husky_navigation move_base_mapless_demo.launch

これで,ナビゲーションが可能な状態となります.

ナビゲーションを体感する

とりあえず目標位置を指定して,ロボットがその通りに動くか確認してみます.

  1. rviz 上部にある「2D Nav Goal」というボタンをクリックします.
  2. フィールド上の任意の位置でマウス左ボタンを押下すると目標位置が決まります.そのままドラッグして目標姿勢を定め,ボタンを上げます.

03_rviz_goal.png

すると,ロボットが動き始め,指定した通りの位置・姿勢になるまで動き続ける様子を確認できます.
04_rviz_goal_reach.png

おわりに

これで遊んでいるだけで結構お腹いっぱい(?)かもしれませんが,次項でもう少し中を見てみようと思います.

Next: 2.2 move_base: ソフトウェア構成をみる
Prev: 1. 導入

参考文献

  1. S Thrun, et al., "Probabilistic Robotics", the MIT Press, 2005.
  2. 原, "ROSの活用による屋外の歩行者空間に適応した自律移動ロボットの開発", ロボット工学セミナー, 2015.
  3. ROS Wiki.
  4. "ros-planning/navigation", github.
  5. "husky_navigation", github.
MoriKen
ロボット研究者を目指す社会人博士です。ぶっちゃけ、へっぽこソフトしか書けませんが頑張ります。
http://lab.cntl.kyutech.ac.jp/~nishida/
Why not register and get more from Qiita?
  1. We will deliver articles that match you
    By following users and tags, you can catch up information on technical fields that you are interested in as a whole
  2. you can read useful information later efficiently
    By "stocking" the articles you like, you can search right away
Comments
No comments
Sign up for free and join this conversation.
If you already have a Qiita account
Why do not you register as a user and use Qiita more conveniently?
You need to log in to use this function. Qiita can be used more conveniently after logging in.
You seem to be reading articles frequently this month. Qiita can be used more conveniently after logging in.
  1. We will deliver articles that match you
    By following users and tags, you can catch up information on technical fields that you are interested in as a whole
  2. you can read useful information later efficiently
    By "stocking" the articles you like, you can search right away
ユーザーは見つかりませんでした