Package Summary
| Version | 0.50.0 |
| License | Apache License 2.0 |
| Build type | AMENT_CMAKE |
| Use | RECOMMENDED |
Repository Summary
| Description | |
| Checkout URI | https://github.com/autowarefoundation/autoware_universe.git |
| VCS Type | git |
| VCS Version | main |
| Last Updated | 2026-02-25 |
| Dev Status | UNKNOWN |
| Released | UNRELEASED |
| Contributing |
Help Wanted (-)
Good First Issues (-) Pull Requests to Review (-) |
Package Description
Maintainers
- Kyoichi Sugahara
- Makoto Kurihara
- Mamoru Sobue
- Takayuki Murooka
- Yuki Takagi
Authors
- Kyoichi Sugahara
- Takamasa Horibe
- Makoto Kurihara
Control Validator
The control_validator is a module that checks the validity of the output of the control component. The status of the validation can be viewed in the /diagnostics topic.
Supported features
The following features are supported for the validation and can have thresholds set by parameters. The listed features below does not always correspond to the latest implementation.
| Description | Arguments | Diagnostic equation |
|---|---|---|
| Inverse velocity: Measured velocity has a different sign from the target velocity. | measured velocity $v$, target velocity $\hat{v}$, and velocity parameter $c$ | $v \hat{v} < 0, \quad \lvert v \rvert > c$ |
| Overspeed: Measured speed exceeds target speed significantly. | measured velocity $v$, target velocity $\hat{v}$, ratio parameter $r$, and offset parameter $c$ | $\lvert v \rvert > (1 + r) \lvert \hat{v} \rvert + c$ |
| Overrun estimation: estimate overrun even if decelerate by assumed rate. | assumed deceleration, assumed delay |
- Lateral jerk : invalid when the lateral jerk exceeds the configured threshold. The validation uses the vehicle’s velocity and steering angle rate to calculate the resulting lateral jerk. The calculation assumes constant velocity (acceleration is zero).
- Deviation check between reference trajectory and predicted trajectory : invalid when the largest deviation between the predicted trajectory and reference trajectory is greater than the given threshold.
-
Yaw deviation: invalid when the difference between the yaw of the ego vehicle and the nearest (interpolated) trajectory yaw is greater than the given threshold.
- 2 thresholds are implemented, one to trigger a warning diagnostic, and one to trigger an error diagnostic.
Inputs/Outputs
Inputs
The control_validator takes in the following inputs:
| Name | Type | Description |
|---|---|---|
~/input/kinematics |
nav_msgs/Odometry | ego pose and twist |
~/input/reference_trajectory |
autoware_planning_msgs/Trajectory | reference trajectory which is outputted from planning module to to be followed |
~/input/predicted_trajectory |
autoware_planning_msgs/Trajectory | predicted trajectory which is outputted from control module |
Outputs
It outputs the following:
| Name | Type | Description |
|---|---|---|
~/output/validation_status |
control_validator/ControlValidatorStatus | validator status to inform the reason why the trajectory is valid/invalid |
/diagnostics |
diagnostic_msgs/DiagnosticStatus | diagnostics to report errors |
Parameters
The following parameters can be set for the control_validator:
System parameters
| Name | Type | Description | Default value |
|---|---|---|---|
publish_diag |
bool | if true, diagnostics msg is published. | true |
diag_error_count_threshold |
int | the Diag will be set to ERROR when the number of consecutive invalid trajectory exceeds this threshold. (For example, threshold = 1 means, even if the trajectory is invalid, the Diag will not be ERROR if the next trajectory is valid.) | true |
display_on_terminal |
bool | show error msg on terminal | true |
Algorithm parameters
Thresholds
The input trajectory is detected as invalid if the index exceeds the following thresholds.
| Name | Type | Description | Default value |
|---|---|---|---|
thresholds.max_distance_deviation |
double | invalid threshold of the max distance deviation between the predicted path and the reference trajectory [m] | 1.0 |
thresholds.lateral_jerk |
double | invalid threshold of the lateral jerk for steering rate validation [m/s^3] | 10.0 |
thresholds.rolling_back_velocity |
double | threshold velocity to validate the vehicle velocity [m/s] | 0.5 |
thresholds.over_velocity_offset |
double | threshold velocity offset to validate the vehicle velocity [m/s] | 2.0 |
thresholds.over_velocity_ratio |
double | threshold ratio to validate the vehicle velocity [*] | 0.2 |
thresholds.overrun_stop_point_dist |
double | threshold distance to overrun stop point [m] | 0.8 |
thresholds.acc_error_offset |
double | threshold ratio to validate the vehicle acceleration [*] | 0.8 |
thresholds.acc_error_scale |
double | threshold acceleration to validate the vehicle acceleration [m] | 0.2 |
thresholds.will_overrun_stop_point_dist |
double | threshold distance to overrun stop point [m] | 1.0 |
thresholds.assumed_limit_acc |
double | assumed acceleration for over run estimation [m] | 5.0 |
thresholds.assumed_delay_time |
double | assumed delay for over run estimation [m] | 0.2 |
thresholds.yaw_deviation_error |
double | threshold angle to validate the vehicle yaw related to the nearest trajectory yaw [rad] | 1.0 |
thresholds.yaw_deviation_warn |
double | threshold angle to trigger a WARN diagnostic [rad] | 0.5 |
over_velocity.vel_lpf_gain |
double | low-pass filter gain for filtering vehicle and target velocity [*] (time constant 2.0s at 30msec sampling period) | 0.985 |
Changelog for package autoware_control_validator
0.50.0 (2026-02-14)
- Merge remote-tracking branch 'origin/main' into humble
- feat: control : fix contol packages compile error when using ros2 jazzy (#11556)
- Contributors: Ryohsuke Mitsudome, 心刚
0.49.0 (2025-12-30)
-
Merge remote-tracking branch 'origin/main' into prepare-0.49.0-changelog
-
refactor: fix leftover dependent autoware_utils from updating vehicle_info_utils (#11734)
-
refactor(control_validator): reduce copy and add test for trajectory aligning (#11718)
- feat: add max trajectory size for reference trajectory alignment
- refactor: feed reverse trajectory before calculation
- refactor: add and arrange appropriate empty vector guards
- refactor: use only the first and the last segments of ref trajectory
- refactor: expose align function into detail namespace so that it can be tested
- add test for align_trajectory_with_reference_trajectory
- refactor: use boundary segment directly on interpolation
- minor: remove unnecessary reference from const bool&
- add explicit type guard for size >= 2
- addressing copilot review
- refactor clamping trajectory function for clearer branching and algorithm flow
- add 2d case test (including pathological one)
- revise test code
- disable pathological test case
* copilot review response ---------
-
feat(control_validator): add low-pass filter parameters for vehicle and target velocities only for over_velocity (#11610)
* feat(control_validator): add low-pass filter parameters for vehicle and target velocities for over_velocity ---------
-
Contributors: Kyoichi Sugahara, Mete Fatih Cırıt, Ryohsuke Mitsudome, Taeseung Sohn
0.48.0 (2025-11-18)
- Merge remote-tracking branch 'origin/main' into humble
- fix: tf2 uses hpp headers in rolling (and is backported) (#11620)
- Contributors: Ryohsuke Mitsudome, Tim Clephas
0.47.1 (2025-08-14)
0.47.0 (2025-08-11)
-
feat: change planning output topic name to /planning/trajectory (#11135)
- change planning output topic name to /planning/trajectory
* style(pre-commit): autofix ---------Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com>
-
fix(planning_validator): init validation status (#11119)
- fix(planning_validator): init validation status
* fix(control_validator): init validation status ---------
-
style(pre-commit): update to clang-format-20 (#11088) Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com>
-
feat(control_validator): enhance trajectory validation with previous reference trajectory (#10939)
- feat(control_validator): enhance trajectory validation with previous reference trajectory
* fix(test_control_validator): update lateral deviation test cases to reflect validation status ---------
-
fix(autoware_control_validator): prevent division by zero in time calculation (#10926)
- fix(lateral_jerk_validator): prevent division by zero in time
File truncated at 100 lines see the full file
Package Dependencies
System Dependencies
Dependant Packages
Launch files
- launch/control_validator.launch.xml
-
- control_validator_param_path [default: $(find-pkg-share autoware_control_validator)/config/control_validator.param.yaml]
- input_reference_trajectory [default: /planning/trajectory]
- input_predicted_trajectory [default: /control/trajectory_follower/lateral/predicted_trajectory]
- input_operational_mode_state [default: /api/operation_mode/state]
Messages
Services
Plugins
Recent questions tagged autoware_control_validator at Robotics Stack Exchange
Package Summary
| Version | 0.50.0 |
| License | Apache License 2.0 |
| Build type | AMENT_CMAKE |
| Use | RECOMMENDED |
Repository Summary
| Description | |
| Checkout URI | https://github.com/autowarefoundation/autoware_universe.git |
| VCS Type | git |
| VCS Version | main |
| Last Updated | 2026-02-25 |
| Dev Status | UNKNOWN |
| Released | UNRELEASED |
| Contributing |
Help Wanted (-)
Good First Issues (-) Pull Requests to Review (-) |
Package Description
Maintainers
- Kyoichi Sugahara
- Makoto Kurihara
- Mamoru Sobue
- Takayuki Murooka
- Yuki Takagi
Authors
- Kyoichi Sugahara
- Takamasa Horibe
- Makoto Kurihara
Control Validator
The control_validator is a module that checks the validity of the output of the control component. The status of the validation can be viewed in the /diagnostics topic.
Supported features
The following features are supported for the validation and can have thresholds set by parameters. The listed features below does not always correspond to the latest implementation.
| Description | Arguments | Diagnostic equation |
|---|---|---|
| Inverse velocity: Measured velocity has a different sign from the target velocity. | measured velocity $v$, target velocity $\hat{v}$, and velocity parameter $c$ | $v \hat{v} < 0, \quad \lvert v \rvert > c$ |
| Overspeed: Measured speed exceeds target speed significantly. | measured velocity $v$, target velocity $\hat{v}$, ratio parameter $r$, and offset parameter $c$ | $\lvert v \rvert > (1 + r) \lvert \hat{v} \rvert + c$ |
| Overrun estimation: estimate overrun even if decelerate by assumed rate. | assumed deceleration, assumed delay |
- Lateral jerk : invalid when the lateral jerk exceeds the configured threshold. The validation uses the vehicle’s velocity and steering angle rate to calculate the resulting lateral jerk. The calculation assumes constant velocity (acceleration is zero).
- Deviation check between reference trajectory and predicted trajectory : invalid when the largest deviation between the predicted trajectory and reference trajectory is greater than the given threshold.
-
Yaw deviation: invalid when the difference between the yaw of the ego vehicle and the nearest (interpolated) trajectory yaw is greater than the given threshold.
- 2 thresholds are implemented, one to trigger a warning diagnostic, and one to trigger an error diagnostic.
Inputs/Outputs
Inputs
The control_validator takes in the following inputs:
| Name | Type | Description |
|---|---|---|
~/input/kinematics |
nav_msgs/Odometry | ego pose and twist |
~/input/reference_trajectory |
autoware_planning_msgs/Trajectory | reference trajectory which is outputted from planning module to to be followed |
~/input/predicted_trajectory |
autoware_planning_msgs/Trajectory | predicted trajectory which is outputted from control module |
Outputs
It outputs the following:
| Name | Type | Description |
|---|---|---|
~/output/validation_status |
control_validator/ControlValidatorStatus | validator status to inform the reason why the trajectory is valid/invalid |
/diagnostics |
diagnostic_msgs/DiagnosticStatus | diagnostics to report errors |
Parameters
The following parameters can be set for the control_validator:
System parameters
| Name | Type | Description | Default value |
|---|---|---|---|
publish_diag |
bool | if true, diagnostics msg is published. | true |
diag_error_count_threshold |
int | the Diag will be set to ERROR when the number of consecutive invalid trajectory exceeds this threshold. (For example, threshold = 1 means, even if the trajectory is invalid, the Diag will not be ERROR if the next trajectory is valid.) | true |
display_on_terminal |
bool | show error msg on terminal | true |
Algorithm parameters
Thresholds
The input trajectory is detected as invalid if the index exceeds the following thresholds.
| Name | Type | Description | Default value |
|---|---|---|---|
thresholds.max_distance_deviation |
double | invalid threshold of the max distance deviation between the predicted path and the reference trajectory [m] | 1.0 |
thresholds.lateral_jerk |
double | invalid threshold of the lateral jerk for steering rate validation [m/s^3] | 10.0 |
thresholds.rolling_back_velocity |
double | threshold velocity to validate the vehicle velocity [m/s] | 0.5 |
thresholds.over_velocity_offset |
double | threshold velocity offset to validate the vehicle velocity [m/s] | 2.0 |
thresholds.over_velocity_ratio |
double | threshold ratio to validate the vehicle velocity [*] | 0.2 |
thresholds.overrun_stop_point_dist |
double | threshold distance to overrun stop point [m] | 0.8 |
thresholds.acc_error_offset |
double | threshold ratio to validate the vehicle acceleration [*] | 0.8 |
thresholds.acc_error_scale |
double | threshold acceleration to validate the vehicle acceleration [m] | 0.2 |
thresholds.will_overrun_stop_point_dist |
double | threshold distance to overrun stop point [m] | 1.0 |
thresholds.assumed_limit_acc |
double | assumed acceleration for over run estimation [m] | 5.0 |
thresholds.assumed_delay_time |
double | assumed delay for over run estimation [m] | 0.2 |
thresholds.yaw_deviation_error |
double | threshold angle to validate the vehicle yaw related to the nearest trajectory yaw [rad] | 1.0 |
thresholds.yaw_deviation_warn |
double | threshold angle to trigger a WARN diagnostic [rad] | 0.5 |
over_velocity.vel_lpf_gain |
double | low-pass filter gain for filtering vehicle and target velocity [*] (time constant 2.0s at 30msec sampling period) | 0.985 |
Changelog for package autoware_control_validator
0.50.0 (2026-02-14)
- Merge remote-tracking branch 'origin/main' into humble
- feat: control : fix contol packages compile error when using ros2 jazzy (#11556)
- Contributors: Ryohsuke Mitsudome, 心刚
0.49.0 (2025-12-30)
-
Merge remote-tracking branch 'origin/main' into prepare-0.49.0-changelog
-
refactor: fix leftover dependent autoware_utils from updating vehicle_info_utils (#11734)
-
refactor(control_validator): reduce copy and add test for trajectory aligning (#11718)
- feat: add max trajectory size for reference trajectory alignment
- refactor: feed reverse trajectory before calculation
- refactor: add and arrange appropriate empty vector guards
- refactor: use only the first and the last segments of ref trajectory
- refactor: expose align function into detail namespace so that it can be tested
- add test for align_trajectory_with_reference_trajectory
- refactor: use boundary segment directly on interpolation
- minor: remove unnecessary reference from const bool&
- add explicit type guard for size >= 2
- addressing copilot review
- refactor clamping trajectory function for clearer branching and algorithm flow
- add 2d case test (including pathological one)
- revise test code
- disable pathological test case
* copilot review response ---------
-
feat(control_validator): add low-pass filter parameters for vehicle and target velocities only for over_velocity (#11610)
* feat(control_validator): add low-pass filter parameters for vehicle and target velocities for over_velocity ---------
-
Contributors: Kyoichi Sugahara, Mete Fatih Cırıt, Ryohsuke Mitsudome, Taeseung Sohn
0.48.0 (2025-11-18)
- Merge remote-tracking branch 'origin/main' into humble
- fix: tf2 uses hpp headers in rolling (and is backported) (#11620)
- Contributors: Ryohsuke Mitsudome, Tim Clephas
0.47.1 (2025-08-14)
0.47.0 (2025-08-11)
-
feat: change planning output topic name to /planning/trajectory (#11135)
- change planning output topic name to /planning/trajectory
* style(pre-commit): autofix ---------Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com>
-
fix(planning_validator): init validation status (#11119)
- fix(planning_validator): init validation status
* fix(control_validator): init validation status ---------
-
style(pre-commit): update to clang-format-20 (#11088) Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com>
-
feat(control_validator): enhance trajectory validation with previous reference trajectory (#10939)
- feat(control_validator): enhance trajectory validation with previous reference trajectory
* fix(test_control_validator): update lateral deviation test cases to reflect validation status ---------
-
fix(autoware_control_validator): prevent division by zero in time calculation (#10926)
- fix(lateral_jerk_validator): prevent division by zero in time
File truncated at 100 lines see the full file
Package Dependencies
System Dependencies
Dependant Packages
Launch files
- launch/control_validator.launch.xml
-
- control_validator_param_path [default: $(find-pkg-share autoware_control_validator)/config/control_validator.param.yaml]
- input_reference_trajectory [default: /planning/trajectory]
- input_predicted_trajectory [default: /control/trajectory_follower/lateral/predicted_trajectory]
- input_operational_mode_state [default: /api/operation_mode/state]
Messages
Services
Plugins
Recent questions tagged autoware_control_validator at Robotics Stack Exchange
Package Summary
| Version | 0.50.0 |
| License | Apache License 2.0 |
| Build type | AMENT_CMAKE |
| Use | RECOMMENDED |
Repository Summary
| Description | |
| Checkout URI | https://github.com/autowarefoundation/autoware_universe.git |
| VCS Type | git |
| VCS Version | main |
| Last Updated | 2026-02-25 |
| Dev Status | UNKNOWN |
| Released | UNRELEASED |
| Contributing |
Help Wanted (-)
Good First Issues (-) Pull Requests to Review (-) |
Package Description
Maintainers
- Kyoichi Sugahara
- Makoto Kurihara
- Mamoru Sobue
- Takayuki Murooka
- Yuki Takagi
Authors
- Kyoichi Sugahara
- Takamasa Horibe
- Makoto Kurihara
Control Validator
The control_validator is a module that checks the validity of the output of the control component. The status of the validation can be viewed in the /diagnostics topic.
Supported features
The following features are supported for the validation and can have thresholds set by parameters. The listed features below does not always correspond to the latest implementation.
| Description | Arguments | Diagnostic equation |
|---|---|---|
| Inverse velocity: Measured velocity has a different sign from the target velocity. | measured velocity $v$, target velocity $\hat{v}$, and velocity parameter $c$ | $v \hat{v} < 0, \quad \lvert v \rvert > c$ |
| Overspeed: Measured speed exceeds target speed significantly. | measured velocity $v$, target velocity $\hat{v}$, ratio parameter $r$, and offset parameter $c$ | $\lvert v \rvert > (1 + r) \lvert \hat{v} \rvert + c$ |
| Overrun estimation: estimate overrun even if decelerate by assumed rate. | assumed deceleration, assumed delay |
- Lateral jerk : invalid when the lateral jerk exceeds the configured threshold. The validation uses the vehicle’s velocity and steering angle rate to calculate the resulting lateral jerk. The calculation assumes constant velocity (acceleration is zero).
- Deviation check between reference trajectory and predicted trajectory : invalid when the largest deviation between the predicted trajectory and reference trajectory is greater than the given threshold.
-
Yaw deviation: invalid when the difference between the yaw of the ego vehicle and the nearest (interpolated) trajectory yaw is greater than the given threshold.
- 2 thresholds are implemented, one to trigger a warning diagnostic, and one to trigger an error diagnostic.
Inputs/Outputs
Inputs
The control_validator takes in the following inputs:
| Name | Type | Description |
|---|---|---|
~/input/kinematics |
nav_msgs/Odometry | ego pose and twist |
~/input/reference_trajectory |
autoware_planning_msgs/Trajectory | reference trajectory which is outputted from planning module to to be followed |
~/input/predicted_trajectory |
autoware_planning_msgs/Trajectory | predicted trajectory which is outputted from control module |
Outputs
It outputs the following:
| Name | Type | Description |
|---|---|---|
~/output/validation_status |
control_validator/ControlValidatorStatus | validator status to inform the reason why the trajectory is valid/invalid |
/diagnostics |
diagnostic_msgs/DiagnosticStatus | diagnostics to report errors |
Parameters
The following parameters can be set for the control_validator:
System parameters
| Name | Type | Description | Default value |
|---|---|---|---|
publish_diag |
bool | if true, diagnostics msg is published. | true |
diag_error_count_threshold |
int | the Diag will be set to ERROR when the number of consecutive invalid trajectory exceeds this threshold. (For example, threshold = 1 means, even if the trajectory is invalid, the Diag will not be ERROR if the next trajectory is valid.) | true |
display_on_terminal |
bool | show error msg on terminal | true |
Algorithm parameters
Thresholds
The input trajectory is detected as invalid if the index exceeds the following thresholds.
| Name | Type | Description | Default value |
|---|---|---|---|
thresholds.max_distance_deviation |
double | invalid threshold of the max distance deviation between the predicted path and the reference trajectory [m] | 1.0 |
thresholds.lateral_jerk |
double | invalid threshold of the lateral jerk for steering rate validation [m/s^3] | 10.0 |
thresholds.rolling_back_velocity |
double | threshold velocity to validate the vehicle velocity [m/s] | 0.5 |
thresholds.over_velocity_offset |
double | threshold velocity offset to validate the vehicle velocity [m/s] | 2.0 |
thresholds.over_velocity_ratio |
double | threshold ratio to validate the vehicle velocity [*] | 0.2 |
thresholds.overrun_stop_point_dist |
double | threshold distance to overrun stop point [m] | 0.8 |
thresholds.acc_error_offset |
double | threshold ratio to validate the vehicle acceleration [*] | 0.8 |
thresholds.acc_error_scale |
double | threshold acceleration to validate the vehicle acceleration [m] | 0.2 |
thresholds.will_overrun_stop_point_dist |
double | threshold distance to overrun stop point [m] | 1.0 |
thresholds.assumed_limit_acc |
double | assumed acceleration for over run estimation [m] | 5.0 |
thresholds.assumed_delay_time |
double | assumed delay for over run estimation [m] | 0.2 |
thresholds.yaw_deviation_error |
double | threshold angle to validate the vehicle yaw related to the nearest trajectory yaw [rad] | 1.0 |
thresholds.yaw_deviation_warn |
double | threshold angle to trigger a WARN diagnostic [rad] | 0.5 |
over_velocity.vel_lpf_gain |
double | low-pass filter gain for filtering vehicle and target velocity [*] (time constant 2.0s at 30msec sampling period) | 0.985 |
Changelog for package autoware_control_validator
0.50.0 (2026-02-14)
- Merge remote-tracking branch 'origin/main' into humble
- feat: control : fix contol packages compile error when using ros2 jazzy (#11556)
- Contributors: Ryohsuke Mitsudome, 心刚
0.49.0 (2025-12-30)
-
Merge remote-tracking branch 'origin/main' into prepare-0.49.0-changelog
-
refactor: fix leftover dependent autoware_utils from updating vehicle_info_utils (#11734)
-
refactor(control_validator): reduce copy and add test for trajectory aligning (#11718)
- feat: add max trajectory size for reference trajectory alignment
- refactor: feed reverse trajectory before calculation
- refactor: add and arrange appropriate empty vector guards
- refactor: use only the first and the last segments of ref trajectory
- refactor: expose align function into detail namespace so that it can be tested
- add test for align_trajectory_with_reference_trajectory
- refactor: use boundary segment directly on interpolation
- minor: remove unnecessary reference from const bool&
- add explicit type guard for size >= 2
- addressing copilot review
- refactor clamping trajectory function for clearer branching and algorithm flow
- add 2d case test (including pathological one)
- revise test code
- disable pathological test case
* copilot review response ---------
-
feat(control_validator): add low-pass filter parameters for vehicle and target velocities only for over_velocity (#11610)
* feat(control_validator): add low-pass filter parameters for vehicle and target velocities for over_velocity ---------
-
Contributors: Kyoichi Sugahara, Mete Fatih Cırıt, Ryohsuke Mitsudome, Taeseung Sohn
0.48.0 (2025-11-18)
- Merge remote-tracking branch 'origin/main' into humble
- fix: tf2 uses hpp headers in rolling (and is backported) (#11620)
- Contributors: Ryohsuke Mitsudome, Tim Clephas
0.47.1 (2025-08-14)
0.47.0 (2025-08-11)
-
feat: change planning output topic name to /planning/trajectory (#11135)
- change planning output topic name to /planning/trajectory
* style(pre-commit): autofix ---------Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com>
-
fix(planning_validator): init validation status (#11119)
- fix(planning_validator): init validation status
* fix(control_validator): init validation status ---------
-
style(pre-commit): update to clang-format-20 (#11088) Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com>
-
feat(control_validator): enhance trajectory validation with previous reference trajectory (#10939)
- feat(control_validator): enhance trajectory validation with previous reference trajectory
* fix(test_control_validator): update lateral deviation test cases to reflect validation status ---------
-
fix(autoware_control_validator): prevent division by zero in time calculation (#10926)
- fix(lateral_jerk_validator): prevent division by zero in time
File truncated at 100 lines see the full file
Package Dependencies
System Dependencies
Dependant Packages
Launch files
- launch/control_validator.launch.xml
-
- control_validator_param_path [default: $(find-pkg-share autoware_control_validator)/config/control_validator.param.yaml]
- input_reference_trajectory [default: /planning/trajectory]
- input_predicted_trajectory [default: /control/trajectory_follower/lateral/predicted_trajectory]
- input_operational_mode_state [default: /api/operation_mode/state]
Messages
Services
Plugins
Recent questions tagged autoware_control_validator at Robotics Stack Exchange
Package Summary
| Version | 0.50.0 |
| License | Apache License 2.0 |
| Build type | AMENT_CMAKE |
| Use | RECOMMENDED |
Repository Summary
| Description | |
| Checkout URI | https://github.com/autowarefoundation/autoware_universe.git |
| VCS Type | git |
| VCS Version | main |
| Last Updated | 2026-02-25 |
| Dev Status | UNKNOWN |
| Released | UNRELEASED |
| Contributing |
Help Wanted (-)
Good First Issues (-) Pull Requests to Review (-) |
Package Description
Maintainers
- Kyoichi Sugahara
- Makoto Kurihara
- Mamoru Sobue
- Takayuki Murooka
- Yuki Takagi
Authors
- Kyoichi Sugahara
- Takamasa Horibe
- Makoto Kurihara
Control Validator
The control_validator is a module that checks the validity of the output of the control component. The status of the validation can be viewed in the /diagnostics topic.
Supported features
The following features are supported for the validation and can have thresholds set by parameters. The listed features below does not always correspond to the latest implementation.
| Description | Arguments | Diagnostic equation |
|---|---|---|
| Inverse velocity: Measured velocity has a different sign from the target velocity. | measured velocity $v$, target velocity $\hat{v}$, and velocity parameter $c$ | $v \hat{v} < 0, \quad \lvert v \rvert > c$ |
| Overspeed: Measured speed exceeds target speed significantly. | measured velocity $v$, target velocity $\hat{v}$, ratio parameter $r$, and offset parameter $c$ | $\lvert v \rvert > (1 + r) \lvert \hat{v} \rvert + c$ |
| Overrun estimation: estimate overrun even if decelerate by assumed rate. | assumed deceleration, assumed delay |
- Lateral jerk : invalid when the lateral jerk exceeds the configured threshold. The validation uses the vehicle’s velocity and steering angle rate to calculate the resulting lateral jerk. The calculation assumes constant velocity (acceleration is zero).
- Deviation check between reference trajectory and predicted trajectory : invalid when the largest deviation between the predicted trajectory and reference trajectory is greater than the given threshold.
-
Yaw deviation: invalid when the difference between the yaw of the ego vehicle and the nearest (interpolated) trajectory yaw is greater than the given threshold.
- 2 thresholds are implemented, one to trigger a warning diagnostic, and one to trigger an error diagnostic.
Inputs/Outputs
Inputs
The control_validator takes in the following inputs:
| Name | Type | Description |
|---|---|---|
~/input/kinematics |
nav_msgs/Odometry | ego pose and twist |
~/input/reference_trajectory |
autoware_planning_msgs/Trajectory | reference trajectory which is outputted from planning module to to be followed |
~/input/predicted_trajectory |
autoware_planning_msgs/Trajectory | predicted trajectory which is outputted from control module |
Outputs
It outputs the following:
| Name | Type | Description |
|---|---|---|
~/output/validation_status |
control_validator/ControlValidatorStatus | validator status to inform the reason why the trajectory is valid/invalid |
/diagnostics |
diagnostic_msgs/DiagnosticStatus | diagnostics to report errors |
Parameters
The following parameters can be set for the control_validator:
System parameters
| Name | Type | Description | Default value |
|---|---|---|---|
publish_diag |
bool | if true, diagnostics msg is published. | true |
diag_error_count_threshold |
int | the Diag will be set to ERROR when the number of consecutive invalid trajectory exceeds this threshold. (For example, threshold = 1 means, even if the trajectory is invalid, the Diag will not be ERROR if the next trajectory is valid.) | true |
display_on_terminal |
bool | show error msg on terminal | true |
Algorithm parameters
Thresholds
The input trajectory is detected as invalid if the index exceeds the following thresholds.
| Name | Type | Description | Default value |
|---|---|---|---|
thresholds.max_distance_deviation |
double | invalid threshold of the max distance deviation between the predicted path and the reference trajectory [m] | 1.0 |
thresholds.lateral_jerk |
double | invalid threshold of the lateral jerk for steering rate validation [m/s^3] | 10.0 |
thresholds.rolling_back_velocity |
double | threshold velocity to validate the vehicle velocity [m/s] | 0.5 |
thresholds.over_velocity_offset |
double | threshold velocity offset to validate the vehicle velocity [m/s] | 2.0 |
thresholds.over_velocity_ratio |
double | threshold ratio to validate the vehicle velocity [*] | 0.2 |
thresholds.overrun_stop_point_dist |
double | threshold distance to overrun stop point [m] | 0.8 |
thresholds.acc_error_offset |
double | threshold ratio to validate the vehicle acceleration [*] | 0.8 |
thresholds.acc_error_scale |
double | threshold acceleration to validate the vehicle acceleration [m] | 0.2 |
thresholds.will_overrun_stop_point_dist |
double | threshold distance to overrun stop point [m] | 1.0 |
thresholds.assumed_limit_acc |
double | assumed acceleration for over run estimation [m] | 5.0 |
thresholds.assumed_delay_time |
double | assumed delay for over run estimation [m] | 0.2 |
thresholds.yaw_deviation_error |
double | threshold angle to validate the vehicle yaw related to the nearest trajectory yaw [rad] | 1.0 |
thresholds.yaw_deviation_warn |
double | threshold angle to trigger a WARN diagnostic [rad] | 0.5 |
over_velocity.vel_lpf_gain |
double | low-pass filter gain for filtering vehicle and target velocity [*] (time constant 2.0s at 30msec sampling period) | 0.985 |
Changelog for package autoware_control_validator
0.50.0 (2026-02-14)
- Merge remote-tracking branch 'origin/main' into humble
- feat: control : fix contol packages compile error when using ros2 jazzy (#11556)
- Contributors: Ryohsuke Mitsudome, 心刚
0.49.0 (2025-12-30)
-
Merge remote-tracking branch 'origin/main' into prepare-0.49.0-changelog
-
refactor: fix leftover dependent autoware_utils from updating vehicle_info_utils (#11734)
-
refactor(control_validator): reduce copy and add test for trajectory aligning (#11718)
- feat: add max trajectory size for reference trajectory alignment
- refactor: feed reverse trajectory before calculation
- refactor: add and arrange appropriate empty vector guards
- refactor: use only the first and the last segments of ref trajectory
- refactor: expose align function into detail namespace so that it can be tested
- add test for align_trajectory_with_reference_trajectory
- refactor: use boundary segment directly on interpolation
- minor: remove unnecessary reference from const bool&
- add explicit type guard for size >= 2
- addressing copilot review
- refactor clamping trajectory function for clearer branching and algorithm flow
- add 2d case test (including pathological one)
- revise test code
- disable pathological test case
* copilot review response ---------
-
feat(control_validator): add low-pass filter parameters for vehicle and target velocities only for over_velocity (#11610)
* feat(control_validator): add low-pass filter parameters for vehicle and target velocities for over_velocity ---------
-
Contributors: Kyoichi Sugahara, Mete Fatih Cırıt, Ryohsuke Mitsudome, Taeseung Sohn
0.48.0 (2025-11-18)
- Merge remote-tracking branch 'origin/main' into humble
- fix: tf2 uses hpp headers in rolling (and is backported) (#11620)
- Contributors: Ryohsuke Mitsudome, Tim Clephas
0.47.1 (2025-08-14)
0.47.0 (2025-08-11)
-
feat: change planning output topic name to /planning/trajectory (#11135)
- change planning output topic name to /planning/trajectory
* style(pre-commit): autofix ---------Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com>
-
fix(planning_validator): init validation status (#11119)
- fix(planning_validator): init validation status
* fix(control_validator): init validation status ---------
-
style(pre-commit): update to clang-format-20 (#11088) Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com>
-
feat(control_validator): enhance trajectory validation with previous reference trajectory (#10939)
- feat(control_validator): enhance trajectory validation with previous reference trajectory
* fix(test_control_validator): update lateral deviation test cases to reflect validation status ---------
-
fix(autoware_control_validator): prevent division by zero in time calculation (#10926)
- fix(lateral_jerk_validator): prevent division by zero in time
File truncated at 100 lines see the full file
Package Dependencies
System Dependencies
Dependant Packages
Launch files
- launch/control_validator.launch.xml
-
- control_validator_param_path [default: $(find-pkg-share autoware_control_validator)/config/control_validator.param.yaml]
- input_reference_trajectory [default: /planning/trajectory]
- input_predicted_trajectory [default: /control/trajectory_follower/lateral/predicted_trajectory]
- input_operational_mode_state [default: /api/operation_mode/state]
Messages
Services
Plugins
Recent questions tagged autoware_control_validator at Robotics Stack Exchange
Package Summary
| Version | 0.50.0 |
| License | Apache License 2.0 |
| Build type | AMENT_CMAKE |
| Use | RECOMMENDED |
Repository Summary
| Description | |
| Checkout URI | https://github.com/autowarefoundation/autoware_universe.git |
| VCS Type | git |
| VCS Version | main |
| Last Updated | 2026-02-25 |
| Dev Status | UNKNOWN |
| Released | UNRELEASED |
| Contributing |
Help Wanted (-)
Good First Issues (-) Pull Requests to Review (-) |
Package Description
Maintainers
- Kyoichi Sugahara
- Makoto Kurihara
- Mamoru Sobue
- Takayuki Murooka
- Yuki Takagi
Authors
- Kyoichi Sugahara
- Takamasa Horibe
- Makoto Kurihara
Control Validator
The control_validator is a module that checks the validity of the output of the control component. The status of the validation can be viewed in the /diagnostics topic.
Supported features
The following features are supported for the validation and can have thresholds set by parameters. The listed features below does not always correspond to the latest implementation.
| Description | Arguments | Diagnostic equation |
|---|---|---|
| Inverse velocity: Measured velocity has a different sign from the target velocity. | measured velocity $v$, target velocity $\hat{v}$, and velocity parameter $c$ | $v \hat{v} < 0, \quad \lvert v \rvert > c$ |
| Overspeed: Measured speed exceeds target speed significantly. | measured velocity $v$, target velocity $\hat{v}$, ratio parameter $r$, and offset parameter $c$ | $\lvert v \rvert > (1 + r) \lvert \hat{v} \rvert + c$ |
| Overrun estimation: estimate overrun even if decelerate by assumed rate. | assumed deceleration, assumed delay |
- Lateral jerk : invalid when the lateral jerk exceeds the configured threshold. The validation uses the vehicle’s velocity and steering angle rate to calculate the resulting lateral jerk. The calculation assumes constant velocity (acceleration is zero).
- Deviation check between reference trajectory and predicted trajectory : invalid when the largest deviation between the predicted trajectory and reference trajectory is greater than the given threshold.
-
Yaw deviation: invalid when the difference between the yaw of the ego vehicle and the nearest (interpolated) trajectory yaw is greater than the given threshold.
- 2 thresholds are implemented, one to trigger a warning diagnostic, and one to trigger an error diagnostic.
Inputs/Outputs
Inputs
The control_validator takes in the following inputs:
| Name | Type | Description |
|---|---|---|
~/input/kinematics |
nav_msgs/Odometry | ego pose and twist |
~/input/reference_trajectory |
autoware_planning_msgs/Trajectory | reference trajectory which is outputted from planning module to to be followed |
~/input/predicted_trajectory |
autoware_planning_msgs/Trajectory | predicted trajectory which is outputted from control module |
Outputs
It outputs the following:
| Name | Type | Description |
|---|---|---|
~/output/validation_status |
control_validator/ControlValidatorStatus | validator status to inform the reason why the trajectory is valid/invalid |
/diagnostics |
diagnostic_msgs/DiagnosticStatus | diagnostics to report errors |
Parameters
The following parameters can be set for the control_validator:
System parameters
| Name | Type | Description | Default value |
|---|---|---|---|
publish_diag |
bool | if true, diagnostics msg is published. | true |
diag_error_count_threshold |
int | the Diag will be set to ERROR when the number of consecutive invalid trajectory exceeds this threshold. (For example, threshold = 1 means, even if the trajectory is invalid, the Diag will not be ERROR if the next trajectory is valid.) | true |
display_on_terminal |
bool | show error msg on terminal | true |
Algorithm parameters
Thresholds
The input trajectory is detected as invalid if the index exceeds the following thresholds.
| Name | Type | Description | Default value |
|---|---|---|---|
thresholds.max_distance_deviation |
double | invalid threshold of the max distance deviation between the predicted path and the reference trajectory [m] | 1.0 |
thresholds.lateral_jerk |
double | invalid threshold of the lateral jerk for steering rate validation [m/s^3] | 10.0 |
thresholds.rolling_back_velocity |
double | threshold velocity to validate the vehicle velocity [m/s] | 0.5 |
thresholds.over_velocity_offset |
double | threshold velocity offset to validate the vehicle velocity [m/s] | 2.0 |
thresholds.over_velocity_ratio |
double | threshold ratio to validate the vehicle velocity [*] | 0.2 |
thresholds.overrun_stop_point_dist |
double | threshold distance to overrun stop point [m] | 0.8 |
thresholds.acc_error_offset |
double | threshold ratio to validate the vehicle acceleration [*] | 0.8 |
thresholds.acc_error_scale |
double | threshold acceleration to validate the vehicle acceleration [m] | 0.2 |
thresholds.will_overrun_stop_point_dist |
double | threshold distance to overrun stop point [m] | 1.0 |
thresholds.assumed_limit_acc |
double | assumed acceleration for over run estimation [m] | 5.0 |
thresholds.assumed_delay_time |
double | assumed delay for over run estimation [m] | 0.2 |
thresholds.yaw_deviation_error |
double | threshold angle to validate the vehicle yaw related to the nearest trajectory yaw [rad] | 1.0 |
thresholds.yaw_deviation_warn |
double | threshold angle to trigger a WARN diagnostic [rad] | 0.5 |
over_velocity.vel_lpf_gain |
double | low-pass filter gain for filtering vehicle and target velocity [*] (time constant 2.0s at 30msec sampling period) | 0.985 |
Changelog for package autoware_control_validator
0.50.0 (2026-02-14)
- Merge remote-tracking branch 'origin/main' into humble
- feat: control : fix contol packages compile error when using ros2 jazzy (#11556)
- Contributors: Ryohsuke Mitsudome, 心刚
0.49.0 (2025-12-30)
-
Merge remote-tracking branch 'origin/main' into prepare-0.49.0-changelog
-
refactor: fix leftover dependent autoware_utils from updating vehicle_info_utils (#11734)
-
refactor(control_validator): reduce copy and add test for trajectory aligning (#11718)
- feat: add max trajectory size for reference trajectory alignment
- refactor: feed reverse trajectory before calculation
- refactor: add and arrange appropriate empty vector guards
- refactor: use only the first and the last segments of ref trajectory
- refactor: expose align function into detail namespace so that it can be tested
- add test for align_trajectory_with_reference_trajectory
- refactor: use boundary segment directly on interpolation
- minor: remove unnecessary reference from const bool&
- add explicit type guard for size >= 2
- addressing copilot review
- refactor clamping trajectory function for clearer branching and algorithm flow
- add 2d case test (including pathological one)
- revise test code
- disable pathological test case
* copilot review response ---------
-
feat(control_validator): add low-pass filter parameters for vehicle and target velocities only for over_velocity (#11610)
* feat(control_validator): add low-pass filter parameters for vehicle and target velocities for over_velocity ---------
-
Contributors: Kyoichi Sugahara, Mete Fatih Cırıt, Ryohsuke Mitsudome, Taeseung Sohn
0.48.0 (2025-11-18)
- Merge remote-tracking branch 'origin/main' into humble
- fix: tf2 uses hpp headers in rolling (and is backported) (#11620)
- Contributors: Ryohsuke Mitsudome, Tim Clephas
0.47.1 (2025-08-14)
0.47.0 (2025-08-11)
-
feat: change planning output topic name to /planning/trajectory (#11135)
- change planning output topic name to /planning/trajectory
* style(pre-commit): autofix ---------Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com>
-
fix(planning_validator): init validation status (#11119)
- fix(planning_validator): init validation status
* fix(control_validator): init validation status ---------
-
style(pre-commit): update to clang-format-20 (#11088) Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com>
-
feat(control_validator): enhance trajectory validation with previous reference trajectory (#10939)
- feat(control_validator): enhance trajectory validation with previous reference trajectory
* fix(test_control_validator): update lateral deviation test cases to reflect validation status ---------
-
fix(autoware_control_validator): prevent division by zero in time calculation (#10926)
- fix(lateral_jerk_validator): prevent division by zero in time
File truncated at 100 lines see the full file
Package Dependencies
System Dependencies
Dependant Packages
Launch files
- launch/control_validator.launch.xml
-
- control_validator_param_path [default: $(find-pkg-share autoware_control_validator)/config/control_validator.param.yaml]
- input_reference_trajectory [default: /planning/trajectory]
- input_predicted_trajectory [default: /control/trajectory_follower/lateral/predicted_trajectory]
- input_operational_mode_state [default: /api/operation_mode/state]
Messages
Services
Plugins
Recent questions tagged autoware_control_validator at Robotics Stack Exchange
Package Summary
| Version | 0.50.0 |
| License | Apache License 2.0 |
| Build type | AMENT_CMAKE |
| Use | RECOMMENDED |
Repository Summary
| Description | |
| Checkout URI | https://github.com/autowarefoundation/autoware_universe.git |
| VCS Type | git |
| VCS Version | main |
| Last Updated | 2026-02-25 |
| Dev Status | UNKNOWN |
| Released | UNRELEASED |
| Contributing |
Help Wanted (-)
Good First Issues (-) Pull Requests to Review (-) |
Package Description
Maintainers
- Kyoichi Sugahara
- Makoto Kurihara
- Mamoru Sobue
- Takayuki Murooka
- Yuki Takagi
Authors
- Kyoichi Sugahara
- Takamasa Horibe
- Makoto Kurihara
Control Validator
The control_validator is a module that checks the validity of the output of the control component. The status of the validation can be viewed in the /diagnostics topic.
Supported features
The following features are supported for the validation and can have thresholds set by parameters. The listed features below does not always correspond to the latest implementation.
| Description | Arguments | Diagnostic equation |
|---|---|---|
| Inverse velocity: Measured velocity has a different sign from the target velocity. | measured velocity $v$, target velocity $\hat{v}$, and velocity parameter $c$ | $v \hat{v} < 0, \quad \lvert v \rvert > c$ |
| Overspeed: Measured speed exceeds target speed significantly. | measured velocity $v$, target velocity $\hat{v}$, ratio parameter $r$, and offset parameter $c$ | $\lvert v \rvert > (1 + r) \lvert \hat{v} \rvert + c$ |
| Overrun estimation: estimate overrun even if decelerate by assumed rate. | assumed deceleration, assumed delay |
- Lateral jerk : invalid when the lateral jerk exceeds the configured threshold. The validation uses the vehicle’s velocity and steering angle rate to calculate the resulting lateral jerk. The calculation assumes constant velocity (acceleration is zero).
- Deviation check between reference trajectory and predicted trajectory : invalid when the largest deviation between the predicted trajectory and reference trajectory is greater than the given threshold.
-
Yaw deviation: invalid when the difference between the yaw of the ego vehicle and the nearest (interpolated) trajectory yaw is greater than the given threshold.
- 2 thresholds are implemented, one to trigger a warning diagnostic, and one to trigger an error diagnostic.
Inputs/Outputs
Inputs
The control_validator takes in the following inputs:
| Name | Type | Description |
|---|---|---|
~/input/kinematics |
nav_msgs/Odometry | ego pose and twist |
~/input/reference_trajectory |
autoware_planning_msgs/Trajectory | reference trajectory which is outputted from planning module to to be followed |
~/input/predicted_trajectory |
autoware_planning_msgs/Trajectory | predicted trajectory which is outputted from control module |
Outputs
It outputs the following:
| Name | Type | Description |
|---|---|---|
~/output/validation_status |
control_validator/ControlValidatorStatus | validator status to inform the reason why the trajectory is valid/invalid |
/diagnostics |
diagnostic_msgs/DiagnosticStatus | diagnostics to report errors |
Parameters
The following parameters can be set for the control_validator:
System parameters
| Name | Type | Description | Default value |
|---|---|---|---|
publish_diag |
bool | if true, diagnostics msg is published. | true |
diag_error_count_threshold |
int | the Diag will be set to ERROR when the number of consecutive invalid trajectory exceeds this threshold. (For example, threshold = 1 means, even if the trajectory is invalid, the Diag will not be ERROR if the next trajectory is valid.) | true |
display_on_terminal |
bool | show error msg on terminal | true |
Algorithm parameters
Thresholds
The input trajectory is detected as invalid if the index exceeds the following thresholds.
| Name | Type | Description | Default value |
|---|---|---|---|
thresholds.max_distance_deviation |
double | invalid threshold of the max distance deviation between the predicted path and the reference trajectory [m] | 1.0 |
thresholds.lateral_jerk |
double | invalid threshold of the lateral jerk for steering rate validation [m/s^3] | 10.0 |
thresholds.rolling_back_velocity |
double | threshold velocity to validate the vehicle velocity [m/s] | 0.5 |
thresholds.over_velocity_offset |
double | threshold velocity offset to validate the vehicle velocity [m/s] | 2.0 |
thresholds.over_velocity_ratio |
double | threshold ratio to validate the vehicle velocity [*] | 0.2 |
thresholds.overrun_stop_point_dist |
double | threshold distance to overrun stop point [m] | 0.8 |
thresholds.acc_error_offset |
double | threshold ratio to validate the vehicle acceleration [*] | 0.8 |
thresholds.acc_error_scale |
double | threshold acceleration to validate the vehicle acceleration [m] | 0.2 |
thresholds.will_overrun_stop_point_dist |
double | threshold distance to overrun stop point [m] | 1.0 |
thresholds.assumed_limit_acc |
double | assumed acceleration for over run estimation [m] | 5.0 |
thresholds.assumed_delay_time |
double | assumed delay for over run estimation [m] | 0.2 |
thresholds.yaw_deviation_error |
double | threshold angle to validate the vehicle yaw related to the nearest trajectory yaw [rad] | 1.0 |
thresholds.yaw_deviation_warn |
double | threshold angle to trigger a WARN diagnostic [rad] | 0.5 |
over_velocity.vel_lpf_gain |
double | low-pass filter gain for filtering vehicle and target velocity [*] (time constant 2.0s at 30msec sampling period) | 0.985 |
Changelog for package autoware_control_validator
0.50.0 (2026-02-14)
- Merge remote-tracking branch 'origin/main' into humble
- feat: control : fix contol packages compile error when using ros2 jazzy (#11556)
- Contributors: Ryohsuke Mitsudome, 心刚
0.49.0 (2025-12-30)
-
Merge remote-tracking branch 'origin/main' into prepare-0.49.0-changelog
-
refactor: fix leftover dependent autoware_utils from updating vehicle_info_utils (#11734)
-
refactor(control_validator): reduce copy and add test for trajectory aligning (#11718)
- feat: add max trajectory size for reference trajectory alignment
- refactor: feed reverse trajectory before calculation
- refactor: add and arrange appropriate empty vector guards
- refactor: use only the first and the last segments of ref trajectory
- refactor: expose align function into detail namespace so that it can be tested
- add test for align_trajectory_with_reference_trajectory
- refactor: use boundary segment directly on interpolation
- minor: remove unnecessary reference from const bool&
- add explicit type guard for size >= 2
- addressing copilot review
- refactor clamping trajectory function for clearer branching and algorithm flow
- add 2d case test (including pathological one)
- revise test code
- disable pathological test case
* copilot review response ---------
-
feat(control_validator): add low-pass filter parameters for vehicle and target velocities only for over_velocity (#11610)
* feat(control_validator): add low-pass filter parameters for vehicle and target velocities for over_velocity ---------
-
Contributors: Kyoichi Sugahara, Mete Fatih Cırıt, Ryohsuke Mitsudome, Taeseung Sohn
0.48.0 (2025-11-18)
- Merge remote-tracking branch 'origin/main' into humble
- fix: tf2 uses hpp headers in rolling (and is backported) (#11620)
- Contributors: Ryohsuke Mitsudome, Tim Clephas
0.47.1 (2025-08-14)
0.47.0 (2025-08-11)
-
feat: change planning output topic name to /planning/trajectory (#11135)
- change planning output topic name to /planning/trajectory
* style(pre-commit): autofix ---------Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com>
-
fix(planning_validator): init validation status (#11119)
- fix(planning_validator): init validation status
* fix(control_validator): init validation status ---------
-
style(pre-commit): update to clang-format-20 (#11088) Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com>
-
feat(control_validator): enhance trajectory validation with previous reference trajectory (#10939)
- feat(control_validator): enhance trajectory validation with previous reference trajectory
* fix(test_control_validator): update lateral deviation test cases to reflect validation status ---------
-
fix(autoware_control_validator): prevent division by zero in time calculation (#10926)
- fix(lateral_jerk_validator): prevent division by zero in time
File truncated at 100 lines see the full file
Package Dependencies
System Dependencies
Dependant Packages
Launch files
- launch/control_validator.launch.xml
-
- control_validator_param_path [default: $(find-pkg-share autoware_control_validator)/config/control_validator.param.yaml]
- input_reference_trajectory [default: /planning/trajectory]
- input_predicted_trajectory [default: /control/trajectory_follower/lateral/predicted_trajectory]
- input_operational_mode_state [default: /api/operation_mode/state]
Messages
Services
Plugins
Recent questions tagged autoware_control_validator at Robotics Stack Exchange
Package Summary
| Version | 0.50.0 |
| License | Apache License 2.0 |
| Build type | AMENT_CMAKE |
| Use | RECOMMENDED |
Repository Summary
| Description | |
| Checkout URI | https://github.com/autowarefoundation/autoware_universe.git |
| VCS Type | git |
| VCS Version | main |
| Last Updated | 2026-02-25 |
| Dev Status | UNKNOWN |
| Released | UNRELEASED |
| Contributing |
Help Wanted (-)
Good First Issues (-) Pull Requests to Review (-) |
Package Description
Maintainers
- Kyoichi Sugahara
- Makoto Kurihara
- Mamoru Sobue
- Takayuki Murooka
- Yuki Takagi
Authors
- Kyoichi Sugahara
- Takamasa Horibe
- Makoto Kurihara
Control Validator
The control_validator is a module that checks the validity of the output of the control component. The status of the validation can be viewed in the /diagnostics topic.
Supported features
The following features are supported for the validation and can have thresholds set by parameters. The listed features below does not always correspond to the latest implementation.
| Description | Arguments | Diagnostic equation |
|---|---|---|
| Inverse velocity: Measured velocity has a different sign from the target velocity. | measured velocity $v$, target velocity $\hat{v}$, and velocity parameter $c$ | $v \hat{v} < 0, \quad \lvert v \rvert > c$ |
| Overspeed: Measured speed exceeds target speed significantly. | measured velocity $v$, target velocity $\hat{v}$, ratio parameter $r$, and offset parameter $c$ | $\lvert v \rvert > (1 + r) \lvert \hat{v} \rvert + c$ |
| Overrun estimation: estimate overrun even if decelerate by assumed rate. | assumed deceleration, assumed delay |
- Lateral jerk : invalid when the lateral jerk exceeds the configured threshold. The validation uses the vehicle’s velocity and steering angle rate to calculate the resulting lateral jerk. The calculation assumes constant velocity (acceleration is zero).
- Deviation check between reference trajectory and predicted trajectory : invalid when the largest deviation between the predicted trajectory and reference trajectory is greater than the given threshold.
-
Yaw deviation: invalid when the difference between the yaw of the ego vehicle and the nearest (interpolated) trajectory yaw is greater than the given threshold.
- 2 thresholds are implemented, one to trigger a warning diagnostic, and one to trigger an error diagnostic.
Inputs/Outputs
Inputs
The control_validator takes in the following inputs:
| Name | Type | Description |
|---|---|---|
~/input/kinematics |
nav_msgs/Odometry | ego pose and twist |
~/input/reference_trajectory |
autoware_planning_msgs/Trajectory | reference trajectory which is outputted from planning module to to be followed |
~/input/predicted_trajectory |
autoware_planning_msgs/Trajectory | predicted trajectory which is outputted from control module |
Outputs
It outputs the following:
| Name | Type | Description |
|---|---|---|
~/output/validation_status |
control_validator/ControlValidatorStatus | validator status to inform the reason why the trajectory is valid/invalid |
/diagnostics |
diagnostic_msgs/DiagnosticStatus | diagnostics to report errors |
Parameters
The following parameters can be set for the control_validator:
System parameters
| Name | Type | Description | Default value |
|---|---|---|---|
publish_diag |
bool | if true, diagnostics msg is published. | true |
diag_error_count_threshold |
int | the Diag will be set to ERROR when the number of consecutive invalid trajectory exceeds this threshold. (For example, threshold = 1 means, even if the trajectory is invalid, the Diag will not be ERROR if the next trajectory is valid.) | true |
display_on_terminal |
bool | show error msg on terminal | true |
Algorithm parameters
Thresholds
The input trajectory is detected as invalid if the index exceeds the following thresholds.
| Name | Type | Description | Default value |
|---|---|---|---|
thresholds.max_distance_deviation |
double | invalid threshold of the max distance deviation between the predicted path and the reference trajectory [m] | 1.0 |
thresholds.lateral_jerk |
double | invalid threshold of the lateral jerk for steering rate validation [m/s^3] | 10.0 |
thresholds.rolling_back_velocity |
double | threshold velocity to validate the vehicle velocity [m/s] | 0.5 |
thresholds.over_velocity_offset |
double | threshold velocity offset to validate the vehicle velocity [m/s] | 2.0 |
thresholds.over_velocity_ratio |
double | threshold ratio to validate the vehicle velocity [*] | 0.2 |
thresholds.overrun_stop_point_dist |
double | threshold distance to overrun stop point [m] | 0.8 |
thresholds.acc_error_offset |
double | threshold ratio to validate the vehicle acceleration [*] | 0.8 |
thresholds.acc_error_scale |
double | threshold acceleration to validate the vehicle acceleration [m] | 0.2 |
thresholds.will_overrun_stop_point_dist |
double | threshold distance to overrun stop point [m] | 1.0 |
thresholds.assumed_limit_acc |
double | assumed acceleration for over run estimation [m] | 5.0 |
thresholds.assumed_delay_time |
double | assumed delay for over run estimation [m] | 0.2 |
thresholds.yaw_deviation_error |
double | threshold angle to validate the vehicle yaw related to the nearest trajectory yaw [rad] | 1.0 |
thresholds.yaw_deviation_warn |
double | threshold angle to trigger a WARN diagnostic [rad] | 0.5 |
over_velocity.vel_lpf_gain |
double | low-pass filter gain for filtering vehicle and target velocity [*] (time constant 2.0s at 30msec sampling period) | 0.985 |
Changelog for package autoware_control_validator
0.50.0 (2026-02-14)
- Merge remote-tracking branch 'origin/main' into humble
- feat: control : fix contol packages compile error when using ros2 jazzy (#11556)
- Contributors: Ryohsuke Mitsudome, 心刚
0.49.0 (2025-12-30)
-
Merge remote-tracking branch 'origin/main' into prepare-0.49.0-changelog
-
refactor: fix leftover dependent autoware_utils from updating vehicle_info_utils (#11734)
-
refactor(control_validator): reduce copy and add test for trajectory aligning (#11718)
- feat: add max trajectory size for reference trajectory alignment
- refactor: feed reverse trajectory before calculation
- refactor: add and arrange appropriate empty vector guards
- refactor: use only the first and the last segments of ref trajectory
- refactor: expose align function into detail namespace so that it can be tested
- add test for align_trajectory_with_reference_trajectory
- refactor: use boundary segment directly on interpolation
- minor: remove unnecessary reference from const bool&
- add explicit type guard for size >= 2
- addressing copilot review
- refactor clamping trajectory function for clearer branching and algorithm flow
- add 2d case test (including pathological one)
- revise test code
- disable pathological test case
* copilot review response ---------
-
feat(control_validator): add low-pass filter parameters for vehicle and target velocities only for over_velocity (#11610)
* feat(control_validator): add low-pass filter parameters for vehicle and target velocities for over_velocity ---------
-
Contributors: Kyoichi Sugahara, Mete Fatih Cırıt, Ryohsuke Mitsudome, Taeseung Sohn
0.48.0 (2025-11-18)
- Merge remote-tracking branch 'origin/main' into humble
- fix: tf2 uses hpp headers in rolling (and is backported) (#11620)
- Contributors: Ryohsuke Mitsudome, Tim Clephas
0.47.1 (2025-08-14)
0.47.0 (2025-08-11)
-
feat: change planning output topic name to /planning/trajectory (#11135)
- change planning output topic name to /planning/trajectory
* style(pre-commit): autofix ---------Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com>
-
fix(planning_validator): init validation status (#11119)
- fix(planning_validator): init validation status
* fix(control_validator): init validation status ---------
-
style(pre-commit): update to clang-format-20 (#11088) Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com>
-
feat(control_validator): enhance trajectory validation with previous reference trajectory (#10939)
- feat(control_validator): enhance trajectory validation with previous reference trajectory
* fix(test_control_validator): update lateral deviation test cases to reflect validation status ---------
-
fix(autoware_control_validator): prevent division by zero in time calculation (#10926)
- fix(lateral_jerk_validator): prevent division by zero in time
File truncated at 100 lines see the full file
Package Dependencies
System Dependencies
Dependant Packages
Launch files
- launch/control_validator.launch.xml
-
- control_validator_param_path [default: $(find-pkg-share autoware_control_validator)/config/control_validator.param.yaml]
- input_reference_trajectory [default: /planning/trajectory]
- input_predicted_trajectory [default: /control/trajectory_follower/lateral/predicted_trajectory]
- input_operational_mode_state [default: /api/operation_mode/state]
Messages
Services
Plugins
Recent questions tagged autoware_control_validator at Robotics Stack Exchange
Package Summary
| Version | 0.50.0 |
| License | Apache License 2.0 |
| Build type | AMENT_CMAKE |
| Use | RECOMMENDED |
Repository Summary
| Description | |
| Checkout URI | https://github.com/autowarefoundation/autoware_universe.git |
| VCS Type | git |
| VCS Version | main |
| Last Updated | 2026-02-25 |
| Dev Status | UNKNOWN |
| Released | UNRELEASED |
| Contributing |
Help Wanted (-)
Good First Issues (-) Pull Requests to Review (-) |
Package Description
Maintainers
- Kyoichi Sugahara
- Makoto Kurihara
- Mamoru Sobue
- Takayuki Murooka
- Yuki Takagi
Authors
- Kyoichi Sugahara
- Takamasa Horibe
- Makoto Kurihara
Control Validator
The control_validator is a module that checks the validity of the output of the control component. The status of the validation can be viewed in the /diagnostics topic.
Supported features
The following features are supported for the validation and can have thresholds set by parameters. The listed features below does not always correspond to the latest implementation.
| Description | Arguments | Diagnostic equation |
|---|---|---|
| Inverse velocity: Measured velocity has a different sign from the target velocity. | measured velocity $v$, target velocity $\hat{v}$, and velocity parameter $c$ | $v \hat{v} < 0, \quad \lvert v \rvert > c$ |
| Overspeed: Measured speed exceeds target speed significantly. | measured velocity $v$, target velocity $\hat{v}$, ratio parameter $r$, and offset parameter $c$ | $\lvert v \rvert > (1 + r) \lvert \hat{v} \rvert + c$ |
| Overrun estimation: estimate overrun even if decelerate by assumed rate. | assumed deceleration, assumed delay |
- Lateral jerk : invalid when the lateral jerk exceeds the configured threshold. The validation uses the vehicle’s velocity and steering angle rate to calculate the resulting lateral jerk. The calculation assumes constant velocity (acceleration is zero).
- Deviation check between reference trajectory and predicted trajectory : invalid when the largest deviation between the predicted trajectory and reference trajectory is greater than the given threshold.
-
Yaw deviation: invalid when the difference between the yaw of the ego vehicle and the nearest (interpolated) trajectory yaw is greater than the given threshold.
- 2 thresholds are implemented, one to trigger a warning diagnostic, and one to trigger an error diagnostic.
Inputs/Outputs
Inputs
The control_validator takes in the following inputs:
| Name | Type | Description |
|---|---|---|
~/input/kinematics |
nav_msgs/Odometry | ego pose and twist |
~/input/reference_trajectory |
autoware_planning_msgs/Trajectory | reference trajectory which is outputted from planning module to to be followed |
~/input/predicted_trajectory |
autoware_planning_msgs/Trajectory | predicted trajectory which is outputted from control module |
Outputs
It outputs the following:
| Name | Type | Description |
|---|---|---|
~/output/validation_status |
control_validator/ControlValidatorStatus | validator status to inform the reason why the trajectory is valid/invalid |
/diagnostics |
diagnostic_msgs/DiagnosticStatus | diagnostics to report errors |
Parameters
The following parameters can be set for the control_validator:
System parameters
| Name | Type | Description | Default value |
|---|---|---|---|
publish_diag |
bool | if true, diagnostics msg is published. | true |
diag_error_count_threshold |
int | the Diag will be set to ERROR when the number of consecutive invalid trajectory exceeds this threshold. (For example, threshold = 1 means, even if the trajectory is invalid, the Diag will not be ERROR if the next trajectory is valid.) | true |
display_on_terminal |
bool | show error msg on terminal | true |
Algorithm parameters
Thresholds
The input trajectory is detected as invalid if the index exceeds the following thresholds.
| Name | Type | Description | Default value |
|---|---|---|---|
thresholds.max_distance_deviation |
double | invalid threshold of the max distance deviation between the predicted path and the reference trajectory [m] | 1.0 |
thresholds.lateral_jerk |
double | invalid threshold of the lateral jerk for steering rate validation [m/s^3] | 10.0 |
thresholds.rolling_back_velocity |
double | threshold velocity to validate the vehicle velocity [m/s] | 0.5 |
thresholds.over_velocity_offset |
double | threshold velocity offset to validate the vehicle velocity [m/s] | 2.0 |
thresholds.over_velocity_ratio |
double | threshold ratio to validate the vehicle velocity [*] | 0.2 |
thresholds.overrun_stop_point_dist |
double | threshold distance to overrun stop point [m] | 0.8 |
thresholds.acc_error_offset |
double | threshold ratio to validate the vehicle acceleration [*] | 0.8 |
thresholds.acc_error_scale |
double | threshold acceleration to validate the vehicle acceleration [m] | 0.2 |
thresholds.will_overrun_stop_point_dist |
double | threshold distance to overrun stop point [m] | 1.0 |
thresholds.assumed_limit_acc |
double | assumed acceleration for over run estimation [m] | 5.0 |
thresholds.assumed_delay_time |
double | assumed delay for over run estimation [m] | 0.2 |
thresholds.yaw_deviation_error |
double | threshold angle to validate the vehicle yaw related to the nearest trajectory yaw [rad] | 1.0 |
thresholds.yaw_deviation_warn |
double | threshold angle to trigger a WARN diagnostic [rad] | 0.5 |
over_velocity.vel_lpf_gain |
double | low-pass filter gain for filtering vehicle and target velocity [*] (time constant 2.0s at 30msec sampling period) | 0.985 |
Changelog for package autoware_control_validator
0.50.0 (2026-02-14)
- Merge remote-tracking branch 'origin/main' into humble
- feat: control : fix contol packages compile error when using ros2 jazzy (#11556)
- Contributors: Ryohsuke Mitsudome, 心刚
0.49.0 (2025-12-30)
-
Merge remote-tracking branch 'origin/main' into prepare-0.49.0-changelog
-
refactor: fix leftover dependent autoware_utils from updating vehicle_info_utils (#11734)
-
refactor(control_validator): reduce copy and add test for trajectory aligning (#11718)
- feat: add max trajectory size for reference trajectory alignment
- refactor: feed reverse trajectory before calculation
- refactor: add and arrange appropriate empty vector guards
- refactor: use only the first and the last segments of ref trajectory
- refactor: expose align function into detail namespace so that it can be tested
- add test for align_trajectory_with_reference_trajectory
- refactor: use boundary segment directly on interpolation
- minor: remove unnecessary reference from const bool&
- add explicit type guard for size >= 2
- addressing copilot review
- refactor clamping trajectory function for clearer branching and algorithm flow
- add 2d case test (including pathological one)
- revise test code
- disable pathological test case
* copilot review response ---------
-
feat(control_validator): add low-pass filter parameters for vehicle and target velocities only for over_velocity (#11610)
* feat(control_validator): add low-pass filter parameters for vehicle and target velocities for over_velocity ---------
-
Contributors: Kyoichi Sugahara, Mete Fatih Cırıt, Ryohsuke Mitsudome, Taeseung Sohn
0.48.0 (2025-11-18)
- Merge remote-tracking branch 'origin/main' into humble
- fix: tf2 uses hpp headers in rolling (and is backported) (#11620)
- Contributors: Ryohsuke Mitsudome, Tim Clephas
0.47.1 (2025-08-14)
0.47.0 (2025-08-11)
-
feat: change planning output topic name to /planning/trajectory (#11135)
- change planning output topic name to /planning/trajectory
* style(pre-commit): autofix ---------Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com>
-
fix(planning_validator): init validation status (#11119)
- fix(planning_validator): init validation status
* fix(control_validator): init validation status ---------
-
style(pre-commit): update to clang-format-20 (#11088) Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com>
-
feat(control_validator): enhance trajectory validation with previous reference trajectory (#10939)
- feat(control_validator): enhance trajectory validation with previous reference trajectory
* fix(test_control_validator): update lateral deviation test cases to reflect validation status ---------
-
fix(autoware_control_validator): prevent division by zero in time calculation (#10926)
- fix(lateral_jerk_validator): prevent division by zero in time
File truncated at 100 lines see the full file
Package Dependencies
System Dependencies
Dependant Packages
Launch files
- launch/control_validator.launch.xml
-
- control_validator_param_path [default: $(find-pkg-share autoware_control_validator)/config/control_validator.param.yaml]
- input_reference_trajectory [default: /planning/trajectory]
- input_predicted_trajectory [default: /control/trajectory_follower/lateral/predicted_trajectory]
- input_operational_mode_state [default: /api/operation_mode/state]
Messages
Services
Plugins
Recent questions tagged autoware_control_validator at Robotics Stack Exchange
Package Summary
| Version | 0.50.0 |
| License | Apache License 2.0 |
| Build type | AMENT_CMAKE |
| Use | RECOMMENDED |
Repository Summary
| Description | |
| Checkout URI | https://github.com/autowarefoundation/autoware_universe.git |
| VCS Type | git |
| VCS Version | main |
| Last Updated | 2026-02-25 |
| Dev Status | UNKNOWN |
| Released | UNRELEASED |
| Contributing |
Help Wanted (-)
Good First Issues (-) Pull Requests to Review (-) |
Package Description
Maintainers
- Kyoichi Sugahara
- Makoto Kurihara
- Mamoru Sobue
- Takayuki Murooka
- Yuki Takagi
Authors
- Kyoichi Sugahara
- Takamasa Horibe
- Makoto Kurihara
Control Validator
The control_validator is a module that checks the validity of the output of the control component. The status of the validation can be viewed in the /diagnostics topic.
Supported features
The following features are supported for the validation and can have thresholds set by parameters. The listed features below does not always correspond to the latest implementation.
| Description | Arguments | Diagnostic equation |
|---|---|---|
| Inverse velocity: Measured velocity has a different sign from the target velocity. | measured velocity $v$, target velocity $\hat{v}$, and velocity parameter $c$ | $v \hat{v} < 0, \quad \lvert v \rvert > c$ |
| Overspeed: Measured speed exceeds target speed significantly. | measured velocity $v$, target velocity $\hat{v}$, ratio parameter $r$, and offset parameter $c$ | $\lvert v \rvert > (1 + r) \lvert \hat{v} \rvert + c$ |
| Overrun estimation: estimate overrun even if decelerate by assumed rate. | assumed deceleration, assumed delay |
- Lateral jerk : invalid when the lateral jerk exceeds the configured threshold. The validation uses the vehicle’s velocity and steering angle rate to calculate the resulting lateral jerk. The calculation assumes constant velocity (acceleration is zero).
- Deviation check between reference trajectory and predicted trajectory : invalid when the largest deviation between the predicted trajectory and reference trajectory is greater than the given threshold.
-
Yaw deviation: invalid when the difference between the yaw of the ego vehicle and the nearest (interpolated) trajectory yaw is greater than the given threshold.
- 2 thresholds are implemented, one to trigger a warning diagnostic, and one to trigger an error diagnostic.
Inputs/Outputs
Inputs
The control_validator takes in the following inputs:
| Name | Type | Description |
|---|---|---|
~/input/kinematics |
nav_msgs/Odometry | ego pose and twist |
~/input/reference_trajectory |
autoware_planning_msgs/Trajectory | reference trajectory which is outputted from planning module to to be followed |
~/input/predicted_trajectory |
autoware_planning_msgs/Trajectory | predicted trajectory which is outputted from control module |
Outputs
It outputs the following:
| Name | Type | Description |
|---|---|---|
~/output/validation_status |
control_validator/ControlValidatorStatus | validator status to inform the reason why the trajectory is valid/invalid |
/diagnostics |
diagnostic_msgs/DiagnosticStatus | diagnostics to report errors |
Parameters
The following parameters can be set for the control_validator:
System parameters
| Name | Type | Description | Default value |
|---|---|---|---|
publish_diag |
bool | if true, diagnostics msg is published. | true |
diag_error_count_threshold |
int | the Diag will be set to ERROR when the number of consecutive invalid trajectory exceeds this threshold. (For example, threshold = 1 means, even if the trajectory is invalid, the Diag will not be ERROR if the next trajectory is valid.) | true |
display_on_terminal |
bool | show error msg on terminal | true |
Algorithm parameters
Thresholds
The input trajectory is detected as invalid if the index exceeds the following thresholds.
| Name | Type | Description | Default value |
|---|---|---|---|
thresholds.max_distance_deviation |
double | invalid threshold of the max distance deviation between the predicted path and the reference trajectory [m] | 1.0 |
thresholds.lateral_jerk |
double | invalid threshold of the lateral jerk for steering rate validation [m/s^3] | 10.0 |
thresholds.rolling_back_velocity |
double | threshold velocity to validate the vehicle velocity [m/s] | 0.5 |
thresholds.over_velocity_offset |
double | threshold velocity offset to validate the vehicle velocity [m/s] | 2.0 |
thresholds.over_velocity_ratio |
double | threshold ratio to validate the vehicle velocity [*] | 0.2 |
thresholds.overrun_stop_point_dist |
double | threshold distance to overrun stop point [m] | 0.8 |
thresholds.acc_error_offset |
double | threshold ratio to validate the vehicle acceleration [*] | 0.8 |
thresholds.acc_error_scale |
double | threshold acceleration to validate the vehicle acceleration [m] | 0.2 |
thresholds.will_overrun_stop_point_dist |
double | threshold distance to overrun stop point [m] | 1.0 |
thresholds.assumed_limit_acc |
double | assumed acceleration for over run estimation [m] | 5.0 |
thresholds.assumed_delay_time |
double | assumed delay for over run estimation [m] | 0.2 |
thresholds.yaw_deviation_error |
double | threshold angle to validate the vehicle yaw related to the nearest trajectory yaw [rad] | 1.0 |
thresholds.yaw_deviation_warn |
double | threshold angle to trigger a WARN diagnostic [rad] | 0.5 |
over_velocity.vel_lpf_gain |
double | low-pass filter gain for filtering vehicle and target velocity [*] (time constant 2.0s at 30msec sampling period) | 0.985 |
Changelog for package autoware_control_validator
0.50.0 (2026-02-14)
- Merge remote-tracking branch 'origin/main' into humble
- feat: control : fix contol packages compile error when using ros2 jazzy (#11556)
- Contributors: Ryohsuke Mitsudome, 心刚
0.49.0 (2025-12-30)
-
Merge remote-tracking branch 'origin/main' into prepare-0.49.0-changelog
-
refactor: fix leftover dependent autoware_utils from updating vehicle_info_utils (#11734)
-
refactor(control_validator): reduce copy and add test for trajectory aligning (#11718)
- feat: add max trajectory size for reference trajectory alignment
- refactor: feed reverse trajectory before calculation
- refactor: add and arrange appropriate empty vector guards
- refactor: use only the first and the last segments of ref trajectory
- refactor: expose align function into detail namespace so that it can be tested
- add test for align_trajectory_with_reference_trajectory
- refactor: use boundary segment directly on interpolation
- minor: remove unnecessary reference from const bool&
- add explicit type guard for size >= 2
- addressing copilot review
- refactor clamping trajectory function for clearer branching and algorithm flow
- add 2d case test (including pathological one)
- revise test code
- disable pathological test case
* copilot review response ---------
-
feat(control_validator): add low-pass filter parameters for vehicle and target velocities only for over_velocity (#11610)
* feat(control_validator): add low-pass filter parameters for vehicle and target velocities for over_velocity ---------
-
Contributors: Kyoichi Sugahara, Mete Fatih Cırıt, Ryohsuke Mitsudome, Taeseung Sohn
0.48.0 (2025-11-18)
- Merge remote-tracking branch 'origin/main' into humble
- fix: tf2 uses hpp headers in rolling (and is backported) (#11620)
- Contributors: Ryohsuke Mitsudome, Tim Clephas
0.47.1 (2025-08-14)
0.47.0 (2025-08-11)
-
feat: change planning output topic name to /planning/trajectory (#11135)
- change planning output topic name to /planning/trajectory
* style(pre-commit): autofix ---------Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com>
-
fix(planning_validator): init validation status (#11119)
- fix(planning_validator): init validation status
* fix(control_validator): init validation status ---------
-
style(pre-commit): update to clang-format-20 (#11088) Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com>
-
feat(control_validator): enhance trajectory validation with previous reference trajectory (#10939)
- feat(control_validator): enhance trajectory validation with previous reference trajectory
* fix(test_control_validator): update lateral deviation test cases to reflect validation status ---------
-
fix(autoware_control_validator): prevent division by zero in time calculation (#10926)
- fix(lateral_jerk_validator): prevent division by zero in time
File truncated at 100 lines see the full file
Package Dependencies
System Dependencies
Dependant Packages
Launch files
- launch/control_validator.launch.xml
-
- control_validator_param_path [default: $(find-pkg-share autoware_control_validator)/config/control_validator.param.yaml]
- input_reference_trajectory [default: /planning/trajectory]
- input_predicted_trajectory [default: /control/trajectory_follower/lateral/predicted_trajectory]
- input_operational_mode_state [default: /api/operation_mode/state]