navigation2
navigation2 copied to clipboard
Log discrepancy when setting MPPI parameters dynamically
Bug report
Required Info:
-
Operating System:
- Ubuntu 22.04
-
ROS2 Version:
- Humble
-
Version or commit hash:
- 1.1.16-1jammy.20240830.231501
-
DDS implementation:
- CycloneDDS
Steps to reproduce issue
Using ros2 param set
command to set MPPI parameters triggers a NOT FOUND warning, although the command returns 'Set parameter successful'.
## General form:
ros2 param set /{$controller_server_node_name} {$mppi_controller_name}.{$parameter} {$value}
##For example:
ros2 param set /controller_server FollowPathMPPI.AckermannConstraints.min_turning_r 1.0
##or
ros2 param set /controller_server FollowPathMPPI.gamma 1.0
##or
ros2 param set /controller_server FollowPathMPPI.ConstraintCritic.cost_weight 1.0
Expected behavior
### If parameter exists, is dynamic and changed successfully
##On set parameter terminal:
Set parameter successful
##On controller_server terminal:
[controller_server-28] [WARN] [controller_server]: {$Something that indicates success in changing parameter}
[controller_server-28] [INFO] [controller_server]: Optimizer reset
### If parameter does not exist, or is not dynamic or not changed successfully
##On set parameter terminal:
Setting parameter failed: {$reason_for_failure}
##On controller_server terminal:
[controller_server-28] [WARN] [controller_server]: {$Something that indicates failure in changing parameter}
[controller_server-28] [INFO] [controller_server]: Optimizer reset
Actual behavior
##On set parameter terminal:
Set parameter successful
##On controller_server terminal:
[controller_server-28] [WARN] [controller_server]: Parameter FollowPathMPPI.AckermannConstraints.min_turning_r not found
[controller_server-28] [INFO] [controller_server]: Optimizer reset
Additional information
Seems like parameters_handler
always returns success even though a parameter might not be found.