2023年4月
            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            

カテゴリー

ブログパーツ

無料ブログはココログ

« ノードを使ってみる | トップページ | 【昔語り1】ヒューレットパッカードの16進表示LED »

2012年12月17日 (月)

ROSの「トピック」について

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

前から気になっていたubuntuのドネーション、ようやく払うことができた。もっとも最低の16ドルだけど。
Paypalをしばらくぶりにのぞいたら、登録システムが変更になっており、100万円まではクレジットカードを登録するだけで送金できるようになっていた。以前は、本人確認のためクレジットカードに1ドルがチャージされ、これの明細にあるコードをPaypalに送ると初めてアカウントが有効になるともに1ドルが返却されるようになっていた。僕の場合は、なぜかこれがチャージされず、アカウントはあるものの送金できない状態のままだったのだ。なお、リミットを解除するためには身分証明書のスキャン画像をPaypalに送ればいいようだが、そんな大金を使う予定はないので、このままでいこう。

さて、例によってちんたら進んでいるROS入門だが、いよいよ(?)トピックのハナシに突入だ。こんなペースで年明けには自分でプログラムを作れるようになるんだろうか? 

今回はチュートリアルのこのページに添って試していく。前回試したturtlesimを実際に動かしてみるようだ。

まず、下記にしたがってroscoreを起動
・端末を開く
・下記を実行して環境変数を設定
source ~/fuerte_workspace/setup.bash
export ROS_HOSTNAME=localhost
export ROS_MASTER_URI=http://localhost:11311
・下記でroscoreを起動
roscore

次にturtlesimを起動
・端末を開く
・下記でturtlesimを起動
rosrun turtlesim turtlesim_node

もう一つ、turtlesimにコマンドを送る端末を起動
・端末を開く
・下記でテレオペレーションを起動
rosrun turtlesim turtle_teleop_key

最後の端末にカーソルを置いたまま、キーボードの矢印キーを操作するとturtlesim画面のカメをリモコンすることができる。ROSの仕組みを利用してコマンドが送られているのだ。ここまでのところで画面はこんな感じになっている。
Screenshot_from_20121216_233149

シンプルな実験だが、ROSでのアプリケーションの体裁がよくわかる。turtlesim_nodeと言うノードにturtle_teleop_keyと言うノードがメッセージを送るよう接続されている。このメッセージをやりとりする接続を「トピック」と言うらしい。

turtle_teleop_keyはトピックを通じて、矢印キーの状態を「発行」し、turtlesim_nodeはこれを「引用」することでシミュレータ上のカメを動かすということか。

この関係をグラフィカルに表示するパッケージがrqt_graphだ。新しい端末を開き、まず下記でパッケージをインストールする。

sudo apt-get install ros-fuerte-rqt

これを実行したら、「いくつかのアーカイブが取得できません。apt-get update を実行するか --fix-missing オプションを付けて試してみてください。」というメッセージが出た。そこで下記を実行。

sudo apt-get update

その後、もう一度先のコマンドを実行したら正常終了した。下記のコマンドでノードを起動する。

rosrun rqt_graph rqt_graph

下記のようにノード間の接続状態が表示される。丸で囲まれているのがノードで矢印がトピックだ。
これをみると/teleop_turtleがturtle_teleop_keyのことのようだが名前が違うのはなぜだろう? まあ、これもそのうちわかってくるだろう。

Screenshot_from_20121217_002849


« ノードを使ってみる | トップページ | 【昔語り1】ヒューレットパッカードの16進表示LED »

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

コメント

コメントを書く

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

トラックバック


この記事へのトラックバック一覧です: ROSの「トピック」について:

« ノードを使ってみる | トップページ | 【昔語り1】ヒューレットパッカードの16進表示LED »