LoginSignup
3
5

More than 3 years have passed since last update.

ROSをUnityとつなぐ その1 rosbridge_serverをセットアップする

Posted at

UnityとRaspberry Pi上のROSをつなぐには?

ROS#というUnityで動くROSのC#で書かれたコネクタがあるようだが、そのためにはWebSocket経由でROSのパケットを外部とやり取りするrosbridge_serverをセットアップしなければいけない。
だが、インストール方法の説明が、OSのパッケージマネージャーを使う方法しかなく、自前でビルドしたROS環境での方法が説明されていない。
本稿ではソースからビルドして動かした過程を記載する。

rosbridgeの取得

Githubからクローンする。
ワークスペースのsrcフォルダで、クローンする。

$ git clone https://github.com/RobotWebTools/rosbridge_suite.git

手動で依存関係解決してビルド

これで、catkin_makeすればいいかと思いきや、足りないものがいくつかあるので、手動で依存関係を解決していく。

$ git clone https://github.com/ros/common_msgs.git

そしてビルド。ワークスペースのルートで。

$ catkin_make

実行すると、今度はPythonのライブラリがないといわれる。
仕方がないので、さらに手動で依存関係の解決。最初はpipさえ入っていなかったので、インストール。

$ sudo apt install python-pip

必要なPythonのライブラリなどをインストール

$ sudo pip install twisted
$ sudo apt install libffi-dev
$ sudo pip install pyopenssl
$ sudo pip install autobahn
$ sudo pip install service_identity

さらに、rosauthがないといわれるので、

srcで、

$ git clone https://github.com/GT-RAIL/rosauth.git

ワークスペースのルートで

$ catkin_make

さらに、まだ足りないといわれるので、

$ sudo pip install tornado
$ sudo pip install pymongo

なお、pymongoは、BSONが必要だったので、bsonをpipでインストールしたところ、エラーで動かず、調べたところ、このような記載を見つけたので、代わりにインストールした。

ここまででやっと実行できるようになった。

実行

$ roslaunch rosbridge_server rosbridge_websocket.launch

やったー

動いた

2019-12-15 17:19:54+0000 [-] [INFO] [1576430394.149245]: Rosbridge WebSocket server started at ws://0.0.0.0:9090
3
5
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
3
5