Package Summary
Tags | No category tags. |
Version | 0.47.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 | 2025-08-16 |
Dev Status | UNKNOWN |
Released | UNRELEASED |
Tags | planner ros calibration self-driving-car autonomous-driving autonomous-vehicles ros2 3d-map autoware |
Contributing |
Help Wanted (-)
Good First Issues (-) Pull Requests to Review (-) |
Package Description
Additional Links
Maintainers
- Takamasa Horibe
- Tomoya Kimura
- Mamoru Sobue
- Daniel Sanchez
- Kyoichi Sugahara
- Alqudah Mohammad
Authors
Autonomous Emergency Braking (AEB)
Purpose / Role
autonomous_emergency_braking
is a module that prevents collisions with obstacles on the predicted path created by a control module or sensor values estimated from the control module.
Assumptions
This module has following assumptions.
-
The predicted path of the ego vehicle can be made from either the path created from sensors or the path created from a control module, or both.
-
The current speed and angular velocity can be obtained from the sensors of the ego vehicle, and it uses points as obstacles.
-
The AEBs target obstacles are 2D points that can be obtained from the input point cloud or by obtaining the intersection points between the predicted ego footprint path and a predicted object’s shape.
IMU path generation: steering angle vs IMU’s angular velocity
Currently, the IMU-based path is generated using the angular velocity obtained by the IMU itself. It has been suggested that the steering angle could be used instead onf the angular velocity.
The pros and cons of both approaches are:
IMU angular velocity:
- (+) Usually, it has high accuracy
- (-) Vehicle vibration might introduce noise.
Steering angle:
- (+) Not so noisy
- (-) May have a steering offset or a wrong gear ratio, and the steering angle of Autoware and the real steering may not be the same.
For the moment, there are no plans to implement the steering angle on the path creation process of the AEB module.
Inner-workings / Algorithms
AEB has the following steps before it outputs the emergency stop signal.
-
Activate AEB if necessary.
-
Generate a predicted path of the ego vehicle.
-
Get target obstacles from the input point cloud and/or predicted object data.
-
Estimate the closest obstacle speed.
-
Collision check with target obstacles.
-
Send emergency stop signals to
/diagnostics
.
We give more details of each section below.
1. Activate AEB if necessary
We do not activate AEB module if it satisfies the following conditions.
-
Ego vehicle is not in autonomous driving state
-
When the ego vehicle is not moving (Current Velocity is below a 0.1 m/s threshold)
2. Generate a predicted path of the ego vehicle
2.1 Overview of IMU Path Generation
AEB generates a predicted footprint path based on current velocity and current angular velocity obtained from attached sensors. Note that if use_imu_path
is false
, it skips this step. This predicted path is generated as:
where $v$ and $\omega$ are current longitudinal velocity and angular velocity respectively. $dt$ is time interval that users can define in advance with the imu_prediction_time_interval
parameter. The IMU path is generated considering a time horizon, defined by the imu_prediction_time_horizon
parameter.
2.2 Constraints and Countermeasures in IMU Path Generation
Since the IMU path generation only uses the ego vehicle’s current angular velocity, disregarding the MPC’s planner steering, the shape of the IMU path tends to get distorted quite easily and protrude out of the ego vehicle’s current lane, possibly causing unwanted emergency stops. There are two countermeasures for this issue:
- Control using the
max_generated_imu_path_length
parameter- Generation stops when path length exceeds the set value
- Avoid using a large
imu_prediction_time_horizon
- Control based on lateral deviation
- Set the
limit_imu_path_lat_dev
parameter to “true” - Set deviation threshold using
imu_path_lat_dev_threshold
- Path generation stops when lateral deviation exceeds the threshold
- Set the
2.3 Advantages and Limitations of Lateral Deviation Control
The advantage of setting a lateral deviation limit with the limit_imu_path_lat_dev
parameter is that the imu_prediction_time_horizon
and the max_generated_imu_path_length
can be increased without worries about the IMU predicted path deforming beyond a certain threshold. The downside is that the IMU path will be cut short when the ego has a high angular velocity, in said cases, the AEB module would mostly rely on the MPC path to prevent or mitigate collisions.
If it is assumed the ego vehicle will mostly travel along the centerline of its lanelets, it can be useful to set the lateral deviation threshold parameter imu_path_lat_dev_threshold
to be equal to or smaller than the average lanelet width divided by 2, that way, the chance of the IMU predicted path leaving the current ego lanelet is smaller, and it is possible to increase the imu_prediction_time_horizon
to prevent frontal collisions when the ego is mostly traveling in a straight line.
The lateral deviation is measured using the ego vehicle’s current position as a reference, and it measures the distance of the furthermost vertex of the predicted ego footprint to the predicted path. The following image illustrates how the lateral deviation of a given ego pose is measured.
2.4 IMU Path Generation Algorithm
2.4.1 Selection of Lateral Deviation Check Points
File truncated at 100 lines see the full file
Changelog for package autoware_autonomous_emergency_braking
0.47.0 (2025-08-11)
- style(pre-commit): autofix (#10982) Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com>
- Contributors: Ryohsuke Mitsudome
0.46.0 (2025-06-20)
0.45.0 (2025-05-22)
0.44.2 (2025-06-10)
0.44.1 (2025-05-01)
0.44.0 (2025-04-18)
- Merge remote-tracking branch 'origin/main' into humble
- feat(autoware_autonomous_emergency_braking): created Schema file and updated ReadME file for parameters setting (#10002) Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com> Co-authored-by: Ryohsuke Mitsudome <<43976834+mitsudome-r@users.noreply.github.com>>
- Contributors: Ryohsuke Mitsudome, Vishal Chauhan
0.43.0 (2025-03-21)
- Merge remote-tracking branch 'origin/main' into chore/bump-version-0.43
- chore: rename from [autoware.universe]{.title-ref} to [autoware_universe]{.title-ref} (#10306)
- Contributors: Hayato Mizushima, Yutaka Kondo
0.42.0 (2025-03-03)
- Merge remote-tracking branch 'origin/main' into tmp/bot/bump_version_base
- feat(autoware_utils): replace autoware_universe_utils with autoware_utils (#10191)
- chore(autonomous_emergency_braking): remove unnecessary dependency (#10120)
- Contributors: Fumiya Watanabe, Takayuki Murooka, 心刚
0.41.2 (2025-02-19)
- chore: bump version to 0.41.1 (#10088)
- Contributors: Ryohsuke Mitsudome
0.41.1 (2025-02-10)
0.41.0 (2025-01-29)
0.40.0 (2024-12-12)
-
Merge branch 'main' into release-0.40.0
-
Revert "chore(package.xml): bump version to 0.39.0 (#9587)" This reverts commit c9f0f2688c57b0f657f5c1f28f036a970682e7f5.
-
fix: fix ticket links in CHANGELOG.rst (#9588)
-
chore(package.xml): bump version to 0.39.0 (#9587)
- chore(package.xml): bump version to 0.39.0
- fix: fix ticket links in CHANGELOG.rst
* fix: remove unnecessary diff ---------Co-authored-by: Yutaka Kondo <<yutaka.kondo@youtalk.jp>>
-
fix: fix ticket links in CHANGELOG.rst (#9588)
-
chore(autoware_autonomous_emergency_braking): add package maintainer (#9580) add package maintainer
-
fix(cpplint): include what you use - control (#9565)
-
refactor(autoware_autonomous_emergency_braking): update longitudinal offset parameter name (#9463) Update the parameter name for the longitudinal offset distance used for collision check in the autonomous emergency braking control module. The parameter name has been changed from "longitudinal_offset" to "longitudinal_offset_margin" to better reflect its purpose.
-
refactor(autoware_autonomous_emergency_braking): add
File truncated at 100 lines see the full file
Package Dependencies
System Dependencies
Dependant Packages
Launch files
- launch/autoware_autonomous_emergency_braking.launch.xml
-
- param_path [default: $(find-pkg-share autoware_autonomous_emergency_braking)/config/autonomous_emergency_braking.param.yaml]
- input_pointcloud [default: /perception/obstacle_segmentation/pointcloud]
- input_velocity [default: /vehicle/status/velocity_status]
- input_imu [default: /sensing/imu/imu_data]
- input_predicted_trajectory [default: /control/trajectory_follower/lateral/predicted_trajectory]
- input_objects [default: /perception/object_recognition/objects]
Messages
Services
Plugins
Recent questions tagged autoware_autonomous_emergency_braking at Robotics Stack Exchange
Package Summary
Tags | No category tags. |
Version | 0.47.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 | 2025-08-16 |
Dev Status | UNKNOWN |
Released | UNRELEASED |
Tags | planner ros calibration self-driving-car autonomous-driving autonomous-vehicles ros2 3d-map autoware |
Contributing |
Help Wanted (-)
Good First Issues (-) Pull Requests to Review (-) |
Package Description
Additional Links
Maintainers
- Takamasa Horibe
- Tomoya Kimura
- Mamoru Sobue
- Daniel Sanchez
- Kyoichi Sugahara
- Alqudah Mohammad
Authors
Autonomous Emergency Braking (AEB)
Purpose / Role
autonomous_emergency_braking
is a module that prevents collisions with obstacles on the predicted path created by a control module or sensor values estimated from the control module.
Assumptions
This module has following assumptions.
-
The predicted path of the ego vehicle can be made from either the path created from sensors or the path created from a control module, or both.
-
The current speed and angular velocity can be obtained from the sensors of the ego vehicle, and it uses points as obstacles.
-
The AEBs target obstacles are 2D points that can be obtained from the input point cloud or by obtaining the intersection points between the predicted ego footprint path and a predicted object’s shape.
IMU path generation: steering angle vs IMU’s angular velocity
Currently, the IMU-based path is generated using the angular velocity obtained by the IMU itself. It has been suggested that the steering angle could be used instead onf the angular velocity.
The pros and cons of both approaches are:
IMU angular velocity:
- (+) Usually, it has high accuracy
- (-) Vehicle vibration might introduce noise.
Steering angle:
- (+) Not so noisy
- (-) May have a steering offset or a wrong gear ratio, and the steering angle of Autoware and the real steering may not be the same.
For the moment, there are no plans to implement the steering angle on the path creation process of the AEB module.
Inner-workings / Algorithms
AEB has the following steps before it outputs the emergency stop signal.
-
Activate AEB if necessary.
-
Generate a predicted path of the ego vehicle.
-
Get target obstacles from the input point cloud and/or predicted object data.
-
Estimate the closest obstacle speed.
-
Collision check with target obstacles.
-
Send emergency stop signals to
/diagnostics
.
We give more details of each section below.
1. Activate AEB if necessary
We do not activate AEB module if it satisfies the following conditions.
-
Ego vehicle is not in autonomous driving state
-
When the ego vehicle is not moving (Current Velocity is below a 0.1 m/s threshold)
2. Generate a predicted path of the ego vehicle
2.1 Overview of IMU Path Generation
AEB generates a predicted footprint path based on current velocity and current angular velocity obtained from attached sensors. Note that if use_imu_path
is false
, it skips this step. This predicted path is generated as:
where $v$ and $\omega$ are current longitudinal velocity and angular velocity respectively. $dt$ is time interval that users can define in advance with the imu_prediction_time_interval
parameter. The IMU path is generated considering a time horizon, defined by the imu_prediction_time_horizon
parameter.
2.2 Constraints and Countermeasures in IMU Path Generation
Since the IMU path generation only uses the ego vehicle’s current angular velocity, disregarding the MPC’s planner steering, the shape of the IMU path tends to get distorted quite easily and protrude out of the ego vehicle’s current lane, possibly causing unwanted emergency stops. There are two countermeasures for this issue:
- Control using the
max_generated_imu_path_length
parameter- Generation stops when path length exceeds the set value
- Avoid using a large
imu_prediction_time_horizon
- Control based on lateral deviation
- Set the
limit_imu_path_lat_dev
parameter to “true” - Set deviation threshold using
imu_path_lat_dev_threshold
- Path generation stops when lateral deviation exceeds the threshold
- Set the
2.3 Advantages and Limitations of Lateral Deviation Control
The advantage of setting a lateral deviation limit with the limit_imu_path_lat_dev
parameter is that the imu_prediction_time_horizon
and the max_generated_imu_path_length
can be increased without worries about the IMU predicted path deforming beyond a certain threshold. The downside is that the IMU path will be cut short when the ego has a high angular velocity, in said cases, the AEB module would mostly rely on the MPC path to prevent or mitigate collisions.
If it is assumed the ego vehicle will mostly travel along the centerline of its lanelets, it can be useful to set the lateral deviation threshold parameter imu_path_lat_dev_threshold
to be equal to or smaller than the average lanelet width divided by 2, that way, the chance of the IMU predicted path leaving the current ego lanelet is smaller, and it is possible to increase the imu_prediction_time_horizon
to prevent frontal collisions when the ego is mostly traveling in a straight line.
The lateral deviation is measured using the ego vehicle’s current position as a reference, and it measures the distance of the furthermost vertex of the predicted ego footprint to the predicted path. The following image illustrates how the lateral deviation of a given ego pose is measured.
2.4 IMU Path Generation Algorithm
2.4.1 Selection of Lateral Deviation Check Points
File truncated at 100 lines see the full file
Changelog for package autoware_autonomous_emergency_braking
0.47.0 (2025-08-11)
- style(pre-commit): autofix (#10982) Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com>
- Contributors: Ryohsuke Mitsudome
0.46.0 (2025-06-20)
0.45.0 (2025-05-22)
0.44.2 (2025-06-10)
0.44.1 (2025-05-01)
0.44.0 (2025-04-18)
- Merge remote-tracking branch 'origin/main' into humble
- feat(autoware_autonomous_emergency_braking): created Schema file and updated ReadME file for parameters setting (#10002) Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com> Co-authored-by: Ryohsuke Mitsudome <<43976834+mitsudome-r@users.noreply.github.com>>
- Contributors: Ryohsuke Mitsudome, Vishal Chauhan
0.43.0 (2025-03-21)
- Merge remote-tracking branch 'origin/main' into chore/bump-version-0.43
- chore: rename from [autoware.universe]{.title-ref} to [autoware_universe]{.title-ref} (#10306)
- Contributors: Hayato Mizushima, Yutaka Kondo
0.42.0 (2025-03-03)
- Merge remote-tracking branch 'origin/main' into tmp/bot/bump_version_base
- feat(autoware_utils): replace autoware_universe_utils with autoware_utils (#10191)
- chore(autonomous_emergency_braking): remove unnecessary dependency (#10120)
- Contributors: Fumiya Watanabe, Takayuki Murooka, 心刚
0.41.2 (2025-02-19)
- chore: bump version to 0.41.1 (#10088)
- Contributors: Ryohsuke Mitsudome
0.41.1 (2025-02-10)
0.41.0 (2025-01-29)
0.40.0 (2024-12-12)
-
Merge branch 'main' into release-0.40.0
-
Revert "chore(package.xml): bump version to 0.39.0 (#9587)" This reverts commit c9f0f2688c57b0f657f5c1f28f036a970682e7f5.
-
fix: fix ticket links in CHANGELOG.rst (#9588)
-
chore(package.xml): bump version to 0.39.0 (#9587)
- chore(package.xml): bump version to 0.39.0
- fix: fix ticket links in CHANGELOG.rst
* fix: remove unnecessary diff ---------Co-authored-by: Yutaka Kondo <<yutaka.kondo@youtalk.jp>>
-
fix: fix ticket links in CHANGELOG.rst (#9588)
-
chore(autoware_autonomous_emergency_braking): add package maintainer (#9580) add package maintainer
-
fix(cpplint): include what you use - control (#9565)
-
refactor(autoware_autonomous_emergency_braking): update longitudinal offset parameter name (#9463) Update the parameter name for the longitudinal offset distance used for collision check in the autonomous emergency braking control module. The parameter name has been changed from "longitudinal_offset" to "longitudinal_offset_margin" to better reflect its purpose.
-
refactor(autoware_autonomous_emergency_braking): add
File truncated at 100 lines see the full file
Package Dependencies
System Dependencies
Dependant Packages
Launch files
- launch/autoware_autonomous_emergency_braking.launch.xml
-
- param_path [default: $(find-pkg-share autoware_autonomous_emergency_braking)/config/autonomous_emergency_braking.param.yaml]
- input_pointcloud [default: /perception/obstacle_segmentation/pointcloud]
- input_velocity [default: /vehicle/status/velocity_status]
- input_imu [default: /sensing/imu/imu_data]
- input_predicted_trajectory [default: /control/trajectory_follower/lateral/predicted_trajectory]
- input_objects [default: /perception/object_recognition/objects]
Messages
Services
Plugins
Recent questions tagged autoware_autonomous_emergency_braking at Robotics Stack Exchange
Package Summary
Tags | No category tags. |
Version | 0.47.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 | 2025-08-16 |
Dev Status | UNKNOWN |
Released | UNRELEASED |
Tags | planner ros calibration self-driving-car autonomous-driving autonomous-vehicles ros2 3d-map autoware |
Contributing |
Help Wanted (-)
Good First Issues (-) Pull Requests to Review (-) |
Package Description
Additional Links
Maintainers
- Takamasa Horibe
- Tomoya Kimura
- Mamoru Sobue
- Daniel Sanchez
- Kyoichi Sugahara
- Alqudah Mohammad
Authors
Autonomous Emergency Braking (AEB)
Purpose / Role
autonomous_emergency_braking
is a module that prevents collisions with obstacles on the predicted path created by a control module or sensor values estimated from the control module.
Assumptions
This module has following assumptions.
-
The predicted path of the ego vehicle can be made from either the path created from sensors or the path created from a control module, or both.
-
The current speed and angular velocity can be obtained from the sensors of the ego vehicle, and it uses points as obstacles.
-
The AEBs target obstacles are 2D points that can be obtained from the input point cloud or by obtaining the intersection points between the predicted ego footprint path and a predicted object’s shape.
IMU path generation: steering angle vs IMU’s angular velocity
Currently, the IMU-based path is generated using the angular velocity obtained by the IMU itself. It has been suggested that the steering angle could be used instead onf the angular velocity.
The pros and cons of both approaches are:
IMU angular velocity:
- (+) Usually, it has high accuracy
- (-) Vehicle vibration might introduce noise.
Steering angle:
- (+) Not so noisy
- (-) May have a steering offset or a wrong gear ratio, and the steering angle of Autoware and the real steering may not be the same.
For the moment, there are no plans to implement the steering angle on the path creation process of the AEB module.
Inner-workings / Algorithms
AEB has the following steps before it outputs the emergency stop signal.
-
Activate AEB if necessary.
-
Generate a predicted path of the ego vehicle.
-
Get target obstacles from the input point cloud and/or predicted object data.
-
Estimate the closest obstacle speed.
-
Collision check with target obstacles.
-
Send emergency stop signals to
/diagnostics
.
We give more details of each section below.
1. Activate AEB if necessary
We do not activate AEB module if it satisfies the following conditions.
-
Ego vehicle is not in autonomous driving state
-
When the ego vehicle is not moving (Current Velocity is below a 0.1 m/s threshold)
2. Generate a predicted path of the ego vehicle
2.1 Overview of IMU Path Generation
AEB generates a predicted footprint path based on current velocity and current angular velocity obtained from attached sensors. Note that if use_imu_path
is false
, it skips this step. This predicted path is generated as:
where $v$ and $\omega$ are current longitudinal velocity and angular velocity respectively. $dt$ is time interval that users can define in advance with the imu_prediction_time_interval
parameter. The IMU path is generated considering a time horizon, defined by the imu_prediction_time_horizon
parameter.
2.2 Constraints and Countermeasures in IMU Path Generation
Since the IMU path generation only uses the ego vehicle’s current angular velocity, disregarding the MPC’s planner steering, the shape of the IMU path tends to get distorted quite easily and protrude out of the ego vehicle’s current lane, possibly causing unwanted emergency stops. There are two countermeasures for this issue:
- Control using the
max_generated_imu_path_length
parameter- Generation stops when path length exceeds the set value
- Avoid using a large
imu_prediction_time_horizon
- Control based on lateral deviation
- Set the
limit_imu_path_lat_dev
parameter to “true” - Set deviation threshold using
imu_path_lat_dev_threshold
- Path generation stops when lateral deviation exceeds the threshold
- Set the
2.3 Advantages and Limitations of Lateral Deviation Control
The advantage of setting a lateral deviation limit with the limit_imu_path_lat_dev
parameter is that the imu_prediction_time_horizon
and the max_generated_imu_path_length
can be increased without worries about the IMU predicted path deforming beyond a certain threshold. The downside is that the IMU path will be cut short when the ego has a high angular velocity, in said cases, the AEB module would mostly rely on the MPC path to prevent or mitigate collisions.
If it is assumed the ego vehicle will mostly travel along the centerline of its lanelets, it can be useful to set the lateral deviation threshold parameter imu_path_lat_dev_threshold
to be equal to or smaller than the average lanelet width divided by 2, that way, the chance of the IMU predicted path leaving the current ego lanelet is smaller, and it is possible to increase the imu_prediction_time_horizon
to prevent frontal collisions when the ego is mostly traveling in a straight line.
The lateral deviation is measured using the ego vehicle’s current position as a reference, and it measures the distance of the furthermost vertex of the predicted ego footprint to the predicted path. The following image illustrates how the lateral deviation of a given ego pose is measured.
2.4 IMU Path Generation Algorithm
2.4.1 Selection of Lateral Deviation Check Points
File truncated at 100 lines see the full file
Changelog for package autoware_autonomous_emergency_braking
0.47.0 (2025-08-11)
- style(pre-commit): autofix (#10982) Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com>
- Contributors: Ryohsuke Mitsudome
0.46.0 (2025-06-20)
0.45.0 (2025-05-22)
0.44.2 (2025-06-10)
0.44.1 (2025-05-01)
0.44.0 (2025-04-18)
- Merge remote-tracking branch 'origin/main' into humble
- feat(autoware_autonomous_emergency_braking): created Schema file and updated ReadME file for parameters setting (#10002) Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com> Co-authored-by: Ryohsuke Mitsudome <<43976834+mitsudome-r@users.noreply.github.com>>
- Contributors: Ryohsuke Mitsudome, Vishal Chauhan
0.43.0 (2025-03-21)
- Merge remote-tracking branch 'origin/main' into chore/bump-version-0.43
- chore: rename from [autoware.universe]{.title-ref} to [autoware_universe]{.title-ref} (#10306)
- Contributors: Hayato Mizushima, Yutaka Kondo
0.42.0 (2025-03-03)
- Merge remote-tracking branch 'origin/main' into tmp/bot/bump_version_base
- feat(autoware_utils): replace autoware_universe_utils with autoware_utils (#10191)
- chore(autonomous_emergency_braking): remove unnecessary dependency (#10120)
- Contributors: Fumiya Watanabe, Takayuki Murooka, 心刚
0.41.2 (2025-02-19)
- chore: bump version to 0.41.1 (#10088)
- Contributors: Ryohsuke Mitsudome
0.41.1 (2025-02-10)
0.41.0 (2025-01-29)
0.40.0 (2024-12-12)
-
Merge branch 'main' into release-0.40.0
-
Revert "chore(package.xml): bump version to 0.39.0 (#9587)" This reverts commit c9f0f2688c57b0f657f5c1f28f036a970682e7f5.
-
fix: fix ticket links in CHANGELOG.rst (#9588)
-
chore(package.xml): bump version to 0.39.0 (#9587)
- chore(package.xml): bump version to 0.39.0
- fix: fix ticket links in CHANGELOG.rst
* fix: remove unnecessary diff ---------Co-authored-by: Yutaka Kondo <<yutaka.kondo@youtalk.jp>>
-
fix: fix ticket links in CHANGELOG.rst (#9588)
-
chore(autoware_autonomous_emergency_braking): add package maintainer (#9580) add package maintainer
-
fix(cpplint): include what you use - control (#9565)
-
refactor(autoware_autonomous_emergency_braking): update longitudinal offset parameter name (#9463) Update the parameter name for the longitudinal offset distance used for collision check in the autonomous emergency braking control module. The parameter name has been changed from "longitudinal_offset" to "longitudinal_offset_margin" to better reflect its purpose.
-
refactor(autoware_autonomous_emergency_braking): add
File truncated at 100 lines see the full file
Package Dependencies
System Dependencies
Dependant Packages
Launch files
- launch/autoware_autonomous_emergency_braking.launch.xml
-
- param_path [default: $(find-pkg-share autoware_autonomous_emergency_braking)/config/autonomous_emergency_braking.param.yaml]
- input_pointcloud [default: /perception/obstacle_segmentation/pointcloud]
- input_velocity [default: /vehicle/status/velocity_status]
- input_imu [default: /sensing/imu/imu_data]
- input_predicted_trajectory [default: /control/trajectory_follower/lateral/predicted_trajectory]
- input_objects [default: /perception/object_recognition/objects]
Messages
Services
Plugins
Recent questions tagged autoware_autonomous_emergency_braking at Robotics Stack Exchange
Package Summary
Tags | No category tags. |
Version | 0.47.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 | 2025-08-16 |
Dev Status | UNKNOWN |
Released | UNRELEASED |
Tags | planner ros calibration self-driving-car autonomous-driving autonomous-vehicles ros2 3d-map autoware |
Contributing |
Help Wanted (-)
Good First Issues (-) Pull Requests to Review (-) |
Package Description
Additional Links
Maintainers
- Takamasa Horibe
- Tomoya Kimura
- Mamoru Sobue
- Daniel Sanchez
- Kyoichi Sugahara
- Alqudah Mohammad
Authors
Autonomous Emergency Braking (AEB)
Purpose / Role
autonomous_emergency_braking
is a module that prevents collisions with obstacles on the predicted path created by a control module or sensor values estimated from the control module.
Assumptions
This module has following assumptions.
-
The predicted path of the ego vehicle can be made from either the path created from sensors or the path created from a control module, or both.
-
The current speed and angular velocity can be obtained from the sensors of the ego vehicle, and it uses points as obstacles.
-
The AEBs target obstacles are 2D points that can be obtained from the input point cloud or by obtaining the intersection points between the predicted ego footprint path and a predicted object’s shape.
IMU path generation: steering angle vs IMU’s angular velocity
Currently, the IMU-based path is generated using the angular velocity obtained by the IMU itself. It has been suggested that the steering angle could be used instead onf the angular velocity.
The pros and cons of both approaches are:
IMU angular velocity:
- (+) Usually, it has high accuracy
- (-) Vehicle vibration might introduce noise.
Steering angle:
- (+) Not so noisy
- (-) May have a steering offset or a wrong gear ratio, and the steering angle of Autoware and the real steering may not be the same.
For the moment, there are no plans to implement the steering angle on the path creation process of the AEB module.
Inner-workings / Algorithms
AEB has the following steps before it outputs the emergency stop signal.
-
Activate AEB if necessary.
-
Generate a predicted path of the ego vehicle.
-
Get target obstacles from the input point cloud and/or predicted object data.
-
Estimate the closest obstacle speed.
-
Collision check with target obstacles.
-
Send emergency stop signals to
/diagnostics
.
We give more details of each section below.
1. Activate AEB if necessary
We do not activate AEB module if it satisfies the following conditions.
-
Ego vehicle is not in autonomous driving state
-
When the ego vehicle is not moving (Current Velocity is below a 0.1 m/s threshold)
2. Generate a predicted path of the ego vehicle
2.1 Overview of IMU Path Generation
AEB generates a predicted footprint path based on current velocity and current angular velocity obtained from attached sensors. Note that if use_imu_path
is false
, it skips this step. This predicted path is generated as:
where $v$ and $\omega$ are current longitudinal velocity and angular velocity respectively. $dt$ is time interval that users can define in advance with the imu_prediction_time_interval
parameter. The IMU path is generated considering a time horizon, defined by the imu_prediction_time_horizon
parameter.
2.2 Constraints and Countermeasures in IMU Path Generation
Since the IMU path generation only uses the ego vehicle’s current angular velocity, disregarding the MPC’s planner steering, the shape of the IMU path tends to get distorted quite easily and protrude out of the ego vehicle’s current lane, possibly causing unwanted emergency stops. There are two countermeasures for this issue:
- Control using the
max_generated_imu_path_length
parameter- Generation stops when path length exceeds the set value
- Avoid using a large
imu_prediction_time_horizon
- Control based on lateral deviation
- Set the
limit_imu_path_lat_dev
parameter to “true” - Set deviation threshold using
imu_path_lat_dev_threshold
- Path generation stops when lateral deviation exceeds the threshold
- Set the
2.3 Advantages and Limitations of Lateral Deviation Control
The advantage of setting a lateral deviation limit with the limit_imu_path_lat_dev
parameter is that the imu_prediction_time_horizon
and the max_generated_imu_path_length
can be increased without worries about the IMU predicted path deforming beyond a certain threshold. The downside is that the IMU path will be cut short when the ego has a high angular velocity, in said cases, the AEB module would mostly rely on the MPC path to prevent or mitigate collisions.
If it is assumed the ego vehicle will mostly travel along the centerline of its lanelets, it can be useful to set the lateral deviation threshold parameter imu_path_lat_dev_threshold
to be equal to or smaller than the average lanelet width divided by 2, that way, the chance of the IMU predicted path leaving the current ego lanelet is smaller, and it is possible to increase the imu_prediction_time_horizon
to prevent frontal collisions when the ego is mostly traveling in a straight line.
The lateral deviation is measured using the ego vehicle’s current position as a reference, and it measures the distance of the furthermost vertex of the predicted ego footprint to the predicted path. The following image illustrates how the lateral deviation of a given ego pose is measured.
2.4 IMU Path Generation Algorithm
2.4.1 Selection of Lateral Deviation Check Points
File truncated at 100 lines see the full file
Changelog for package autoware_autonomous_emergency_braking
0.47.0 (2025-08-11)
- style(pre-commit): autofix (#10982) Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com>
- Contributors: Ryohsuke Mitsudome
0.46.0 (2025-06-20)
0.45.0 (2025-05-22)
0.44.2 (2025-06-10)
0.44.1 (2025-05-01)
0.44.0 (2025-04-18)
- Merge remote-tracking branch 'origin/main' into humble
- feat(autoware_autonomous_emergency_braking): created Schema file and updated ReadME file for parameters setting (#10002) Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com> Co-authored-by: Ryohsuke Mitsudome <<43976834+mitsudome-r@users.noreply.github.com>>
- Contributors: Ryohsuke Mitsudome, Vishal Chauhan
0.43.0 (2025-03-21)
- Merge remote-tracking branch 'origin/main' into chore/bump-version-0.43
- chore: rename from [autoware.universe]{.title-ref} to [autoware_universe]{.title-ref} (#10306)
- Contributors: Hayato Mizushima, Yutaka Kondo
0.42.0 (2025-03-03)
- Merge remote-tracking branch 'origin/main' into tmp/bot/bump_version_base
- feat(autoware_utils): replace autoware_universe_utils with autoware_utils (#10191)
- chore(autonomous_emergency_braking): remove unnecessary dependency (#10120)
- Contributors: Fumiya Watanabe, Takayuki Murooka, 心刚
0.41.2 (2025-02-19)
- chore: bump version to 0.41.1 (#10088)
- Contributors: Ryohsuke Mitsudome
0.41.1 (2025-02-10)
0.41.0 (2025-01-29)
0.40.0 (2024-12-12)
-
Merge branch 'main' into release-0.40.0
-
Revert "chore(package.xml): bump version to 0.39.0 (#9587)" This reverts commit c9f0f2688c57b0f657f5c1f28f036a970682e7f5.
-
fix: fix ticket links in CHANGELOG.rst (#9588)
-
chore(package.xml): bump version to 0.39.0 (#9587)
- chore(package.xml): bump version to 0.39.0
- fix: fix ticket links in CHANGELOG.rst
* fix: remove unnecessary diff ---------Co-authored-by: Yutaka Kondo <<yutaka.kondo@youtalk.jp>>
-
fix: fix ticket links in CHANGELOG.rst (#9588)
-
chore(autoware_autonomous_emergency_braking): add package maintainer (#9580) add package maintainer
-
fix(cpplint): include what you use - control (#9565)
-
refactor(autoware_autonomous_emergency_braking): update longitudinal offset parameter name (#9463) Update the parameter name for the longitudinal offset distance used for collision check in the autonomous emergency braking control module. The parameter name has been changed from "longitudinal_offset" to "longitudinal_offset_margin" to better reflect its purpose.
-
refactor(autoware_autonomous_emergency_braking): add
File truncated at 100 lines see the full file
Package Dependencies
System Dependencies
Dependant Packages
Launch files
- launch/autoware_autonomous_emergency_braking.launch.xml
-
- param_path [default: $(find-pkg-share autoware_autonomous_emergency_braking)/config/autonomous_emergency_braking.param.yaml]
- input_pointcloud [default: /perception/obstacle_segmentation/pointcloud]
- input_velocity [default: /vehicle/status/velocity_status]
- input_imu [default: /sensing/imu/imu_data]
- input_predicted_trajectory [default: /control/trajectory_follower/lateral/predicted_trajectory]
- input_objects [default: /perception/object_recognition/objects]
Messages
Services
Plugins
Recent questions tagged autoware_autonomous_emergency_braking at Robotics Stack Exchange
Package Summary
Tags | No category tags. |
Version | 0.47.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 | 2025-08-16 |
Dev Status | UNKNOWN |
Released | UNRELEASED |
Tags | planner ros calibration self-driving-car autonomous-driving autonomous-vehicles ros2 3d-map autoware |
Contributing |
Help Wanted (-)
Good First Issues (-) Pull Requests to Review (-) |
Package Description
Additional Links
Maintainers
- Takamasa Horibe
- Tomoya Kimura
- Mamoru Sobue
- Daniel Sanchez
- Kyoichi Sugahara
- Alqudah Mohammad
Authors
Autonomous Emergency Braking (AEB)
Purpose / Role
autonomous_emergency_braking
is a module that prevents collisions with obstacles on the predicted path created by a control module or sensor values estimated from the control module.
Assumptions
This module has following assumptions.
-
The predicted path of the ego vehicle can be made from either the path created from sensors or the path created from a control module, or both.
-
The current speed and angular velocity can be obtained from the sensors of the ego vehicle, and it uses points as obstacles.
-
The AEBs target obstacles are 2D points that can be obtained from the input point cloud or by obtaining the intersection points between the predicted ego footprint path and a predicted object’s shape.
IMU path generation: steering angle vs IMU’s angular velocity
Currently, the IMU-based path is generated using the angular velocity obtained by the IMU itself. It has been suggested that the steering angle could be used instead onf the angular velocity.
The pros and cons of both approaches are:
IMU angular velocity:
- (+) Usually, it has high accuracy
- (-) Vehicle vibration might introduce noise.
Steering angle:
- (+) Not so noisy
- (-) May have a steering offset or a wrong gear ratio, and the steering angle of Autoware and the real steering may not be the same.
For the moment, there are no plans to implement the steering angle on the path creation process of the AEB module.
Inner-workings / Algorithms
AEB has the following steps before it outputs the emergency stop signal.
-
Activate AEB if necessary.
-
Generate a predicted path of the ego vehicle.
-
Get target obstacles from the input point cloud and/or predicted object data.
-
Estimate the closest obstacle speed.
-
Collision check with target obstacles.
-
Send emergency stop signals to
/diagnostics
.
We give more details of each section below.
1. Activate AEB if necessary
We do not activate AEB module if it satisfies the following conditions.
-
Ego vehicle is not in autonomous driving state
-
When the ego vehicle is not moving (Current Velocity is below a 0.1 m/s threshold)
2. Generate a predicted path of the ego vehicle
2.1 Overview of IMU Path Generation
AEB generates a predicted footprint path based on current velocity and current angular velocity obtained from attached sensors. Note that if use_imu_path
is false
, it skips this step. This predicted path is generated as:
where $v$ and $\omega$ are current longitudinal velocity and angular velocity respectively. $dt$ is time interval that users can define in advance with the imu_prediction_time_interval
parameter. The IMU path is generated considering a time horizon, defined by the imu_prediction_time_horizon
parameter.
2.2 Constraints and Countermeasures in IMU Path Generation
Since the IMU path generation only uses the ego vehicle’s current angular velocity, disregarding the MPC’s planner steering, the shape of the IMU path tends to get distorted quite easily and protrude out of the ego vehicle’s current lane, possibly causing unwanted emergency stops. There are two countermeasures for this issue:
- Control using the
max_generated_imu_path_length
parameter- Generation stops when path length exceeds the set value
- Avoid using a large
imu_prediction_time_horizon
- Control based on lateral deviation
- Set the
limit_imu_path_lat_dev
parameter to “true” - Set deviation threshold using
imu_path_lat_dev_threshold
- Path generation stops when lateral deviation exceeds the threshold
- Set the
2.3 Advantages and Limitations of Lateral Deviation Control
The advantage of setting a lateral deviation limit with the limit_imu_path_lat_dev
parameter is that the imu_prediction_time_horizon
and the max_generated_imu_path_length
can be increased without worries about the IMU predicted path deforming beyond a certain threshold. The downside is that the IMU path will be cut short when the ego has a high angular velocity, in said cases, the AEB module would mostly rely on the MPC path to prevent or mitigate collisions.
If it is assumed the ego vehicle will mostly travel along the centerline of its lanelets, it can be useful to set the lateral deviation threshold parameter imu_path_lat_dev_threshold
to be equal to or smaller than the average lanelet width divided by 2, that way, the chance of the IMU predicted path leaving the current ego lanelet is smaller, and it is possible to increase the imu_prediction_time_horizon
to prevent frontal collisions when the ego is mostly traveling in a straight line.
The lateral deviation is measured using the ego vehicle’s current position as a reference, and it measures the distance of the furthermost vertex of the predicted ego footprint to the predicted path. The following image illustrates how the lateral deviation of a given ego pose is measured.
2.4 IMU Path Generation Algorithm
2.4.1 Selection of Lateral Deviation Check Points
File truncated at 100 lines see the full file
Changelog for package autoware_autonomous_emergency_braking
0.47.0 (2025-08-11)
- style(pre-commit): autofix (#10982) Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com>
- Contributors: Ryohsuke Mitsudome
0.46.0 (2025-06-20)
0.45.0 (2025-05-22)
0.44.2 (2025-06-10)
0.44.1 (2025-05-01)
0.44.0 (2025-04-18)
- Merge remote-tracking branch 'origin/main' into humble
- feat(autoware_autonomous_emergency_braking): created Schema file and updated ReadME file for parameters setting (#10002) Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com> Co-authored-by: Ryohsuke Mitsudome <<43976834+mitsudome-r@users.noreply.github.com>>
- Contributors: Ryohsuke Mitsudome, Vishal Chauhan
0.43.0 (2025-03-21)
- Merge remote-tracking branch 'origin/main' into chore/bump-version-0.43
- chore: rename from [autoware.universe]{.title-ref} to [autoware_universe]{.title-ref} (#10306)
- Contributors: Hayato Mizushima, Yutaka Kondo
0.42.0 (2025-03-03)
- Merge remote-tracking branch 'origin/main' into tmp/bot/bump_version_base
- feat(autoware_utils): replace autoware_universe_utils with autoware_utils (#10191)
- chore(autonomous_emergency_braking): remove unnecessary dependency (#10120)
- Contributors: Fumiya Watanabe, Takayuki Murooka, 心刚
0.41.2 (2025-02-19)
- chore: bump version to 0.41.1 (#10088)
- Contributors: Ryohsuke Mitsudome
0.41.1 (2025-02-10)
0.41.0 (2025-01-29)
0.40.0 (2024-12-12)
-
Merge branch 'main' into release-0.40.0
-
Revert "chore(package.xml): bump version to 0.39.0 (#9587)" This reverts commit c9f0f2688c57b0f657f5c1f28f036a970682e7f5.
-
fix: fix ticket links in CHANGELOG.rst (#9588)
-
chore(package.xml): bump version to 0.39.0 (#9587)
- chore(package.xml): bump version to 0.39.0
- fix: fix ticket links in CHANGELOG.rst
* fix: remove unnecessary diff ---------Co-authored-by: Yutaka Kondo <<yutaka.kondo@youtalk.jp>>
-
fix: fix ticket links in CHANGELOG.rst (#9588)
-
chore(autoware_autonomous_emergency_braking): add package maintainer (#9580) add package maintainer
-
fix(cpplint): include what you use - control (#9565)
-
refactor(autoware_autonomous_emergency_braking): update longitudinal offset parameter name (#9463) Update the parameter name for the longitudinal offset distance used for collision check in the autonomous emergency braking control module. The parameter name has been changed from "longitudinal_offset" to "longitudinal_offset_margin" to better reflect its purpose.
-
refactor(autoware_autonomous_emergency_braking): add
File truncated at 100 lines see the full file
Package Dependencies
System Dependencies
Dependant Packages
Launch files
- launch/autoware_autonomous_emergency_braking.launch.xml
-
- param_path [default: $(find-pkg-share autoware_autonomous_emergency_braking)/config/autonomous_emergency_braking.param.yaml]
- input_pointcloud [default: /perception/obstacle_segmentation/pointcloud]
- input_velocity [default: /vehicle/status/velocity_status]
- input_imu [default: /sensing/imu/imu_data]
- input_predicted_trajectory [default: /control/trajectory_follower/lateral/predicted_trajectory]
- input_objects [default: /perception/object_recognition/objects]
Messages
Services
Plugins
Recent questions tagged autoware_autonomous_emergency_braking at Robotics Stack Exchange
Package Summary
Tags | No category tags. |
Version | 0.47.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 | 2025-08-16 |
Dev Status | UNKNOWN |
Released | UNRELEASED |
Tags | planner ros calibration self-driving-car autonomous-driving autonomous-vehicles ros2 3d-map autoware |
Contributing |
Help Wanted (-)
Good First Issues (-) Pull Requests to Review (-) |
Package Description
Additional Links
Maintainers
- Takamasa Horibe
- Tomoya Kimura
- Mamoru Sobue
- Daniel Sanchez
- Kyoichi Sugahara
- Alqudah Mohammad
Authors
Autonomous Emergency Braking (AEB)
Purpose / Role
autonomous_emergency_braking
is a module that prevents collisions with obstacles on the predicted path created by a control module or sensor values estimated from the control module.
Assumptions
This module has following assumptions.
-
The predicted path of the ego vehicle can be made from either the path created from sensors or the path created from a control module, or both.
-
The current speed and angular velocity can be obtained from the sensors of the ego vehicle, and it uses points as obstacles.
-
The AEBs target obstacles are 2D points that can be obtained from the input point cloud or by obtaining the intersection points between the predicted ego footprint path and a predicted object’s shape.
IMU path generation: steering angle vs IMU’s angular velocity
Currently, the IMU-based path is generated using the angular velocity obtained by the IMU itself. It has been suggested that the steering angle could be used instead onf the angular velocity.
The pros and cons of both approaches are:
IMU angular velocity:
- (+) Usually, it has high accuracy
- (-) Vehicle vibration might introduce noise.
Steering angle:
- (+) Not so noisy
- (-) May have a steering offset or a wrong gear ratio, and the steering angle of Autoware and the real steering may not be the same.
For the moment, there are no plans to implement the steering angle on the path creation process of the AEB module.
Inner-workings / Algorithms
AEB has the following steps before it outputs the emergency stop signal.
-
Activate AEB if necessary.
-
Generate a predicted path of the ego vehicle.
-
Get target obstacles from the input point cloud and/or predicted object data.
-
Estimate the closest obstacle speed.
-
Collision check with target obstacles.
-
Send emergency stop signals to
/diagnostics
.
We give more details of each section below.
1. Activate AEB if necessary
We do not activate AEB module if it satisfies the following conditions.
-
Ego vehicle is not in autonomous driving state
-
When the ego vehicle is not moving (Current Velocity is below a 0.1 m/s threshold)
2. Generate a predicted path of the ego vehicle
2.1 Overview of IMU Path Generation
AEB generates a predicted footprint path based on current velocity and current angular velocity obtained from attached sensors. Note that if use_imu_path
is false
, it skips this step. This predicted path is generated as:
where $v$ and $\omega$ are current longitudinal velocity and angular velocity respectively. $dt$ is time interval that users can define in advance with the imu_prediction_time_interval
parameter. The IMU path is generated considering a time horizon, defined by the imu_prediction_time_horizon
parameter.
2.2 Constraints and Countermeasures in IMU Path Generation
Since the IMU path generation only uses the ego vehicle’s current angular velocity, disregarding the MPC’s planner steering, the shape of the IMU path tends to get distorted quite easily and protrude out of the ego vehicle’s current lane, possibly causing unwanted emergency stops. There are two countermeasures for this issue:
- Control using the
max_generated_imu_path_length
parameter- Generation stops when path length exceeds the set value
- Avoid using a large
imu_prediction_time_horizon
- Control based on lateral deviation
- Set the
limit_imu_path_lat_dev
parameter to “true” - Set deviation threshold using
imu_path_lat_dev_threshold
- Path generation stops when lateral deviation exceeds the threshold
- Set the
2.3 Advantages and Limitations of Lateral Deviation Control
The advantage of setting a lateral deviation limit with the limit_imu_path_lat_dev
parameter is that the imu_prediction_time_horizon
and the max_generated_imu_path_length
can be increased without worries about the IMU predicted path deforming beyond a certain threshold. The downside is that the IMU path will be cut short when the ego has a high angular velocity, in said cases, the AEB module would mostly rely on the MPC path to prevent or mitigate collisions.
If it is assumed the ego vehicle will mostly travel along the centerline of its lanelets, it can be useful to set the lateral deviation threshold parameter imu_path_lat_dev_threshold
to be equal to or smaller than the average lanelet width divided by 2, that way, the chance of the IMU predicted path leaving the current ego lanelet is smaller, and it is possible to increase the imu_prediction_time_horizon
to prevent frontal collisions when the ego is mostly traveling in a straight line.
The lateral deviation is measured using the ego vehicle’s current position as a reference, and it measures the distance of the furthermost vertex of the predicted ego footprint to the predicted path. The following image illustrates how the lateral deviation of a given ego pose is measured.
2.4 IMU Path Generation Algorithm
2.4.1 Selection of Lateral Deviation Check Points
File truncated at 100 lines see the full file
Changelog for package autoware_autonomous_emergency_braking
0.47.0 (2025-08-11)
- style(pre-commit): autofix (#10982) Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com>
- Contributors: Ryohsuke Mitsudome
0.46.0 (2025-06-20)
0.45.0 (2025-05-22)
0.44.2 (2025-06-10)
0.44.1 (2025-05-01)
0.44.0 (2025-04-18)
- Merge remote-tracking branch 'origin/main' into humble
- feat(autoware_autonomous_emergency_braking): created Schema file and updated ReadME file for parameters setting (#10002) Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com> Co-authored-by: Ryohsuke Mitsudome <<43976834+mitsudome-r@users.noreply.github.com>>
- Contributors: Ryohsuke Mitsudome, Vishal Chauhan
0.43.0 (2025-03-21)
- Merge remote-tracking branch 'origin/main' into chore/bump-version-0.43
- chore: rename from [autoware.universe]{.title-ref} to [autoware_universe]{.title-ref} (#10306)
- Contributors: Hayato Mizushima, Yutaka Kondo
0.42.0 (2025-03-03)
- Merge remote-tracking branch 'origin/main' into tmp/bot/bump_version_base
- feat(autoware_utils): replace autoware_universe_utils with autoware_utils (#10191)
- chore(autonomous_emergency_braking): remove unnecessary dependency (#10120)
- Contributors: Fumiya Watanabe, Takayuki Murooka, 心刚
0.41.2 (2025-02-19)
- chore: bump version to 0.41.1 (#10088)
- Contributors: Ryohsuke Mitsudome
0.41.1 (2025-02-10)
0.41.0 (2025-01-29)
0.40.0 (2024-12-12)
-
Merge branch 'main' into release-0.40.0
-
Revert "chore(package.xml): bump version to 0.39.0 (#9587)" This reverts commit c9f0f2688c57b0f657f5c1f28f036a970682e7f5.
-
fix: fix ticket links in CHANGELOG.rst (#9588)
-
chore(package.xml): bump version to 0.39.0 (#9587)
- chore(package.xml): bump version to 0.39.0
- fix: fix ticket links in CHANGELOG.rst
* fix: remove unnecessary diff ---------Co-authored-by: Yutaka Kondo <<yutaka.kondo@youtalk.jp>>
-
fix: fix ticket links in CHANGELOG.rst (#9588)
-
chore(autoware_autonomous_emergency_braking): add package maintainer (#9580) add package maintainer
-
fix(cpplint): include what you use - control (#9565)
-
refactor(autoware_autonomous_emergency_braking): update longitudinal offset parameter name (#9463) Update the parameter name for the longitudinal offset distance used for collision check in the autonomous emergency braking control module. The parameter name has been changed from "longitudinal_offset" to "longitudinal_offset_margin" to better reflect its purpose.
-
refactor(autoware_autonomous_emergency_braking): add
File truncated at 100 lines see the full file
Package Dependencies
System Dependencies
Dependant Packages
Launch files
- launch/autoware_autonomous_emergency_braking.launch.xml
-
- param_path [default: $(find-pkg-share autoware_autonomous_emergency_braking)/config/autonomous_emergency_braking.param.yaml]
- input_pointcloud [default: /perception/obstacle_segmentation/pointcloud]
- input_velocity [default: /vehicle/status/velocity_status]
- input_imu [default: /sensing/imu/imu_data]
- input_predicted_trajectory [default: /control/trajectory_follower/lateral/predicted_trajectory]
- input_objects [default: /perception/object_recognition/objects]
Messages
Services
Plugins
Recent questions tagged autoware_autonomous_emergency_braking at Robotics Stack Exchange
Package Summary
Tags | No category tags. |
Version | 0.47.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 | 2025-08-16 |
Dev Status | UNKNOWN |
Released | UNRELEASED |
Tags | planner ros calibration self-driving-car autonomous-driving autonomous-vehicles ros2 3d-map autoware |
Contributing |
Help Wanted (-)
Good First Issues (-) Pull Requests to Review (-) |
Package Description
Additional Links
Maintainers
- Takamasa Horibe
- Tomoya Kimura
- Mamoru Sobue
- Daniel Sanchez
- Kyoichi Sugahara
- Alqudah Mohammad
Authors
Autonomous Emergency Braking (AEB)
Purpose / Role
autonomous_emergency_braking
is a module that prevents collisions with obstacles on the predicted path created by a control module or sensor values estimated from the control module.
Assumptions
This module has following assumptions.
-
The predicted path of the ego vehicle can be made from either the path created from sensors or the path created from a control module, or both.
-
The current speed and angular velocity can be obtained from the sensors of the ego vehicle, and it uses points as obstacles.
-
The AEBs target obstacles are 2D points that can be obtained from the input point cloud or by obtaining the intersection points between the predicted ego footprint path and a predicted object’s shape.
IMU path generation: steering angle vs IMU’s angular velocity
Currently, the IMU-based path is generated using the angular velocity obtained by the IMU itself. It has been suggested that the steering angle could be used instead onf the angular velocity.
The pros and cons of both approaches are:
IMU angular velocity:
- (+) Usually, it has high accuracy
- (-) Vehicle vibration might introduce noise.
Steering angle:
- (+) Not so noisy
- (-) May have a steering offset or a wrong gear ratio, and the steering angle of Autoware and the real steering may not be the same.
For the moment, there are no plans to implement the steering angle on the path creation process of the AEB module.
Inner-workings / Algorithms
AEB has the following steps before it outputs the emergency stop signal.
-
Activate AEB if necessary.
-
Generate a predicted path of the ego vehicle.
-
Get target obstacles from the input point cloud and/or predicted object data.
-
Estimate the closest obstacle speed.
-
Collision check with target obstacles.
-
Send emergency stop signals to
/diagnostics
.
We give more details of each section below.
1. Activate AEB if necessary
We do not activate AEB module if it satisfies the following conditions.
-
Ego vehicle is not in autonomous driving state
-
When the ego vehicle is not moving (Current Velocity is below a 0.1 m/s threshold)
2. Generate a predicted path of the ego vehicle
2.1 Overview of IMU Path Generation
AEB generates a predicted footprint path based on current velocity and current angular velocity obtained from attached sensors. Note that if use_imu_path
is false
, it skips this step. This predicted path is generated as:
where $v$ and $\omega$ are current longitudinal velocity and angular velocity respectively. $dt$ is time interval that users can define in advance with the imu_prediction_time_interval
parameter. The IMU path is generated considering a time horizon, defined by the imu_prediction_time_horizon
parameter.
2.2 Constraints and Countermeasures in IMU Path Generation
Since the IMU path generation only uses the ego vehicle’s current angular velocity, disregarding the MPC’s planner steering, the shape of the IMU path tends to get distorted quite easily and protrude out of the ego vehicle’s current lane, possibly causing unwanted emergency stops. There are two countermeasures for this issue:
- Control using the
max_generated_imu_path_length
parameter- Generation stops when path length exceeds the set value
- Avoid using a large
imu_prediction_time_horizon
- Control based on lateral deviation
- Set the
limit_imu_path_lat_dev
parameter to “true” - Set deviation threshold using
imu_path_lat_dev_threshold
- Path generation stops when lateral deviation exceeds the threshold
- Set the
2.3 Advantages and Limitations of Lateral Deviation Control
The advantage of setting a lateral deviation limit with the limit_imu_path_lat_dev
parameter is that the imu_prediction_time_horizon
and the max_generated_imu_path_length
can be increased without worries about the IMU predicted path deforming beyond a certain threshold. The downside is that the IMU path will be cut short when the ego has a high angular velocity, in said cases, the AEB module would mostly rely on the MPC path to prevent or mitigate collisions.
If it is assumed the ego vehicle will mostly travel along the centerline of its lanelets, it can be useful to set the lateral deviation threshold parameter imu_path_lat_dev_threshold
to be equal to or smaller than the average lanelet width divided by 2, that way, the chance of the IMU predicted path leaving the current ego lanelet is smaller, and it is possible to increase the imu_prediction_time_horizon
to prevent frontal collisions when the ego is mostly traveling in a straight line.
The lateral deviation is measured using the ego vehicle’s current position as a reference, and it measures the distance of the furthermost vertex of the predicted ego footprint to the predicted path. The following image illustrates how the lateral deviation of a given ego pose is measured.
2.4 IMU Path Generation Algorithm
2.4.1 Selection of Lateral Deviation Check Points
File truncated at 100 lines see the full file
Changelog for package autoware_autonomous_emergency_braking
0.47.0 (2025-08-11)
- style(pre-commit): autofix (#10982) Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com>
- Contributors: Ryohsuke Mitsudome
0.46.0 (2025-06-20)
0.45.0 (2025-05-22)
0.44.2 (2025-06-10)
0.44.1 (2025-05-01)
0.44.0 (2025-04-18)
- Merge remote-tracking branch 'origin/main' into humble
- feat(autoware_autonomous_emergency_braking): created Schema file and updated ReadME file for parameters setting (#10002) Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com> Co-authored-by: Ryohsuke Mitsudome <<43976834+mitsudome-r@users.noreply.github.com>>
- Contributors: Ryohsuke Mitsudome, Vishal Chauhan
0.43.0 (2025-03-21)
- Merge remote-tracking branch 'origin/main' into chore/bump-version-0.43
- chore: rename from [autoware.universe]{.title-ref} to [autoware_universe]{.title-ref} (#10306)
- Contributors: Hayato Mizushima, Yutaka Kondo
0.42.0 (2025-03-03)
- Merge remote-tracking branch 'origin/main' into tmp/bot/bump_version_base
- feat(autoware_utils): replace autoware_universe_utils with autoware_utils (#10191)
- chore(autonomous_emergency_braking): remove unnecessary dependency (#10120)
- Contributors: Fumiya Watanabe, Takayuki Murooka, 心刚
0.41.2 (2025-02-19)
- chore: bump version to 0.41.1 (#10088)
- Contributors: Ryohsuke Mitsudome
0.41.1 (2025-02-10)
0.41.0 (2025-01-29)
0.40.0 (2024-12-12)
-
Merge branch 'main' into release-0.40.0
-
Revert "chore(package.xml): bump version to 0.39.0 (#9587)" This reverts commit c9f0f2688c57b0f657f5c1f28f036a970682e7f5.
-
fix: fix ticket links in CHANGELOG.rst (#9588)
-
chore(package.xml): bump version to 0.39.0 (#9587)
- chore(package.xml): bump version to 0.39.0
- fix: fix ticket links in CHANGELOG.rst
* fix: remove unnecessary diff ---------Co-authored-by: Yutaka Kondo <<yutaka.kondo@youtalk.jp>>
-
fix: fix ticket links in CHANGELOG.rst (#9588)
-
chore(autoware_autonomous_emergency_braking): add package maintainer (#9580) add package maintainer
-
fix(cpplint): include what you use - control (#9565)
-
refactor(autoware_autonomous_emergency_braking): update longitudinal offset parameter name (#9463) Update the parameter name for the longitudinal offset distance used for collision check in the autonomous emergency braking control module. The parameter name has been changed from "longitudinal_offset" to "longitudinal_offset_margin" to better reflect its purpose.
-
refactor(autoware_autonomous_emergency_braking): add
File truncated at 100 lines see the full file
Package Dependencies
System Dependencies
Dependant Packages
Launch files
- launch/autoware_autonomous_emergency_braking.launch.xml
-
- param_path [default: $(find-pkg-share autoware_autonomous_emergency_braking)/config/autonomous_emergency_braking.param.yaml]
- input_pointcloud [default: /perception/obstacle_segmentation/pointcloud]
- input_velocity [default: /vehicle/status/velocity_status]
- input_imu [default: /sensing/imu/imu_data]
- input_predicted_trajectory [default: /control/trajectory_follower/lateral/predicted_trajectory]
- input_objects [default: /perception/object_recognition/objects]
Messages
Services
Plugins
Recent questions tagged autoware_autonomous_emergency_braking at Robotics Stack Exchange
Package Summary
Tags | No category tags. |
Version | 0.47.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 | 2025-08-16 |
Dev Status | UNKNOWN |
Released | UNRELEASED |
Tags | planner ros calibration self-driving-car autonomous-driving autonomous-vehicles ros2 3d-map autoware |
Contributing |
Help Wanted (-)
Good First Issues (-) Pull Requests to Review (-) |
Package Description
Additional Links
Maintainers
- Takamasa Horibe
- Tomoya Kimura
- Mamoru Sobue
- Daniel Sanchez
- Kyoichi Sugahara
- Alqudah Mohammad
Authors
Autonomous Emergency Braking (AEB)
Purpose / Role
autonomous_emergency_braking
is a module that prevents collisions with obstacles on the predicted path created by a control module or sensor values estimated from the control module.
Assumptions
This module has following assumptions.
-
The predicted path of the ego vehicle can be made from either the path created from sensors or the path created from a control module, or both.
-
The current speed and angular velocity can be obtained from the sensors of the ego vehicle, and it uses points as obstacles.
-
The AEBs target obstacles are 2D points that can be obtained from the input point cloud or by obtaining the intersection points between the predicted ego footprint path and a predicted object’s shape.
IMU path generation: steering angle vs IMU’s angular velocity
Currently, the IMU-based path is generated using the angular velocity obtained by the IMU itself. It has been suggested that the steering angle could be used instead onf the angular velocity.
The pros and cons of both approaches are:
IMU angular velocity:
- (+) Usually, it has high accuracy
- (-) Vehicle vibration might introduce noise.
Steering angle:
- (+) Not so noisy
- (-) May have a steering offset or a wrong gear ratio, and the steering angle of Autoware and the real steering may not be the same.
For the moment, there are no plans to implement the steering angle on the path creation process of the AEB module.
Inner-workings / Algorithms
AEB has the following steps before it outputs the emergency stop signal.
-
Activate AEB if necessary.
-
Generate a predicted path of the ego vehicle.
-
Get target obstacles from the input point cloud and/or predicted object data.
-
Estimate the closest obstacle speed.
-
Collision check with target obstacles.
-
Send emergency stop signals to
/diagnostics
.
We give more details of each section below.
1. Activate AEB if necessary
We do not activate AEB module if it satisfies the following conditions.
-
Ego vehicle is not in autonomous driving state
-
When the ego vehicle is not moving (Current Velocity is below a 0.1 m/s threshold)
2. Generate a predicted path of the ego vehicle
2.1 Overview of IMU Path Generation
AEB generates a predicted footprint path based on current velocity and current angular velocity obtained from attached sensors. Note that if use_imu_path
is false
, it skips this step. This predicted path is generated as:
where $v$ and $\omega$ are current longitudinal velocity and angular velocity respectively. $dt$ is time interval that users can define in advance with the imu_prediction_time_interval
parameter. The IMU path is generated considering a time horizon, defined by the imu_prediction_time_horizon
parameter.
2.2 Constraints and Countermeasures in IMU Path Generation
Since the IMU path generation only uses the ego vehicle’s current angular velocity, disregarding the MPC’s planner steering, the shape of the IMU path tends to get distorted quite easily and protrude out of the ego vehicle’s current lane, possibly causing unwanted emergency stops. There are two countermeasures for this issue:
- Control using the
max_generated_imu_path_length
parameter- Generation stops when path length exceeds the set value
- Avoid using a large
imu_prediction_time_horizon
- Control based on lateral deviation
- Set the
limit_imu_path_lat_dev
parameter to “true” - Set deviation threshold using
imu_path_lat_dev_threshold
- Path generation stops when lateral deviation exceeds the threshold
- Set the
2.3 Advantages and Limitations of Lateral Deviation Control
The advantage of setting a lateral deviation limit with the limit_imu_path_lat_dev
parameter is that the imu_prediction_time_horizon
and the max_generated_imu_path_length
can be increased without worries about the IMU predicted path deforming beyond a certain threshold. The downside is that the IMU path will be cut short when the ego has a high angular velocity, in said cases, the AEB module would mostly rely on the MPC path to prevent or mitigate collisions.
If it is assumed the ego vehicle will mostly travel along the centerline of its lanelets, it can be useful to set the lateral deviation threshold parameter imu_path_lat_dev_threshold
to be equal to or smaller than the average lanelet width divided by 2, that way, the chance of the IMU predicted path leaving the current ego lanelet is smaller, and it is possible to increase the imu_prediction_time_horizon
to prevent frontal collisions when the ego is mostly traveling in a straight line.
The lateral deviation is measured using the ego vehicle’s current position as a reference, and it measures the distance of the furthermost vertex of the predicted ego footprint to the predicted path. The following image illustrates how the lateral deviation of a given ego pose is measured.
2.4 IMU Path Generation Algorithm
2.4.1 Selection of Lateral Deviation Check Points
File truncated at 100 lines see the full file
Changelog for package autoware_autonomous_emergency_braking
0.47.0 (2025-08-11)
- style(pre-commit): autofix (#10982) Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com>
- Contributors: Ryohsuke Mitsudome
0.46.0 (2025-06-20)
0.45.0 (2025-05-22)
0.44.2 (2025-06-10)
0.44.1 (2025-05-01)
0.44.0 (2025-04-18)
- Merge remote-tracking branch 'origin/main' into humble
- feat(autoware_autonomous_emergency_braking): created Schema file and updated ReadME file for parameters setting (#10002) Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com> Co-authored-by: Ryohsuke Mitsudome <<43976834+mitsudome-r@users.noreply.github.com>>
- Contributors: Ryohsuke Mitsudome, Vishal Chauhan
0.43.0 (2025-03-21)
- Merge remote-tracking branch 'origin/main' into chore/bump-version-0.43
- chore: rename from [autoware.universe]{.title-ref} to [autoware_universe]{.title-ref} (#10306)
- Contributors: Hayato Mizushima, Yutaka Kondo
0.42.0 (2025-03-03)
- Merge remote-tracking branch 'origin/main' into tmp/bot/bump_version_base
- feat(autoware_utils): replace autoware_universe_utils with autoware_utils (#10191)
- chore(autonomous_emergency_braking): remove unnecessary dependency (#10120)
- Contributors: Fumiya Watanabe, Takayuki Murooka, 心刚
0.41.2 (2025-02-19)
- chore: bump version to 0.41.1 (#10088)
- Contributors: Ryohsuke Mitsudome
0.41.1 (2025-02-10)
0.41.0 (2025-01-29)
0.40.0 (2024-12-12)
-
Merge branch 'main' into release-0.40.0
-
Revert "chore(package.xml): bump version to 0.39.0 (#9587)" This reverts commit c9f0f2688c57b0f657f5c1f28f036a970682e7f5.
-
fix: fix ticket links in CHANGELOG.rst (#9588)
-
chore(package.xml): bump version to 0.39.0 (#9587)
- chore(package.xml): bump version to 0.39.0
- fix: fix ticket links in CHANGELOG.rst
* fix: remove unnecessary diff ---------Co-authored-by: Yutaka Kondo <<yutaka.kondo@youtalk.jp>>
-
fix: fix ticket links in CHANGELOG.rst (#9588)
-
chore(autoware_autonomous_emergency_braking): add package maintainer (#9580) add package maintainer
-
fix(cpplint): include what you use - control (#9565)
-
refactor(autoware_autonomous_emergency_braking): update longitudinal offset parameter name (#9463) Update the parameter name for the longitudinal offset distance used for collision check in the autonomous emergency braking control module. The parameter name has been changed from "longitudinal_offset" to "longitudinal_offset_margin" to better reflect its purpose.
-
refactor(autoware_autonomous_emergency_braking): add
File truncated at 100 lines see the full file
Package Dependencies
System Dependencies
Dependant Packages
Launch files
- launch/autoware_autonomous_emergency_braking.launch.xml
-
- param_path [default: $(find-pkg-share autoware_autonomous_emergency_braking)/config/autonomous_emergency_braking.param.yaml]
- input_pointcloud [default: /perception/obstacle_segmentation/pointcloud]
- input_velocity [default: /vehicle/status/velocity_status]
- input_imu [default: /sensing/imu/imu_data]
- input_predicted_trajectory [default: /control/trajectory_follower/lateral/predicted_trajectory]
- input_objects [default: /perception/object_recognition/objects]
Messages
Services
Plugins
Recent questions tagged autoware_autonomous_emergency_braking at Robotics Stack Exchange
Package Summary
Tags | No category tags. |
Version | 0.47.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 | 2025-08-16 |
Dev Status | UNKNOWN |
Released | UNRELEASED |
Tags | planner ros calibration self-driving-car autonomous-driving autonomous-vehicles ros2 3d-map autoware |
Contributing |
Help Wanted (-)
Good First Issues (-) Pull Requests to Review (-) |
Package Description
Additional Links
Maintainers
- Takamasa Horibe
- Tomoya Kimura
- Mamoru Sobue
- Daniel Sanchez
- Kyoichi Sugahara
- Alqudah Mohammad
Authors
Autonomous Emergency Braking (AEB)
Purpose / Role
autonomous_emergency_braking
is a module that prevents collisions with obstacles on the predicted path created by a control module or sensor values estimated from the control module.
Assumptions
This module has following assumptions.
-
The predicted path of the ego vehicle can be made from either the path created from sensors or the path created from a control module, or both.
-
The current speed and angular velocity can be obtained from the sensors of the ego vehicle, and it uses points as obstacles.
-
The AEBs target obstacles are 2D points that can be obtained from the input point cloud or by obtaining the intersection points between the predicted ego footprint path and a predicted object’s shape.
IMU path generation: steering angle vs IMU’s angular velocity
Currently, the IMU-based path is generated using the angular velocity obtained by the IMU itself. It has been suggested that the steering angle could be used instead onf the angular velocity.
The pros and cons of both approaches are:
IMU angular velocity:
- (+) Usually, it has high accuracy
- (-) Vehicle vibration might introduce noise.
Steering angle:
- (+) Not so noisy
- (-) May have a steering offset or a wrong gear ratio, and the steering angle of Autoware and the real steering may not be the same.
For the moment, there are no plans to implement the steering angle on the path creation process of the AEB module.
Inner-workings / Algorithms
AEB has the following steps before it outputs the emergency stop signal.
-
Activate AEB if necessary.
-
Generate a predicted path of the ego vehicle.
-
Get target obstacles from the input point cloud and/or predicted object data.
-
Estimate the closest obstacle speed.
-
Collision check with target obstacles.
-
Send emergency stop signals to
/diagnostics
.
We give more details of each section below.
1. Activate AEB if necessary
We do not activate AEB module if it satisfies the following conditions.
-
Ego vehicle is not in autonomous driving state
-
When the ego vehicle is not moving (Current Velocity is below a 0.1 m/s threshold)
2. Generate a predicted path of the ego vehicle
2.1 Overview of IMU Path Generation
AEB generates a predicted footprint path based on current velocity and current angular velocity obtained from attached sensors. Note that if use_imu_path
is false
, it skips this step. This predicted path is generated as:
where $v$ and $\omega$ are current longitudinal velocity and angular velocity respectively. $dt$ is time interval that users can define in advance with the imu_prediction_time_interval
parameter. The IMU path is generated considering a time horizon, defined by the imu_prediction_time_horizon
parameter.
2.2 Constraints and Countermeasures in IMU Path Generation
Since the IMU path generation only uses the ego vehicle’s current angular velocity, disregarding the MPC’s planner steering, the shape of the IMU path tends to get distorted quite easily and protrude out of the ego vehicle’s current lane, possibly causing unwanted emergency stops. There are two countermeasures for this issue:
- Control using the
max_generated_imu_path_length
parameter- Generation stops when path length exceeds the set value
- Avoid using a large
imu_prediction_time_horizon
- Control based on lateral deviation
- Set the
limit_imu_path_lat_dev
parameter to “true” - Set deviation threshold using
imu_path_lat_dev_threshold
- Path generation stops when lateral deviation exceeds the threshold
- Set the
2.3 Advantages and Limitations of Lateral Deviation Control
The advantage of setting a lateral deviation limit with the limit_imu_path_lat_dev
parameter is that the imu_prediction_time_horizon
and the max_generated_imu_path_length
can be increased without worries about the IMU predicted path deforming beyond a certain threshold. The downside is that the IMU path will be cut short when the ego has a high angular velocity, in said cases, the AEB module would mostly rely on the MPC path to prevent or mitigate collisions.
If it is assumed the ego vehicle will mostly travel along the centerline of its lanelets, it can be useful to set the lateral deviation threshold parameter imu_path_lat_dev_threshold
to be equal to or smaller than the average lanelet width divided by 2, that way, the chance of the IMU predicted path leaving the current ego lanelet is smaller, and it is possible to increase the imu_prediction_time_horizon
to prevent frontal collisions when the ego is mostly traveling in a straight line.
The lateral deviation is measured using the ego vehicle’s current position as a reference, and it measures the distance of the furthermost vertex of the predicted ego footprint to the predicted path. The following image illustrates how the lateral deviation of a given ego pose is measured.
2.4 IMU Path Generation Algorithm
2.4.1 Selection of Lateral Deviation Check Points
File truncated at 100 lines see the full file
Changelog for package autoware_autonomous_emergency_braking
0.47.0 (2025-08-11)
- style(pre-commit): autofix (#10982) Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com>
- Contributors: Ryohsuke Mitsudome
0.46.0 (2025-06-20)
0.45.0 (2025-05-22)
0.44.2 (2025-06-10)
0.44.1 (2025-05-01)
0.44.0 (2025-04-18)
- Merge remote-tracking branch 'origin/main' into humble
- feat(autoware_autonomous_emergency_braking): created Schema file and updated ReadME file for parameters setting (#10002) Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com> Co-authored-by: Ryohsuke Mitsudome <<43976834+mitsudome-r@users.noreply.github.com>>
- Contributors: Ryohsuke Mitsudome, Vishal Chauhan
0.43.0 (2025-03-21)
- Merge remote-tracking branch 'origin/main' into chore/bump-version-0.43
- chore: rename from [autoware.universe]{.title-ref} to [autoware_universe]{.title-ref} (#10306)
- Contributors: Hayato Mizushima, Yutaka Kondo
0.42.0 (2025-03-03)
- Merge remote-tracking branch 'origin/main' into tmp/bot/bump_version_base
- feat(autoware_utils): replace autoware_universe_utils with autoware_utils (#10191)
- chore(autonomous_emergency_braking): remove unnecessary dependency (#10120)
- Contributors: Fumiya Watanabe, Takayuki Murooka, 心刚
0.41.2 (2025-02-19)
- chore: bump version to 0.41.1 (#10088)
- Contributors: Ryohsuke Mitsudome
0.41.1 (2025-02-10)
0.41.0 (2025-01-29)
0.40.0 (2024-12-12)
-
Merge branch 'main' into release-0.40.0
-
Revert "chore(package.xml): bump version to 0.39.0 (#9587)" This reverts commit c9f0f2688c57b0f657f5c1f28f036a970682e7f5.
-
fix: fix ticket links in CHANGELOG.rst (#9588)
-
chore(package.xml): bump version to 0.39.0 (#9587)
- chore(package.xml): bump version to 0.39.0
- fix: fix ticket links in CHANGELOG.rst
* fix: remove unnecessary diff ---------Co-authored-by: Yutaka Kondo <<yutaka.kondo@youtalk.jp>>
-
fix: fix ticket links in CHANGELOG.rst (#9588)
-
chore(autoware_autonomous_emergency_braking): add package maintainer (#9580) add package maintainer
-
fix(cpplint): include what you use - control (#9565)
-
refactor(autoware_autonomous_emergency_braking): update longitudinal offset parameter name (#9463) Update the parameter name for the longitudinal offset distance used for collision check in the autonomous emergency braking control module. The parameter name has been changed from "longitudinal_offset" to "longitudinal_offset_margin" to better reflect its purpose.
-
refactor(autoware_autonomous_emergency_braking): add
File truncated at 100 lines see the full file
Package Dependencies
System Dependencies
Dependant Packages
Launch files
- launch/autoware_autonomous_emergency_braking.launch.xml
-
- param_path [default: $(find-pkg-share autoware_autonomous_emergency_braking)/config/autonomous_emergency_braking.param.yaml]
- input_pointcloud [default: /perception/obstacle_segmentation/pointcloud]
- input_velocity [default: /vehicle/status/velocity_status]
- input_imu [default: /sensing/imu/imu_data]
- input_predicted_trajectory [default: /control/trajectory_follower/lateral/predicted_trajectory]
- input_objects [default: /perception/object_recognition/objects]