はじめに
今回は,ROS2の環境にGazeboをインストールしていきます.
Gazeboには,2002年にリリースされたGazebo Classic(写真左)と,2019に導入され,混乱を招いたGazebo Ignition(写真右)の大きく2種類があります.
今後,Ignitionに少しずつ移行されていくと思いますが,まだまだ資料が少なかったり,ネットや書籍,関連するパッケージが対応しきれていないのでGazebo Classicを使いたい場面も多いです(違いは以下の記事を参考にしてください!).
今回は簡潔にそれぞれのインストール方法をまとめていきます.
実行環境
OS: Ubuntu 22.04
ROS: Humble
Gazebo Ignition
新しいバージョンのROSではIgnitionのインストールが推奨されています.インストール方法は公式のドキュメントに従えば問題なくできます.
試しに,Ubuntu 22.04環境にGazebo Harmonicを入れるとすると,
sudo apt-get update
sudo apt-get install lsb-release wget gnupg
sudo wget https://packages.osrfoundation.org/gazebo.gpg -O /usr/share/keyrings/pkgs-osrf-archive-keyring.gpg
echo "deb [arch=$(dpkg --print-architecture) signed-by=/usr/share/keyrings/pkgs-osrf-archive-keyring.gpg] http://packages.osrfoundation.org/gazebo/ubuntu-stable $(lsb_release -cs) main" | sudo tee /etc/apt/sources.list.d/gazebo-stable.list > /dev/null
sudo apt-get update
sudo apt-get install gz-harmonic
上記のコマンドをそれぞれ打ち込み,gz sim
でシミュレータが動いたら完了です.
ROSのバージョンとIgnitionの対応関係は以下のようになっています.
Gazebo Classic
Humbleのような新しいROSの環境にもClassic版を入れたい時があります.導入方法は以下の公式の手順を参考にします.
ここで注意なのが,公式ドキュメントにある通り,Ubuntu 22.04ではamd64アーキテクチャしか対応していません.そのため,PPAのもので代用します.
MacやJetsonなど,armアーキテクチャを使用している方はGazeboをインストールする前に,
sudo add-apt-repository ppa:openrobotics/gazebo11-non-amd64
sudo apt update
を打ち込んでおきます.
それでは,Gazebo Classicを入れていきます.手順としては,
curl -sSL http://get.gazebosim.org | sh
で終わりです.gazebo
と打ってシュミレータが起動すれば大丈夫です.
gazebo-ros-pkgs
も必要になることが多いので,この際に入れておきましょう.
sudo apt install ros-<distro>-gazebo-ros-pkgs
まとめ
今回はGazeboの種類別にインストール方法を紹介しました.apt
で簡単に入れられず,アーキテクチャの違いなどでインストールできないなどで詰まっていた方もいるかもしれません.
ちなみにGazebo ClassicはGazebo11を持って今後リリースしないことを発表しているので,これからはIgnitionの時代が来るのかもしれません.ただ,turtlebot
のデモをはじめ,入門書やネットの事例でIgnitionを使用していることが少ないので,まだまだ時間がかかるかもしれませんね🤔