Skip to content

Installation

angeloszacharia edited this page Sep 13, 2026 · 2 revisions

Setup

Create workspace for OmniPlanner

mkdir ~/omniplanner_dev_env

GazeboSim: Garden

If you intend to use the Gazebo simulator, you will need to install the Gazebo Garden from source on Ubuntu 20.04 using the following instructions. The instructions have been taken from the original documentation here.

Install tools:

sudo apt install python3-pip lsb-release gnupg curl git
pip3 install vcstool
pip3 install -U colcon-common-extensions

Create a workspace for gazebo:

cd ~/omniplanner_dev_env
mkdir -p gazebo_garden_ws/src
cd gazebo_garden_ws/src

Get source files:

curl -O https://raw.githubusercontent.com/ntnu-arl/gz-sim/refs/heads/fix/position_control/collection-garden.yaml
vcs import < collection-garden.yaml

Install dependancies:

sudo curl https://packages.osrfoundation.org/gazebo.gpg --output /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

cd ~/omniplanner_dev_env/gazebo_garden_ws/src
sudo apt -y install \
  $(sort -u $(find . -iname 'packages-'`lsb_release -cs`'.apt' -o -iname 'packages.apt' | grep -v '/\.git/') | sed '/gz\|sdf/d' | tr '\n' ' ')

NOTE: Replace the files of the gz-sim folder with the files from this and switch gz-common to 82a649e1 commit.

Build:

cd ~/omniplanner_dev_env/gazebo_garden_ws
colcon graph
colcon build --cmake-args -DBUILD_TESTING=OFF --merge-install

Source the workspace:

source ~/omniplanner_dev_env/gazebo_garden_ws/install/setup.bash

ROS-GZ Bridge

Create a workspace for gazebo:

cd ~/omniplanner_dev_env
mkdir -p ros_gz_bridge_ws/src
cd ros_gz_bridge_ws/src

Clone the bridge:

git clone git@github.com:ntnu-arl/ros_gz.git -b garden_noetic
cd ~/ros_gz_bridge_ws
catkin config --install
catkin build

NOTE: Make sure ros_gz_bridge_ws extends ~/omniplanner_dev_env/gazebo_garden_ws/install and /opt/ros/noetic.

Source the workspace:

source ~/omniplanner_dev_env/ros_gz_bridge_ws/install/setup.bash

OmniPlanner Installation

Install dependancies:

sudo apt install python3-catkin-tools \
libgoogle-glog-dev \
ros-noetic-joy \
ros-noetic-twist-mux \
ros-noetic-interactive-marker-twist-server \
ros-noetic-octomap-msgs \
ros-noetic-octomap-ros \
git-lfs

Create the workspace:

mkdir -p ~/omniplanner_dev_env/omniplanner_ws/src/exploration
cd ~/omniplanner_dev_env/omniplanner_ws/src/exploration

Clone the planner

git clone git@github.com:ntnu-arl/gbplanner_ros.git

Clone and update the required packages

cd ~/omniplanner_dev_env/omniplanner_ws/
vcs import < ./src/exploration/gbplanner_ros/vcstool/packages.repos
cd src/sim/subt_cave_sim
git lfs pull

Build

catkin config -DCMAKE_BUILD_TYPE=Release
catkin build

NOTE: Make sure omniplanner_ws extends ~/omniplanner_dev_env/gazebo_garden_ws/install, ~/omniplanner_dev_env/ros_gz_bridge_ws/install and /opt/ros/noetic.

Source

source ~/omniplanner_dev_env/omniplanner_ws/devel/setup.sh