2015年8月20日木曜日

Gazeboの今更な紹介とMac OSX (10.10.4) にGazebo (Version 6) をインストール

gazebo_bigGazeboはROSを作っているOSRF(Open Source Robotics Foundation)が作っているオープンソースの汎用ロボットシミュレータです。ROSと連携しているので世界中のロボット研究者たちに使われています。



公式HPは

http://gazebosim.org/

です。



特徴としては
  • 複数のシミュレーションエンジンを切り替え可能(ODE, Bullet, Simbody, DART)
  • OGREを使ったきれいなレンダリング
  • センサ、ノイズをシミュレート
  • プラグイン方式
  • コマンドラインで操作できる
  • TCP/IP経由で操作できる
などがあります。

2015/07/27にVersion6がリリースされるなど、活発に開発が行われています。
Version6では
  • Windowsのサポート(Beta)
  • Oculus2サポート
などが取り込まれました。

その歴史は古く2002年から始まったようです。

同じOSRFなので、ROSとの連携もばっちりですが、先日リリースされたROS Jade Turtleでは Gazebo5.0が使われており、さっそくバージョンがひとつ前になってしまっています。

また、Indigoでは2.2が使われており、非常に古いです。Hydroに至っては1.9であり、すでにサポートは終了しています(ROS側もサポート終了しています)。

ROSと同じところが作っているのにGazeboは
  • ROSとは違うミドルウェア( Goolgeが作ったProtobufを利用)
  • ROSとは違うロボットモデル(SDF。ROSはURDF)
  • 独自のロボットライブラリIgnitionを持つ(http://ignitionrobotics.org/)
など、独立志向が強いのが面白いところです。

少し古くなってしまいましたが、日本語ではakioさんの資料が詳しいです。
http://www.slideshare.net/akio19937/1rosrosgazebo



ではMac OSX Yosemite(Macbook pro 13inch 2015)にインストールしてみます。

http://gazebosim.org/tutorials?tut=install_on_mac&ver=6.0&cat=install

1.howbrewのインストール

私はすでにインストールしてあるのでスキップしました。
以下のコマンドで入れられます。

  1. ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)"

2. XQuartzのインストール

MacでXWindowを使うための環境であるXQuartzが必要です。
私はすでにいれてあるのでスキップしました。

3. brewでGazeboと必要なライブラリをインストール

brew tap osrf/simulation
brew install gazebo6
gazebo

これで完了です。
コンパイルするのでしばらく時間がかかります。待ちましょう。

brewなどに慣れている人にとっては結構簡単ですね。まあ、Linuxのほうが楽ですが。
すでにOSXにROSを入れているプロの方は、Version6を入れるといろいろバージョン違いでコンフリクトするので気をつけましょう。

ここまでやってみて、おとなしくJadeに合わせてVersion5を使うのがいいと思いました。