This repository contains simulation scenarios and configurations for Autonomous Underwater Vehicles (AUV) and Autonomous Surface Vehicles (ASV) using Stonefish and ROS 2.
Before running the simulation, ensure you have the following installed:
-
ROS 2 Humble: Make sure a compatible version of ROS 2 is installed on your system.
-
Stonefish Simulator: Install the Stonefish simulator by following the instructions in the official repository:
-
ArduPilot Simulation: Set up the ArduPilot simulation environment.
- This setup is based on: https://github.com/bvibhav/stonefish_bluerov2
- Note: It is recommended to follow the official ArduPilot documentation for installing the SITL (Software In The Loop) environment properly. (I assume you use Gemini, by the way lol)
-
Create a ROS 2 Workspace (if you haven't already):
mkdir -p ~/ros2_ws/src cd ~/ros2_ws/src
-
Clone this Repository: Clone this repository into the
srcfolder of your workspace:git clone <URL_TO_THIS_REPO>
-
Build the Package: Navigate to the root of your workspace and build the package using
colcon:cd ~/ros2_ws colcon build --event-handlers console_direct+ --cmake-args --symlink-install --packages-select stonefish_bluerov2
-
Source the Setup Script: Load the ROS 2 environment for the workspace:
source install/setup.bash
To start the simulation (e.g., for the Blueboat), run the launch file:
ros2 launch stonefish_bluerov2 blueboat_sim.pyTip: Check the launch/ directory in the stonefish_bluerov2 package to see other available launch files for different vehicle configurations.
To view the live video feed from the robot's camera, run the following command in a new terminal (don't forget to source the workspace first):
ros2 run stonefish_bluerov2 view_camera.py