The package contains thruster allocation and thruster nonlinearity compensation.
This package contains thruster models and methods of allocating desired virtual forces and torques to thrusters. Most ROVs and overactuated vehicles use thrusters for propulsion. Control planes like fins and rudders are mostly used by underactuated torpedo shaped AUVs and ships. Therefore, we will firstly consider modeling of thrusters in this package.
The package is split into the nonlinear compensation class and
identification library (libI_SO) and the identificaation action server (ident_so). It provides automatic identification and model parameter calculation based on the performed oscillation experiment.
The labust::control::SOIdentification class is a ROS agnostic implementation of the identification experiment. It can be used in any application.
EXAMPLE OF USAGE (TEST FILE)
labust::control::IdentificationNode
The
Usage with the GUI - link here.
Every ROS name in your code must be documented. Names are very important in ROS because they are the API to nodes and services. They are also capable of being remapped on the command-line, so it is VERY IMPORTANT THAT YOU LIST NAMES AS THEY APPEAR IN THE CODE. It is also important that you write your code so that the names can be easily remapped.
List of nodes:
ident_so is the identificaiton action server node.
$ rosrun ident_so ident_so
$ rosrun ident_so ident_so
Subscribes to:
Publishes to:
Reads the following parameters from the parameter server
This section is a catch-all for any additional tools that your package provides or uses that may be of use to the reader. For example:
Description of what this script/file does.
$ ./script_name [args]
$ ./script_name foo bar