VS-RC003をROSに対応させてみた。 #02


先日公開したVS-RC003を制御するROSパッケージですが、使い勝手の面から再度大幅に作り直して、更新してみました。

ROSからVS-RC003をシリアル経由で制御するパッケージ

https://github.com/dreamdrive/ros2vsrc

ポイントとしては、カスタムメッセージを定義することで、以前のVSRCの専用コマンドを使うのではなく、VsrcStateとVsrcControlというメッセージを用いて情報をやりとりする形に変更しました。

それぞれ、メッセ―ジの中身は下記の通りです。

定義自体は、非常にわかりやすい思いますので、rqt_ez_publisherなどのテストツールからでも、視覚的に分かる形で動作テストが可能かと思います。

上位のノードを作成するときも、VSRCの専用コマンドの知識がなくてもノード作成できるように、という配慮からの仕様変更です。
おそらく自分自身も時間が経つと忘れてしまうと思いますので(笑)

あと、コントローラーを使った遠隔操縦も出来るよう、”vsrc_connect2″に対応した、”vsrc_control2″も更新しました。
Xbox360のコントローラーに合わせて作っていますが、こちらもVSRCの専用コマンド の知識を必要としないので、その他コントローラーの対応もやりやすくなったと思います。

こんな感じで接続して使ってみてください。
LAN経由で遠隔操縦も可能です。

GitHub上には、従来の vsrc_connectも残していますが、 vsrc_connect2を使っていただくのが良いです。まぁ、使ってくれる人がいれば…の話ですケドね。
西側にユーザーの多いV社のボード使ってる人たちが、ROSを使い始めるきっかけにならないかなーとか。

とりあえずは、ROBO-ONE autoをやるのに、 機体側のROS対応は準備が整ったかなーという感じです。
ちなみに、 KONDOのRCB3HVのROS対応はholypongさんが取り組まれてるようです。

レギュレーションでは、KHRとレフェリー(人間)の識別なので、 “レフェリーとKHRの識別のノード”なんて出来たら、共通して使えそうですね。ROSの魅力って、こうやってリソースを共有できることだと思うんですが、いかがでしょう。

ROBO-ONE auto、なかなかハードルが高い&ハードルが多数あるので、オープンに取り組めたら面白いんじゃないかなー、とか思ったりします。
一方で「競技会」ってことを考えたら難しいのかなー。

コメントを残す

メールアドレスが公開されることはありません。 が付いている欄は必須項目です

このサイトはスパムを低減するために Akismet を使っています。コメントデータの処理方法の詳細はこちらをご覧ください

アーカイブ

広告

Top