Skip to content

This repository features a ros2_control simulator for the BlueROV Heavy with an attached Reach Alpha 5 manipulator, using Thor Fossen’s methods for underwater dynamics and Featherstone's algorithm for the manipulator.

Notifications You must be signed in to change notification settings

RKinDLab/uvms-simulator

 
 

Repository files navigation

Underwater Vehicle and Manipulator Simulator

A simulator for the BlueROV Heavy equipped with a Reach Alpha 5 manipulator based on ros2_control framework. Integrates Thor Fossen’s underwater dynamics with Featherstone's manipulator dynamics algorithm for realistic simulations.


Features

  • Realistic Dynamics: Accurate simulation of underwater vehicle and manipulator behaviors.
  • Multi-Agent Support: Simulate multiple agents within a shared environment.
  • Video Demonstration: Watch the Video

Getting Started

Prerequisites

Ensure the following dependencies are installed:

sudo apt-get install git-lfs
sudo apt-get install ros-humble-hardware-interface
sudo apt-get install ros-humble-xacro
sudo apt-get install ros-humble-controller-manager
sudo apt-get install ros-humble-joint-state-broadcaster
sudo apt-get install ros-humble-joint-state-publisher-gui
sudo apt-get install ros-humble-forward-command-controller
sudo apt-get install ros-humble-ros2-control

# Install CasADi (required for dynamics and kinematics calculations)
# Follow the installation instructions on the CasADi wiki:
# https://github.com/casadi/casadi/wiki/InstallationLinux

# Initialize Git LFS and pull the necessary files for dynamics and kinematics
git lfs install
git lfs pull

Clone additional packages to ros2 workspace:

Installation

  1. Clone the repository:
    git clone https://github.com/yourusername/blue-heavy-dynamics-simulator.git
  2. Navigate to the project directory:
    cd blue-heavy-dynamics-simulator
  3. Install dependencies:
    rosdep install --from-paths src --ignore-src -r -y
  4. Build the workspace:
    colcon build
  5. Source the workspace:
    source install/setup.bash

Dynamics Foundation

This simulator incorporates and extends:


Documentation

For detailed setup and usage instructions, refer to the User Documentation.


Online Resources


Contributing

Contributions are welcome! Please open an issue or submit a pull request for enhancements or bug fixes.


License

This project is licensed under the MIT License.


About

This repository features a ros2_control simulator for the BlueROV Heavy with an attached Reach Alpha 5 manipulator, using Thor Fossen’s methods for underwater dynamics and Featherstone's algorithm for the manipulator.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • C++ 86.1%
  • Python 11.1%
  • CMake 1.5%
  • C 1.3%