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をROSのコマンドで動かしてみる | トップページ | roombaテストプログラムのまとめ »

2013年4月 7日 (日)

roombaをpythonで動かしてみる

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

前回からの続き。roombaをpythonで作ったノードで動かしてみる。
roombaを前→後→左旋回→右旋回と動かし、それぞれでのx、y座標と旋回角をタイプさせる。
ノードrb_demoはチュートリアルで作ったbeginner_tutorialsパッケージに追加する。

■テスト用ノードの作成
・下記のファイルを~/fuerte_workspace/sandbox/beginner_tutorials/scriptsに保存
rb_demo.py
・端末を開きROSを初期化してから~/fuerte_workspace/sandbox/beginner_tutorialsに移動
・chmod +x scripts/rb_demo.pyで実行可能に
・makeする(よくわからないが最初に1回はこれが必要?)

■ノードのテスト
・前回同様roombaとroomba500_light_nodeをセットアップする。roombaは10センチほど前後進しその場で左右に方向転換するので、そのくらいのスペースがとれる場所に置く
・端末を開きROSを初期化してrosrun beginner_tutorials rb_demo.pyで実行
・ロボットは前に1秒、後ろに1秒、右旋回1秒、左旋回1秒したあと停止、ノードも終了する
・下記のようなメッセージが表示される
Moving the robot forward.
Stopped
POS X:0.135 POS Y:0.001 DIR:0.011
Moving the robot backward.
Stopped
POS X:0.010 POS Y:-0.003 DIR:0.026
Turning the robot left.
Stopped
POS X:0.012 POS Y:-0.002 DIR:0.345
Turning the robot right.
Stopped
POS X:0.012 POS Y:-0.002 DIR:0.030
Node exiting.

プログラムはロボットへのコマンドをパブリッシュし、ドライバからのオドメトリ情報をサブスクライブする。解説は次回。

« roombaをROSのコマンドで動かしてみる | トップページ | roombaテストプログラムのまとめ »

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

コメント

はじめまして。 私は工学院大学機械システム工学科4年の金(きむ)と言います。
このブログを参考にしてroomba500seriesをROSで動かそうと思っています。
花岡さんはpythonでプログラムされていますが、私はC++でやってみようと思ってます。
pythonでのやり方と同じようにC++でも動かせるのでしょうか。
また、C++で書いたプログラムをコンパイルするにはどうすれば良いのでしょうか。

質問ばかりで申し訳ありません。
よろしくお願いします。

コメントありがとうございます。残念ながら、いまのところC++でのパッケージ作成法についてはまったく知識がありません。ROSのチュートリアルにはC++でのパッケージの作成法がありますので、そちらを読まれることをお勧めします。

返信ありがとうございます!
C++で書くのは自分なりにやってみます。

お力になれずにスミマセン。がんばってください!

コメントを書く

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

トラックバック

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

この記事へのトラックバック一覧です: roombaをpythonで動かしてみる:

« roombaをROSのコマンドで動かしてみる | トップページ | roombaテストプログラムのまとめ »