ROS2 packages for ROSbot 2R and ROSbot 2 PRO.
Metapackage that contains dependencies to other repositories.
Package that contains launch, which starts all base functionalities. Also configuration for robot_localization and ros2_controllers are defined there.
URDF model used as a source of transforms on the physical robot. It was written to be compatible with ROS Industrial and preconfigured for ROS2 control.
Launch files for Ignition Gazebo working with ROS2 control.
ROS2 hardware controllers configuration for ROSbots.
Available in ROS_API.md
To run the software on real ROSbot 2R, 2 PRO, also communication with the CORE2 will be necessary.
First update your firmware to make sure that you use the latest version, then run the micro-ROS
agent.
For detailed instructions refer to the rosbot_ros2_firmware repository.
Install colcon
, vcs
and rosdep
:
sudo apt-get update
sudo apt-get install -y python3-colcon-common-extensions python3-vcstool python3-rosdep
Create workspace folder and clone rosbot_ros
repository:
mkdir -p ros2_ws/src
cd ros2_ws
git clone https://github.com/husarion/rosbot_ros src/
Building:
export HUSARION_ROS_BUILD=hardware
source /opt/ros/$ROS_DISTRO/setup.bash
vcs import src < src/rosbot/rosbot_hardware.repos
rm -r src/rosbot_gazebo
rosdep init
rosdep update --rosdistro $ROS_DISTRO
rosdep install -i --from-path src --rosdistro $ROS_DISTRO -y
colcon build
Prerequisites
Before starting the software on the robot please make sure that you're using the latest firmware and run the
micro-ROS
agent (as described in the Usage on hardware step).
Running:
source install/setup.bash
ros2 launch rosbot_bringup bringup.launch.py
Prerequisites:
Warning The simulation is compatible with the Gazebo Fortress LTS version. Use this installation guide to install the proper version and remove the another versions e. g. Gazebo Garden:
sudo apt remove gz-garden && sudo apt autoremove
Look at the table to see the compatible ROS 2 and Gazebo versions.
If you have installed multiple versions of Gazebo use the global variable to select the correct one:
export GZ_VERSION=fortress
Building:
export HUSARION_ROS_BUILD=simulation
source /opt/ros/$ROS_DISTRO/setup.bash
vcs import src < src/rosbot/rosbot_hardware.repos
vcs import src < src/rosbot/rosbot_simulation.repos
rosdep init
rosdep update --rosdistro $ROS_DISTRO
rosdep install -i --from-path src --rosdistro $ROS_DISTRO -y
colcon build
Running:
source install/setup.bash
ros2 launch rosbot_gazebo simulation.launch.py
Bellow you can find demos with ROSbots:
- in rosbot-docker you will find a simple example how to drive ROSbot with
teleop_twist_keyboard
. - in rosbot-sensors you will find an example how to visualize all ROSbot sensors.
- in rosbot-mapping you will find an example how to use ROSbot with the slam_toolbox.
- in rosbot-navigation you will find an example how to use ROSbot with the navigation2 stack.