diff --git a/auv_control_demos/CHANGELOG.md b/auv_control_demos/CHANGELOG.md index 9acbaeb..1586b3b 100644 --- a/auv_control_demos/CHANGELOG.md +++ b/auv_control_demos/CHANGELOG.md @@ -1,5 +1,7 @@ # Changelog for package auv_control_demos +## 0.4.3 (2026-04-25) + ## 0.4.2 (2026-03-30) ## 0.4.1 (2026-02-23) diff --git a/auv_control_demos/package.xml b/auv_control_demos/package.xml index cf701c3..7eac415 100644 --- a/auv_control_demos/package.xml +++ b/auv_control_demos/package.xml @@ -3,7 +3,7 @@ auv_control_demos - 0.4.2 + 0.4.3 Example package that includes demos for using auv_controllers in individual and chained modes Evan Palmer diff --git a/auv_control_msgs/CHANGELOG.md b/auv_control_msgs/CHANGELOG.md index b6bbb5d..f53ab5b 100644 --- a/auv_control_msgs/CHANGELOG.md +++ b/auv_control_msgs/CHANGELOG.md @@ -1,5 +1,7 @@ # Changelog for package auv_control_msgs +## 0.4.3 (2026-04-25) + ## 0.4.2 (2026-03-30) - Implements the ImpedanceStateStamped message. diff --git a/auv_control_msgs/package.xml b/auv_control_msgs/package.xml index dad7bed..069a9c6 100644 --- a/auv_control_msgs/package.xml +++ b/auv_control_msgs/package.xml @@ -3,7 +3,7 @@ auv_control_msgs - 0.4.2 + 0.4.3 Custom messages for AUV controllers Evan Palmer diff --git a/auv_controllers/CHANGELOG.md b/auv_controllers/CHANGELOG.md index a5f4dd1..57cf52f 100644 --- a/auv_controllers/CHANGELOG.md +++ b/auv_controllers/CHANGELOG.md @@ -1,5 +1,7 @@ # Changelog for package auv_controllers +## 0.4.3 (2026-04-25) + ## 0.4.2 (2026-03-30) - Implements the ImpedanceStateStamped message diff --git a/auv_controllers/package.xml b/auv_controllers/package.xml index 0d99b18..9686154 100644 --- a/auv_controllers/package.xml +++ b/auv_controllers/package.xml @@ -3,7 +3,7 @@ auv_controllers - 0.4.2 + 0.4.3 Meta package for auv_controllers Evan Palmer diff --git a/controller_common/CHANGELOG.md b/controller_common/CHANGELOG.md index 97d9c80..049ef21 100644 --- a/controller_common/CHANGELOG.md +++ b/controller_common/CHANGELOG.md @@ -1,5 +1,7 @@ # Changelog for package controller_common +## 0.4.3 (2026-04-25) + ## 0.4.2 (2026-03-30) ## 0.4.1 (2026-02-23) diff --git a/controller_common/package.xml b/controller_common/package.xml index df32a9b..d73681e 100644 --- a/controller_common/package.xml +++ b/controller_common/package.xml @@ -3,7 +3,7 @@ controller_common - 0.4.2 + 0.4.3 Common interfaces for controllers used in this project Evan Palmer diff --git a/controller_coordinator/CHANGELOG.md b/controller_coordinator/CHANGELOG.md index c383a1f..72b6d6a 100644 --- a/controller_coordinator/CHANGELOG.md +++ b/controller_coordinator/CHANGELOG.md @@ -1,5 +1,7 @@ # Changelog for package controller_coordinator +## 0.4.3 (2026-04-25) + ## 0.4.2 (2026-03-30) - Fixes hardware activation bug diff --git a/controller_coordinator/package.xml b/controller_coordinator/package.xml index 34f0823..e8a9796 100644 --- a/controller_coordinator/package.xml +++ b/controller_coordinator/package.xml @@ -3,7 +3,7 @@ controller_coordinator - 0.4.2 + 0.4.3 A high-level node used to load and activate/deactivate control systems Evan Palmer diff --git a/ik_solvers/CHANGELOG.md b/ik_solvers/CHANGELOG.md index 73c4758..30254e8 100644 --- a/ik_solvers/CHANGELOG.md +++ b/ik_solvers/CHANGELOG.md @@ -1,5 +1,7 @@ # Changelog for package ik_solvers +## 0.4.3 (2026-04-25) + ## 0.4.2 (2026-03-30) ## 0.4.1 (2026-02-23) diff --git a/ik_solvers/package.xml b/ik_solvers/package.xml index fccf7c9..026ddca 100644 --- a/ik_solvers/package.xml +++ b/ik_solvers/package.xml @@ -3,7 +3,7 @@ ik_solvers - 0.4.2 + 0.4.3 Inverse kinematics solvers used for whole-body control Evan Palmer diff --git a/impedance_controller/CHANGELOG.md b/impedance_controller/CHANGELOG.md index 4f1c56e..91e3846 100644 --- a/impedance_controller/CHANGELOG.md +++ b/impedance_controller/CHANGELOG.md @@ -1,5 +1,7 @@ # Changelog for package impedance_controller +## 0.4.3 (2026-04-25) + ## 0.4.2 (2026-03-30) - Addresses various bugs in implementation diff --git a/impedance_controller/package.xml b/impedance_controller/package.xml index d9c3efb..15ceeb4 100644 --- a/impedance_controller/package.xml +++ b/impedance_controller/package.xml @@ -3,7 +3,7 @@ impedance_controller - 0.4.2 + 0.4.3 An impedance controller for underwater vehicles Evan Palmer diff --git a/thruster_allocation_matrix_controller/CHANGELOG.md b/thruster_allocation_matrix_controller/CHANGELOG.md index e4786a7..590b049 100644 --- a/thruster_allocation_matrix_controller/CHANGELOG.md +++ b/thruster_allocation_matrix_controller/CHANGELOG.md @@ -1,5 +1,7 @@ # Changelog for package thruster_allocation_matrix_controller +## 0.4.3 (2026-04-25) + ## 0.4.2 (2026-03-30) ## 0.4.1 (2026-02-23) diff --git a/thruster_allocation_matrix_controller/package.xml b/thruster_allocation_matrix_controller/package.xml index 546740a..d2eb5e8 100644 --- a/thruster_allocation_matrix_controller/package.xml +++ b/thruster_allocation_matrix_controller/package.xml @@ -3,7 +3,7 @@ thruster_allocation_matrix_controller - 0.4.2 + 0.4.3 Thruster allocation matrix controller used to convert wrench commands into thrust commands Evan Palmer diff --git a/thruster_controllers/CHANGELOG.md b/thruster_controllers/CHANGELOG.md index 3f2442e..f162652 100644 --- a/thruster_controllers/CHANGELOG.md +++ b/thruster_controllers/CHANGELOG.md @@ -1,5 +1,10 @@ # Changelog for package thruster_controllers +## 0.4.3 (2026-04-25) + +- Implements a `reverse_spin_direction` parameter into the thrust curve +controller. + ## 0.4.2 (2026-03-30) ## 0.4.1 (2026-02-23) diff --git a/thruster_controllers/package.xml b/thruster_controllers/package.xml index 39e4b8a..d44a908 100644 --- a/thruster_controllers/package.xml +++ b/thruster_controllers/package.xml @@ -3,7 +3,7 @@ thruster_controllers - 0.4.2 + 0.4.3 A collection of thruster controllers for AUV control Evan Palmer diff --git a/thruster_controllers/src/polynomial_thrust_curve_controller.cpp b/thruster_controllers/src/polynomial_thrust_curve_controller.cpp index 9f4d440..41c5ec6 100644 --- a/thruster_controllers/src/polynomial_thrust_curve_controller.cpp +++ b/thruster_controllers/src/polynomial_thrust_curve_controller.cpp @@ -145,10 +145,11 @@ auto PolynomialThrustCurveController::update_and_write_commands( const rclcpp::Time & time, const rclcpp::Duration & period) -> controller_interface::return_type { - const auto reference = reference_interfaces_[0]; + auto reference = reference_interfaces_[0]; int pwm = params_.neutral_pwm; if (!std::isnan(reference)) { + reference = params_.reverse_spin_direction ? -reference : reference; const double clamped_reference = std::clamp(reference, params_.min_thrust, params_.max_thrust); pwm = calculate_pwm_from_thrust_curve(clamped_reference, params_.thrust_curve_coefficients); pwm = pwm > params_.min_deadband_pwm && pwm < params_.max_deadband_pwm ? params_.neutral_pwm : pwm; diff --git a/thruster_controllers/src/polynomial_thrust_curve_controller_parameters.yaml b/thruster_controllers/src/polynomial_thrust_curve_controller_parameters.yaml index 12efb75..1b3e2af 100644 --- a/thruster_controllers/src/polynomial_thrust_curve_controller_parameters.yaml +++ b/thruster_controllers/src/polynomial_thrust_curve_controller_parameters.yaml @@ -46,3 +46,15 @@ polynomial_thrust_curve_controller: default_value: 0 read_only: true description: A safe PWM value that is known to apply zero thrust. + + reverse_spin_direction: + type: bool + default_value: false + read_only: true + description: > + Reverse the spin direction of the thruster. This can be used to ensure + that the force generated by the thruster matches the defined thruster + coordinate frame. This is applied *before* the thrust clamp is applied. + In general, "forward" spin corresponds to positive thrust and reverse spin + corresponds to negative. This may vary depending on the ESC and thruster + configuration. diff --git a/topic_sensors/CHANGELOG.md b/topic_sensors/CHANGELOG.md index d2f71bb..0632058 100644 --- a/topic_sensors/CHANGELOG.md +++ b/topic_sensors/CHANGELOG.md @@ -1,5 +1,7 @@ # Changelog for package topic_sensors +## 0.4.3 (2026-04-25) + ## 0.4.2 (2026-03-30) ## 0.4.1 (2026-02-23) diff --git a/topic_sensors/package.xml b/topic_sensors/package.xml index a470696..e60f127 100644 --- a/topic_sensors/package.xml +++ b/topic_sensors/package.xml @@ -3,7 +3,7 @@ topic_sensors - 0.4.2 + 0.4.3 Sensor plugins used to write ROS 2 messages to state interfaces Evan Palmer diff --git a/trajectory_controllers/CHANGELOG.md b/trajectory_controllers/CHANGELOG.md index 0238b7c..74c467a 100644 --- a/trajectory_controllers/CHANGELOG.md +++ b/trajectory_controllers/CHANGELOG.md @@ -1,5 +1,7 @@ # Changelog for package trajectory_controllers +## 0.4.3 (2026-04-25) + ## 0.4.2 (2026-03-30) ## 0.4.1 (2026-02-23) diff --git a/trajectory_controllers/package.xml b/trajectory_controllers/package.xml index 1ae4175..e7c4a64 100644 --- a/trajectory_controllers/package.xml +++ b/trajectory_controllers/package.xml @@ -3,7 +3,7 @@ trajectory_controllers - 0.4.1 + 0.4.3 Trajectory controllers for underwater vehicles and manipulator systems Evan Palmer diff --git a/velocity_controllers/CHANGELOG.md b/velocity_controllers/CHANGELOG.md index 080ed8b..35ee353 100644 --- a/velocity_controllers/CHANGELOG.md +++ b/velocity_controllers/CHANGELOG.md @@ -1,5 +1,7 @@ # Changelog for package velocity_controllers +## 0.4.3 (2026-04-25) + ## 0.4.2 (2026-03-30) ## 0.4.1 (2026-02-23) diff --git a/velocity_controllers/package.xml b/velocity_controllers/package.xml index 376378d..e263bed 100644 --- a/velocity_controllers/package.xml +++ b/velocity_controllers/package.xml @@ -3,7 +3,7 @@ velocity_controllers - 0.4.2 + 0.4.3 A collection of velocity controllers for underwater vehicles Evan Palmer diff --git a/whole_body_controllers/CHANGELOG.md b/whole_body_controllers/CHANGELOG.md index b0f9a3a..eb5275e 100644 --- a/whole_body_controllers/CHANGELOG.md +++ b/whole_body_controllers/CHANGELOG.md @@ -1,5 +1,7 @@ # Changelog for package whole_body_controllers +## 0.4.3 (2026-04-25) + ## 0.4.2 (2026-03-30) ## 0.4.1 (2026-02-23) diff --git a/whole_body_controllers/package.xml b/whole_body_controllers/package.xml index facd4e4..15f7137 100644 --- a/whole_body_controllers/package.xml +++ b/whole_body_controllers/package.xml @@ -3,7 +3,7 @@ whole_body_controllers - 0.4.2 + 0.4.3 Whole-body controllers for underwater vehicle manipulator systems Evan Palmer