clydemcqueen / bluerov2_ignition

BlueROV2 model for Gazebo Garden
28 stars 11 forks source link

Integrate BlueROV2 Heavy configuration model #8

Closed evan-palmer closed 1 year ago

evan-palmer commented 1 year ago

Problem Description

Blue Robotics offers an extension to the standard BlueROV2 called the Heavy configuration. This configuration is quite popular and enables full 6-DOF control (unlike the standard counterpart). It may be useful to offer an additional model for the BlueROV2 Heavy within this project.

Proposal

Add a new bluerov2-heavy model to the models. This should include a visualization of the BlueROV2 Heavy using the CAD model and the identified hydrodynamic parameters previously determined from a system identification of the ROV (found here). Because the BuoyancyPlugin uses the collision volume to determine the ROV buoyancy, it will also be necessary to determine a suitable collision volume. One approach could be to use the mesh itself. Another alternative could be to extend the existing collision volume for the standard BlueROV2 (see here) to include a few additional rectangles encompassing the Heavy configuration wings.

Alternative Solution

Rather than using the hydrodynamic parameters found from the system identification linked above, the same approach taken to calculate the parameters for the base BlueROV2 could be applied.

evan-palmer commented 1 year ago

I'm hoping to contribute this feature, but thought that I would begin by adding an issue to start some discussion regarding the best approach to implementing support for an additional model (if this would be a good place to add it). One question that I wanted to discuss is the modification of the generate_model script to account for an additional model. The existing script is pretty geared toward the standard BlueROV2 and would need a semi-large rewrite to support an additional model. One approach could be to use two separate generate_model scripts for each configuration, but I can imagine that maintainability would be an issue and the two may diverge down the line.