2017年6月
        1 2 3
4 5 6 7 8 9 10
11 12 13 14 15 16 17
18 19 20 21 22 23 24
25 26 27 28 29 30  

カテゴリー

ブログパーツ

無料ブログはココログ

« roombaをゲームパッドで動かすパッケージを作る(2) | トップページ | 非接触温度センサアレイ・D6T-44L-06を試す »

2013年5月 4日 (土)

roombaをゲームパッドで動かすパッケージを作る(3)

ROSさんお手やわらかに:ROS入門編

roombaの位置と姿勢をrvizで視覚化する。rvizは移動ロボットのUIツールで、ロボットの位置や姿勢、カメラの視界、センサーの読み取り結果などを視覚化したり、移動経路の指示を出したりすることができるらしい。移動ロボット開発の強力なツールとなるようだ。

まず前回作ったrbjoy.pyにtfのブロードキャスターを追加する。
import tfを定義部に追加し、最後のrospy.spin()の代わりに、10Hzでroomba座標系をブロードキャストするスクリプトを追加する。完成したrbjoy.pyはこれ。

次にroomba_workディレクトリ直下のmanifest.xmlを修正し、tfの依存関係を追加する。

 <depend package="tf"/> 
を追加すればいい。


修正したらアプリケーションをローンチし、rvizを起動。
$ rosrun rviz rviz

roomba座標系を表示するには、
・画面左下AddボタンでTFをDisplaysウィンドウに追加
・同様にGridを追加して画面に床面をメッシュで表示(このほうが見やすい)
・Displaysウィンドウ一番上、Global OptionsのFixed Frameのプルダウンから/Worldを選択(World座標系からのビューを設定)

これで中央にworld座標系原とroomba座標系の原点が表示される。表示画面をマウスドラッグで視点の変更、スクロールホイールでズームできる。

Rviz_screenshot_2013_05_0408_58_14

ゲームパッドでroombaを動かすと画面上のroomba座標系も動く。この画面で見るかぎり、オドメトリはかなり正確だ。

このへんまで来ると、ROSの底力がじんわりと解ってくる。次はマップまわりを試してみたいが、ひとまず「ROS入門編」はここでおしまい。

« roombaをゲームパッドで動かすパッケージを作る(2) | トップページ | 非接触温度センサアレイ・D6T-44L-06を試す »

ROSさんお手やわらかに」カテゴリの記事

コメント

コメントを書く

(ウェブ上には掲載しません)

トラックバック

この記事のトラックバックURL:
http://app.f.cocolog-nifty.com/t/trackback/1140145/51484169

この記事へのトラックバック一覧です: roombaをゲームパッドで動かすパッケージを作る(3):

« roombaをゲームパッドで動かすパッケージを作る(2) | トップページ | 非接触温度センサアレイ・D6T-44L-06を試す »