2023年3月
      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 31  

カテゴリー

ブログパーツ

無料ブログはココログ

« 1/8になったのかな | トップページ | Navigation stack関連の資料を和訳する »

2014年7月 7日 (月)

URGデータを作ってみる

ROSさんお手やわらかに:ROS青雲編

ここまで来たのなら、Hanabot1に測距センサを載せてturtleBotのようにROSで使えるロボットにしたい。

センサのデータはオリジナルのデータフォーマットを作らずに、sensor_msgs/LaserScanの形で流すようにしたい。これなら、rvizでモニタできるので、開発が楽だ。

試しに、ダミーのLaserScanデータを作成するdmylaser.pyと、これをちょっとばかりオフセットしてTFに設定するtesttf.pyを作ってrvizで見てみた。(この辺を参考に)hanabotパッケージのフォルダに二つのファイルを置いて、rosrunで起動するだけだ。

dmylaser.py

testtf.py

Dmylaser

ちっぽけな点々がダミー障害物の位置だ。これはdmylaser.pyの

laser.ranges = [0.5, 0.6, 0.7, 0.8, 0.9, 1.0, 1.1, 1.2, 1.3, 1.4, 1.5]

で、値を設定している。単位はmだ。まだデータの数と方向が思ったようになっていないが、ともあれこんな感じでデータを作れば、レーザースキャナ(URG)よりずっと測定点が少ないセンサでも、データを送れることがわかった。

ただ、レーザースキャナのようにスピーディにマッピングができるわけではないだろう。測定点がすくないのだから。

« 1/8になったのかな | トップページ | Navigation stack関連の資料を和訳する »

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

コメント

roombaにpythonでバッテリー情報などを取得するために,センサーのコマンドを送信したのですが,どのようにしたら受信した情報を見ることができるか分かりますでしょうか?
 

ブログオーナーのササガワです。
簡単には、センサ読み出しコマンドを送信した後、read(センサーデータのバイト数)でroombaから送られてくるセンサーデータをすべて読み込むとよいのではないかと思います。これだと、シリアル受信バッファにデータが残っていると、うまく受信できないので、センサ読み出しコマンドの前に、flushInput()で受信バッファをクリアしておくと安心でしょう。試した訳ではありませんのでトライしてみてください。

ありがとうございます^_^

ser.readlinesと言うのを使ったら16進数の値を取ることができました。

これからルンバのログ取得システムを構築していきたいと思います(。・ ω<)ゞ

コメントを書く

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

トラックバック


この記事へのトラックバック一覧です: URGデータを作ってみる:

« 1/8になったのかな | トップページ | Navigation stack関連の資料を和訳する »