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
- Satoshi Ota
- Fumiya Watanabe
- Kyoichi Sugahara
- Tomoya Kimura
- Shumpei Wakabayashi
- Tomohito Ando
Authors
Side Shift design
(For remote control) Shift the path to left or right according to an external instruction.
Overview of the Side Shift Module Process
- Receive the required lateral offset input.
- Update the
requested_lateral_offset_
under the following conditions: a. Verify if the last update time has elapsed. b. Ensure the required lateral offset value is different from the previous one. - Insert the shift points into the path if the side shift module’s status is not in the SHIFTING status.
Please be aware that requested_lateral_offset_
is continuously updated with the latest values and is not queued.
Statuses of the Side Shift
The side shift has three distinct statuses. Note that during the SHIFTING status, the path cannot be updated:
- BEFORE_SHIFT: Preparing for shift.
- SHIFTING: Currently in the process of shifting.
- AFTER_SHIFT: Shift completed.
Flowchart
@startuml
skinparam monochrome true
skinparam defaultTextAlignment center
skinparam noteTextAlignment left
title callback function of lateral offset input
start
partition onLateralOffset {
:**INPUT** double new_lateral_offset;
if (abs(inserted_lateral_offset_ - new_lateral_offset) < 1e-4) then ( true)
stop
else ( false)
if (interval from last request is too short) then ( no)
else ( yes)
:requested_lateral_offset_ = new_lateral_offset \n lateral_offset_change_request_ = true;
endif
stop
@enduml
@startuml
skinparam monochrome true
skinparam defaultTextAlignment center
skinparam noteTextAlignment left
title path generation
start
partition plan {
if (lateral_offset_change_request_ == true \n && \n (shifting_status_ == BEFORE_SHIFT \n || \n shifting_status_ == AFTER_SHIFT)) then ( true)
partition replace-shift-line {
if ( shift line is inserted in the path ) then ( yes)
:erase left shift line;
else ( no)
endif
:calcShiftLines;
:add new shift lines;
:inserted_lateral_offset_ = requested_lateral_offset_ \n inserted_shift_lines_ = new_shift_line;
}
else( false)
endif
stop
@enduml
```plantuml @startuml skinparam monochrome true skinparam defaultTextAlignment center skinparam noteTextAlignment left
title update state
start partition updateState { :last_sp = path_shifter_.getLastShiftLine(); note left get furthest shift lines end note :calculate max_planned_shift_length; note left calculate furthest shift length of previous shifted path end note if (abs(inserted_lateral_offset_ - inserted_shift_line_.end_shift_length) < 1e-4 \n && \n abs(max_planned_shift_length) < 1e-4 \n && \n abs(requested_lateral_offset_) < 1e-4) then ( true) :current_state_ = BT::NodeStatus::SUCCESS; else (false) if (ego’s position is behind of shift line’s start point) then( yes)
File truncated at 100 lines see the full file
Changelog for package autoware_behavior_path_side_shift_module
0.47.0 (2025-08-11)
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)
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)
-
feat!: replace tier4_planning_msgs/PathWithLaneId with autoware_internal_planning_msgs/PathWithLaneId (#10023)
-
feat(planning_test_manager): abstract message-specific functions (#9882)
- abstract message-specific functions
- include necessary header
- adapt velocity_smoother to new test manager
- adapt behavior_velocity_planner to new test manager
- adapt path_optimizer to new test manager
- fix output subscription
- adapt behavior_path_planner to new test manager
- adapt scenario_selector to new test manager
- adapt freespace_planner to new test manager
- adapt planning_validator to new test manager
- adapt obstacle_stop_planner to new test manager
- adapt obstacle_cruise_planner to new test manager
- disable test for freespace_planner
- adapt behavior_velocity_crosswalk_module to new test manager
- adapt behavior_path_lane_change_module to new test manager
- adapt behavior_path_avoidance_by_lane_change_module to new test manager
- adapt behavior_path_dynamic_obstacle_avoidance_module to new test manager
- adapt behavior_path_external_request_lane_change_module to new test manager
- adapt behavior_path_side_shift_module to new test manager
- adapt behavior_path_static_obstacle_avoidance_module to new test manager
- adapt path_smoother to new test manager
- adapt behavior_velocity_blind_spot_module to new test manager
- adapt behavior_velocity_detection_area_module to new test manager
- adapt behavior_velocity_intersection_module to new test manager
- adapt behavior_velocity_no_stopping_area_module to new test manager
- adapt behavior_velocity_run_out_module to new test manager
- adapt behavior_velocity_stop_line_module to new test manager
- adapt behavior_velocity_traffic_light_module to new test manager
- adapt behavior_velocity_virtual_traffic_light_module to new test manager
- adapt behavior_velocity_walkway_module to new test manager
- adapt motion_velocity_planner_node_universe to new test manager
- include necessary headers
* Odometries -> Odometry ---------Co-authored-by: Takayuki Murooka <<takayuki5168@gmail.com>>
-
Contributors: Fumiya Watanabe, Mitsuhiro Sakamoto, Ryohsuke Mitsudome, 心刚
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)
- Merge remote-tracking branch 'origin/main' into tmp/bot/bump_version_base
- refactor(behavior_path_planner): common test functions
(#9963)
- feat: common test code in behavior_path_planner
File truncated at 100 lines see the full file
Package Dependencies
System Dependencies
Dependant Packages
Launch files
Messages
Services
Plugins
Recent questions tagged autoware_behavior_path_side_shift_module 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
- Satoshi Ota
- Fumiya Watanabe
- Kyoichi Sugahara
- Tomoya Kimura
- Shumpei Wakabayashi
- Tomohito Ando
Authors
Side Shift design
(For remote control) Shift the path to left or right according to an external instruction.
Overview of the Side Shift Module Process
- Receive the required lateral offset input.
- Update the
requested_lateral_offset_
under the following conditions: a. Verify if the last update time has elapsed. b. Ensure the required lateral offset value is different from the previous one. - Insert the shift points into the path if the side shift module’s status is not in the SHIFTING status.
Please be aware that requested_lateral_offset_
is continuously updated with the latest values and is not queued.
Statuses of the Side Shift
The side shift has three distinct statuses. Note that during the SHIFTING status, the path cannot be updated:
- BEFORE_SHIFT: Preparing for shift.
- SHIFTING: Currently in the process of shifting.
- AFTER_SHIFT: Shift completed.
Flowchart
@startuml
skinparam monochrome true
skinparam defaultTextAlignment center
skinparam noteTextAlignment left
title callback function of lateral offset input
start
partition onLateralOffset {
:**INPUT** double new_lateral_offset;
if (abs(inserted_lateral_offset_ - new_lateral_offset) < 1e-4) then ( true)
stop
else ( false)
if (interval from last request is too short) then ( no)
else ( yes)
:requested_lateral_offset_ = new_lateral_offset \n lateral_offset_change_request_ = true;
endif
stop
@enduml
@startuml
skinparam monochrome true
skinparam defaultTextAlignment center
skinparam noteTextAlignment left
title path generation
start
partition plan {
if (lateral_offset_change_request_ == true \n && \n (shifting_status_ == BEFORE_SHIFT \n || \n shifting_status_ == AFTER_SHIFT)) then ( true)
partition replace-shift-line {
if ( shift line is inserted in the path ) then ( yes)
:erase left shift line;
else ( no)
endif
:calcShiftLines;
:add new shift lines;
:inserted_lateral_offset_ = requested_lateral_offset_ \n inserted_shift_lines_ = new_shift_line;
}
else( false)
endif
stop
@enduml
```plantuml @startuml skinparam monochrome true skinparam defaultTextAlignment center skinparam noteTextAlignment left
title update state
start partition updateState { :last_sp = path_shifter_.getLastShiftLine(); note left get furthest shift lines end note :calculate max_planned_shift_length; note left calculate furthest shift length of previous shifted path end note if (abs(inserted_lateral_offset_ - inserted_shift_line_.end_shift_length) < 1e-4 \n && \n abs(max_planned_shift_length) < 1e-4 \n && \n abs(requested_lateral_offset_) < 1e-4) then ( true) :current_state_ = BT::NodeStatus::SUCCESS; else (false) if (ego’s position is behind of shift line’s start point) then( yes)
File truncated at 100 lines see the full file
Changelog for package autoware_behavior_path_side_shift_module
0.47.0 (2025-08-11)
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)
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)
-
feat!: replace tier4_planning_msgs/PathWithLaneId with autoware_internal_planning_msgs/PathWithLaneId (#10023)
-
feat(planning_test_manager): abstract message-specific functions (#9882)
- abstract message-specific functions
- include necessary header
- adapt velocity_smoother to new test manager
- adapt behavior_velocity_planner to new test manager
- adapt path_optimizer to new test manager
- fix output subscription
- adapt behavior_path_planner to new test manager
- adapt scenario_selector to new test manager
- adapt freespace_planner to new test manager
- adapt planning_validator to new test manager
- adapt obstacle_stop_planner to new test manager
- adapt obstacle_cruise_planner to new test manager
- disable test for freespace_planner
- adapt behavior_velocity_crosswalk_module to new test manager
- adapt behavior_path_lane_change_module to new test manager
- adapt behavior_path_avoidance_by_lane_change_module to new test manager
- adapt behavior_path_dynamic_obstacle_avoidance_module to new test manager
- adapt behavior_path_external_request_lane_change_module to new test manager
- adapt behavior_path_side_shift_module to new test manager
- adapt behavior_path_static_obstacle_avoidance_module to new test manager
- adapt path_smoother to new test manager
- adapt behavior_velocity_blind_spot_module to new test manager
- adapt behavior_velocity_detection_area_module to new test manager
- adapt behavior_velocity_intersection_module to new test manager
- adapt behavior_velocity_no_stopping_area_module to new test manager
- adapt behavior_velocity_run_out_module to new test manager
- adapt behavior_velocity_stop_line_module to new test manager
- adapt behavior_velocity_traffic_light_module to new test manager
- adapt behavior_velocity_virtual_traffic_light_module to new test manager
- adapt behavior_velocity_walkway_module to new test manager
- adapt motion_velocity_planner_node_universe to new test manager
- include necessary headers
* Odometries -> Odometry ---------Co-authored-by: Takayuki Murooka <<takayuki5168@gmail.com>>
-
Contributors: Fumiya Watanabe, Mitsuhiro Sakamoto, Ryohsuke Mitsudome, 心刚
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)
- Merge remote-tracking branch 'origin/main' into tmp/bot/bump_version_base
- refactor(behavior_path_planner): common test functions
(#9963)
- feat: common test code in behavior_path_planner
File truncated at 100 lines see the full file
Package Dependencies
System Dependencies
Dependant Packages
Launch files
Messages
Services
Plugins
Recent questions tagged autoware_behavior_path_side_shift_module 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
- Satoshi Ota
- Fumiya Watanabe
- Kyoichi Sugahara
- Tomoya Kimura
- Shumpei Wakabayashi
- Tomohito Ando
Authors
Side Shift design
(For remote control) Shift the path to left or right according to an external instruction.
Overview of the Side Shift Module Process
- Receive the required lateral offset input.
- Update the
requested_lateral_offset_
under the following conditions: a. Verify if the last update time has elapsed. b. Ensure the required lateral offset value is different from the previous one. - Insert the shift points into the path if the side shift module’s status is not in the SHIFTING status.
Please be aware that requested_lateral_offset_
is continuously updated with the latest values and is not queued.
Statuses of the Side Shift
The side shift has three distinct statuses. Note that during the SHIFTING status, the path cannot be updated:
- BEFORE_SHIFT: Preparing for shift.
- SHIFTING: Currently in the process of shifting.
- AFTER_SHIFT: Shift completed.
Flowchart
@startuml
skinparam monochrome true
skinparam defaultTextAlignment center
skinparam noteTextAlignment left
title callback function of lateral offset input
start
partition onLateralOffset {
:**INPUT** double new_lateral_offset;
if (abs(inserted_lateral_offset_ - new_lateral_offset) < 1e-4) then ( true)
stop
else ( false)
if (interval from last request is too short) then ( no)
else ( yes)
:requested_lateral_offset_ = new_lateral_offset \n lateral_offset_change_request_ = true;
endif
stop
@enduml
@startuml
skinparam monochrome true
skinparam defaultTextAlignment center
skinparam noteTextAlignment left
title path generation
start
partition plan {
if (lateral_offset_change_request_ == true \n && \n (shifting_status_ == BEFORE_SHIFT \n || \n shifting_status_ == AFTER_SHIFT)) then ( true)
partition replace-shift-line {
if ( shift line is inserted in the path ) then ( yes)
:erase left shift line;
else ( no)
endif
:calcShiftLines;
:add new shift lines;
:inserted_lateral_offset_ = requested_lateral_offset_ \n inserted_shift_lines_ = new_shift_line;
}
else( false)
endif
stop
@enduml
```plantuml @startuml skinparam monochrome true skinparam defaultTextAlignment center skinparam noteTextAlignment left
title update state
start partition updateState { :last_sp = path_shifter_.getLastShiftLine(); note left get furthest shift lines end note :calculate max_planned_shift_length; note left calculate furthest shift length of previous shifted path end note if (abs(inserted_lateral_offset_ - inserted_shift_line_.end_shift_length) < 1e-4 \n && \n abs(max_planned_shift_length) < 1e-4 \n && \n abs(requested_lateral_offset_) < 1e-4) then ( true) :current_state_ = BT::NodeStatus::SUCCESS; else (false) if (ego’s position is behind of shift line’s start point) then( yes)
File truncated at 100 lines see the full file
Changelog for package autoware_behavior_path_side_shift_module
0.47.0 (2025-08-11)
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)
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)
-
feat!: replace tier4_planning_msgs/PathWithLaneId with autoware_internal_planning_msgs/PathWithLaneId (#10023)
-
feat(planning_test_manager): abstract message-specific functions (#9882)
- abstract message-specific functions
- include necessary header
- adapt velocity_smoother to new test manager
- adapt behavior_velocity_planner to new test manager
- adapt path_optimizer to new test manager
- fix output subscription
- adapt behavior_path_planner to new test manager
- adapt scenario_selector to new test manager
- adapt freespace_planner to new test manager
- adapt planning_validator to new test manager
- adapt obstacle_stop_planner to new test manager
- adapt obstacle_cruise_planner to new test manager
- disable test for freespace_planner
- adapt behavior_velocity_crosswalk_module to new test manager
- adapt behavior_path_lane_change_module to new test manager
- adapt behavior_path_avoidance_by_lane_change_module to new test manager
- adapt behavior_path_dynamic_obstacle_avoidance_module to new test manager
- adapt behavior_path_external_request_lane_change_module to new test manager
- adapt behavior_path_side_shift_module to new test manager
- adapt behavior_path_static_obstacle_avoidance_module to new test manager
- adapt path_smoother to new test manager
- adapt behavior_velocity_blind_spot_module to new test manager
- adapt behavior_velocity_detection_area_module to new test manager
- adapt behavior_velocity_intersection_module to new test manager
- adapt behavior_velocity_no_stopping_area_module to new test manager
- adapt behavior_velocity_run_out_module to new test manager
- adapt behavior_velocity_stop_line_module to new test manager
- adapt behavior_velocity_traffic_light_module to new test manager
- adapt behavior_velocity_virtual_traffic_light_module to new test manager
- adapt behavior_velocity_walkway_module to new test manager
- adapt motion_velocity_planner_node_universe to new test manager
- include necessary headers
* Odometries -> Odometry ---------Co-authored-by: Takayuki Murooka <<takayuki5168@gmail.com>>
-
Contributors: Fumiya Watanabe, Mitsuhiro Sakamoto, Ryohsuke Mitsudome, 心刚
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)
- Merge remote-tracking branch 'origin/main' into tmp/bot/bump_version_base
- refactor(behavior_path_planner): common test functions
(#9963)
- feat: common test code in behavior_path_planner
File truncated at 100 lines see the full file
Package Dependencies
System Dependencies
Dependant Packages
Launch files
Messages
Services
Plugins
Recent questions tagged autoware_behavior_path_side_shift_module 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
- Satoshi Ota
- Fumiya Watanabe
- Kyoichi Sugahara
- Tomoya Kimura
- Shumpei Wakabayashi
- Tomohito Ando
Authors
Side Shift design
(For remote control) Shift the path to left or right according to an external instruction.
Overview of the Side Shift Module Process
- Receive the required lateral offset input.
- Update the
requested_lateral_offset_
under the following conditions: a. Verify if the last update time has elapsed. b. Ensure the required lateral offset value is different from the previous one. - Insert the shift points into the path if the side shift module’s status is not in the SHIFTING status.
Please be aware that requested_lateral_offset_
is continuously updated with the latest values and is not queued.
Statuses of the Side Shift
The side shift has three distinct statuses. Note that during the SHIFTING status, the path cannot be updated:
- BEFORE_SHIFT: Preparing for shift.
- SHIFTING: Currently in the process of shifting.
- AFTER_SHIFT: Shift completed.
Flowchart
@startuml
skinparam monochrome true
skinparam defaultTextAlignment center
skinparam noteTextAlignment left
title callback function of lateral offset input
start
partition onLateralOffset {
:**INPUT** double new_lateral_offset;
if (abs(inserted_lateral_offset_ - new_lateral_offset) < 1e-4) then ( true)
stop
else ( false)
if (interval from last request is too short) then ( no)
else ( yes)
:requested_lateral_offset_ = new_lateral_offset \n lateral_offset_change_request_ = true;
endif
stop
@enduml
@startuml
skinparam monochrome true
skinparam defaultTextAlignment center
skinparam noteTextAlignment left
title path generation
start
partition plan {
if (lateral_offset_change_request_ == true \n && \n (shifting_status_ == BEFORE_SHIFT \n || \n shifting_status_ == AFTER_SHIFT)) then ( true)
partition replace-shift-line {
if ( shift line is inserted in the path ) then ( yes)
:erase left shift line;
else ( no)
endif
:calcShiftLines;
:add new shift lines;
:inserted_lateral_offset_ = requested_lateral_offset_ \n inserted_shift_lines_ = new_shift_line;
}
else( false)
endif
stop
@enduml
```plantuml @startuml skinparam monochrome true skinparam defaultTextAlignment center skinparam noteTextAlignment left
title update state
start partition updateState { :last_sp = path_shifter_.getLastShiftLine(); note left get furthest shift lines end note :calculate max_planned_shift_length; note left calculate furthest shift length of previous shifted path end note if (abs(inserted_lateral_offset_ - inserted_shift_line_.end_shift_length) < 1e-4 \n && \n abs(max_planned_shift_length) < 1e-4 \n && \n abs(requested_lateral_offset_) < 1e-4) then ( true) :current_state_ = BT::NodeStatus::SUCCESS; else (false) if (ego’s position is behind of shift line’s start point) then( yes)
File truncated at 100 lines see the full file
Changelog for package autoware_behavior_path_side_shift_module
0.47.0 (2025-08-11)
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)
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)
-
feat!: replace tier4_planning_msgs/PathWithLaneId with autoware_internal_planning_msgs/PathWithLaneId (#10023)
-
feat(planning_test_manager): abstract message-specific functions (#9882)
- abstract message-specific functions
- include necessary header
- adapt velocity_smoother to new test manager
- adapt behavior_velocity_planner to new test manager
- adapt path_optimizer to new test manager
- fix output subscription
- adapt behavior_path_planner to new test manager
- adapt scenario_selector to new test manager
- adapt freespace_planner to new test manager
- adapt planning_validator to new test manager
- adapt obstacle_stop_planner to new test manager
- adapt obstacle_cruise_planner to new test manager
- disable test for freespace_planner
- adapt behavior_velocity_crosswalk_module to new test manager
- adapt behavior_path_lane_change_module to new test manager
- adapt behavior_path_avoidance_by_lane_change_module to new test manager
- adapt behavior_path_dynamic_obstacle_avoidance_module to new test manager
- adapt behavior_path_external_request_lane_change_module to new test manager
- adapt behavior_path_side_shift_module to new test manager
- adapt behavior_path_static_obstacle_avoidance_module to new test manager
- adapt path_smoother to new test manager
- adapt behavior_velocity_blind_spot_module to new test manager
- adapt behavior_velocity_detection_area_module to new test manager
- adapt behavior_velocity_intersection_module to new test manager
- adapt behavior_velocity_no_stopping_area_module to new test manager
- adapt behavior_velocity_run_out_module to new test manager
- adapt behavior_velocity_stop_line_module to new test manager
- adapt behavior_velocity_traffic_light_module to new test manager
- adapt behavior_velocity_virtual_traffic_light_module to new test manager
- adapt behavior_velocity_walkway_module to new test manager
- adapt motion_velocity_planner_node_universe to new test manager
- include necessary headers
* Odometries -> Odometry ---------Co-authored-by: Takayuki Murooka <<takayuki5168@gmail.com>>
-
Contributors: Fumiya Watanabe, Mitsuhiro Sakamoto, Ryohsuke Mitsudome, 心刚
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)
- Merge remote-tracking branch 'origin/main' into tmp/bot/bump_version_base
- refactor(behavior_path_planner): common test functions
(#9963)
- feat: common test code in behavior_path_planner
File truncated at 100 lines see the full file
Package Dependencies
System Dependencies
Dependant Packages
Launch files
Messages
Services
Plugins
Recent questions tagged autoware_behavior_path_side_shift_module 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
- Satoshi Ota
- Fumiya Watanabe
- Kyoichi Sugahara
- Tomoya Kimura
- Shumpei Wakabayashi
- Tomohito Ando
Authors
Side Shift design
(For remote control) Shift the path to left or right according to an external instruction.
Overview of the Side Shift Module Process
- Receive the required lateral offset input.
- Update the
requested_lateral_offset_
under the following conditions: a. Verify if the last update time has elapsed. b. Ensure the required lateral offset value is different from the previous one. - Insert the shift points into the path if the side shift module’s status is not in the SHIFTING status.
Please be aware that requested_lateral_offset_
is continuously updated with the latest values and is not queued.
Statuses of the Side Shift
The side shift has three distinct statuses. Note that during the SHIFTING status, the path cannot be updated:
- BEFORE_SHIFT: Preparing for shift.
- SHIFTING: Currently in the process of shifting.
- AFTER_SHIFT: Shift completed.
Flowchart
@startuml
skinparam monochrome true
skinparam defaultTextAlignment center
skinparam noteTextAlignment left
title callback function of lateral offset input
start
partition onLateralOffset {
:**INPUT** double new_lateral_offset;
if (abs(inserted_lateral_offset_ - new_lateral_offset) < 1e-4) then ( true)
stop
else ( false)
if (interval from last request is too short) then ( no)
else ( yes)
:requested_lateral_offset_ = new_lateral_offset \n lateral_offset_change_request_ = true;
endif
stop
@enduml
@startuml
skinparam monochrome true
skinparam defaultTextAlignment center
skinparam noteTextAlignment left
title path generation
start
partition plan {
if (lateral_offset_change_request_ == true \n && \n (shifting_status_ == BEFORE_SHIFT \n || \n shifting_status_ == AFTER_SHIFT)) then ( true)
partition replace-shift-line {
if ( shift line is inserted in the path ) then ( yes)
:erase left shift line;
else ( no)
endif
:calcShiftLines;
:add new shift lines;
:inserted_lateral_offset_ = requested_lateral_offset_ \n inserted_shift_lines_ = new_shift_line;
}
else( false)
endif
stop
@enduml
```plantuml @startuml skinparam monochrome true skinparam defaultTextAlignment center skinparam noteTextAlignment left
title update state
start partition updateState { :last_sp = path_shifter_.getLastShiftLine(); note left get furthest shift lines end note :calculate max_planned_shift_length; note left calculate furthest shift length of previous shifted path end note if (abs(inserted_lateral_offset_ - inserted_shift_line_.end_shift_length) < 1e-4 \n && \n abs(max_planned_shift_length) < 1e-4 \n && \n abs(requested_lateral_offset_) < 1e-4) then ( true) :current_state_ = BT::NodeStatus::SUCCESS; else (false) if (ego’s position is behind of shift line’s start point) then( yes)
File truncated at 100 lines see the full file
Changelog for package autoware_behavior_path_side_shift_module
0.47.0 (2025-08-11)
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)
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)
-
feat!: replace tier4_planning_msgs/PathWithLaneId with autoware_internal_planning_msgs/PathWithLaneId (#10023)
-
feat(planning_test_manager): abstract message-specific functions (#9882)
- abstract message-specific functions
- include necessary header
- adapt velocity_smoother to new test manager
- adapt behavior_velocity_planner to new test manager
- adapt path_optimizer to new test manager
- fix output subscription
- adapt behavior_path_planner to new test manager
- adapt scenario_selector to new test manager
- adapt freespace_planner to new test manager
- adapt planning_validator to new test manager
- adapt obstacle_stop_planner to new test manager
- adapt obstacle_cruise_planner to new test manager
- disable test for freespace_planner
- adapt behavior_velocity_crosswalk_module to new test manager
- adapt behavior_path_lane_change_module to new test manager
- adapt behavior_path_avoidance_by_lane_change_module to new test manager
- adapt behavior_path_dynamic_obstacle_avoidance_module to new test manager
- adapt behavior_path_external_request_lane_change_module to new test manager
- adapt behavior_path_side_shift_module to new test manager
- adapt behavior_path_static_obstacle_avoidance_module to new test manager
- adapt path_smoother to new test manager
- adapt behavior_velocity_blind_spot_module to new test manager
- adapt behavior_velocity_detection_area_module to new test manager
- adapt behavior_velocity_intersection_module to new test manager
- adapt behavior_velocity_no_stopping_area_module to new test manager
- adapt behavior_velocity_run_out_module to new test manager
- adapt behavior_velocity_stop_line_module to new test manager
- adapt behavior_velocity_traffic_light_module to new test manager
- adapt behavior_velocity_virtual_traffic_light_module to new test manager
- adapt behavior_velocity_walkway_module to new test manager
- adapt motion_velocity_planner_node_universe to new test manager
- include necessary headers
* Odometries -> Odometry ---------Co-authored-by: Takayuki Murooka <<takayuki5168@gmail.com>>
-
Contributors: Fumiya Watanabe, Mitsuhiro Sakamoto, Ryohsuke Mitsudome, 心刚
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)
- Merge remote-tracking branch 'origin/main' into tmp/bot/bump_version_base
- refactor(behavior_path_planner): common test functions
(#9963)
- feat: common test code in behavior_path_planner
File truncated at 100 lines see the full file
Package Dependencies
System Dependencies
Dependant Packages
Launch files
Messages
Services
Plugins
Recent questions tagged autoware_behavior_path_side_shift_module 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
- Satoshi Ota
- Fumiya Watanabe
- Kyoichi Sugahara
- Tomoya Kimura
- Shumpei Wakabayashi
- Tomohito Ando
Authors
Side Shift design
(For remote control) Shift the path to left or right according to an external instruction.
Overview of the Side Shift Module Process
- Receive the required lateral offset input.
- Update the
requested_lateral_offset_
under the following conditions: a. Verify if the last update time has elapsed. b. Ensure the required lateral offset value is different from the previous one. - Insert the shift points into the path if the side shift module’s status is not in the SHIFTING status.
Please be aware that requested_lateral_offset_
is continuously updated with the latest values and is not queued.
Statuses of the Side Shift
The side shift has three distinct statuses. Note that during the SHIFTING status, the path cannot be updated:
- BEFORE_SHIFT: Preparing for shift.
- SHIFTING: Currently in the process of shifting.
- AFTER_SHIFT: Shift completed.
Flowchart
@startuml
skinparam monochrome true
skinparam defaultTextAlignment center
skinparam noteTextAlignment left
title callback function of lateral offset input
start
partition onLateralOffset {
:**INPUT** double new_lateral_offset;
if (abs(inserted_lateral_offset_ - new_lateral_offset) < 1e-4) then ( true)
stop
else ( false)
if (interval from last request is too short) then ( no)
else ( yes)
:requested_lateral_offset_ = new_lateral_offset \n lateral_offset_change_request_ = true;
endif
stop
@enduml
@startuml
skinparam monochrome true
skinparam defaultTextAlignment center
skinparam noteTextAlignment left
title path generation
start
partition plan {
if (lateral_offset_change_request_ == true \n && \n (shifting_status_ == BEFORE_SHIFT \n || \n shifting_status_ == AFTER_SHIFT)) then ( true)
partition replace-shift-line {
if ( shift line is inserted in the path ) then ( yes)
:erase left shift line;
else ( no)
endif
:calcShiftLines;
:add new shift lines;
:inserted_lateral_offset_ = requested_lateral_offset_ \n inserted_shift_lines_ = new_shift_line;
}
else( false)
endif
stop
@enduml
```plantuml @startuml skinparam monochrome true skinparam defaultTextAlignment center skinparam noteTextAlignment left
title update state
start partition updateState { :last_sp = path_shifter_.getLastShiftLine(); note left get furthest shift lines end note :calculate max_planned_shift_length; note left calculate furthest shift length of previous shifted path end note if (abs(inserted_lateral_offset_ - inserted_shift_line_.end_shift_length) < 1e-4 \n && \n abs(max_planned_shift_length) < 1e-4 \n && \n abs(requested_lateral_offset_) < 1e-4) then ( true) :current_state_ = BT::NodeStatus::SUCCESS; else (false) if (ego’s position is behind of shift line’s start point) then( yes)
File truncated at 100 lines see the full file
Changelog for package autoware_behavior_path_side_shift_module
0.47.0 (2025-08-11)
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)
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)
-
feat!: replace tier4_planning_msgs/PathWithLaneId with autoware_internal_planning_msgs/PathWithLaneId (#10023)
-
feat(planning_test_manager): abstract message-specific functions (#9882)
- abstract message-specific functions
- include necessary header
- adapt velocity_smoother to new test manager
- adapt behavior_velocity_planner to new test manager
- adapt path_optimizer to new test manager
- fix output subscription
- adapt behavior_path_planner to new test manager
- adapt scenario_selector to new test manager
- adapt freespace_planner to new test manager
- adapt planning_validator to new test manager
- adapt obstacle_stop_planner to new test manager
- adapt obstacle_cruise_planner to new test manager
- disable test for freespace_planner
- adapt behavior_velocity_crosswalk_module to new test manager
- adapt behavior_path_lane_change_module to new test manager
- adapt behavior_path_avoidance_by_lane_change_module to new test manager
- adapt behavior_path_dynamic_obstacle_avoidance_module to new test manager
- adapt behavior_path_external_request_lane_change_module to new test manager
- adapt behavior_path_side_shift_module to new test manager
- adapt behavior_path_static_obstacle_avoidance_module to new test manager
- adapt path_smoother to new test manager
- adapt behavior_velocity_blind_spot_module to new test manager
- adapt behavior_velocity_detection_area_module to new test manager
- adapt behavior_velocity_intersection_module to new test manager
- adapt behavior_velocity_no_stopping_area_module to new test manager
- adapt behavior_velocity_run_out_module to new test manager
- adapt behavior_velocity_stop_line_module to new test manager
- adapt behavior_velocity_traffic_light_module to new test manager
- adapt behavior_velocity_virtual_traffic_light_module to new test manager
- adapt behavior_velocity_walkway_module to new test manager
- adapt motion_velocity_planner_node_universe to new test manager
- include necessary headers
* Odometries -> Odometry ---------Co-authored-by: Takayuki Murooka <<takayuki5168@gmail.com>>
-
Contributors: Fumiya Watanabe, Mitsuhiro Sakamoto, Ryohsuke Mitsudome, 心刚
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)
- Merge remote-tracking branch 'origin/main' into tmp/bot/bump_version_base
- refactor(behavior_path_planner): common test functions
(#9963)
- feat: common test code in behavior_path_planner
File truncated at 100 lines see the full file
Package Dependencies
System Dependencies
Dependant Packages
Launch files
Messages
Services
Plugins
Recent questions tagged autoware_behavior_path_side_shift_module 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
- Satoshi Ota
- Fumiya Watanabe
- Kyoichi Sugahara
- Tomoya Kimura
- Shumpei Wakabayashi
- Tomohito Ando
Authors
Side Shift design
(For remote control) Shift the path to left or right according to an external instruction.
Overview of the Side Shift Module Process
- Receive the required lateral offset input.
- Update the
requested_lateral_offset_
under the following conditions: a. Verify if the last update time has elapsed. b. Ensure the required lateral offset value is different from the previous one. - Insert the shift points into the path if the side shift module’s status is not in the SHIFTING status.
Please be aware that requested_lateral_offset_
is continuously updated with the latest values and is not queued.
Statuses of the Side Shift
The side shift has three distinct statuses. Note that during the SHIFTING status, the path cannot be updated:
- BEFORE_SHIFT: Preparing for shift.
- SHIFTING: Currently in the process of shifting.
- AFTER_SHIFT: Shift completed.
Flowchart
@startuml
skinparam monochrome true
skinparam defaultTextAlignment center
skinparam noteTextAlignment left
title callback function of lateral offset input
start
partition onLateralOffset {
:**INPUT** double new_lateral_offset;
if (abs(inserted_lateral_offset_ - new_lateral_offset) < 1e-4) then ( true)
stop
else ( false)
if (interval from last request is too short) then ( no)
else ( yes)
:requested_lateral_offset_ = new_lateral_offset \n lateral_offset_change_request_ = true;
endif
stop
@enduml
@startuml
skinparam monochrome true
skinparam defaultTextAlignment center
skinparam noteTextAlignment left
title path generation
start
partition plan {
if (lateral_offset_change_request_ == true \n && \n (shifting_status_ == BEFORE_SHIFT \n || \n shifting_status_ == AFTER_SHIFT)) then ( true)
partition replace-shift-line {
if ( shift line is inserted in the path ) then ( yes)
:erase left shift line;
else ( no)
endif
:calcShiftLines;
:add new shift lines;
:inserted_lateral_offset_ = requested_lateral_offset_ \n inserted_shift_lines_ = new_shift_line;
}
else( false)
endif
stop
@enduml
```plantuml @startuml skinparam monochrome true skinparam defaultTextAlignment center skinparam noteTextAlignment left
title update state
start partition updateState { :last_sp = path_shifter_.getLastShiftLine(); note left get furthest shift lines end note :calculate max_planned_shift_length; note left calculate furthest shift length of previous shifted path end note if (abs(inserted_lateral_offset_ - inserted_shift_line_.end_shift_length) < 1e-4 \n && \n abs(max_planned_shift_length) < 1e-4 \n && \n abs(requested_lateral_offset_) < 1e-4) then ( true) :current_state_ = BT::NodeStatus::SUCCESS; else (false) if (ego’s position is behind of shift line’s start point) then( yes)
File truncated at 100 lines see the full file
Changelog for package autoware_behavior_path_side_shift_module
0.47.0 (2025-08-11)
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)
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)
-
feat!: replace tier4_planning_msgs/PathWithLaneId with autoware_internal_planning_msgs/PathWithLaneId (#10023)
-
feat(planning_test_manager): abstract message-specific functions (#9882)
- abstract message-specific functions
- include necessary header
- adapt velocity_smoother to new test manager
- adapt behavior_velocity_planner to new test manager
- adapt path_optimizer to new test manager
- fix output subscription
- adapt behavior_path_planner to new test manager
- adapt scenario_selector to new test manager
- adapt freespace_planner to new test manager
- adapt planning_validator to new test manager
- adapt obstacle_stop_planner to new test manager
- adapt obstacle_cruise_planner to new test manager
- disable test for freespace_planner
- adapt behavior_velocity_crosswalk_module to new test manager
- adapt behavior_path_lane_change_module to new test manager
- adapt behavior_path_avoidance_by_lane_change_module to new test manager
- adapt behavior_path_dynamic_obstacle_avoidance_module to new test manager
- adapt behavior_path_external_request_lane_change_module to new test manager
- adapt behavior_path_side_shift_module to new test manager
- adapt behavior_path_static_obstacle_avoidance_module to new test manager
- adapt path_smoother to new test manager
- adapt behavior_velocity_blind_spot_module to new test manager
- adapt behavior_velocity_detection_area_module to new test manager
- adapt behavior_velocity_intersection_module to new test manager
- adapt behavior_velocity_no_stopping_area_module to new test manager
- adapt behavior_velocity_run_out_module to new test manager
- adapt behavior_velocity_stop_line_module to new test manager
- adapt behavior_velocity_traffic_light_module to new test manager
- adapt behavior_velocity_virtual_traffic_light_module to new test manager
- adapt behavior_velocity_walkway_module to new test manager
- adapt motion_velocity_planner_node_universe to new test manager
- include necessary headers
* Odometries -> Odometry ---------Co-authored-by: Takayuki Murooka <<takayuki5168@gmail.com>>
-
Contributors: Fumiya Watanabe, Mitsuhiro Sakamoto, Ryohsuke Mitsudome, 心刚
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)
- Merge remote-tracking branch 'origin/main' into tmp/bot/bump_version_base
- refactor(behavior_path_planner): common test functions
(#9963)
- feat: common test code in behavior_path_planner
File truncated at 100 lines see the full file
Package Dependencies
System Dependencies
Dependant Packages
Launch files
Messages
Services
Plugins
Recent questions tagged autoware_behavior_path_side_shift_module 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
- Satoshi Ota
- Fumiya Watanabe
- Kyoichi Sugahara
- Tomoya Kimura
- Shumpei Wakabayashi
- Tomohito Ando
Authors
Side Shift design
(For remote control) Shift the path to left or right according to an external instruction.
Overview of the Side Shift Module Process
- Receive the required lateral offset input.
- Update the
requested_lateral_offset_
under the following conditions: a. Verify if the last update time has elapsed. b. Ensure the required lateral offset value is different from the previous one. - Insert the shift points into the path if the side shift module’s status is not in the SHIFTING status.
Please be aware that requested_lateral_offset_
is continuously updated with the latest values and is not queued.
Statuses of the Side Shift
The side shift has three distinct statuses. Note that during the SHIFTING status, the path cannot be updated:
- BEFORE_SHIFT: Preparing for shift.
- SHIFTING: Currently in the process of shifting.
- AFTER_SHIFT: Shift completed.
Flowchart
@startuml
skinparam monochrome true
skinparam defaultTextAlignment center
skinparam noteTextAlignment left
title callback function of lateral offset input
start
partition onLateralOffset {
:**INPUT** double new_lateral_offset;
if (abs(inserted_lateral_offset_ - new_lateral_offset) < 1e-4) then ( true)
stop
else ( false)
if (interval from last request is too short) then ( no)
else ( yes)
:requested_lateral_offset_ = new_lateral_offset \n lateral_offset_change_request_ = true;
endif
stop
@enduml
@startuml
skinparam monochrome true
skinparam defaultTextAlignment center
skinparam noteTextAlignment left
title path generation
start
partition plan {
if (lateral_offset_change_request_ == true \n && \n (shifting_status_ == BEFORE_SHIFT \n || \n shifting_status_ == AFTER_SHIFT)) then ( true)
partition replace-shift-line {
if ( shift line is inserted in the path ) then ( yes)
:erase left shift line;
else ( no)
endif
:calcShiftLines;
:add new shift lines;
:inserted_lateral_offset_ = requested_lateral_offset_ \n inserted_shift_lines_ = new_shift_line;
}
else( false)
endif
stop
@enduml
```plantuml @startuml skinparam monochrome true skinparam defaultTextAlignment center skinparam noteTextAlignment left
title update state
start partition updateState { :last_sp = path_shifter_.getLastShiftLine(); note left get furthest shift lines end note :calculate max_planned_shift_length; note left calculate furthest shift length of previous shifted path end note if (abs(inserted_lateral_offset_ - inserted_shift_line_.end_shift_length) < 1e-4 \n && \n abs(max_planned_shift_length) < 1e-4 \n && \n abs(requested_lateral_offset_) < 1e-4) then ( true) :current_state_ = BT::NodeStatus::SUCCESS; else (false) if (ego’s position is behind of shift line’s start point) then( yes)
File truncated at 100 lines see the full file
Changelog for package autoware_behavior_path_side_shift_module
0.47.0 (2025-08-11)
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)
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)
-
feat!: replace tier4_planning_msgs/PathWithLaneId with autoware_internal_planning_msgs/PathWithLaneId (#10023)
-
feat(planning_test_manager): abstract message-specific functions (#9882)
- abstract message-specific functions
- include necessary header
- adapt velocity_smoother to new test manager
- adapt behavior_velocity_planner to new test manager
- adapt path_optimizer to new test manager
- fix output subscription
- adapt behavior_path_planner to new test manager
- adapt scenario_selector to new test manager
- adapt freespace_planner to new test manager
- adapt planning_validator to new test manager
- adapt obstacle_stop_planner to new test manager
- adapt obstacle_cruise_planner to new test manager
- disable test for freespace_planner
- adapt behavior_velocity_crosswalk_module to new test manager
- adapt behavior_path_lane_change_module to new test manager
- adapt behavior_path_avoidance_by_lane_change_module to new test manager
- adapt behavior_path_dynamic_obstacle_avoidance_module to new test manager
- adapt behavior_path_external_request_lane_change_module to new test manager
- adapt behavior_path_side_shift_module to new test manager
- adapt behavior_path_static_obstacle_avoidance_module to new test manager
- adapt path_smoother to new test manager
- adapt behavior_velocity_blind_spot_module to new test manager
- adapt behavior_velocity_detection_area_module to new test manager
- adapt behavior_velocity_intersection_module to new test manager
- adapt behavior_velocity_no_stopping_area_module to new test manager
- adapt behavior_velocity_run_out_module to new test manager
- adapt behavior_velocity_stop_line_module to new test manager
- adapt behavior_velocity_traffic_light_module to new test manager
- adapt behavior_velocity_virtual_traffic_light_module to new test manager
- adapt behavior_velocity_walkway_module to new test manager
- adapt motion_velocity_planner_node_universe to new test manager
- include necessary headers
* Odometries -> Odometry ---------Co-authored-by: Takayuki Murooka <<takayuki5168@gmail.com>>
-
Contributors: Fumiya Watanabe, Mitsuhiro Sakamoto, Ryohsuke Mitsudome, 心刚
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)
- Merge remote-tracking branch 'origin/main' into tmp/bot/bump_version_base
- refactor(behavior_path_planner): common test functions
(#9963)
- feat: common test code in behavior_path_planner
File truncated at 100 lines see the full file
Package Dependencies
System Dependencies
Dependant Packages
Launch files
Messages
Services
Plugins
Recent questions tagged autoware_behavior_path_side_shift_module 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
- Satoshi Ota
- Fumiya Watanabe
- Kyoichi Sugahara
- Tomoya Kimura
- Shumpei Wakabayashi
- Tomohito Ando
Authors
Side Shift design
(For remote control) Shift the path to left or right according to an external instruction.
Overview of the Side Shift Module Process
- Receive the required lateral offset input.
- Update the
requested_lateral_offset_
under the following conditions: a. Verify if the last update time has elapsed. b. Ensure the required lateral offset value is different from the previous one. - Insert the shift points into the path if the side shift module’s status is not in the SHIFTING status.
Please be aware that requested_lateral_offset_
is continuously updated with the latest values and is not queued.
Statuses of the Side Shift
The side shift has three distinct statuses. Note that during the SHIFTING status, the path cannot be updated:
- BEFORE_SHIFT: Preparing for shift.
- SHIFTING: Currently in the process of shifting.
- AFTER_SHIFT: Shift completed.
Flowchart
@startuml
skinparam monochrome true
skinparam defaultTextAlignment center
skinparam noteTextAlignment left
title callback function of lateral offset input
start
partition onLateralOffset {
:**INPUT** double new_lateral_offset;
if (abs(inserted_lateral_offset_ - new_lateral_offset) < 1e-4) then ( true)
stop
else ( false)
if (interval from last request is too short) then ( no)
else ( yes)
:requested_lateral_offset_ = new_lateral_offset \n lateral_offset_change_request_ = true;
endif
stop
@enduml
@startuml
skinparam monochrome true
skinparam defaultTextAlignment center
skinparam noteTextAlignment left
title path generation
start
partition plan {
if (lateral_offset_change_request_ == true \n && \n (shifting_status_ == BEFORE_SHIFT \n || \n shifting_status_ == AFTER_SHIFT)) then ( true)
partition replace-shift-line {
if ( shift line is inserted in the path ) then ( yes)
:erase left shift line;
else ( no)
endif
:calcShiftLines;
:add new shift lines;
:inserted_lateral_offset_ = requested_lateral_offset_ \n inserted_shift_lines_ = new_shift_line;
}
else( false)
endif
stop
@enduml
```plantuml @startuml skinparam monochrome true skinparam defaultTextAlignment center skinparam noteTextAlignment left
title update state
start partition updateState { :last_sp = path_shifter_.getLastShiftLine(); note left get furthest shift lines end note :calculate max_planned_shift_length; note left calculate furthest shift length of previous shifted path end note if (abs(inserted_lateral_offset_ - inserted_shift_line_.end_shift_length) < 1e-4 \n && \n abs(max_planned_shift_length) < 1e-4 \n && \n abs(requested_lateral_offset_) < 1e-4) then ( true) :current_state_ = BT::NodeStatus::SUCCESS; else (false) if (ego’s position is behind of shift line’s start point) then( yes)
File truncated at 100 lines see the full file
Changelog for package autoware_behavior_path_side_shift_module
0.47.0 (2025-08-11)
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)
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)
-
feat!: replace tier4_planning_msgs/PathWithLaneId with autoware_internal_planning_msgs/PathWithLaneId (#10023)
-
feat(planning_test_manager): abstract message-specific functions (#9882)
- abstract message-specific functions
- include necessary header
- adapt velocity_smoother to new test manager
- adapt behavior_velocity_planner to new test manager
- adapt path_optimizer to new test manager
- fix output subscription
- adapt behavior_path_planner to new test manager
- adapt scenario_selector to new test manager
- adapt freespace_planner to new test manager
- adapt planning_validator to new test manager
- adapt obstacle_stop_planner to new test manager
- adapt obstacle_cruise_planner to new test manager
- disable test for freespace_planner
- adapt behavior_velocity_crosswalk_module to new test manager
- adapt behavior_path_lane_change_module to new test manager
- adapt behavior_path_avoidance_by_lane_change_module to new test manager
- adapt behavior_path_dynamic_obstacle_avoidance_module to new test manager
- adapt behavior_path_external_request_lane_change_module to new test manager
- adapt behavior_path_side_shift_module to new test manager
- adapt behavior_path_static_obstacle_avoidance_module to new test manager
- adapt path_smoother to new test manager
- adapt behavior_velocity_blind_spot_module to new test manager
- adapt behavior_velocity_detection_area_module to new test manager
- adapt behavior_velocity_intersection_module to new test manager
- adapt behavior_velocity_no_stopping_area_module to new test manager
- adapt behavior_velocity_run_out_module to new test manager
- adapt behavior_velocity_stop_line_module to new test manager
- adapt behavior_velocity_traffic_light_module to new test manager
- adapt behavior_velocity_virtual_traffic_light_module to new test manager
- adapt behavior_velocity_walkway_module to new test manager
- adapt motion_velocity_planner_node_universe to new test manager
- include necessary headers
* Odometries -> Odometry ---------Co-authored-by: Takayuki Murooka <<takayuki5168@gmail.com>>
-
Contributors: Fumiya Watanabe, Mitsuhiro Sakamoto, Ryohsuke Mitsudome, 心刚
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)
- Merge remote-tracking branch 'origin/main' into tmp/bot/bump_version_base
- refactor(behavior_path_planner): common test functions
(#9963)
- feat: common test code in behavior_path_planner
File truncated at 100 lines see the full file