Skip to content
This repository was archived by the owner on Jan 27, 2026. It is now read-only.

Add Hydrus simulation with basic thruster controls#189

Open
JuanDelPueblo wants to merge 21 commits intomainfrom
stonefish
Open

Add Hydrus simulation with basic thruster controls#189
JuanDelPueblo wants to merge 21 commits intomainfrom
stonefish

Conversation

@JuanDelPueblo
Copy link
Collaborator

This PR contains the following:

  • Adds a ROS 2 package that contains the configuriation for simulating Hydrus using the Stonefish library.
    • Also contains a Python script for rudimentary controls of the Hydrus vehicle.
  • Adds a docker container exclusively for the simulation containing ROS 2 and Stonefish.

Next steps:

  • Improve hydrodynamics simulation by splitting the mesh into various parts
  • Develop an improved software controller with PID
  • Add sensors (IMU, DVL, camera) for use by the controller
  • Create environment with RoboSub mission objects

Copy link

Copilot AI left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull Request Overview

This PR introduces a complete simulation framework for the Hydrus autonomous underwater vehicle (AUV) using the Stonefish physics simulation library. The simulation provides basic thruster controls for the vehicle and sets up the foundation for future development of more sophisticated control systems and mission environments.

Key changes include:

  • Implementation of a standalone C++ simulation application with window management and simulation loop
  • Creation of scenario configuration files defining the underwater environment, materials, and vehicle parameters
  • Addition of a detailed 3D propeller model for realistic thruster visualization

Reviewed Changes

Copilot reviewed 30 out of 33 changed files in this pull request and generated 2 comments.

Show a summary per file
File Description
simulation/standalone_sim/src/main.cpp Entry point that initializes the simulation window and starts the Hydrus simulation manager
simulation/standalone_sim/src/HydrusSimManager.cpp Core simulation manager that loads scenario configuration and contains commented legacy code for manual vehicle setup
simulation/standalone_sim/scenarios/hydrus_env.scn Main environment configuration defining ocean, materials, lighting, and vehicle instantiation
simulation/standalone_sim/scenarios/hydrus_auv.scn Detailed vehicle configuration with 8 thrusters (4 corner, 4 depth) and complete physics properties
simulation/standalone_sim/models/propeller.obj 3D model file containing vertex, texture, and normal data for propeller visualization

Tip: Customize your code reviews with copilot-instructions.md. Create the file or learn how to get started.

@ultra-azu
Copy link
Collaborator

LGTM

Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants