Twitterのタイムラインでたまたまアナウンスを見かけた、4/12に東京で開催された第1回ROS勉強会に参加したことを契機に、最近ROS(Robot Operating System)の勉強を始めました。昨年末、国際ロボット展で発表しましたカワダロボティクスのROS対応ロボット、NEXTAGE OPENが社内にあるので、勉強環境としてはかなり理想的です。実益を兼ねて、基礎からROSの公式Wikiのチュートリアルを追いながら、少しずつ研鑽を重ねていっています。

NEXTAGE OPEN

5/16の第2回ROS勉強会カワダロボティクスに新たに出来たオープンスペース、Cobotパーラーで開催されることとなり、僕がNEXTAGE OPENのROSインタフェースに関する説明を行う予定でいます。ROS初学者の僕が説明を行うということで、なんともおこがましい感じがしますが、説明後にはNEXTAGE OPENを使った半日間のハッカソンも予定されているので、この説明がハッカソンの成功の命運を担っているといえます。精一杯頑張らないといけません。せっかくなので、今回の勉強の軌跡をここで共有していき、説明資料の下書きとして使っていこうと思っています。

さて、今回はROS勉強記第1回ということで、まずは肩慣らしにROS環境のセットアップと、NEXTAGE OPENのROS対応ソフトウェアのインストール手順をまとめます。OSはUbuntu 12.04、ROSはHydroを想定しています。

ROS環境セットアップ

基本的に公式Wikiどおり進んでいけば、問題ありません。ROS関連パッケージが全部インストールされるros-hydro-desktop-fullをインストールしておくことをおすすめします。

$ sudo sh -c 'echo "deb http://packages.ros.org/ros/ubuntu precise main" > /etc/apt/sources.list.d/ros-latest.list'
$ wget http://packages.ros.org/ros.key -O - | sudo apt-key add -
$ sudo apt-get update
$ sudo apt-get install ros-hydro-desktop-full

パッケージのインストールが終了したら、下記コマンドを実行してください。自分で開発したソースのコンパイルなどで必要となる依存関係のセットアップが行われます。

$ sudo rosdep init
$ rosdep update

最後に、.bashrc もしくは .zshrc にROSの環境変数を追加するコマンドを追記して完了です。

bashユーザ

$ echo "source /opt/ros/hydro/setup.bash" >> ~/.bashrc
$ source ~/.bashrc

zshユーザ

$ echo "source /opt/ros/hydro/setup.zsh" >> ~/.zshrc
$ source ~/.zshrc

NEXTAGE OPENのROS対応ソフトウェアのインストール

NEXTAGE OPENのROS対応ソフトウェアは東京大学JSK研究室東京オープンソースロボティクス協会(TORK)を中心としてオープンソースで開発が進められています。

インストール方法は、英語では詳しく記述されていますので、以下は日本語での情報としてご活用ください。まず apt-get で関連パッケージをインストールします。

$ sudo apt-get install ros-hydro-rtmros-nextage ros-hydro-rtshell

次に、.bashrc もしくは .zshrc にシミュレータの起動などに使うコマンドのエイリアスを追加するコマンドを追記してください。

bashユーザ

$ echo "source `rospack find openrtm_tools`/scripts/rtshell-setup.sh" >> ~/.bashrc
$ source ~/.bashrc

zshユーザ

$ echo "alias rtmlaunch='`rospack find hrpsys_ros_bridge`/scripts/rtmlaunch'" >> ~/.zshrc
$ echo "alias rtmtest='`rospack find hrpsys_ros_bridge`/scripts/rtmtest'" >> ~/.zshrc
$ source ~/.zshrc

動作確認

さて、インストールは完了したはずです。動作確認として、NEXTAGE OPENのシミュレータを起動してみましょう。

$ rtmlaunch nextage_ros_bridge nextage_startup.launch

以下の動画の右半分のように、NEXTAGEの3次元モデルが描画されれば、動作確認は成功です。第2回勉強記からは、シミュレータの使い方、実機との接続、ROSインタフェースなどのお話をしていく予定です。乞うご期待。

追記事項

ちなみに、今回書いたパッケージ名やコマンド名の部分を、「nextage」から「hironx」に変更すると、NEXTAGE OPENではなく、HIRONXのパッケージがインストールできます。