Arduino互換のVS-RC202を使えば、最先端のロボット制御環境にだって触れることができます。今回はロボット制御ミドルウェア「ROS」を使って、VS-RC202を制御する方法についてご紹介します!
VS-RC202のご購入はコチラ!→ https://goo.gl/U4PZMG

こんにちは、以前購入したゲームをまだクリアしていないのに、もう次のゲームを買ってしまったmorimoriです。

皆さんは「ROS」というものをご存知でしょうか? Ubuntu上で動作するロボット制御ミドルウェアである「ROS」は、複雑なロボットの制御に適した基本設計や、大量のライブラリの恩恵により、ロボット制御プログラムの開発を容易に行えるという特徴があります。研究用を中心に、人型ロボットから車両型ロボット、ドローンに船舶ロボットまで、様々なロボットの基幹制御システムとして世界的に広く利用されています。ソニーのaiboもROSを使って制御されているようですよ。

ROSを使えば、カメラを使った画像解析の結果によって、VS-RC202を制御ボードとするロボットを動作させるといったことが可能になります。ROSを使っても、VS-RC202の便利な制御ライブラリはそのまま使用できますから、「これからROSを触ってみたい」という方にはピッタリかもしれません。

ROSで制御するVS-RC202のサンプルとして、サーボモータとカメラを使ったパンチルトカメラの作例を用意しました。作例自体の紹介は次回にするとして、今回はROSによる制御に必要な下準備について説明します。

VS-RC202をROSから制御するための手順は以下の通りです。
動画よりも少しだけ詳しくご紹介してます。

①ROS Wikiのチュートリアル(http://wiki.ros.org/ROS/Tutorials )に従い、UbuntuにROSをインストールします。チュートリアルには日本語版(http://wiki.ros.org/ja/ROS/Tutorials )もありますが、少なくともインストールに関する項目の情報は古いです。チュートリアルをこなして、catkinなど、開発環境を一通り整備してください。チュートリアルを通じてROSトピックとメッセージ通信について理解できれば、この後がスムーズです。

②VS-RC202とROS間の通信はシリアル通信で行います。対応するパッケージ「rosserial」をセットアップしましょう。rosserialを用いることでVS-RC202をROSトピック通信に組み込むことができます。ROS wikiにチュートリアル(https://goo.gl/te8GxY )が存在します。Arduino IDEはWindows版でも大丈夫です。

③Arduino IDEでROSに対応したVS-RC202のプログラムを作成し、ダウンロードしましょう。初めての方は、パンチルトカメラの作例(https://goo.gl/8YfVMR )や、rosserialのチュートリアルを参考にされるとよいかもしれません。

④VS-RC202をPCに接続し、rosserial_pythonを用いて通信します。詳しいやり方はROS wiki(https://goo.gl/48FGXz )で解説されています。デバイス名(/dev等で確認)に注意しましょう。パーミッションエラーが出た場合は、chmodを使って666の権限を付与します。

長くなりましたが、これにてVS-RC202をROSから制御するための環境整備は終了です。
あとは、ROSの自由度の高さを活かして、あなたの夢を実現しましょう!