No version for distro humble. Known supported distros are highlighted in the buttons above.
No version for distro jazzy. Known supported distros are highlighted in the buttons above.
No version for distro rolling. Known supported distros are highlighted in the buttons above.
Repository Summary
Description | BlueROV2 for ROS2 + ignition |
Checkout URI | https://github.com/centralenantesrov/bluerov2.git |
VCS Type | git |
VCS Version | main |
Last Updated | 2025-04-03 |
Dev Status | UNKNOWN |
CI status | No Continuous Integration |
Released | UNRELEASED |
Tags | No category tags. |
Contributing |
Help Wanted (0)
Good First Issues (0) Pull Requests to Review (0) |
Packages
Name | Version |
---|---|
bluerov2_control | 0.0.1 |
bluerov2_description | 0.1.0 |
README
BlueROV2 ROS 2
This repository contains the robot description and necessary launch files to describe and simulate the BlueROV2 (unmanned underwater vehicle) with Gazebo and its hydrodynamics plugins under ROS 2.
Requirements
For the description
-
Xacro , installable through
apt install ros-${ROS_DISTRO}-xacro
-
simple_launch, installable through
apt install ros-${ROS_DISTRO}-simple-launch
Gazebo
- ROS 2 with Gazebo Fortress or newer with
ros_gz_bridge
- Look out for your ROS 2 / Gazebo versions combination
- pose_to_tf, to get the ground truth from Gazebo if needed.
For the control part
-
slider_publisher, installable through
apt install ros-${ROS_DISTRO}-slider-publisher
- auv_control for basic control laws, from source
Installation
Clone the package and its dependencies (if from source) in your ROS 2 workspace src
and compile with colcon
Running
To run a demonstration with the vehicle, you can run a Gazebo scenario, such as an empty world with buoyancy and sensors setup:
ros2 launch bluerov2_description world_launch.py
and then spawn the robot with a GUI to control the thrusters:
ros2 launch bluerov2_description upload_bluerov2_launch.py sliders:=true
Input / output
Gazebo will:
- Subscribe to
/bluerov2/cmd_thruster[1..6]
and expectstd_msgs/Float64
messages, being the thrust in Newton - Publish sensor data to various topics (image, mpu+lsm for IMU, cloud for the sonar, odom)
- Publish the ground truth on
/bluerov2/pose_gt
. This pose is forwarded to/tf
ifpose_to_tf
is used.
High-level control
Basic control is available in the auv_control package
In this case spawn the robot without manual sliders and run e.g. a cascaded PID controller:
ros2 launch bluerov2_description upload_bluerov2_launch.py
ros2 launch bluerov2_control cascaded_pids_launch.py sliders:=true
License
BlueROV2 package is open-sourced under the Apache-2.0 license. See the LICENSE file for details.
CONTRIBUTING
No CONTRIBUTING.md found.
No version for distro noetic. Known supported distros are highlighted in the buttons above.
No version for distro ardent. Known supported distros are highlighted in the buttons above.
No version for distro bouncy. Known supported distros are highlighted in the buttons above.
No version for distro crystal. Known supported distros are highlighted in the buttons above.
No version for distro eloquent. Known supported distros are highlighted in the buttons above.
No version for distro dashing. Known supported distros are highlighted in the buttons above.
No version for distro galactic. Known supported distros are highlighted in the buttons above.
No version for distro foxy. Known supported distros are highlighted in the buttons above.
No version for distro iron. Known supported distros are highlighted in the buttons above.
No version for distro lunar. Known supported distros are highlighted in the buttons above.
No version for distro jade. Known supported distros are highlighted in the buttons above.
No version for distro indigo. Known supported distros are highlighted in the buttons above.
No version for distro hydro. Known supported distros are highlighted in the buttons above.
No version for distro kinetic. Known supported distros are highlighted in the buttons above.
No version for distro melodic. Known supported distros are highlighted in the buttons above.