From 4fc88c2387c4bbbfb557d2e060d34c87f1e596b1 Mon Sep 17 00:00:00 2001 From: Zulfaqar Azmi Date: Wed, 8 Nov 2023 17:32:50 +0900 Subject: [PATCH] additional explanation in the readme Signed-off-by: Zulfaqar Azmi --- planning/behavior_path_planner/README.md | 16 +- .../image/behavior_modules.svg | 260 +++++++++++++++++- 2 files changed, 270 insertions(+), 6 deletions(-) diff --git a/planning/behavior_path_planner/README.md b/planning/behavior_path_planner/README.md index cc5599fb71639..352f46444b812 100644 --- a/planning/behavior_path_planner/README.md +++ b/planning/behavior_path_planner/README.md @@ -38,9 +38,15 @@ WIP --- -### Manager design +### Planner Manager design -The role of manager is to launch the appropriate scene module according to the situation. (e.g. if there is parked-vehicle in ego's driving lane, the manager launches the avoidance module.) +The Planner Manager's responsibilities include: + +1. Activating the relevant scene module in response to the specific situation faced by the autonomous vehicle. For example, when a parked vehicle block ego vehicle's driving lane, the manager would engage the avoidance module. +2. Managing the execution order of when multiple modules are running at the same time. If, for instance, both lane-changing and avoidance modules are operational, the manager decides which should take precedence. +3. When multiple modules are activated simultaneously and each generates its own path, the manager merges these into a single functional path. + +For more in-depth information, refer to [Manager design](https://autowarefoundation.github.io/autoware.universe/main/planning/behavior_path_planner/docs/behavior_path_planner_manager_design/) document. ## Inputs / Outputs / API @@ -59,6 +65,9 @@ The role of manager is to launch the appropriate scene module according to the s | ~/input/lateral_offset | △ | `tier4_planning_msgs::msg::LateralOffset` | lateral offset to trigger side shift | | ~/system/operation_mode/state | ○ | `autoware_adapi_v1_msgs::msg::OperationModeState` | Allows planning module to know if vehicle is in autonomous mode or can be controlled[ref](https://github.com/autowarefoundation/autoware.universe/blob/main/system/default_ad_api/document/operation-mode.md) | +- ○ Mandatory: Planning Module would not work if anyone of this is not present. +- △ Optional: Some module would not work, but Planning Module can still be operated. + ### Output | Name | Type | Description | @@ -70,9 +79,6 @@ The role of manager is to launch the appropriate scene module according to the s | ~/input/ready_module | `tier4_planning_msgs::msg::PathChangeModule` | (for remote control) modules that are ready to be executed. | | ~/input/running_modules | `tier4_planning_msgs::msg::PathChangeModuleArray` | (for remote control) current running module. | -○ Mandatory: Planning Module would not work if anyone of this is not present. -△ Optional: Some module would not work, but Planning Module can still be operated. - ## General features of behavior path planner ### Drivable area generation logic diff --git a/planning/behavior_path_planner/image/behavior_modules.svg b/planning/behavior_path_planner/image/behavior_modules.svg index f187eb0b09883..dc692882bb921 100644 --- a/planning/behavior_path_planner/image/behavior_modules.svg +++ b/planning/behavior_path_planner/image/behavior_modules.svg @@ -1,4 +1,262 @@ -
Lane Following
Lane Following
Avoidance
Avoidance
Lane Change
Lane Change
Goal Planner
Goal Planner
Start Planner
Start Planner
Avoidance by Lane Change
Avoidance by Lane Change
Text is not SVG - cannot display
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+
+
+ Lane Following +
+
+
+
+ Lane Following +
+
+ + + + +
+
+
+ Avoidance +
+
+
+
+ Avoidance +
+
+ + + + +
+
+
+ Lane Change +
+
+
+
+ Lane Change +
+
+ + + + +
+
+
+ Goal Planner +
+
+
+
+ Goal Planner +
+
+ + + + +
+
+
+ Start Planner +
+
+
+
+ Start Planner +
+
+ + + + +
+
+
+ Avoidance by Lane Change +
+
+
+
+ Avoidance by Lane Change +
+
+
+ + + + Text is not SVG - cannot display + + +