Skip to content

[FEATURE]: Implement hydrodynamics to support controller implementation #6

@evan-palmer

Description

@evan-palmer

Feature Type

Adding new functionality to the BlueROV2 driver

Problem Description

The proposed dynamic controllers depend on the implementation of the hydrodynamics for the BlueROV2 and thrusters to compute the control inputs; however, this has not yet been implemented.

Feature Description

This issue should be resolved by implementing a library to calculate the dynamics of the system. Entrypoints should be implemented for both the vehicle and the thrusters. These could be implemented as structs which would then be instantiated for use by the controllers themselves. It may also be useful to define base structures for common hydrodynamic properties (e.g., center of gravity, nonlinear damping, etc.).

Alternative Solutions

Some design points that need to be considered more thoroughly include:

  1. What is the most usable design in regards to instantiation of the interfaces? That is, how do we ensure that users can easily specify the arguments of each entrypoint?
  2. Should the current effects and thruster configuration matrices be defined in the dynamics? These aren't necessarily associated with the dynamics themselves; however, are used in association with the hydrodynamics. These may be better located in a different package.

Additional Context

No response

Metadata

Metadata

Assignees

Labels

enhancementNew feature or request

Type

No type

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions