Ubuntu installation
In order to run the public simulation of PMB-2 it is preferable to get a fresh installation of Ubuntu 20.04.5 LTS as follows
wget http://releases.ubuntu.com/20.04/ubuntu-20.04.5-desktop-amd64.iso
Use this ISO to install a fresh Ubuntu OS in your development computer. Afterwards, you can proceed installing ROS as explained in the next section.
ROS installation
Set up ROS packages sources
In order to install the required ROS packages for running PMB-2's simulation first, as explained in ROS Noetic installation, it is required to include packages.ros.org in the debian sources:
sudo apt update sudo apt install lsb-release # if you haven't already installed lsb-release sudo sh -c 'echo "deb http://packages.ros.org/ros/ubuntu $(lsb_release -sc) main" > /etc/apt/sources.list.d/ros-latest.list'
The set up the required keys to access the debian sources:
sudo apt install curl gnupg # if you haven't already installed curl or gnupg curl -s https://raw.githubusercontent.com/ros/rosdistro/master/ros.asc | sudo apt-key add -
ROS packages installation
install use the following instruction
sudo apt-get update sudo apt-get install git wget python3-rosinstall ros-noetic-desktop-full python3-catkin-tools python3-rosdep python-is-python3
Append the following command to ~/.bashrc to allow any console to use the catkin commands
source /opt/ros/noetic/setup.bash
Source-based installation
Currently source-based installation is provided.
These instructions assume that you are comfortable with ROS and the catkin build system. Please familiarize yourself using the ROS and catkin tutorials.
First of all, open a terminal and create an empty workspace:
mkdir ~/pmb2_public_ws cd ~/pmb2_public_ws
Then run the following instruction in order to download common_public-noetic.rosinstall, pmb2_public-noetic.rosinstall and to clone all the required repositories within the workspace:
wget https://raw.githubusercontent.com/pal-robotics/pal_mobile_base_docker/noetic-devel/common_public-noetic.rosinstall wget https://raw.githubusercontent.com/pal-robotics/pmb2_tutorials/noetic-devel/pmb2_public-noetic.rosinstall rosinstall src /opt/ros/noetic common_public-noetic.rosinstall rosinstall src /opt/ros/noetic pmb2_public-noetic.rosinstall
Then run this command to make sure that all dependencies are installed.
sudo rosdep init rosdep update
Then you may run the following instruction to make sure that all dependencies referenced in the workspace are installed
rosdep install -y --from-paths src --ignore-src --rosdistro noetic --skip-keys "urdf_test pal_filters speed_limit_node pal_usb_utils pal_pcl hokuyo_node pal-orbbec-openni2 pal_map_manager ydlidar_ros_driver"
Then, you may proceed building the workspace:
source /opt/ros/noetic/setup.bash catkin build -DCATKIN_ENABLE_TESTING=0 -j $(expr `nproc` / 2)
Once you compiled all packages and source the environment (source ~/pmb2_public_ws/devel/setup.bash) and it's all ready to go.