From ddfe5c0a730e67eed41dfaca855a2c456f887f01 Mon Sep 17 00:00:00 2001 From: "pre-commit-ci[bot]" <66853113+pre-commit-ci[bot]@users.noreply.github.com> Date: Tue, 14 Jun 2022 08:19:10 +0900 Subject: [PATCH 01/41] ci(pre-commit): autoupdate (#337) MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit updates: - [github.com/pre-commit/pre-commit-hooks: v4.2.0 → v4.3.0](https://github.com/pre-commit/pre-commit-hooks/compare/v4.2.0...v4.3.0) - [github.com/scop/pre-commit-shfmt: v3.5.0-1 → v3.5.1-1](https://github.com/scop/pre-commit-shfmt/compare/v3.5.0-1...v3.5.1-1) Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com> --- .pre-commit-config.yaml | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/.pre-commit-config.yaml b/.pre-commit-config.yaml index ede7eb7ef7..0052ad3d93 100644 --- a/.pre-commit-config.yaml +++ b/.pre-commit-config.yaml @@ -4,7 +4,7 @@ ci: repos: - repo: https://github.com/pre-commit/pre-commit-hooks - rev: v4.2.0 + rev: v4.3.0 hooks: - id: check-json - id: check-merge-conflict @@ -46,7 +46,7 @@ repos: - id: shellcheck - repo: https://github.com/scop/pre-commit-shfmt - rev: v3.5.0-1 + rev: v3.5.1-1 hooks: - id: shfmt args: [-w, -s, -i=4] From 636c394f530b18104c7878368008dd627937e2e1 Mon Sep 17 00:00:00 2001 From: TakumiKozaka-T4 <70260442+TakumiKozaka-T4@users.noreply.github.com> Date: Wed, 15 Jun 2022 15:40:16 +0900 Subject: [PATCH 02/41] feat(autoware_api_launch): add calibration status launcher (#332) MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit * chore: sync awf-latest (#322) style: fix flake8 C417 (#321) Signed-off-by: Kenji Miyake Co-authored-by: Kenji Miyake <31987104+kenji-miyake@users.noreply.github.com> * chore: sync awf-latest (#325) * chore: sync files (#311) Signed-off-by: GitHub Co-authored-by: kenji-miyake * feat: disable namespace `lane_start_bound` (#314) * feat: disable lane_bound * fix: lane_start_bound * feat: add center_line_arrows to disable * ci: add sync-awf.yaml (#318) * ci: add sync-awf.yaml Signed-off-by: Kenji Miyake * rename Signed-off-by: Kenji Miyake * refactor(vehicle_cmd_gate): add namespace (#316) Signed-off-by: Takamasa Horibe * style: fix flake8 C417 (#321) Signed-off-by: Kenji Miyake * chore(behavior_velocity): update latest params (#320) * chore(behavior_velocity): update latest params Signed-off-by: tanaka3 * ci(pre-commit): autofix Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com> * ci(pre-commit): autoupdate (#324) updates: - [github.com/tier4/pre-commit-hooks-ros: v0.7.0 → v0.7.1](https://github.com/tier4/pre-commit-hooks-ros/compare/v0.7.0...v0.7.1) - [github.com/scop/pre-commit-shfmt: v3.4.3-1 → v3.5.0-1](https://github.com/scop/pre-commit-shfmt/compare/v3.4.3-1...v3.5.0-1) Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com> * feat(autoware_api_launch): add rtc controller (#305) * add rtc controller Signed-off-by: tkhmy * change line Signed-off-by: tkhmy * change back to alphabetical order Signed-off-by: tkhmy Co-authored-by: tier4-autoware-public-bot[bot] <98652886+tier4-autoware-public-bot[bot]@users.noreply.github.com> Co-authored-by: kenji-miyake Co-authored-by: Hiroki OTA Co-authored-by: Kenji Miyake <31987104+kenji-miyake@users.noreply.github.com> Co-authored-by: Takamasa Horibe Co-authored-by: taikitanaka3 <65527974+taikitanaka3@users.noreply.github.com> Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com> Co-authored-by: Kah Hooi Tan <41041286+tkhmy@users.noreply.github.com> * add calibration status launcher to external_api_adaptor Signed-off-by: TakumiKozaka-T4 * pull awf-latest Signed-off-by: TakumiKozaka-T4 * chore: sync awf-latest (#334) * chore: sync files (#327) Signed-off-by: GitHub Co-authored-by: kenji-miyake * refactor: virtual wall rviz config (#326) Signed-off-by: Takamasa Horibe * feat(rviz_plugin): adaptive scaling for display size (#329) Signed-off-by: Takamasa Horibe * fix: support context dict key for humble (#328) * fix: support context dict key for humble Signed-off-by: wep21 * add todo comment Co-authored-by: Kenji Miyake <31987104+kenji-miyake@users.noreply.github.com> Co-authored-by: Kenji Miyake <31987104+kenji-miyake@users.noreply.github.com> * fix: modify type of global parameter (#333) Signed-off-by: wep21 * chore: sync files (#335) Signed-off-by: GitHub Co-authored-by: kenji-miyake * feat: use multithread for traffic light container as default (#336) Signed-off-by: tomoya.kimura * fix(localization_launch): fix input topic name (#338) * feat(behavior_velocity): add run out module (#339) * feat(behavior_velocity): add parameter yaml for behavior_velocity_planner Signed-off-by: Tomohito Ando * feat(behavior_velocity): add run out module Signed-off-by: Tomohito Ando * ci(pre-commit): autofix Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com> Co-authored-by: tier4-autoware-public-bot[bot] <98652886+tier4-autoware-public-bot[bot]@users.noreply.github.com> Co-authored-by: kenji-miyake Co-authored-by: Takamasa Horibe Co-authored-by: Daisuke Nishimatsu <42202095+wep21@users.noreply.github.com> Co-authored-by: Kenji Miyake <31987104+kenji-miyake@users.noreply.github.com> Co-authored-by: Tomoya Kimura Co-authored-by: Yamato Ando Co-authored-by: Tomohito ANDO Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com> * fix(mission_planner): disable lane_start_bound in Rviz (#341) Signed-off-by: h-ohta * pull the latest tier4/universe Signed-off-by: TakumiKozaka-T4 * pull awf-latest Signed-off-by: TakumiKozaka-T4 * fixed unnecessary change. Signed-off-by: TakumiKozaka-T4 Co-authored-by: tier4-autoware-public-bot[bot] <98652886+tier4-autoware-public-bot[bot]@users.noreply.github.com> Co-authored-by: Kenji Miyake <31987104+kenji-miyake@users.noreply.github.com> Co-authored-by: kenji-miyake Co-authored-by: Hiroki OTA Co-authored-by: Takamasa Horibe Co-authored-by: taikitanaka3 <65527974+taikitanaka3@users.noreply.github.com> Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com> Co-authored-by: Kah Hooi Tan <41041286+tkhmy@users.noreply.github.com> Co-authored-by: Daisuke Nishimatsu <42202095+wep21@users.noreply.github.com> Co-authored-by: Tomoya Kimura Co-authored-by: Yamato Ando Co-authored-by: Tomohito ANDO --- .../launch/include/external_api_adaptor.launch.py | 1 + 1 file changed, 1 insertion(+) diff --git a/autoware_api_launch/launch/include/external_api_adaptor.launch.py b/autoware_api_launch/launch/include/external_api_adaptor.launch.py index fb840f4edd..a97ef50049 100644 --- a/autoware_api_launch/launch/include/external_api_adaptor.launch.py +++ b/autoware_api_launch/launch/include/external_api_adaptor.launch.py @@ -29,6 +29,7 @@ def _create_api_node(node_name, class_name, **kwargs): def generate_launch_description(): components = [ + _create_api_node("calibration_status", "CalibrationStatus"), _create_api_node("cpu_usage", "CpuUsage"), _create_api_node("diagnostics", "Diagnostics"), _create_api_node("door", "Door"), From 5ffcbb747398f22d3834cf548158c3c7c1ca7df8 Mon Sep 17 00:00:00 2001 From: Yutaka Shimizu <43805014+purewater0901@users.noreply.github.com> Date: Thu, 16 Jun 2022 18:00:18 +0900 Subject: [PATCH 03/41] feat: add maneuver to rviz visualization (#353) Signed-off-by: yutaka --- autoware_launch/rviz/autoware.rviz | 12 ++++++++++++ 1 file changed, 12 insertions(+) diff --git a/autoware_launch/rviz/autoware.rviz b/autoware_launch/rviz/autoware.rviz index 4d59ac9b1d..e1cfc00d80 100644 --- a/autoware_launch/rviz/autoware.rviz +++ b/autoware_launch/rviz/autoware.rviz @@ -846,6 +846,18 @@ Visualization Manager: Alpha: 0.999 Color: 255; 255; 255 Value: true + - Class: rviz_default_plugins/MarkerArray + Enabled: false + Name: Maneuver + Namespaces: + maneuver: true + Topic: + Depth: 5 + Durability Policy: Volatile + History Policy: Keep Last + Reliability Policy: Reliable + Value: /perception/object_recognition/prediction/maneuver + Value: true Enabled: true Name: Prediction - Class: rviz_common/Group From 8224df2013b66ffa4be0b94f480bf2d992c33366 Mon Sep 17 00:00:00 2001 From: "pre-commit-ci[bot]" <66853113+pre-commit-ci[bot]@users.noreply.github.com> Date: Tue, 21 Jun 2022 02:42:45 +0900 Subject: [PATCH 04/41] ci(pre-commit): autoupdate (#354) MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit updates: - [github.com/pre-commit/mirrors-prettier: v2.6.2 → v2.7.1](https://github.com/pre-commit/mirrors-prettier/compare/v2.6.2...v2.7.1) Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com> --- .pre-commit-config.yaml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.pre-commit-config.yaml b/.pre-commit-config.yaml index 0052ad3d93..47e3b6eec1 100644 --- a/.pre-commit-config.yaml +++ b/.pre-commit-config.yaml @@ -24,7 +24,7 @@ repos: args: [-c, .markdownlint.yaml, --fix] - repo: https://github.com/pre-commit/mirrors-prettier - rev: v2.6.2 + rev: v2.7.1 hooks: - id: prettier From 12a959ebc01e331b04cda8c9f1984777d2b1b8b8 Mon Sep 17 00:00:00 2001 From: Fumiya Watanabe Date: Tue, 21 Jun 2022 18:38:56 +0900 Subject: [PATCH 05/41] fix(autoware_launch): fix autoware.rviz for separating walkway module (#356) Signed-off-by: Fumiya Watanabe --- autoware_launch/rviz/autoware.rviz | 24 ++++++++++++++++++++++++ 1 file changed, 24 insertions(+) diff --git a/autoware_launch/rviz/autoware.rviz b/autoware_launch/rviz/autoware.rviz index e1cfc00d80..420b2dff49 100644 --- a/autoware_launch/rviz/autoware.rviz +++ b/autoware_launch/rviz/autoware.rviz @@ -1032,6 +1032,18 @@ Visualization Manager: Reliability Policy: Reliable Value: /planning/scenario_planning/lane_driving/behavior_planning/behavior_velocity_planner/virtual_wall/crosswalk Value: true + - Class: rviz_default_plugins/MarkerArray + Enabled: true + Name: VirtualWall (Walkway) + Namespaces: + {} + Topic: + Depth: 5 + Durability Policy: Volatile + History Policy: Keep Last + Reliability Policy: Reliable + Value: /planning/scenario_planning/lane_driving/behavior_planning/behavior_velocity_planner/virtual_wall/walkway + Value: true - Class: rviz_default_plugins/MarkerArray Enabled: true Name: VirtualWall (DetectionArea) @@ -1169,6 +1181,18 @@ Visualization Manager: Reliability Policy: Reliable Value: /planning/scenario_planning/lane_driving/behavior_planning/behavior_velocity_planner/debug/crosswalk Value: false + - Class: rviz_default_plugins/MarkerArray + Enabled: false + Name: Walkway + Namespaces: + {} + Topic: + Depth: 5 + Durability Policy: Volatile + History Policy: Keep Last + Reliability Policy: Reliable + Value: /planning/scenario_planning/lane_driving/behavior_planning/behavior_velocity_planner/debug/walkway + Value: false - Class: rviz_default_plugins/MarkerArray Enabled: false Name: Intersection From 003edde5d6b6a9aa97be4afaafcb9bacc6c68854 Mon Sep 17 00:00:00 2001 From: Yukihiro Saito Date: Thu, 23 Jun 2022 11:49:10 +0900 Subject: [PATCH 06/41] feat: change data association param (#359) Signed-off-by: Yukihiro Saito --- .../multi_object_tracker/data_association_matrix.param.yaml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/perception_launch/config/object_recognition/tracking/multi_object_tracker/data_association_matrix.param.yaml b/perception_launch/config/object_recognition/tracking/multi_object_tracker/data_association_matrix.param.yaml index 6e7ac3e9ef..b741e1d3d6 100644 --- a/perception_launch/config/object_recognition/tracking/multi_object_tracker/data_association_matrix.param.yaml +++ b/perception_launch/config/object_recognition/tracking/multi_object_tracker/data_association_matrix.param.yaml @@ -61,4 +61,4 @@ 0.1, 0.2, 0.3, 0.3, 0.3, 0.1, 0.1, 0.1, #TRAILER 0.1, 0.1, 0.1, 0.1, 0.1, 0.1, 0.1, 0.1, #MOTORBIKE 0.1, 0.1, 0.1, 0.1, 0.1, 0.1, 0.1, 0.1, #BICYCLE - 0.1, 0.1, 0.1, 0.1, 0.1, 0.1, 0.1, 0.1] #PEDESTRIAN + 0.1, 0.1, 0.1, 0.1, 0.1, 0.1, 0.1, 0.0001] #PEDESTRIAN From 918855a50b1bcc054644c64b7d595c7443eb1709 Mon Sep 17 00:00:00 2001 From: Yukihiro Saito Date: Thu, 23 Jun 2022 12:15:59 +0900 Subject: [PATCH 07/41] feat: sync awf perception launch (#358) * feat: sync awf perception launch Signed-off-by: Yukihiro Saito * bug fix Signed-off-by: Yukihiro Saito --- .../data_association_matrix.param.yaml | 34 ++++----- ...ra_lidar_fusion_based_detection.launch.xml | 69 +++++++++++-------- .../lidar_based_detection.launch.xml | 30 +++++--- 3 files changed, 77 insertions(+), 56 deletions(-) diff --git a/perception_launch/config/object_recognition/tracking/multi_object_tracker/data_association_matrix.param.yaml b/perception_launch/config/object_recognition/tracking/multi_object_tracker/data_association_matrix.param.yaml index b741e1d3d6..5c98f73bcd 100644 --- a/perception_launch/config/object_recognition/tracking/multi_object_tracker/data_association_matrix.param.yaml +++ b/perception_launch/config/object_recognition/tracking/multi_object_tracker/data_association_matrix.param.yaml @@ -1,19 +1,19 @@ /**: ros__parameters: can_assign_matrix: - #UNKNOWN, CAR, TRUCK, BUS, TRAILER, MOTORBIKE, BICYCLE PEDESTRIAN - [0, 0, 0, 0, 0, 0, 0, 0, #UNKNOWN - 1, 1, 1, 1, 1, 0, 0, 0, #CAR - 1, 1, 1, 1, 1, 0, 0, 0, #TRUCK - 1, 1, 1, 1, 1, 0, 0, 0, #BUS - 1, 1, 1, 1, 1, 0, 0, 0, #TRAILER + #UNKNOWN, CAR, TRUCK, BUS, TRAILER, MOTORBIKE, BICYCLE,PEDESTRIAN <-Measurement + [1, 0, 0, 0, 0, 0, 0, 0, #UNKNOWN <-Tracker + 0, 1, 1, 1, 1, 0, 0, 0, #CAR + 0, 1, 1, 1, 1, 0, 0, 0, #TRUCK + 0, 1, 1, 1, 1, 0, 0, 0, #BUS + 0, 1, 1, 1, 1, 0, 0, 0, #TRAILER 0, 0, 0, 0, 0, 1, 1, 1, #MOTORBIKE 0, 0, 0, 0, 0, 1, 1, 1, #BICYCLE 0, 0, 0, 0, 0, 1, 1, 1] #PEDESTRIAN max_dist_matrix: #UNKNOWN, CAR, TRUCK, BUS, TRAILER, MOTORBIKE, BICYCLE, PEDESTRIAN - [1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, #UNKNOWN + [4.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, #UNKNOWN 4.0, 2.0, 5.0, 5.0, 5.0, 1.0, 1.0, 1.0, #CAR 4.0, 2.0, 5.0, 5.0, 5.0, 1.0, 1.0, 1.0, #TRUCK 4.0, 2.0, 5.0, 5.0, 5.0, 1.0, 1.0, 1.0, #BUS @@ -28,7 +28,7 @@ 19.75, 12.10, 19.75, 32.40, 32.40, 10000.00, 10000.00, 10000.00, #TRUCK 32.40, 12.10, 19.75, 32.40, 32.40, 10000.00, 10000.00, 10000.00, #BUS 32.40, 12.10, 19.75, 32.40, 32.40, 10000.00, 10000.00, 10000.00, #TRAILER - 3.00, 10000.00, 10000.00, 10000.00, 10000.00, 2.50, 2.50, 1.00, #MOTORBIKE + 2.50, 10000.00, 10000.00, 10000.00, 10000.00, 2.50, 2.50, 1.00, #MOTORBIKE 2.50, 10000.00, 10000.00, 10000.00, 10000.00, 2.50, 2.50, 1.00, #BICYCLE 2.00, 10000.00, 10000.00, 10000.00, 10000.00, 1.50, 1.50, 1.00] #PEDESTRIAN min_area_matrix: @@ -52,13 +52,13 @@ 3.150, 3.150, 3.150, 3.150, 3.150, 3.150, 3.150, 3.150, #BICYCLE 3.150, 3.150, 3.150, 3.150, 3.150, 3.150, 3.150, 3.150] #PEDESTRIAN - min_iou_matrix: + min_iou_matrix: # If value is negative, it will be ignored. #UNKNOWN, CAR, TRUCK, BUS, TRAILER, MOTORBIKE, BICYCLE, PEDESTRIAN - [0.1, 0.1, 0.1, 0.1, 0.1, 0.1, 0.1, 0.1, #UNKNOWN - 0.1, 0.3, 0.2, 0.2, 0.2, 0.1, 0.1, 0.1, #CAR - 0.1, 0.2, 0.3, 0.3, 0.3, 0.1, 0.1, 0.1, #TRUCK - 0.1, 0.2, 0.3, 0.3, 0.3, 0.1, 0.1, 0.1, #BUS - 0.1, 0.2, 0.3, 0.3, 0.3, 0.1, 0.1, 0.1, #TRAILER - 0.1, 0.1, 0.1, 0.1, 0.1, 0.1, 0.1, 0.1, #MOTORBIKE - 0.1, 0.1, 0.1, 0.1, 0.1, 0.1, 0.1, 0.1, #BICYCLE - 0.1, 0.1, 0.1, 0.1, 0.1, 0.1, 0.1, 0.0001] #PEDESTRIAN + [0.0001, 0.1, 0.1, 0.1, 0.1, 0.1, 0.1, 0.1, #UNKNOWN + 0.1, 0.3, 0.2, 0.2, 0.2, 0.1, 0.1, 0.1, #CAR + 0.1, 0.2, 0.3, 0.3, 0.3, 0.1, 0.1, 0.1, #TRUCK + 0.1, 0.2, 0.3, 0.3, 0.3, 0.1, 0.1, 0.1, #BUS + 0.1, 0.2, 0.3, 0.3, 0.3, 0.1, 0.1, 0.1, #TRAILER + 0.1, 0.1, 0.1, 0.1, 0.1, 0.1, 0.1, 0.1, #MOTORBIKE + 0.1, 0.1, 0.1, 0.1, 0.1, 0.1, 0.1, 0.1, #BICYCLE + 0.1, 0.1, 0.1, 0.1, 0.1, 0.1, 0.1, 0.0001] #PEDESTRIAN diff --git a/perception_launch/launch/object_recognition/detection/camera_lidar_fusion_based_detection.launch.xml b/perception_launch/launch/object_recognition/detection/camera_lidar_fusion_based_detection.launch.xml index af20464cdf..9c52441fb9 100644 --- a/perception_launch/launch/object_recognition/detection/camera_lidar_fusion_based_detection.launch.xml +++ b/perception_launch/launch/object_recognition/detection/camera_lidar_fusion_based_detection.launch.xml @@ -1,6 +1,6 @@ - + @@ -38,13 +38,14 @@ - - - - + + + + + @@ -54,6 +55,16 @@ + + + + + + + + + + @@ -84,13 +95,13 @@ - - + + - - + + @@ -103,8 +114,7 @@ - - + @@ -112,7 +122,7 @@ - + @@ -129,8 +139,8 @@ - - + + @@ -147,20 +157,19 @@ - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + diff --git a/perception_launch/launch/object_recognition/detection/lidar_based_detection.launch.xml b/perception_launch/launch/object_recognition/detection/lidar_based_detection.launch.xml index e32dcac20b..5287fb4ab6 100644 --- a/perception_launch/launch/object_recognition/detection/lidar_based_detection.launch.xml +++ b/perception_launch/launch/object_recognition/detection/lidar_based_detection.launch.xml @@ -8,10 +8,10 @@ - - - - + + + + @@ -25,13 +25,21 @@ + + + + + + + + + - - + @@ -57,8 +65,8 @@ - - + + @@ -78,9 +86,13 @@ + + + + + - From 3c7562aef494f062a0b0438ee55a51c6ecf0db46 Mon Sep 17 00:00:00 2001 From: Yukihiro Saito Date: Thu, 23 Jun 2022 16:13:23 +0900 Subject: [PATCH 08/41] feat: sync awf perception launch (#360) Signed-off-by: Yukihiro Saito --- .../pointcloud_map_filter.param.yaml | 5 + ...ra_lidar_fusion_based_detection.launch.xml | 14 +- .../lidar_based_detection.launch.xml | 14 +- .../detection/pointcloud_map_filter.launch.py | 168 ++++++++++++++++++ 4 files changed, 191 insertions(+), 10 deletions(-) create mode 100644 perception_launch/config/object_recognition/detection/pointcloud_map_filter.param.yaml create mode 100644 perception_launch/launch/object_recognition/detection/pointcloud_map_filter.launch.py diff --git a/perception_launch/config/object_recognition/detection/pointcloud_map_filter.param.yaml b/perception_launch/config/object_recognition/detection/pointcloud_map_filter.param.yaml new file mode 100644 index 0000000000..a07a9416c2 --- /dev/null +++ b/perception_launch/config/object_recognition/detection/pointcloud_map_filter.param.yaml @@ -0,0 +1,5 @@ +/**: + ros__parameters: + use_down_sample_filter: False + down_sample_voxel_size: 0.1 + distance_threshold: 0.5 diff --git a/perception_launch/launch/object_recognition/detection/camera_lidar_fusion_based_detection.launch.xml b/perception_launch/launch/object_recognition/detection/camera_lidar_fusion_based_detection.launch.xml index 9c52441fb9..2fee81fc1b 100644 --- a/perception_launch/launch/object_recognition/detection/camera_lidar_fusion_based_detection.launch.xml +++ b/perception_launch/launch/object_recognition/detection/camera_lidar_fusion_based_detection.launch.xml @@ -21,6 +21,8 @@ + + - - - - - + + + + + + + diff --git a/perception_launch/launch/object_recognition/detection/lidar_based_detection.launch.xml b/perception_launch/launch/object_recognition/detection/lidar_based_detection.launch.xml index 5287fb4ab6..360dcc2587 100644 --- a/perception_launch/launch/object_recognition/detection/lidar_based_detection.launch.xml +++ b/perception_launch/launch/object_recognition/detection/lidar_based_detection.launch.xml @@ -4,14 +4,18 @@ + + - - - - - + + + + + + + diff --git a/perception_launch/launch/object_recognition/detection/pointcloud_map_filter.launch.py b/perception_launch/launch/object_recognition/detection/pointcloud_map_filter.launch.py new file mode 100644 index 0000000000..afcf9021c0 --- /dev/null +++ b/perception_launch/launch/object_recognition/detection/pointcloud_map_filter.launch.py @@ -0,0 +1,168 @@ +# Copyright 2022 TIER IV, Inc. All rights reserved. +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. +import os + +from ament_index_python.packages import get_package_share_directory +import launch +from launch.actions import DeclareLaunchArgument +from launch.actions import OpaqueFunction +from launch.actions import SetLaunchConfiguration +from launch.conditions import IfCondition +from launch.conditions import UnlessCondition +from launch.substitutions import LaunchConfiguration +from launch_ros.actions import ComposableNodeContainer +from launch_ros.actions import LoadComposableNodes +from launch_ros.descriptions import ComposableNode +import yaml + + +class PointcloudMapFilterPipeline: + def __init__(self, context): + pointcloud_map_filter_param_path = os.path.join( + get_package_share_directory("perception_launch"), + "config/object_recognition/detection/pointcloud_map_filter.param.yaml", + ) + with open(pointcloud_map_filter_param_path, "r") as f: + self.pointcloud_map_filter_param = yaml.safe_load(f)["/**"]["ros__parameters"] + self.use_down_sample_filter = self.pointcloud_map_filter_param["use_down_sample_filter"] + self.voxel_size = self.pointcloud_map_filter_param["down_sample_voxel_size"] + self.distance_threshold = self.pointcloud_map_filter_param["distance_threshold"] + + def create_pipeline(self): + if self.use_down_sample_filter: + return self.create_down_sample_pipeline() + else: + return self.create_normal_pipeline() + + def create_normal_pipeline(self): + components = [] + components.append( + ComposableNode( + package="compare_map_segmentation", + plugin="compare_map_segmentation::VoxelBasedCompareMapFilterComponent", + name="voxel_based_compare_map_filter", + remappings=[ + ("input", LaunchConfiguration("input_topic")), + ("map", "/map/pointcloud_map"), + ("output", LaunchConfiguration("output_topic")), + ], + parameters=[ + { + "distance_threshold": self.distance_threshold, + } + ], + extra_arguments=[ + {"use_intra_process_comms": False}, + ], + ) + ) + return components + + def create_down_sample_pipeline(self): + components = [] + down_sample_topic = ( + "/perception/obstacle_segmentation/pointcloud_map_filtered/downsampled/pointcloud" + ) + components.append( + ComposableNode( + package="pointcloud_preprocessor", + plugin="pointcloud_preprocessor::VoxelGridDownsampleFilterComponent", + name="voxel_grid_downsample_filter", + remappings=[ + ("input", LaunchConfiguration("input_topic")), + ("output", down_sample_topic), + ], + parameters=[ + { + "voxel_size_x": self.voxel_size, + "voxel_size_y": self.voxel_size, + "voxel_size_z": self.voxel_size, + } + ], + extra_arguments=[ + {"use_intra_process_comms": LaunchConfiguration("use_intra_process")} + ], + ), + ) + components.append( + ComposableNode( + package="compare_map_segmentation", + plugin="compare_map_segmentation::VoxelBasedCompareMapFilterComponent", + name="voxel_based_compare_map_filter", + remappings=[ + ("input", down_sample_topic), + ("map", "/map/pointcloud_map"), + ("output", LaunchConfiguration("output_topic")), + ], + parameters=[ + { + "distance_threshold": self.distance_threshold, + } + ], + extra_arguments=[ + {"use_intra_process_comms": False}, + ], + ) + ) + return components + + +def launch_setup(context, *args, **kwargs): + pipeline = PointcloudMapFilterPipeline(context) + components = [] + components.extend(pipeline.create_pipeline()) + individual_container = ComposableNodeContainer( + name=LaunchConfiguration("container_name"), + namespace="", + package="rclcpp_components", + executable=LaunchConfiguration("container_executable"), + composable_node_descriptions=components, + condition=UnlessCondition(LaunchConfiguration("use_pointcloud_container")), + output="screen", + ) + pointcloud_container_loader = LoadComposableNodes( + composable_node_descriptions=components, + target_container=LaunchConfiguration("container_name"), + condition=IfCondition(LaunchConfiguration("use_pointcloud_container")), + ) + return [individual_container, pointcloud_container_loader] + + +def generate_launch_description(): + launch_arguments = [] + + def add_launch_arg(name: str, default_value=None): + launch_arguments.append(DeclareLaunchArgument(name, default_value=default_value)) + + add_launch_arg("input_topic", "") + add_launch_arg("output_topic", "") + add_launch_arg("use_multithread", "False") + add_launch_arg("use_intra_process", "True") + add_launch_arg("use_pointcloud_container", "False") + add_launch_arg("container_name", "pointcloud_map_filter_pipeline_container") + set_container_executable = SetLaunchConfiguration( + "container_executable", + "component_container", + condition=UnlessCondition(LaunchConfiguration("use_multithread")), + ) + set_container_mt_executable = SetLaunchConfiguration( + "container_executable", + "component_container_mt", + condition=IfCondition(LaunchConfiguration("use_multithread")), + ) + return launch.LaunchDescription( + launch_arguments + + [set_container_executable, set_container_mt_executable] + + [OpaqueFunction(function=launch_setup)] + ) From 7c1d37973c80e4ae2019c5805f302cdd2b38fbe1 Mon Sep 17 00:00:00 2001 From: Yukihiro Saito Date: Thu, 23 Jun 2022 19:49:27 +0900 Subject: [PATCH 09/41] feat: sync tracking param (#363) Signed-off-by: Yukihiro Saito --- .../data_association_matrix.param.yaml | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/perception_launch/config/object_recognition/tracking/multi_object_tracker/data_association_matrix.param.yaml b/perception_launch/config/object_recognition/tracking/multi_object_tracker/data_association_matrix.param.yaml index 5c98f73bcd..1f52e525c4 100644 --- a/perception_launch/config/object_recognition/tracking/multi_object_tracker/data_association_matrix.param.yaml +++ b/perception_launch/config/object_recognition/tracking/multi_object_tracker/data_association_matrix.param.yaml @@ -24,10 +24,10 @@ max_area_matrix: #UNKNOWN, CAR, TRUCK, BUS, TRAILER, MOTORBIKE, BICYCLE, PEDESTRIAN [10000.00, 10000.00, 10000.00, 10000.00, 10000.00, 10000.00, 10000.00, 10000.00, #UNKNOWN - 12.10, 12.10, 19.75, 32.40, 32.40, 10000.00, 10000.00, 10000.00, #CAR - 19.75, 12.10, 19.75, 32.40, 32.40, 10000.00, 10000.00, 10000.00, #TRUCK - 32.40, 12.10, 19.75, 32.40, 32.40, 10000.00, 10000.00, 10000.00, #BUS - 32.40, 12.10, 19.75, 32.40, 32.40, 10000.00, 10000.00, 10000.00, #TRAILER + 12.10, 12.10, 19.75, 40.00, 40.00, 10000.00, 10000.00, 10000.00, #CAR + 19.75, 12.10, 19.75, 40.00, 40.00, 10000.00, 10000.00, 10000.00, #TRUCK + 40.00, 12.10, 19.75, 40.00, 40.00, 10000.00, 10000.00, 10000.00, #BUS + 40.00, 12.10, 19.75, 40.00, 40.00, 10000.00, 10000.00, 10000.00, #TRAILER 2.50, 10000.00, 10000.00, 10000.00, 10000.00, 2.50, 2.50, 1.00, #MOTORBIKE 2.50, 10000.00, 10000.00, 10000.00, 10000.00, 2.50, 2.50, 1.00, #BICYCLE 2.00, 10000.00, 10000.00, 10000.00, 10000.00, 1.50, 1.50, 1.00] #PEDESTRIAN From 5e0580f40656c03727eb162ad08857a967b1e20a Mon Sep 17 00:00:00 2001 From: Takayuki Murooka Date: Fri, 24 Jun 2022 11:32:58 +0900 Subject: [PATCH 10/41] feat(planning_launch): update obstacle cruise param (#364) * feat(planning_launch): update obstacle cruise param Signed-off-by: Takayuki Murooka * Delete utils.param.yaml --- .../obstacle_cruise_planner/obstacle_cruise_planner.param.yaml | 2 ++ 1 file changed, 2 insertions(+) diff --git a/planning_launch/config/scenario_planning/lane_driving/motion_planning/obstacle_cruise_planner/obstacle_cruise_planner.param.yaml b/planning_launch/config/scenario_planning/lane_driving/motion_planning/obstacle_cruise_planner/obstacle_cruise_planner.param.yaml index 708c23f5ba..d3d21ff83c 100644 --- a/planning_launch/config/scenario_planning/lane_driving/motion_planning/obstacle_cruise_planner/obstacle_cruise_planner.param.yaml +++ b/planning_launch/config/scenario_planning/lane_driving/motion_planning/obstacle_cruise_planner/obstacle_cruise_planner.param.yaml @@ -76,6 +76,8 @@ min_cruise_target_vel: 0.0 # minimum target velocity during slow down [m/s] + lpf_cruise_gain: 0.2 + optimization_based_planner: resampling_s_interval: 2.0 dense_resampling_time_interval: 0.1 From c7a698cb7324ec14ec8ce446d13f57fc25262e21 Mon Sep 17 00:00:00 2001 From: "tier4-autoware-public-bot[bot]" <98652886+tier4-autoware-public-bot[bot]@users.noreply.github.com> Date: Tue, 28 Jun 2022 09:21:54 +0900 Subject: [PATCH 11/41] chore: sync files (#368) Signed-off-by: GitHub Co-authored-by: kenji-miyake --- .github/workflows/build-and-test-differential.yaml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/build-and-test-differential.yaml b/.github/workflows/build-and-test-differential.yaml index db998fae00..746d6bd3ba 100644 --- a/.github/workflows/build-and-test-differential.yaml +++ b/.github/workflows/build-and-test-differential.yaml @@ -22,7 +22,7 @@ jobs: build-depends-repos: build_depends.repos steps: - name: Cancel previous runs - uses: styfle/cancel-workflow-action@0.9.1 + uses: styfle/cancel-workflow-action@0.10.0 - name: Check out repository uses: actions/checkout@v3 From 1de14ae82e375d8d8805b55dfb1080f7cef24a42 Mon Sep 17 00:00:00 2001 From: kminoda <44218668+kminoda@users.noreply.github.com> Date: Tue, 28 Jun 2022 15:37:50 +0900 Subject: [PATCH 12/41] feat(distortion_corrector): use gyroscope for correcting LiDAR distortion (#365) * resolve conflict Signed-off-by: kminoda * update readme Signed-off-by: kminoda --- README.md | 4 ++-- .../launch/twist_estimator/twist_estimator.launch.xml | 10 +++------- 2 files changed, 5 insertions(+), 9 deletions(-) diff --git a/README.md b/README.md index b1ff82b201..b22428a818 100644 --- a/README.md +++ b/README.md @@ -1,6 +1,6 @@ # autoware_launcher -## Getting Started +## Getting started ### Using real vehicle @@ -14,7 +14,7 @@ ros2 launch autoware_launch autoware.launch.xml map_path:=/path/to/map_folder ve ros2 launch autoware_launch planning_simulator.launch.xml map_path:=/path/to/map_folder vehicle_model:=[vehicle_name] sensor_model:=[sensor_name] ``` -## Directory Structure +## Directory structure - [autoware_launch](./autoware_launch) - [control_launch](./control_launch) diff --git a/localization_launch/launch/twist_estimator/twist_estimator.launch.xml b/localization_launch/launch/twist_estimator/twist_estimator.launch.xml index fd7854a7e4..155521a0ed 100644 --- a/localization_launch/launch/twist_estimator/twist_estimator.launch.xml +++ b/localization_launch/launch/twist_estimator/twist_estimator.launch.xml @@ -1,12 +1,8 @@ - - - - - - - + + + From 962e18dd270adbf1a2969281d47c2fa3bda916b4 Mon Sep 17 00:00:00 2001 From: Takeshi Miura <57553950+1222-takeshi@users.noreply.github.com> Date: Thu, 30 Jun 2022 10:31:24 +0900 Subject: [PATCH 13/41] fix(intersection_module): remove decel parameter (#370) Signed-off-by: 1222-takeshi --- .../behavior_velocity_planner/intersection.param.yaml | 1 - 1 file changed, 1 deletion(-) diff --git a/planning_launch/config/scenario_planning/lane_driving/behavior_planning/behavior_velocity_planner/intersection.param.yaml b/planning_launch/config/scenario_planning/lane_driving/behavior_planning/behavior_velocity_planner/intersection.param.yaml index bfcaeb8201..828298fc17 100644 --- a/planning_launch/config/scenario_planning/lane_driving/behavior_planning/behavior_velocity_planner/intersection.param.yaml +++ b/planning_launch/config/scenario_planning/lane_driving/behavior_planning/behavior_velocity_planner/intersection.param.yaml @@ -2,7 +2,6 @@ ros__parameters: intersection: state_transit_margin_time: 0.5 - decel_velocity: 8.33 # 8.33m/s = 30.0km/h stop_line_margin: 3.0 stuck_vehicle_detect_dist: 3.0 # this should be the length between cars when they are stopped. The actual stuck vehicle detection length will be this value + vehicle_length. stuck_vehicle_ignore_dist: 7.0 # obstacle stop max distance(5.0m) + stuck vehicle size / 2 (0.0m-) From 01653764043de1e2a1067f5745ead07de4ce1a4b Mon Sep 17 00:00:00 2001 From: Shumpei Wakabayashi <42209144+shmpwk@users.noreply.github.com> Date: Thu, 30 Jun 2022 13:26:29 +0900 Subject: [PATCH 14/41] refactor(freespace_planner): parameterize margin (#372) Signed-off-by: Shumpei Wakabayashi --- .../parking/freespace_planner/freespace_planner.param.yaml | 1 + 1 file changed, 1 insertion(+) diff --git a/planning_launch/config/scenario_planning/parking/freespace_planner/freespace_planner.param.yaml b/planning_launch/config/scenario_planning/parking/freespace_planner/freespace_planner.param.yaml index 72648a9dfd..5bc8a56613 100644 --- a/planning_launch/config/scenario_planning/parking/freespace_planner/freespace_planner.param.yaml +++ b/planning_launch/config/scenario_planning/parking/freespace_planner/freespace_planner.param.yaml @@ -8,6 +8,7 @@ th_stopped_time_sec: 1.0 th_stopped_velocity_mps: 0.01 th_course_out_distance_m: 1.0 + vehicle_footprint_margin_m: 1.0 replan_when_obstacle_found: true replan_when_course_out: true From db7d16c6409f4b46e39f8aaebe0f6a1646cc7044 Mon Sep 17 00:00:00 2001 From: Shumpei Wakabayashi <42209144+shmpwk@users.noreply.github.com> Date: Thu, 30 Jun 2022 14:04:03 +0900 Subject: [PATCH 15/41] refactor(freespace_planner): parameterize margin (#374) Signed-off-by: Shumpei Wakabayashi --- .../parking/freespace_planner/freespace_planner.param.yaml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/planning_launch/config/scenario_planning/parking/freespace_planner/freespace_planner.param.yaml b/planning_launch/config/scenario_planning/parking/freespace_planner/freespace_planner.param.yaml index 5bc8a56613..d6152c4f56 100644 --- a/planning_launch/config/scenario_planning/parking/freespace_planner/freespace_planner.param.yaml +++ b/planning_launch/config/scenario_planning/parking/freespace_planner/freespace_planner.param.yaml @@ -8,7 +8,7 @@ th_stopped_time_sec: 1.0 th_stopped_velocity_mps: 0.01 th_course_out_distance_m: 1.0 - vehicle_footprint_margin_m: 1.0 + vehicle_shape_margin_m: 1.0 replan_when_obstacle_found: true replan_when_course_out: true From c98a8584005e5e9d3f250055bd87803918003d94 Mon Sep 17 00:00:00 2001 From: Takayuki Murooka Date: Thu, 30 Jun 2022 14:30:30 +0900 Subject: [PATCH 16/41] feat(planning_launch): update obstacle_cruise param (#369) Signed-off-by: Takayuki Murooka --- .../obstacle_cruise_planner.param.yaml | 14 ++++++++------ 1 file changed, 8 insertions(+), 6 deletions(-) diff --git a/planning_launch/config/scenario_planning/lane_driving/motion_planning/obstacle_cruise_planner/obstacle_cruise_planner.param.yaml b/planning_launch/config/scenario_planning/lane_driving/motion_planning/obstacle_cruise_planner/obstacle_cruise_planner.param.yaml index d3d21ff83c..9b50aba0e2 100644 --- a/planning_launch/config/scenario_planning/lane_driving/motion_planning/obstacle_cruise_planner/obstacle_cruise_planner.param.yaml +++ b/planning_launch/config/scenario_planning/lane_driving/motion_planning/obstacle_cruise_planner/obstacle_cruise_planner.param.yaml @@ -6,7 +6,7 @@ is_showing_debug_info: true # longitudinal info - idling_time: 4.0 # idling time to detect front vehicle starting deceleration [s] + idling_time: 1.5 # idling time to detect front vehicle starting deceleration [s] min_ego_accel_for_rss: -1.0 # ego's acceleration to calculate RSS distance [m/ss] min_object_accel_for_rss: -1.0 # front obstacle's acceleration to calculate RSS distance [m/ss] safe_distance_margin : 6.0 # This is also used as a stop margin [m] @@ -17,6 +17,7 @@ nearest_yaw_deviation_threshold: 1.57 # [rad] for finding nearest index min_behavior_stop_margin: 3.0 # [m] obstacle_velocity_threshold_from_cruise_to_stop : 3.0 # stop planning is executed to the obstacle whose velocity is less than this value [m/s] + obstacle_velocity_threshold_from_stop_to_cruise : 3.5 # stop planning is executed to the obstacle whose velocity is less than this value [m/s] cruise_obstacle_type: unknown: true @@ -39,7 +40,7 @@ pedestrian: true obstacle_filtering: - rough_detection_area_expand_width : 5.0 # rough lateral margin for rough detection area expansion [m] + rough_detection_area_expand_width : 3.0 # rough lateral margin for rough detection area expansion [m] detection_area_expand_width : 0.0 # lateral margin for precise detection area expansion decimate_trajectory_step_length : 2.0 # longitudinal step length to calculate trajectory polygon for collision checking @@ -48,6 +49,7 @@ crossing_obstacle_traj_angle_threshold : 1.22 # [rad] = 70 [deg], yaw threshold of crossing obstacle against the nearest trajectory point for cruise or stop collision_time_margin : 8.0 # time threshold of collision between obstacle adn ego for cruise or stop [s] + outside_rough_detection_area_expand_width : 0.5 # rough lateral margin for rough detection area expansion for obstacles outside the trajectory [m] ego_obstacle_overlap_time_threshold : 1.0 # time threshold to decide cut-in obstacle for cruise or stop [s] max_prediction_time_for_collision_check : 20.0 # prediction time to check collision between obstacle and ego @@ -65,14 +67,14 @@ # use_predicted_obstacle_pose: false # PID gains to keep safe distance with the front vehicle - kp: 0.6 + kp: 2.5 ki: 0.0 - kd: 0.5 + kd: 2.3 min_accel_during_cruise: -2.0 # minimum acceleration during cruise to slow down [m/ss] - output_ratio_during_accel: 2.5 # target acceleration is multiplied with this value while ego accelerates to catch up the front vehicle [-] - vel_to_acc_weight: 8.0 # target acceleration is calculated by (target_velocity - current_velocity) * vel_to_acc_weight [-] + output_ratio_during_accel: 0.6 # target acceleration is multiplied with this value while ego accelerates to catch up the front vehicle [-] + vel_to_acc_weight: 3.0 # target acceleration is calculated by (target_velocity - current_velocity) * vel_to_acc_weight [-] min_cruise_target_vel: 0.0 # minimum target velocity during slow down [m/s] From c5ce8e152c266fe23b6c7c39f81312a976cce855 Mon Sep 17 00:00:00 2001 From: Kosuke Takeuchi Date: Mon, 4 Jul 2022 10:25:34 +0900 Subject: [PATCH 17/41] feat(trajectory_follower): integrate latlon controller (#366) * feat(trajectory_follower): integrate latlon controller Signed-off-by: kosuke55 * update from review comment Signed-off-by: Takamasa Horibe * Set steer converged params false Signed-off-by: kosuke55 Co-authored-by: Takamasa Horibe --- .../latlon_muxer.param.yaml | 3 - .../longitudinal_controller.param.yaml | 2 +- .../mpc_follower.param.yaml | 6 +- control_launch/launch/control.launch.py | 118 +++--------------- 4 files changed, 19 insertions(+), 110 deletions(-) delete mode 100644 control_launch/config/trajectory_follower/latlon_muxer.param.yaml diff --git a/control_launch/config/trajectory_follower/latlon_muxer.param.yaml b/control_launch/config/trajectory_follower/latlon_muxer.param.yaml deleted file mode 100644 index 371bb99787..0000000000 --- a/control_launch/config/trajectory_follower/latlon_muxer.param.yaml +++ /dev/null @@ -1,3 +0,0 @@ -/**: - ros__parameters: - timeout_thr_sec: 0.5 # [s] Time limit after which input messages are discarded. diff --git a/control_launch/config/trajectory_follower/longitudinal_controller.param.yaml b/control_launch/config/trajectory_follower/longitudinal_controller.param.yaml index d6b987f542..704c291ee2 100644 --- a/control_launch/config/trajectory_follower/longitudinal_controller.param.yaml +++ b/control_launch/config/trajectory_follower/longitudinal_controller.param.yaml @@ -1,11 +1,11 @@ /**: ros__parameters: - longitudinal_ctrl_period: 0.03 delay_compensation_time: 0.17 enable_smooth_stop: true enable_overshoot_emergency: true enable_slope_compensation: true + enable_keep_stopped_until_steer_convergence: false # state transition drive_state_stop_dist: 0.5 diff --git a/control_launch/config/trajectory_follower/mpc_follower.param.yaml b/control_launch/config/trajectory_follower/mpc_follower.param.yaml index f8a129af4d..e7e3598504 100644 --- a/control_launch/config/trajectory_follower/mpc_follower.param.yaml +++ b/control_launch/config/trajectory_follower/mpc_follower.param.yaml @@ -1,8 +1,6 @@ /**: ros__parameters: - # -- system -- - ctrl_period: 0.03 # control period [s] traj_resample_dist: 0.1 # path resampling interval [m] use_steer_prediction: false # flag for using steer prediction (do not use steer measurement) admissible_position_error: 5.0 # stop mpc calculation when error is larger than the following value @@ -57,6 +55,10 @@ # stop state: steering command is kept in the previous value in the stop state. stop_state_entry_ego_speed: 0.001 stop_state_entry_target_speed: 0.001 + converged_steer_rad: 0.1 + keep_steer_control_until_converged: false + new_traj_duration_time: 1.0 + new_traj_end_dist: 0.3 # vehicle parameters vehicle: diff --git a/control_launch/launch/control.launch.py b/control_launch/launch/control.launch.py index a4671689d1..811ac38599 100644 --- a/control_launch/launch/control.launch.py +++ b/control_launch/launch/control.launch.py @@ -19,12 +19,10 @@ from launch.actions import OpaqueFunction from launch.actions import SetLaunchConfiguration from launch.conditions import IfCondition -from launch.conditions import LaunchConfigurationEquals from launch.conditions import UnlessCondition from launch.launch_description_sources import PythonLaunchDescriptionSource from launch.substitutions import LaunchConfiguration from launch_ros.actions import ComposableNodeContainer -from launch_ros.actions import LoadComposableNodes from launch_ros.actions import PushRosNamespace from launch_ros.descriptions import ComposableNode from launch_ros.substitutions import FindPackageShare @@ -38,10 +36,6 @@ def launch_setup(context, *args, **kwargs): lon_controller_param_path = LaunchConfiguration("lon_controller_param_path").perform(context) with open(lon_controller_param_path, "r") as f: lon_controller_param = yaml.safe_load(f)["/**"]["ros__parameters"] - latlon_muxer_param_path = LaunchConfiguration("latlon_muxer_param_path").perform(context) - with open(latlon_muxer_param_path, "r") as f: - latlon_muxer_param = yaml.safe_load(f)["/**"]["ros__parameters"] - vehicle_cmd_gate_param_path = LaunchConfiguration("vehicle_cmd_gate_param_path").perform( context ) @@ -53,73 +47,28 @@ def launch_setup(context, *args, **kwargs): with open(lane_departure_checker_param_path, "r") as f: lane_departure_checker_param = yaml.safe_load(f)["/**"]["ros__parameters"] - # lateral controller - mpc_follower_component = ComposableNode( + controller_component = ComposableNode( package="trajectory_follower_nodes", - plugin="autoware::motion::control::trajectory_follower_nodes::LateralController", - name="lateral_controller_node_exe", + plugin="autoware::motion::control::trajectory_follower_nodes::Controller", + name="controller_node_exe", namespace="trajectory_follower", remappings=[ ("~/input/reference_trajectory", "/planning/scenario_planning/trajectory"), ("~/input/current_odometry", "/localization/kinematic_state"), ("~/input/current_steering", "/vehicle/status/steering_status"), - ("~/output/control_cmd", "lateral/control_cmd"), ("~/output/predicted_trajectory", "lateral/predicted_trajectory"), - ("~/output/diagnostic", "lateral/diagnostic"), - ], - parameters=[ - lat_controller_param, - ], - extra_arguments=[{"use_intra_process_comms": LaunchConfiguration("use_intra_process")}], - ) - pure_pursuit_component = ComposableNode( - package="pure_pursuit", - plugin="pure_pursuit::PurePursuitNode", - name="pure_pursuit_node_exe", - namespace="trajectory_follower", - remappings=[ - ("input/reference_trajectory", "/planning/scenario_planning/trajectory"), - ("input/current_odometry", "/localization/kinematic_state"), - ("output/control_raw", "lateral/control_cmd"), - ], - parameters=[ - lat_controller_param, - ], - extra_arguments=[{"use_intra_process_comms": LaunchConfiguration("use_intra_process")}], - ) - - # longitudinal controller - lon_controller_component = ComposableNode( - package="trajectory_follower_nodes", - plugin="autoware::motion::control::trajectory_follower_nodes::LongitudinalController", - name="longitudinal_controller_node_exe", - namespace="trajectory_follower", - remappings=[ - ("~/input/current_trajectory", "/planning/scenario_planning/trajectory"), - ("~/input/current_odometry", "/localization/kinematic_state"), - ("~/output/control_cmd", "longitudinal/control_cmd"), + ("~/output/lateral_diagnostic", "lateral/diagnostic"), ("~/output/slope_angle", "longitudinal/slope_angle"), - ("~/output/diagnostic", "longitudinal/diagnostic"), - ], - parameters=[ - lon_controller_param, - ], - extra_arguments=[{"use_intra_process_comms": LaunchConfiguration("use_intra_process")}], - ) - - # latlon muxer - latlon_muxer_component = ComposableNode( - package="trajectory_follower_nodes", - plugin="autoware::motion::control::trajectory_follower_nodes::LatLonMuxer", - name="latlon_muxer_node_exe", - namespace="trajectory_follower", - remappings=[ - ("~/input/lateral/control_cmd", "lateral/control_cmd"), - ("~/input/longitudinal/control_cmd", "longitudinal/control_cmd"), + ("~/output/longitudinal_diagnostic", "longitudinal/diagnostic"), ("~/output/control_cmd", "control_cmd"), ], parameters=[ - latlon_muxer_param, + { + "ctrl_period": 0.03, + "lateral_controller_mode": LaunchConfiguration("lateral_controller_mode"), + }, + lon_controller_param, + lat_controller_param, ], extra_arguments=[{"use_intra_process_comms": LaunchConfiguration("use_intra_process")}], ) @@ -226,56 +175,25 @@ def launch_setup(context, *args, **kwargs): ], ) - # set container to run all required components in the same process - mpc_follower_container = ComposableNodeContainer( + container = ComposableNodeContainer( name="control_container", namespace="", package="rclcpp_components", executable=LaunchConfiguration("container_executable"), composable_node_descriptions=[ - lon_controller_component, - latlon_muxer_component, + controller_component, lane_departure_component, shift_decider_component, vehicle_cmd_gate_component, ], - condition=LaunchConfigurationEquals("lateral_controller_mode", "mpc_follower"), - ) - pure_pursuit_container = ComposableNodeContainer( - name="control_container", - namespace="", - package="rclcpp_components", - executable=LaunchConfiguration("container_executable"), - composable_node_descriptions=[ - lon_controller_component, - latlon_muxer_component, - shift_decider_component, - vehicle_cmd_gate_component, - ], - condition=LaunchConfigurationEquals("lateral_controller_mode", "pure_pursuit"), - ) - - # lateral controller is separated since it may be another controller (e.g. pure pursuit) - mpc_follower_loader = LoadComposableNodes( - composable_node_descriptions=[mpc_follower_component], - target_container=mpc_follower_container, - condition=LaunchConfigurationEquals("lateral_controller_mode", "mpc_follower"), - ) - pure_pursuit_loader = LoadComposableNodes( - composable_node_descriptions=[pure_pursuit_component], - target_container=pure_pursuit_container, - condition=LaunchConfigurationEquals("lateral_controller_mode", "pure_pursuit"), ) group = GroupAction( [ PushRosNamespace("control"), - mpc_follower_container, - pure_pursuit_container, + container, external_cmd_selector_loader, external_cmd_converter_loader, - mpc_follower_loader, - pure_pursuit_loader, ] ) @@ -314,14 +232,6 @@ def add_launch_arg(name: str, default_value=None, description=None): ], "path to the parameter file of longitudinal controller", ) - add_launch_arg( - "latlon_muxer_param_path", - [ - FindPackageShare("control_launch"), - "/config/trajectory_follower/latlon_muxer.param.yaml", - ], - "path to the parameter file of latlon muxer", - ) add_launch_arg( "vehicle_cmd_gate_param_path", [ From 83403b2987e693bb4d30fd9fac125bfe7fec3149 Mon Sep 17 00:00:00 2001 From: Kosuke Takeuchi Date: Mon, 4 Jul 2022 14:44:51 +0900 Subject: [PATCH 18/41] feat(obstacle_avoidance_planner): add options for plan_from_ego (#371) Signed-off-by: kosuke55 --- .../obstacle_avoidance_planner.param.yaml | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/planning_launch/config/scenario_planning/lane_driving/motion_planning/obstacle_avoidance_planner/obstacle_avoidance_planner.param.yaml b/planning_launch/config/scenario_planning/lane_driving/motion_planning/obstacle_avoidance_planner/obstacle_avoidance_planner.param.yaml index 667d2644f1..87493df635 100644 --- a/planning_launch/config/scenario_planning/lane_driving/motion_planning/obstacle_avoidance_planner/obstacle_avoidance_planner.param.yaml +++ b/planning_launch/config/scenario_planning/lane_driving/motion_planning/obstacle_avoidance_planner/obstacle_avoidance_planner.param.yaml @@ -58,7 +58,8 @@ option: steer_limit_constraint: true fix_points_around_ego: true - # plan_from_ego: false + plan_from_ego: false + max_plan_from_ego_length: 10.0 visualize_sampling_num: 1 enable_manual_warm_start: true enable_warm_start: true # false From 570e640b21b6b1916695d0b522df8be7ff2cb37c Mon Sep 17 00:00:00 2001 From: Satoshi OTA <44889564+satoshi-ota@users.noreply.github.com> Date: Mon, 4 Jul 2022 15:11:02 +0900 Subject: [PATCH 19/41] feat(crosswalk_traffic_light_estimator): launch traffic light estimator (#376) * feat(traffic_light_estimator): launch traffic light estimator Signed-off-by: satoshi-ota * fix(perception_launch): add flag to launch traffic_light_estimator Signed-off-by: satoshi-ota * fix(perception_launch): rename crosswalk_traffic_light_estimator Signed-off-by: satoshi-ota --- .../traffic_light.launch.xml | 2 + .../traffic_light_node_container.launch.py | 45 ++++++++++++++++++- perception_launch/package.xml | 1 + 3 files changed, 47 insertions(+), 1 deletion(-) diff --git a/perception_launch/launch/traffic_light_recognition/traffic_light.launch.xml b/perception_launch/launch/traffic_light_recognition/traffic_light.launch.xml index 64252eaf7c..ae79eae500 100644 --- a/perception_launch/launch/traffic_light_recognition/traffic_light.launch.xml +++ b/perception_launch/launch/traffic_light_recognition/traffic_light.launch.xml @@ -17,6 +17,7 @@ + @@ -37,6 +38,7 @@ + diff --git a/perception_launch/launch/traffic_light_recognition/traffic_light_node_container.launch.py b/perception_launch/launch/traffic_light_recognition/traffic_light_node_container.launch.py index 3f16c9a043..8827dfbb98 100644 --- a/perception_launch/launch/traffic_light_recognition/traffic_light_node_container.launch.py +++ b/perception_launch/launch/traffic_light_recognition/traffic_light_node_container.launch.py @@ -67,6 +67,7 @@ def add_launch_arg(name: str, default_value=None, description=None): add_launch_arg("input_h", "224") add_launch_arg("input_w", "224") + add_launch_arg("use_crosswalk_traffic_light_estimator", "True") add_launch_arg("use_intra_process", "False") add_launch_arg("use_multithread", "False") @@ -101,7 +102,7 @@ def create_parameter_dict(*args): remappings=[ ("~/input/image", LaunchConfiguration("input/image")), ("~/input/rois", "rois"), - ("~/output/traffic_signals", "traffic_signals"), + ("~/output/traffic_signals", "classified/traffic_signals"), ], extra_arguments=[ {"use_intra_process_comms": LaunchConfiguration("use_intra_process")} @@ -130,6 +131,46 @@ def create_parameter_dict(*args): output="both", ) + estimator_loader = LoadComposableNodes( + composable_node_descriptions=[ + ComposableNode( + package="crosswalk_traffic_light_estimator", + plugin="traffic_light::CrosswalkTrafficLightEstimatorNode", + name="crosswalk_traffic_light_estimator", + remappings=[ + ("~/input/vector_map", "/map/vector_map"), + ("~/input/route", "/planning/mission_planning/route"), + ("~/input/classified/traffic_signals", "classified/traffic_signals"), + ("~/output/traffic_signals", "traffic_signals"), + ], + extra_arguments=[{"use_intra_process_comms": False}], + ), + ], + target_container=container, + condition=IfCondition(LaunchConfiguration("use_crosswalk_traffic_light_estimator")), + ) + + relay_loader = LoadComposableNodes( + composable_node_descriptions=[ + ComposableNode( + package="topic_tools", + plugin="topic_tools::RelayNode", + name="classified_signals_relay", + namespace="", + parameters=[ + {"input_topic": "classified/traffic_signals"}, + {"output_topic": "traffic_signals"}, + {"type": "autoware_auto_perception_msgs/msg/TrafficSignalArray"}, + ], + extra_arguments=[ + {"use_intra_process_comms": LaunchConfiguration("use_intra_process")} + ], + ) + ], + target_container=container, + condition=UnlessCondition(LaunchConfiguration("use_crosswalk_traffic_light_estimator")), + ) + decompressor_loader = LoadComposableNodes( composable_node_descriptions=[ ComposableNode( @@ -205,5 +246,7 @@ def create_parameter_dict(*args): container, decompressor_loader, fine_detector_loader, + estimator_loader, + relay_loader, ] ) diff --git a/perception_launch/package.xml b/perception_launch/package.xml index 4c5673c04f..a49fa414d0 100644 --- a/perception_launch/package.xml +++ b/perception_launch/package.xml @@ -11,6 +11,7 @@ ament_cmake_auto compare_map_segmentation + crosswalk_traffic_light_estimator euclidean_cluster ground_segmentation image_projection_based_fusion From ca3e2c7cc18c1073190fe3751747c0994e9e92dd Mon Sep 17 00:00:00 2001 From: "pre-commit-ci[bot]" <66853113+pre-commit-ci[bot]@users.noreply.github.com> Date: Tue, 5 Jul 2022 10:25:53 +0900 Subject: [PATCH 20/41] ci(pre-commit): autoupdate (#383) MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit updates: - [github.com/psf/black: 22.3.0 → 22.6.0](https://github.com/psf/black/compare/22.3.0...22.6.0) Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com> --- .pre-commit-config.yaml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.pre-commit-config.yaml b/.pre-commit-config.yaml index 47e3b6eec1..9f08293e43 100644 --- a/.pre-commit-config.yaml +++ b/.pre-commit-config.yaml @@ -57,7 +57,7 @@ repos: - id: isort - repo: https://github.com/psf/black - rev: 22.3.0 + rev: 22.6.0 hooks: - id: black args: [--line-length=100] From 4065264d30364b71c97d95c9dc4d37b8a35c5b75 Mon Sep 17 00:00:00 2001 From: Takamasa Horibe Date: Tue, 5 Jul 2022 12:08:21 +0900 Subject: [PATCH 21/41] feat(control_launch): add disable-emergency option in velocity_controller (#377) Signed-off-by: Takamasa Horibe --- .../trajectory_follower/longitudinal_controller.param.yaml | 1 + 1 file changed, 1 insertion(+) diff --git a/control_launch/config/trajectory_follower/longitudinal_controller.param.yaml b/control_launch/config/trajectory_follower/longitudinal_controller.param.yaml index 704c291ee2..8ef60c0ef6 100644 --- a/control_launch/config/trajectory_follower/longitudinal_controller.param.yaml +++ b/control_launch/config/trajectory_follower/longitudinal_controller.param.yaml @@ -4,6 +4,7 @@ enable_smooth_stop: true enable_overshoot_emergency: true + enable_large_tracking_error_emergency: true enable_slope_compensation: true enable_keep_stopped_until_steer_convergence: false From d66eb3c93e254d1825a660f93a4e80aca9bf0992 Mon Sep 17 00:00:00 2001 From: kminoda <44218668+kminoda@users.noreply.github.com> Date: Tue, 5 Jul 2022 16:41:12 +0900 Subject: [PATCH 22/41] feat(ekf_localizer): allow multi sensor input (#380) Signed-off-by: kminoda --- .../pose_twist_fusion_filter.launch.xml | 4 +--- 1 file changed, 1 insertion(+), 3 deletions(-) diff --git a/localization_launch/launch/pose_twist_fusion_filter/pose_twist_fusion_filter.launch.xml b/localization_launch/launch/pose_twist_fusion_filter/pose_twist_fusion_filter.launch.xml index be07542d16..016838dd0d 100644 --- a/localization_launch/launch/pose_twist_fusion_filter/pose_twist_fusion_filter.launch.xml +++ b/localization_launch/launch/pose_twist_fusion_filter/pose_twist_fusion_filter.launch.xml @@ -3,7 +3,7 @@ - + @@ -16,8 +16,6 @@ - - From 40c3f19956392036185fa30ee050e5e09adac5c8 Mon Sep 17 00:00:00 2001 From: Tomoya Kimura Date: Wed, 6 Jul 2022 01:32:17 +0900 Subject: [PATCH 23/41] feat: add line_width property to object display (#378) Signed-off-by: tomoya.kimura --- autoware_launch/rviz/autoware.rviz | 3 +++ 1 file changed, 3 insertions(+) diff --git a/autoware_launch/rviz/autoware.rviz b/autoware_launch/rviz/autoware.rviz index 420b2dff49..abd25da9b3 100644 --- a/autoware_launch/rviz/autoware.rviz +++ b/autoware_launch/rviz/autoware.rviz @@ -727,6 +727,7 @@ Visualization Manager: Display Twist: true Display UUID: true Display Velocity: true + Line Width: 0.03 Enabled: true MOTORCYCLE: Alpha: 0.999 @@ -774,6 +775,7 @@ Visualization Manager: Display Twist: true Display UUID: true Display Velocity: true + Line Width: 0.03 Enabled: true MOTORCYCLE: Alpha: 0.999 @@ -821,6 +823,7 @@ Visualization Manager: Display Twist: false Display UUID: true Display Velocity: true + Line Width: 0.03 Enabled: true MOTORCYCLE: Alpha: 0.999 From a683916b809af40ec055c1e96353daaca282abc2 Mon Sep 17 00:00:00 2001 From: Tomoya Kimura Date: Wed, 6 Jul 2022 01:44:08 +0900 Subject: [PATCH 24/41] feat: add option to use validator node in detection module (#385) * feat: add option to use validator node in detection module Signed-off-by: tomoya.kimura * ci(pre-commit): autofix Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com> --- .../camera_lidar_fusion_based_detection.launch.xml | 7 +++++-- .../detection/lidar_based_detection.launch.xml | 8 ++++++-- 2 files changed, 11 insertions(+), 4 deletions(-) diff --git a/perception_launch/launch/object_recognition/detection/camera_lidar_fusion_based_detection.launch.xml b/perception_launch/launch/object_recognition/detection/camera_lidar_fusion_based_detection.launch.xml index 2fee81fc1b..d812352f92 100644 --- a/perception_launch/launch/object_recognition/detection/camera_lidar_fusion_based_detection.launch.xml +++ b/perception_launch/launch/object_recognition/detection/camera_lidar_fusion_based_detection.launch.xml @@ -23,6 +23,7 @@ + + + - + diff --git a/perception_launch/launch/object_recognition/detection/lidar_based_detection.launch.xml b/perception_launch/launch/object_recognition/detection/lidar_based_detection.launch.xml index 360dcc2587..5f43169c77 100644 --- a/perception_launch/launch/object_recognition/detection/lidar_based_detection.launch.xml +++ b/perception_launch/launch/object_recognition/detection/lidar_based_detection.launch.xml @@ -6,6 +6,8 @@ + + @@ -79,7 +81,7 @@ - + @@ -88,8 +90,10 @@ + + - + From 602c46f4abd353a8a42fc219aee6b182f9ec6588 Mon Sep 17 00:00:00 2001 From: Satoshi OTA <44889564+satoshi-ota@users.noreply.github.com> Date: Wed, 6 Jul 2022 16:17:37 +0900 Subject: [PATCH 25/41] feat(planning_launch): update params for new crosswalk module (#375) * feat(planning_launch): add new crosswalk params Signed-off-by: satoshi-ota * chore(planning_launch): add paramter description Signed-off-by: satoshi-ota --- .../crosswalk.param.yaml | 51 +++++++++++++++---- 1 file changed, 40 insertions(+), 11 deletions(-) diff --git a/planning_launch/config/scenario_planning/lane_driving/behavior_planning/behavior_velocity_planner/crosswalk.param.yaml b/planning_launch/config/scenario_planning/lane_driving/behavior_planning/behavior_velocity_planner/crosswalk.param.yaml index 92e8ba6801..4ea3229d46 100644 --- a/planning_launch/config/scenario_planning/lane_driving/behavior_planning/behavior_velocity_planner/crosswalk.param.yaml +++ b/planning_launch/config/scenario_planning/lane_driving/behavior_planning/behavior_velocity_planner/crosswalk.param.yaml @@ -1,14 +1,43 @@ /**: ros__parameters: crosswalk: - crosswalk: - stop_line_distance: 1.5 # make stop line away from crosswalk when no explicit stop line exists - stop_margin: 1.0 - slow_margin: 2.0 - slow_velocity: 2.76 # 2.76 m/s = 10.0 kmph - stop_predicted_object_prediction_time_margin: 3.0 - - walkway: - stop_line_distance: 1.5 # make stop line away from walkway when no explicit stop line exists - stop_margin: 1.0 - stop_duration_sec: 1.0 + show_processing_time: false # [-] whether to show processing time + + # param for stop position + stop_line_distance: 3.5 # [m] make stop line away from crosswalk when no explicit stop line exists + stop_line_margin: 10.0 # [m] if objects cross X meters behind the stop line, the stop position is determined according to the object position (stop_margin meters before the object) + stop_margin: 2.0 # [m] the vehicle decelerates to be able to stop in front of object with margin + stop_position_threshold: 1.0 # [m] threshold for check whether the vehicle stop in front of crosswalk + + # param for ego velocity + slow_velocity: 2.78 # [m/s] target vehicle velocity when module receive slow down command from FOA (2.78 m/s = 10.0 kmph) + max_slow_down_jerk: -1.5 # [m/sss] minimum jerk deceleration for safe brake + max_slow_down_accel: -2.5 # [m/ss] minimum accel deceleration for safe brake + no_relax_velocity: 2.78 # [m/s] if the current velocity is less than X m/s, ego always stops at the stop position(not relax deceleration constraints 2.78 m/s = 10 kmph) + + # param for stuck vehicle + stuck_vehicle_velocity: 1.0 # [m/s] maximum velocity threshold whether the vehicle is stuck + max_lateral_offset: 2.0 # [m] maximum lateral offset for stuck vehicle position should be looked + stuck_vehicle_attention_range: 10.0 # [m] the detection area is defined as X meters behind the crosswalk + + # param for pass judge logic + ego_pass_first_margin: 6.0 # [s] time margin for ego pass first situation (the module judges that ego don't have to stop at TTC + MARGIN < TTV condition) + ego_pass_later_margin: 10.0 # [s] time margin for object pass first situation (the module judges that ego don't have to stop at TTV + MARGIN < TTC condition) + stop_object_velocity_threshold: 0.28 # [m/s] velocity threshold for the module to judge whether the objects is stopped (0.28 m/s = 1.0 kmph) + min_object_velocity: 1.39 # [m/s] minimum object velocity (compare the estimated velocity by perception module with this parameter and adopt the larger one to calculate TTV. 1.39 m/s = 5.0 kmph) + max_yield_timeout: 3.0 # [s] if the pedestrian does not move for X seconds after stopping before the crosswalk, the module judge that ego is able to pass first. + + # param for input data + tl_state_timeout: 3.0 # [s] timeout threshold for traffic light signal + + # param for target area & object + crosswalk_attention_range: 1.0 # [m] the detection area is defined as -X meters before the crosswalk to +X meters behind the crosswalk + target_object: + unknown: true # [-] whether to look and stop by UNKNOWN objects + bicycle: true # [-] whether to look and stop by BICYCLE objects + motorcycle: true # [-] whether to look and stop by MOTORCYCLE objects (tmp: currently it is difficult for perception modules to detect bicycles and motorcycles separately.) + pedestrian: true # [-] whether to look and stop by PEDESTRIAN objects + + walkway: + stop_duration_sec: 1.0 # [s] stop time at stop position + stop_line_distance: 3.5 # [m] make stop line away from crosswalk when no explicit stop line exists From fb4503f3ec0cf4e9f42bc1a9cd539830ae843cb9 Mon Sep 17 00:00:00 2001 From: Yutaka Shimizu <43805014+purewater0901@users.noreply.github.com> Date: Wed, 6 Jul 2022 17:30:35 +0900 Subject: [PATCH 26/41] feat(autoware_launch): add perception mode (#388) * feat(autoware_launch): add perception mode Signed-off-by: yutaka * Update autoware_launch/launch/autoware.launch.xml Co-authored-by: Yukihiro Saito Co-authored-by: Yukihiro Saito --- autoware_launch/launch/autoware.launch.xml | 3 ++- autoware_launch/launch/logging_simulator.launch.xml | 3 ++- 2 files changed, 4 insertions(+), 2 deletions(-) diff --git a/autoware_launch/launch/autoware.launch.xml b/autoware_launch/launch/autoware.launch.xml index 2b7bf1861f..bb44f49523 100644 --- a/autoware_launch/launch/autoware.launch.xml +++ b/autoware_launch/launch/autoware.launch.xml @@ -7,6 +7,7 @@ + @@ -70,7 +71,7 @@ - + diff --git a/autoware_launch/launch/logging_simulator.launch.xml b/autoware_launch/launch/logging_simulator.launch.xml index 1cc48dbc85..41c05eec1e 100644 --- a/autoware_launch/launch/logging_simulator.launch.xml +++ b/autoware_launch/launch/logging_simulator.launch.xml @@ -19,6 +19,7 @@ + @@ -86,7 +87,7 @@ - + From 64fde69d7dbeecf3622916a872b1b4adbc48b0cf Mon Sep 17 00:00:00 2001 From: Takayuki Murooka Date: Wed, 6 Jul 2022 18:55:16 +0900 Subject: [PATCH 27/41] chore(planning_launch): fix some parameters (#382) * chore(planning_launch): disable debug message Signed-off-by: Takayuki Murooka * ignore outside unknown obstacle Signed-off-by: Takayuki Murooka --- .../obstacle_cruise_planner.param.yaml | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/planning_launch/config/scenario_planning/lane_driving/motion_planning/obstacle_cruise_planner/obstacle_cruise_planner.param.yaml b/planning_launch/config/scenario_planning/lane_driving/motion_planning/obstacle_cruise_planner/obstacle_cruise_planner.param.yaml index 9b50aba0e2..3b067b65dd 100644 --- a/planning_launch/config/scenario_planning/lane_driving/motion_planning/obstacle_cruise_planner/obstacle_cruise_planner.param.yaml +++ b/planning_launch/config/scenario_planning/lane_driving/motion_planning/obstacle_cruise_planner/obstacle_cruise_planner.param.yaml @@ -3,7 +3,7 @@ common: planning_algorithm: "pid_base" # currently supported algorithm is "pid_base" - is_showing_debug_info: true + is_showing_debug_info: false # longitudinal info idling_time: 1.5 # idling time to detect front vehicle starting deceleration [s] @@ -54,7 +54,7 @@ max_prediction_time_for_collision_check : 20.0 # prediction time to check collision between obstacle and ego ignored_outside_obstacle_type: - unknown: false + unknown: true car: false truck: false bus: false From d6e0b9842e8b7038b9a3b8c46865bd1971d5f845 Mon Sep 17 00:00:00 2001 From: Satoshi Tanaka <16330533+scepter914@users.noreply.github.com> Date: Thu, 7 Jul 2022 01:54:35 +0900 Subject: [PATCH 28/41] feat(perception_launcher): add radar fusion launcher (#387) * feat(perception_launcher): add radar fusion launcher Signed-off-by: scepter914 * fix typo Signed-off-by: scepter914 * Update perception_launch/launch/object_recognition/detection/camera_lidar_radar_fusion_based_detection.launch.xml Co-authored-by: Yukihiro Saito * fix lidar_object arg Signed-off-by: scepter914 * devide camera_lidar_radar_fusion and lidar_radar_fusion Signed-off-by: scepter914 * fix typo Signed-off-by: scepter914 * fix namespace for debug Signed-off-by: scepter914 * Update perception_launch/launch/object_recognition/detection/detection.launch.xml Co-authored-by: Yukihiro Saito * Update autoware_launch/launch/autoware.launch.xml Co-authored-by: Yukihiro Saito * fix typo Signed-off-by: scepter914 * fix typo Signed-off-by: scepter914 * fix typo Signed-off-by: scepter914 * Update perception_launch/launch/object_recognition/detection/camera_lidar_radar_fusion_based_detection.launch.xml Co-authored-by: Yukihiro Saito * Update perception_launch/launch/object_recognition/detection/lidar_radar_based_detection.launch.xml Co-authored-by: Yukihiro Saito * Update perception_launch/launch/object_recognition/detection/lidar_radar_based_detection.launch.xml Co-authored-by: Yukihiro Saito * revert rviz launcher in logging_simulator.launch.xml Signed-off-by: scepter914 * Update autoware_launch/launch/logging_simulator.launch.xml Co-authored-by: Yukihiro Saito * Update perception_launch/launch/perception.launch.xml Co-authored-by: Yukihiro Saito * add namespace to lidar based objects Signed-off-by: scepter914 * add radar based detection in detection.launch Signed-off-by: scepter914 Co-authored-by: Yukihiro Saito --- autoware_launch/launch/autoware.launch.xml | 3 +- .../launch/logging_simulator.launch.xml | 3 +- ...ra_lidar_fusion_based_detection.launch.xml | 3 +- ...ar_radar_fusion_based_detection.launch.xml | 68 +++++++++++++++++++ .../detection/detection.launch.xml | 55 +++++++++++++-- .../lidar_based_detection.launch.xml | 3 +- .../lidar_radar_based_detection.launch.xml | 32 +++++++++ .../radar_based_detection.launch.xml | 12 ++++ .../launch/perception.launch.xml | 4 +- 9 files changed, 171 insertions(+), 12 deletions(-) create mode 100644 perception_launch/launch/object_recognition/detection/camera_lidar_radar_fusion_based_detection.launch.xml create mode 100644 perception_launch/launch/object_recognition/detection/lidar_radar_based_detection.launch.xml create mode 100644 perception_launch/launch/object_recognition/detection/radar_based_detection.launch.xml diff --git a/autoware_launch/launch/autoware.launch.xml b/autoware_launch/launch/autoware.launch.xml index bb44f49523..39cc926f2f 100644 --- a/autoware_launch/launch/autoware.launch.xml +++ b/autoware_launch/launch/autoware.launch.xml @@ -7,7 +7,7 @@ - + @@ -70,7 +70,6 @@ - diff --git a/autoware_launch/launch/logging_simulator.launch.xml b/autoware_launch/launch/logging_simulator.launch.xml index 41c05eec1e..355b08d130 100644 --- a/autoware_launch/launch/logging_simulator.launch.xml +++ b/autoware_launch/launch/logging_simulator.launch.xml @@ -19,7 +19,7 @@ - + @@ -86,7 +86,6 @@ - diff --git a/perception_launch/launch/object_recognition/detection/camera_lidar_fusion_based_detection.launch.xml b/perception_launch/launch/object_recognition/detection/camera_lidar_fusion_based_detection.launch.xml index d812352f92..0007744203 100644 --- a/perception_launch/launch/object_recognition/detection/camera_lidar_fusion_based_detection.launch.xml +++ b/perception_launch/launch/object_recognition/detection/camera_lidar_fusion_based_detection.launch.xml @@ -2,6 +2,7 @@ + @@ -177,6 +178,6 @@ - + diff --git a/perception_launch/launch/object_recognition/detection/camera_lidar_radar_fusion_based_detection.launch.xml b/perception_launch/launch/object_recognition/detection/camera_lidar_radar_fusion_based_detection.launch.xml new file mode 100644 index 0000000000..d2a59a4a45 --- /dev/null +++ b/perception_launch/launch/object_recognition/detection/camera_lidar_radar_fusion_based_detection.launch.xml @@ -0,0 +1,68 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/perception_launch/launch/object_recognition/detection/detection.launch.xml b/perception_launch/launch/object_recognition/detection/detection.launch.xml index 0fc359043d..e30297a495 100644 --- a/perception_launch/launch/object_recognition/detection/detection.launch.xml +++ b/perception_launch/launch/object_recognition/detection/detection.launch.xml @@ -1,10 +1,14 @@ + + + - - + + + @@ -22,7 +26,34 @@ - + + + + + + + + + + + + + + + + + + + + + + + + + + + + @@ -49,6 +80,16 @@ + + + + + + + + + + @@ -57,7 +98,11 @@ - - + + + + + + diff --git a/perception_launch/launch/object_recognition/detection/lidar_based_detection.launch.xml b/perception_launch/launch/object_recognition/detection/lidar_based_detection.launch.xml index 5f43169c77..2bf826f762 100644 --- a/perception_launch/launch/object_recognition/detection/lidar_based_detection.launch.xml +++ b/perception_launch/launch/object_recognition/detection/lidar_based_detection.launch.xml @@ -2,6 +2,7 @@ + @@ -100,7 +101,7 @@ - + diff --git a/perception_launch/launch/object_recognition/detection/lidar_radar_based_detection.launch.xml b/perception_launch/launch/object_recognition/detection/lidar_radar_based_detection.launch.xml new file mode 100644 index 0000000000..a0eef1825b --- /dev/null +++ b/perception_launch/launch/object_recognition/detection/lidar_radar_based_detection.launch.xml @@ -0,0 +1,32 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/perception_launch/launch/object_recognition/detection/radar_based_detection.launch.xml b/perception_launch/launch/object_recognition/detection/radar_based_detection.launch.xml new file mode 100644 index 0000000000..6fb6184d6a --- /dev/null +++ b/perception_launch/launch/object_recognition/detection/radar_based_detection.launch.xml @@ -0,0 +1,12 @@ + + + + + + + + + + + + diff --git a/perception_launch/launch/perception.launch.xml b/perception_launch/launch/perception.launch.xml index 1b5b2d750a..9c90589fc1 100644 --- a/perception_launch/launch/perception.launch.xml +++ b/perception_launch/launch/perception.launch.xml @@ -3,7 +3,8 @@ - + + @@ -67,6 +68,7 @@ + From c28993f58549d65ac214561fc682520a618c9a1c Mon Sep 17 00:00:00 2001 From: Shunsuke Miura <37187849+miursh@users.noreply.github.com> Date: Thu, 7 Jul 2022 10:06:22 +0900 Subject: [PATCH 29/41] feat(perception_launch): Insert detected object filter (#381) * Insert object filter Signed-off-by: Shunsuke Miura * Change package name, add param yaml Signed-off-by: Shunsuke Miura * Add args for param.yaml Signed-off-by: Shunsuke Miura --- .../detection/object_lanelet_filter.param.yaml | 11 +++++++++++ .../detection/object_position_filter.param.yaml | 16 ++++++++++++++++ ...amera_lidar_fusion_based_detection.launch.xml | 11 ++++++++++- .../detection/lidar_based_detection.launch.xml | 10 ++++++++++ 4 files changed, 47 insertions(+), 1 deletion(-) create mode 100644 perception_launch/config/object_recognition/detection/object_lanelet_filter.param.yaml create mode 100644 perception_launch/config/object_recognition/detection/object_position_filter.param.yaml diff --git a/perception_launch/config/object_recognition/detection/object_lanelet_filter.param.yaml b/perception_launch/config/object_recognition/detection/object_lanelet_filter.param.yaml new file mode 100644 index 0000000000..dfdee95642 --- /dev/null +++ b/perception_launch/config/object_recognition/detection/object_lanelet_filter.param.yaml @@ -0,0 +1,11 @@ +/**: + ros__parameters: + filter_target_label: + UNKNOWN : true + CAR : false + TRUCK : false + BUS : false + TRAILER : false + MOTORCYCLE : false + BICYCLE : false + PEDESTRIAN : false diff --git a/perception_launch/config/object_recognition/detection/object_position_filter.param.yaml b/perception_launch/config/object_recognition/detection/object_position_filter.param.yaml new file mode 100644 index 0000000000..70afd9d31b --- /dev/null +++ b/perception_launch/config/object_recognition/detection/object_position_filter.param.yaml @@ -0,0 +1,16 @@ +/**: + ros__parameters: + filter_target_label: + UNKNOWN : true + CAR : false + TRUCK : false + BUS : false + TRAILER : false + MOTORCYCLE : false + BICYCLE : false + PEDESTRIAN : false + + upper_bound_x: 100.0 + lower_bound_x: 0.0 + upper_bound_y: 10.0 + lower_bound_y: -10.0 diff --git a/perception_launch/launch/object_recognition/detection/camera_lidar_fusion_based_detection.launch.xml b/perception_launch/launch/object_recognition/detection/camera_lidar_fusion_based_detection.launch.xml index 0007744203..052449d050 100644 --- a/perception_launch/launch/object_recognition/detection/camera_lidar_fusion_based_detection.launch.xml +++ b/perception_launch/launch/object_recognition/detection/camera_lidar_fusion_based_detection.launch.xml @@ -178,6 +178,15 @@ - + + + + + + + + + + diff --git a/perception_launch/launch/object_recognition/detection/lidar_based_detection.launch.xml b/perception_launch/launch/object_recognition/detection/lidar_based_detection.launch.xml index 2bf826f762..aee2084c79 100644 --- a/perception_launch/launch/object_recognition/detection/lidar_based_detection.launch.xml +++ b/perception_launch/launch/object_recognition/detection/lidar_based_detection.launch.xml @@ -101,7 +101,17 @@ + + + + + + + + + + From 47aa6f6d03a9675b2fd7a61375477a27aa599bb6 Mon Sep 17 00:00:00 2001 From: Tomohito ANDO Date: Thu, 7 Jul 2022 10:13:36 +0900 Subject: [PATCH 30/41] chore(behavior_velocity): update config for run_out (#390) Signed-off-by: Tomohito Ando --- .../behavior_velocity_planner/run_out.param.yaml | 10 +++------- 1 file changed, 3 insertions(+), 7 deletions(-) diff --git a/planning_launch/config/scenario_planning/lane_driving/behavior_planning/behavior_velocity_planner/run_out.param.yaml b/planning_launch/config/scenario_planning/lane_driving/behavior_planning/behavior_velocity_planner/run_out.param.yaml index 8818ed0199..527c00ccf3 100644 --- a/planning_launch/config/scenario_planning/lane_driving/behavior_planning/behavior_velocity_planner/run_out.param.yaml +++ b/planning_launch/config/scenario_planning/lane_driving/behavior_planning/behavior_velocity_planner/run_out.param.yaml @@ -12,13 +12,9 @@ detection_span: 1.0 # [m] calculate collision with this span to reduce calculation time min_vel_ego_kmph: 3.6 # [km/h] min velocity to calculate time to collision - # rectangle detection area for Points method - # this will be replaced with more appropriate detection area - detection_area_size: - dist_ahead: 50.0 # [m] ahead distance from ego position - dist_behind: 5.0 # [m] behind distance from ego position - dist_right: 7.0 # [m] right distance from ego position - dist_left: 7.0 # [m] left distance from ego position + detection_area: + margin_behind: 0.5 # [m] ahead margin for detection area length + margin_ahead: 1.0 # [m] behind margin for detection area length # parameter to create abstracted dynamic obstacles dynamic_obstacle: From 324848f642c5dee4f531a91b157d442686c3f93e Mon Sep 17 00:00:00 2001 From: Takamasa Horibe Date: Thu, 7 Jul 2022 12:59:45 +0900 Subject: [PATCH 31/41] feat(control_launch): add param for cmd gate transition filter (#386) Signed-off-by: Takamasa Horibe --- .../vehicle_cmd_gate.param.yaml | 17 ++++++++++++----- 1 file changed, 12 insertions(+), 5 deletions(-) diff --git a/control_launch/config/vehicle_cmd_gate/vehicle_cmd_gate.param.yaml b/control_launch/config/vehicle_cmd_gate/vehicle_cmd_gate.param.yaml index 0ad4631c6d..4876699351 100644 --- a/control_launch/config/vehicle_cmd_gate/vehicle_cmd_gate.param.yaml +++ b/control_launch/config/vehicle_cmd_gate/vehicle_cmd_gate.param.yaml @@ -6,8 +6,15 @@ stop_hold_acceleration: -1.5 emergency_acceleration: -2.4 stopped_state_entry_duration_time: 0.1 - vel_lim: 25.0 - lon_acc_lim: 5.0 - lon_jerk_lim: 5.0 - lat_acc_lim: 5.0 - lat_jerk_lim: 5.0 + nominal: + vel_lim: 25.0 + lon_acc_lim: 5.0 + lon_jerk_lim: 5.0 + lat_acc_lim: 5.0 + lat_jerk_lim: 5.0 + on_transition: + vel_lim: 50.0 + lon_acc_lim: 1.0 + lon_jerk_lim: 0.5 + lat_acc_lim: 1.2 + lat_jerk_lim: 0.75 From 9299af468f714ecd22edb0f64315753314bc92f9 Mon Sep 17 00:00:00 2001 From: Zulfaqar Azmi <93502286+zulfaqar-azmi-t4@users.noreply.github.com> Date: Thu, 7 Jul 2022 14:17:07 +0900 Subject: [PATCH 32/41] fix(planning_launch): replace lost count to lost time for avoidance (#384) Signed-off-by: Muhammad Zulfaqar Azmi --- .../behavior_path_planner/avoidance/avoidance.param.yaml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/planning_launch/config/scenario_planning/lane_driving/behavior_planning/behavior_path_planner/avoidance/avoidance.param.yaml b/planning_launch/config/scenario_planning/lane_driving/behavior_planning/behavior_path_planner/avoidance/avoidance.param.yaml index d691228589..2e04b3e159 100644 --- a/planning_launch/config/scenario_planning/lane_driving/behavior_planning/behavior_path_planner/avoidance/avoidance.param.yaml +++ b/planning_launch/config/scenario_planning/lane_driving/behavior_planning/behavior_path_planner/avoidance/avoidance.param.yaml @@ -32,7 +32,7 @@ nominal_lateral_jerk: 0.2 # [m/s3] max_lateral_jerk: 1.0 # [m/s3] - object_hold_max_count: 20 + object_last_seen_threshold: 2.0 # For prevention of large acceleration while avoidance min_avoidance_speed_for_acc_prevention: 3.0 # [m/s] From b1777f091595536e0624558269d51f26849a8ea3 Mon Sep 17 00:00:00 2001 From: Yutaka Shimizu <43805014+purewater0901@users.noreply.github.com> Date: Thu, 7 Jul 2022 17:10:17 +0900 Subject: [PATCH 33/41] feat(obstacle_cruise_planner): add stop obstacle hold time (#389) Signed-off-by: yutaka --- .../obstacle_cruise_planner/obstacle_cruise_planner.param.yaml | 2 ++ 1 file changed, 2 insertions(+) diff --git a/planning_launch/config/scenario_planning/lane_driving/motion_planning/obstacle_cruise_planner/obstacle_cruise_planner.param.yaml b/planning_launch/config/scenario_planning/lane_driving/motion_planning/obstacle_cruise_planner/obstacle_cruise_planner.param.yaml index 3b067b65dd..c23ce72f3b 100644 --- a/planning_launch/config/scenario_planning/lane_driving/motion_planning/obstacle_cruise_planner/obstacle_cruise_planner.param.yaml +++ b/planning_launch/config/scenario_planning/lane_driving/motion_planning/obstacle_cruise_planner/obstacle_cruise_planner.param.yaml @@ -53,6 +53,8 @@ ego_obstacle_overlap_time_threshold : 1.0 # time threshold to decide cut-in obstacle for cruise or stop [s] max_prediction_time_for_collision_check : 20.0 # prediction time to check collision between obstacle and ego + stop_obstacle_hold_time_threshold : 1.0 # maximum time for holding closest stop obstacle + ignored_outside_obstacle_type: unknown: true car: false From 11b30f1973299ea682ce5f2baf7fe9ccfced6d2e Mon Sep 17 00:00:00 2001 From: Yukihiro Saito Date: Thu, 7 Jul 2022 17:13:24 +0900 Subject: [PATCH 34/41] feat: change iou param of multi object tracking (#391) Signed-off-by: Yukihiro Saito --- .../multi_object_tracker/data_association_matrix.param.yaml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/perception_launch/config/object_recognition/tracking/multi_object_tracker/data_association_matrix.param.yaml b/perception_launch/config/object_recognition/tracking/multi_object_tracker/data_association_matrix.param.yaml index 1f52e525c4..6fb495c258 100644 --- a/perception_launch/config/object_recognition/tracking/multi_object_tracker/data_association_matrix.param.yaml +++ b/perception_launch/config/object_recognition/tracking/multi_object_tracker/data_association_matrix.param.yaml @@ -55,7 +55,7 @@ min_iou_matrix: # If value is negative, it will be ignored. #UNKNOWN, CAR, TRUCK, BUS, TRAILER, MOTORBIKE, BICYCLE, PEDESTRIAN [0.0001, 0.1, 0.1, 0.1, 0.1, 0.1, 0.1, 0.1, #UNKNOWN - 0.1, 0.3, 0.2, 0.2, 0.2, 0.1, 0.1, 0.1, #CAR + 0.1, 0.1, 0.2, 0.2, 0.2, 0.1, 0.1, 0.1, #CAR 0.1, 0.2, 0.3, 0.3, 0.3, 0.1, 0.1, 0.1, #TRUCK 0.1, 0.2, 0.3, 0.3, 0.3, 0.1, 0.1, 0.1, #BUS 0.1, 0.2, 0.3, 0.3, 0.3, 0.1, 0.1, 0.1, #TRAILER From 1a27bb45ccdb3a65fcf92efc4ca25af4bd204a84 Mon Sep 17 00:00:00 2001 From: Zulfaqar Azmi <93502286+zulfaqar-azmi-t4@users.noreply.github.com> Date: Thu, 7 Jul 2022 21:11:30 +0900 Subject: [PATCH 35/41] fix(behavior_path_planner): revert road shoulder margin to zero (#357) Signed-off-by: Muhammad Zulfaqar Azmi --- .../behavior_path_planner/avoidance/avoidance.param.yaml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/planning_launch/config/scenario_planning/lane_driving/behavior_planning/behavior_path_planner/avoidance/avoidance.param.yaml b/planning_launch/config/scenario_planning/lane_driving/behavior_planning/behavior_path_planner/avoidance/avoidance.param.yaml index 2e04b3e159..1b820b2c2b 100644 --- a/planning_launch/config/scenario_planning/lane_driving/behavior_planning/behavior_path_planner/avoidance/avoidance.param.yaml +++ b/planning_launch/config/scenario_planning/lane_driving/behavior_planning/behavior_path_planner/avoidance/avoidance.param.yaml @@ -24,7 +24,7 @@ min_nominal_avoidance_speed: 7.0 # [m/s] min_sharp_avoidance_speed: 1.0 # [m/s] - road_shoulder_safety_margin: 0.5 # [m] + road_shoulder_safety_margin: 0.0 # [m] max_right_shift_length: 5.0 max_left_shift_length: 5.0 From d3ab37403b5f7f008550d91d102970ff472c9fe0 Mon Sep 17 00:00:00 2001 From: Takamasa Horibe Date: Fri, 8 Jul 2022 00:03:07 +0900 Subject: [PATCH 36/41] feat: add operation mode transition manager (#392) * feat: add-operation-mode-transition-manager Signed-off-by: Takamasa Horibe * fix precommit Signed-off-by: Takamasa Horibe * add param Signed-off-by: Takamasa Horibe --- ...eration_mode_transition_manager.param.yaml | 18 ++++++++ control_launch/launch/control.launch.py | 41 +++++++++++++++++++ control_launch/launch/control.launch.xml | 2 + 3 files changed, 61 insertions(+) create mode 100644 control_launch/config/operation_mode_transition_manager/operation_mode_transition_manager.param.yaml diff --git a/control_launch/config/operation_mode_transition_manager/operation_mode_transition_manager.param.yaml b/control_launch/config/operation_mode_transition_manager/operation_mode_transition_manager.param.yaml new file mode 100644 index 0000000000..d42e2392be --- /dev/null +++ b/control_launch/config/operation_mode_transition_manager/operation_mode_transition_manager.param.yaml @@ -0,0 +1,18 @@ +/**: + ros__parameters: + frequency_hz: 10.0 + engage_acceptable_limits: + allow_autonomous_in_stopped: true # no check if the velocity is zero, always allowed. + dist_threshold: 1.5 + yaw_threshold: 0.524 + speed_upper_threshold: 10.0 + speed_lower_threshold: -10.0 + acc_threshold: 1.5 + lateral_acc_threshold: 1.0 + lateral_acc_diff_threshold: 0.5 + stable_check: + duration: 0.1 + dist_threshold: 1.5 + speed_upper_threshold: 2.0 + speed_lower_threshold: -2.0 + yaw_threshold: 0.262 diff --git a/control_launch/launch/control.launch.py b/control_launch/launch/control.launch.py index 811ac38599..f948a547ed 100644 --- a/control_launch/launch/control.launch.py +++ b/control_launch/launch/control.launch.py @@ -47,6 +47,12 @@ def launch_setup(context, *args, **kwargs): with open(lane_departure_checker_param_path, "r") as f: lane_departure_checker_param = yaml.safe_load(f)["/**"]["ros__parameters"] + operation_mode_transition_manager_param_path = LaunchConfiguration( + "operation_mode_transition_manager_param_path" + ).perform(context) + with open(operation_mode_transition_manager_param_path, "r") as f: + operation_mode_transition_manager_param = yaml.safe_load(f)["/**"]["ros__parameters"] + controller_component = ComposableNode( package="trajectory_follower_nodes", plugin="autoware::motion::control::trajectory_follower_nodes::Controller", @@ -113,6 +119,7 @@ def launch_setup(context, *args, **kwargs): remappings=[ ("input/emergency_state", "/system/emergency/emergency_state"), ("input/steering", "/vehicle/status/steering_status"), + ("input/operation_mode", "/control/operation_mode"), ("input/auto/control_cmd", "/control/trajectory_follower/control_cmd"), ("input/auto/turn_indicators_cmd", "/planning/turn_indicators_cmd"), ("input/auto/hazard_lights_cmd", "/planning/hazard_lights_cmd"), @@ -134,6 +141,7 @@ def launch_setup(context, *args, **kwargs): ("output/gate_mode", "/control/current_gate_mode"), ("output/engage", "/api/autoware/get/engage"), ("output/external_emergency", "/api/autoware/get/emergency"), + ("output/operation_mode", "/control/vehicle_cmd_gate/operation_mode"), ("~/service/engage", "/api/autoware/set/engage"), ("~/service/external_emergency", "/api/autoware/set/emergency"), # TODO(Takagi, Isamu): deprecated @@ -152,6 +160,30 @@ def launch_setup(context, *args, **kwargs): extra_arguments=[{"use_intra_process_comms": LaunchConfiguration("use_intra_process")}], ) + # operation mode transition manager + operation_mode_transition_manager_component = ComposableNode( + package="operation_mode_transition_manager", + plugin="operation_mode_transition_manager::OperationModeTransitionManager", + name="operation_mode_transition_manager", + remappings=[ + # input + ("kinematics", "/localization/kinematic_state"), + ("steering", "/vehicle/status/steering_status"), + ("trajectory", "/planning/scenario_planning/trajectory"), + ("control_cmd", "/control/command/control_cmd"), + ("control_mode_report", "/vehicle/status/control_mode"), + ("gate_operation_mode", "/control/vehicle_cmd_gate/operation_mode"), + ("operation_mode_request", "/system/operation_mode_request"), + # output + ("is_autonomous_available", "/control/is_autonomous_available"), + ("operation_mode", "/control/operation_mode"), + ("control_mode_request", "/control/control_mode_request"), + ], + parameters=[ + operation_mode_transition_manager_param, + ], + ) + # external cmd selector external_cmd_selector_loader = IncludeLaunchDescription( PythonLaunchDescriptionSource( @@ -185,6 +217,7 @@ def launch_setup(context, *args, **kwargs): lane_departure_component, shift_decider_component, vehicle_cmd_gate_component, + operation_mode_transition_manager_component, ], ) @@ -244,6 +277,14 @@ def add_launch_arg(name: str, default_value=None, description=None): "lane_departure_checker_param_path", [FindPackageShare("lane_departure_checker"), "/config/lane_departure_checker.param.yaml"], ) + add_launch_arg( + "operation_mode_transition_manager_param_path", + [ + FindPackageShare("control_launch"), + "/config/operation_mode_transition_manager/operation_mode_transition_manager.param.yaml", + ], + "path to the parameter file of vehicle_cmd_gate", + ) # vehicle cmd gate add_launch_arg("use_emergency_handling", "false", "use emergency handling") diff --git a/control_launch/launch/control.launch.xml b/control_launch/launch/control.launch.xml index 282d9e52f5..90974363ea 100644 --- a/control_launch/launch/control.launch.xml +++ b/control_launch/launch/control.launch.xml @@ -5,6 +5,7 @@ + @@ -12,6 +13,7 @@ + From a925b4e4c6d02dc930ffdc20fba4d57e31ab2b64 Mon Sep 17 00:00:00 2001 From: Kosuke Takeuchi Date: Fri, 8 Jul 2022 00:42:42 +0900 Subject: [PATCH 37/41] feat(trajectory_follower): add min_prediction_length to mpc (#393) Signed-off-by: kosuke55 --- .../config/trajectory_follower/mpc_follower.param.yaml | 1 + 1 file changed, 1 insertion(+) diff --git a/control_launch/config/trajectory_follower/mpc_follower.param.yaml b/control_launch/config/trajectory_follower/mpc_follower.param.yaml index e7e3598504..8941a4c46d 100644 --- a/control_launch/config/trajectory_follower/mpc_follower.param.yaml +++ b/control_launch/config/trajectory_follower/mpc_follower.param.yaml @@ -38,6 +38,7 @@ mpc_zero_ff_steer_deg: 0.5 # threshold that feed-forward angle becomes zero mpc_acceleration_limit: 2.0 # limit on the vehicle's acceleration mpc_velocity_time_constant: 0.3 # time constant used for velocity smoothing + mpc_min_prediction_length: 5.0 # minimum prediction length # -- vehicle model -- vehicle_model_type: "kinematics" # vehicle model type for mpc prediction. option is kinematics, kinematics_no_delay, and dynamics From 2670c6103e7b811447005eb3592185db42832a9a Mon Sep 17 00:00:00 2001 From: Yutaka Shimizu <43805014+purewater0901@users.noreply.github.com> Date: Fri, 8 Jul 2022 11:57:54 +0900 Subject: [PATCH 38/41] feat(autoware_launch): add perception mode to sensing launch (#396) --- autoware_launch/launch/autoware.launch.xml | 1 + autoware_launch/launch/logging_simulator.launch.xml | 1 + 2 files changed, 2 insertions(+) diff --git a/autoware_launch/launch/autoware.launch.xml b/autoware_launch/launch/autoware.launch.xml index 39cc926f2f..d4975c6464 100644 --- a/autoware_launch/launch/autoware.launch.xml +++ b/autoware_launch/launch/autoware.launch.xml @@ -59,6 +59,7 @@ + diff --git a/autoware_launch/launch/logging_simulator.launch.xml b/autoware_launch/launch/logging_simulator.launch.xml index 355b08d130..c143f2c51b 100644 --- a/autoware_launch/launch/logging_simulator.launch.xml +++ b/autoware_launch/launch/logging_simulator.launch.xml @@ -75,6 +75,7 @@ + From 0cccc812eaa6f7ef46638dba6ad52a7e73edac98 Mon Sep 17 00:00:00 2001 From: kminoda <44218668+kminoda@users.noreply.github.com> Date: Fri, 8 Jul 2022 18:07:30 +0900 Subject: [PATCH 39/41] feat(localization_error_monitor): add a config file (#395) * feat(localization_error_monitor): add a config file Signed-off-by: kminoda * ci(pre-commit): autofix * debugged Signed-off-by: kminoda Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com> --- .../config/localization_error_monitor.param.yaml | 7 +++++++ .../localization_error_monitor.launch.xml | 6 +----- 2 files changed, 8 insertions(+), 5 deletions(-) create mode 100644 localization_launch/config/localization_error_monitor.param.yaml diff --git a/localization_launch/config/localization_error_monitor.param.yaml b/localization_launch/config/localization_error_monitor.param.yaml new file mode 100644 index 0000000000..026daf0532 --- /dev/null +++ b/localization_launch/config/localization_error_monitor.param.yaml @@ -0,0 +1,7 @@ +/**: + ros__parameters: + scale: 3.0 + error_ellipse_size: 1.0 + warn_ellipse_size: 0.8 + error_ellipse_size_lateral_direction: 0.3 + warn_ellipse_size_lateral_direction: 0.2 diff --git a/localization_launch/launch/localization_error_monitor/localization_error_monitor.launch.xml b/localization_launch/launch/localization_error_monitor/localization_error_monitor.launch.xml index d2ea9ced7b..ee6047281d 100644 --- a/localization_launch/launch/localization_error_monitor/localization_error_monitor.launch.xml +++ b/localization_launch/launch/localization_error_monitor/localization_error_monitor.launch.xml @@ -2,10 +2,6 @@ - - - - - + From f3be0f421701dd5287dd9644012d59caadad92be Mon Sep 17 00:00:00 2001 From: Shumpei Wakabayashi Date: Mon, 11 Jul 2022 11:26:02 +0900 Subject: [PATCH 40/41] chore: fix longitudinal_controller.param.yaml Signed-off-by: Shumpei Wakabayashi --- .../trajectory_follower/1/longitudinal_controller.param.yaml | 2 +- .../trajectory_follower/10/longitudinal_controller.param.yaml | 2 +- .../trajectory_follower/2/longitudinal_controller.param.yaml | 2 +- .../trajectory_follower/3/longitudinal_controller.param.yaml | 2 +- .../trajectory_follower/4/longitudinal_controller.param.yaml | 2 +- .../trajectory_follower/5/longitudinal_controller.param.yaml | 2 +- .../trajectory_follower/6/longitudinal_controller.param.yaml | 2 +- .../trajectory_follower/7/longitudinal_controller.param.yaml | 2 +- .../default/longitudinal_controller.param.yaml | 2 +- 9 files changed, 9 insertions(+), 9 deletions(-) diff --git a/control_launch/config/trajectory_follower/1/longitudinal_controller.param.yaml b/control_launch/config/trajectory_follower/1/longitudinal_controller.param.yaml index d5e67c2cca..571d66174f 100644 --- a/control_launch/config/trajectory_follower/1/longitudinal_controller.param.yaml +++ b/control_launch/config/trajectory_follower/1/longitudinal_controller.param.yaml @@ -1,12 +1,12 @@ /**: ros__parameters: - longitudinal_ctrl_period: 0.03 delay_compensation_time: 0.40 enable_smooth_stop: true enable_overshoot_emergency: false enable_large_tracking_error_emergency: false enable_slope_compensation: true + enable_keep_stopped_until_steer_convergence: false # state transition drive_state_stop_dist: 0.5 diff --git a/control_launch/config/trajectory_follower/10/longitudinal_controller.param.yaml b/control_launch/config/trajectory_follower/10/longitudinal_controller.param.yaml index 4c63f2a86d..1c71fa9b09 100644 --- a/control_launch/config/trajectory_follower/10/longitudinal_controller.param.yaml +++ b/control_launch/config/trajectory_follower/10/longitudinal_controller.param.yaml @@ -1,12 +1,12 @@ /**: ros__parameters: - longitudinal_ctrl_period: 0.03 delay_compensation_time: 0.40 enable_smooth_stop: true enable_overshoot_emergency: false enable_large_tracking_error_emergency: false enable_slope_compensation: true + enable_keep_stopped_until_steer_convergence: false # state transition drive_state_stop_dist: 0.5 diff --git a/control_launch/config/trajectory_follower/2/longitudinal_controller.param.yaml b/control_launch/config/trajectory_follower/2/longitudinal_controller.param.yaml index 4c63f2a86d..1c71fa9b09 100644 --- a/control_launch/config/trajectory_follower/2/longitudinal_controller.param.yaml +++ b/control_launch/config/trajectory_follower/2/longitudinal_controller.param.yaml @@ -1,12 +1,12 @@ /**: ros__parameters: - longitudinal_ctrl_period: 0.03 delay_compensation_time: 0.40 enable_smooth_stop: true enable_overshoot_emergency: false enable_large_tracking_error_emergency: false enable_slope_compensation: true + enable_keep_stopped_until_steer_convergence: false # state transition drive_state_stop_dist: 0.5 diff --git a/control_launch/config/trajectory_follower/3/longitudinal_controller.param.yaml b/control_launch/config/trajectory_follower/3/longitudinal_controller.param.yaml index 3731ccf9a2..9cefc359d6 100644 --- a/control_launch/config/trajectory_follower/3/longitudinal_controller.param.yaml +++ b/control_launch/config/trajectory_follower/3/longitudinal_controller.param.yaml @@ -1,12 +1,12 @@ /**: ros__parameters: - longitudinal_ctrl_period: 0.03 delay_compensation_time: 0.40 enable_smooth_stop: true enable_overshoot_emergency: false enable_large_tracking_error_emergency: false enable_slope_compensation: true + enable_keep_stopped_until_steer_convergence: false # state transition drive_state_stop_dist: 0.5 diff --git a/control_launch/config/trajectory_follower/4/longitudinal_controller.param.yaml b/control_launch/config/trajectory_follower/4/longitudinal_controller.param.yaml index b70ab79b50..7848f47c4f 100644 --- a/control_launch/config/trajectory_follower/4/longitudinal_controller.param.yaml +++ b/control_launch/config/trajectory_follower/4/longitudinal_controller.param.yaml @@ -1,12 +1,12 @@ /**: ros__parameters: - longitudinal_ctrl_period: 0.03 delay_compensation_time: 0.40 enable_smooth_stop: true enable_overshoot_emergency: false enable_large_tracking_error_emergency: false enable_slope_compensation: true + enable_keep_stopped_until_steer_convergence: false # state transition drive_state_stop_dist: 0.5 diff --git a/control_launch/config/trajectory_follower/5/longitudinal_controller.param.yaml b/control_launch/config/trajectory_follower/5/longitudinal_controller.param.yaml index 4c63f2a86d..1c71fa9b09 100644 --- a/control_launch/config/trajectory_follower/5/longitudinal_controller.param.yaml +++ b/control_launch/config/trajectory_follower/5/longitudinal_controller.param.yaml @@ -1,12 +1,12 @@ /**: ros__parameters: - longitudinal_ctrl_period: 0.03 delay_compensation_time: 0.40 enable_smooth_stop: true enable_overshoot_emergency: false enable_large_tracking_error_emergency: false enable_slope_compensation: true + enable_keep_stopped_until_steer_convergence: false # state transition drive_state_stop_dist: 0.5 diff --git a/control_launch/config/trajectory_follower/6/longitudinal_controller.param.yaml b/control_launch/config/trajectory_follower/6/longitudinal_controller.param.yaml index d5e67c2cca..571d66174f 100644 --- a/control_launch/config/trajectory_follower/6/longitudinal_controller.param.yaml +++ b/control_launch/config/trajectory_follower/6/longitudinal_controller.param.yaml @@ -1,12 +1,12 @@ /**: ros__parameters: - longitudinal_ctrl_period: 0.03 delay_compensation_time: 0.40 enable_smooth_stop: true enable_overshoot_emergency: false enable_large_tracking_error_emergency: false enable_slope_compensation: true + enable_keep_stopped_until_steer_convergence: false # state transition drive_state_stop_dist: 0.5 diff --git a/control_launch/config/trajectory_follower/7/longitudinal_controller.param.yaml b/control_launch/config/trajectory_follower/7/longitudinal_controller.param.yaml index 4c63f2a86d..1c71fa9b09 100644 --- a/control_launch/config/trajectory_follower/7/longitudinal_controller.param.yaml +++ b/control_launch/config/trajectory_follower/7/longitudinal_controller.param.yaml @@ -1,12 +1,12 @@ /**: ros__parameters: - longitudinal_ctrl_period: 0.03 delay_compensation_time: 0.40 enable_smooth_stop: true enable_overshoot_emergency: false enable_large_tracking_error_emergency: false enable_slope_compensation: true + enable_keep_stopped_until_steer_convergence: false # state transition drive_state_stop_dist: 0.5 diff --git a/control_launch/config/trajectory_follower/default/longitudinal_controller.param.yaml b/control_launch/config/trajectory_follower/default/longitudinal_controller.param.yaml index 4c63f2a86d..1c71fa9b09 100644 --- a/control_launch/config/trajectory_follower/default/longitudinal_controller.param.yaml +++ b/control_launch/config/trajectory_follower/default/longitudinal_controller.param.yaml @@ -1,12 +1,12 @@ /**: ros__parameters: - longitudinal_ctrl_period: 0.03 delay_compensation_time: 0.40 enable_smooth_stop: true enable_overshoot_emergency: false enable_large_tracking_error_emergency: false enable_slope_compensation: true + enable_keep_stopped_until_steer_convergence: false # state transition drive_state_stop_dist: 0.5 From 7672f47da422e47a621afc2c2ca6f3ef61a27b83 Mon Sep 17 00:00:00 2001 From: Shumpei Wakabayashi Date: Mon, 11 Jul 2022 11:43:19 +0900 Subject: [PATCH 41/41] chore: fix lateral_controller.param.yaml Signed-off-by: Shumpei Wakabayashi --- .../trajectory_follower/1/lateral_controller.param.yaml | 9 ++++++--- .../trajectory_follower/10/lateral_controller.param.yaml | 9 ++++++--- .../trajectory_follower/2/lateral_controller.param.yaml | 9 ++++++--- .../trajectory_follower/3/lateral_controller.param.yaml | 9 ++++++--- .../trajectory_follower/4/lateral_controller.param.yaml | 9 ++++++--- .../trajectory_follower/5/lateral_controller.param.yaml | 9 ++++++--- .../trajectory_follower/6/lateral_controller.param.yaml | 9 ++++++--- .../trajectory_follower/7/lateral_controller.param.yaml | 9 ++++++--- .../trajectory_follower/9/lateral_controller.param.yaml | 9 ++++++--- 9 files changed, 54 insertions(+), 27 deletions(-) diff --git a/control_launch/config/trajectory_follower/1/lateral_controller.param.yaml b/control_launch/config/trajectory_follower/1/lateral_controller.param.yaml index f112edb09b..a92f958bd8 100644 --- a/control_launch/config/trajectory_follower/1/lateral_controller.param.yaml +++ b/control_launch/config/trajectory_follower/1/lateral_controller.param.yaml @@ -1,8 +1,6 @@ /**: ros__parameters: - # -- system -- - ctrl_period: 0.03 # control period [s] traj_resample_dist: 0.1 # path resampling interval [m] use_steer_prediction: false # flag for using steer prediction (do not use steer measurement) admissible_position_error: 5.0 # stop mpc calculation when error is larger than the following value @@ -40,6 +38,7 @@ mpc_zero_ff_steer_deg: 0.5 # threshold that feed-forward angle becomes zero mpc_acceleration_limit: 2.0 # limit on the vehicle's acceleration mpc_velocity_time_constant: 0.3 # time constant used for velocity smoothing + mpc_min_prediction_length: 5.0 # minimum prediction length # -- vehicle model -- vehicle_model_type: "kinematics" # vehicle model type for mpc prediction. option is kinematics, kinematics_no_delay, and dynamics @@ -54,9 +53,13 @@ steering_lpf_cutoff_hz: 10.0 # cutoff frequency of lowpass filter for steering command [Hz] error_deriv_lpf_cutoff_hz: 5.0 - # stop state + # stop state: steering command is kept in the previous value in the stop state. stop_state_entry_ego_speed: 0.2 stop_state_entry_target_speed: 0.2 + converged_steer_rad: 0.1 + keep_steer_control_until_converged: false + new_traj_duration_time: 1.0 + new_traj_end_dist: 0.3 # vehicle parameters vehicle: diff --git a/control_launch/config/trajectory_follower/10/lateral_controller.param.yaml b/control_launch/config/trajectory_follower/10/lateral_controller.param.yaml index f112edb09b..a92f958bd8 100644 --- a/control_launch/config/trajectory_follower/10/lateral_controller.param.yaml +++ b/control_launch/config/trajectory_follower/10/lateral_controller.param.yaml @@ -1,8 +1,6 @@ /**: ros__parameters: - # -- system -- - ctrl_period: 0.03 # control period [s] traj_resample_dist: 0.1 # path resampling interval [m] use_steer_prediction: false # flag for using steer prediction (do not use steer measurement) admissible_position_error: 5.0 # stop mpc calculation when error is larger than the following value @@ -40,6 +38,7 @@ mpc_zero_ff_steer_deg: 0.5 # threshold that feed-forward angle becomes zero mpc_acceleration_limit: 2.0 # limit on the vehicle's acceleration mpc_velocity_time_constant: 0.3 # time constant used for velocity smoothing + mpc_min_prediction_length: 5.0 # minimum prediction length # -- vehicle model -- vehicle_model_type: "kinematics" # vehicle model type for mpc prediction. option is kinematics, kinematics_no_delay, and dynamics @@ -54,9 +53,13 @@ steering_lpf_cutoff_hz: 10.0 # cutoff frequency of lowpass filter for steering command [Hz] error_deriv_lpf_cutoff_hz: 5.0 - # stop state + # stop state: steering command is kept in the previous value in the stop state. stop_state_entry_ego_speed: 0.2 stop_state_entry_target_speed: 0.2 + converged_steer_rad: 0.1 + keep_steer_control_until_converged: false + new_traj_duration_time: 1.0 + new_traj_end_dist: 0.3 # vehicle parameters vehicle: diff --git a/control_launch/config/trajectory_follower/2/lateral_controller.param.yaml b/control_launch/config/trajectory_follower/2/lateral_controller.param.yaml index f112edb09b..a92f958bd8 100644 --- a/control_launch/config/trajectory_follower/2/lateral_controller.param.yaml +++ b/control_launch/config/trajectory_follower/2/lateral_controller.param.yaml @@ -1,8 +1,6 @@ /**: ros__parameters: - # -- system -- - ctrl_period: 0.03 # control period [s] traj_resample_dist: 0.1 # path resampling interval [m] use_steer_prediction: false # flag for using steer prediction (do not use steer measurement) admissible_position_error: 5.0 # stop mpc calculation when error is larger than the following value @@ -40,6 +38,7 @@ mpc_zero_ff_steer_deg: 0.5 # threshold that feed-forward angle becomes zero mpc_acceleration_limit: 2.0 # limit on the vehicle's acceleration mpc_velocity_time_constant: 0.3 # time constant used for velocity smoothing + mpc_min_prediction_length: 5.0 # minimum prediction length # -- vehicle model -- vehicle_model_type: "kinematics" # vehicle model type for mpc prediction. option is kinematics, kinematics_no_delay, and dynamics @@ -54,9 +53,13 @@ steering_lpf_cutoff_hz: 10.0 # cutoff frequency of lowpass filter for steering command [Hz] error_deriv_lpf_cutoff_hz: 5.0 - # stop state + # stop state: steering command is kept in the previous value in the stop state. stop_state_entry_ego_speed: 0.2 stop_state_entry_target_speed: 0.2 + converged_steer_rad: 0.1 + keep_steer_control_until_converged: false + new_traj_duration_time: 1.0 + new_traj_end_dist: 0.3 # vehicle parameters vehicle: diff --git a/control_launch/config/trajectory_follower/3/lateral_controller.param.yaml b/control_launch/config/trajectory_follower/3/lateral_controller.param.yaml index f112edb09b..a92f958bd8 100644 --- a/control_launch/config/trajectory_follower/3/lateral_controller.param.yaml +++ b/control_launch/config/trajectory_follower/3/lateral_controller.param.yaml @@ -1,8 +1,6 @@ /**: ros__parameters: - # -- system -- - ctrl_period: 0.03 # control period [s] traj_resample_dist: 0.1 # path resampling interval [m] use_steer_prediction: false # flag for using steer prediction (do not use steer measurement) admissible_position_error: 5.0 # stop mpc calculation when error is larger than the following value @@ -40,6 +38,7 @@ mpc_zero_ff_steer_deg: 0.5 # threshold that feed-forward angle becomes zero mpc_acceleration_limit: 2.0 # limit on the vehicle's acceleration mpc_velocity_time_constant: 0.3 # time constant used for velocity smoothing + mpc_min_prediction_length: 5.0 # minimum prediction length # -- vehicle model -- vehicle_model_type: "kinematics" # vehicle model type for mpc prediction. option is kinematics, kinematics_no_delay, and dynamics @@ -54,9 +53,13 @@ steering_lpf_cutoff_hz: 10.0 # cutoff frequency of lowpass filter for steering command [Hz] error_deriv_lpf_cutoff_hz: 5.0 - # stop state + # stop state: steering command is kept in the previous value in the stop state. stop_state_entry_ego_speed: 0.2 stop_state_entry_target_speed: 0.2 + converged_steer_rad: 0.1 + keep_steer_control_until_converged: false + new_traj_duration_time: 1.0 + new_traj_end_dist: 0.3 # vehicle parameters vehicle: diff --git a/control_launch/config/trajectory_follower/4/lateral_controller.param.yaml b/control_launch/config/trajectory_follower/4/lateral_controller.param.yaml index 3f1aaf99f5..b979878ab3 100644 --- a/control_launch/config/trajectory_follower/4/lateral_controller.param.yaml +++ b/control_launch/config/trajectory_follower/4/lateral_controller.param.yaml @@ -1,8 +1,6 @@ /**: ros__parameters: - # -- system -- - ctrl_period: 0.03 # control period [s] traj_resample_dist: 0.1 # path resampling interval [m] use_steer_prediction: false # flag for using steer prediction (do not use steer measurement) admissible_position_error: 5.0 # stop mpc calculation when error is larger than the following value @@ -40,6 +38,7 @@ mpc_zero_ff_steer_deg: 0.5 # threshold that feed-forward angle becomes zero mpc_acceleration_limit: 2.0 # limit on the vehicle's acceleration mpc_velocity_time_constant: 0.3 # time constant used for velocity smoothing + mpc_min_prediction_length: 5.0 # minimum prediction length # -- vehicle model -- vehicle_model_type: "kinematics" # vehicle model type for mpc prediction. option is kinematics, kinematics_no_delay, and dynamics @@ -54,9 +53,13 @@ steering_lpf_cutoff_hz: 10.0 # cutoff frequency of lowpass filter for steering command [Hz] error_deriv_lpf_cutoff_hz: 5.0 - # stop state + # stop state: steering command is kept in the previous value in the stop state. stop_state_entry_ego_speed: 0.2 stop_state_entry_target_speed: 0.2 + converged_steer_rad: 0.1 + keep_steer_control_until_converged: false + new_traj_duration_time: 1.0 + new_traj_end_dist: 0.3 # vehicle parameters vehicle: diff --git a/control_launch/config/trajectory_follower/5/lateral_controller.param.yaml b/control_launch/config/trajectory_follower/5/lateral_controller.param.yaml index d331b723d2..440ef62427 100644 --- a/control_launch/config/trajectory_follower/5/lateral_controller.param.yaml +++ b/control_launch/config/trajectory_follower/5/lateral_controller.param.yaml @@ -1,8 +1,6 @@ /**: ros__parameters: - # -- system -- - ctrl_period: 0.03 # control period [s] traj_resample_dist: 0.1 # path resampling interval [m] use_steer_prediction: false # flag for using steer prediction (do not use steer measurement) admissible_position_error: 5.0 # stop mpc calculation when error is larger than the following value @@ -40,6 +38,7 @@ mpc_zero_ff_steer_deg: 0.5 # threshold that feed-forward angle becomes zero mpc_acceleration_limit: 2.0 # limit on the vehicle's acceleration mpc_velocity_time_constant: 0.3 # time constant used for velocity smoothing + mpc_min_prediction_length: 5.0 # minimum prediction length # -- vehicle model -- vehicle_model_type: "kinematics" # vehicle model type for mpc prediction. option is kinematics, kinematics_no_delay, and dynamics @@ -54,9 +53,13 @@ steering_lpf_cutoff_hz: 10.0 # cutoff frequency of lowpass filter for steering command [Hz] error_deriv_lpf_cutoff_hz: 5.0 - # stop state + # stop state: steering command is kept in the previous value in the stop state. stop_state_entry_ego_speed: 0.2 stop_state_entry_target_speed: 0.2 + converged_steer_rad: 0.1 + keep_steer_control_until_converged: false + new_traj_duration_time: 1.0 + new_traj_end_dist: 0.3 # vehicle parameters vehicle: diff --git a/control_launch/config/trajectory_follower/6/lateral_controller.param.yaml b/control_launch/config/trajectory_follower/6/lateral_controller.param.yaml index f112edb09b..a92f958bd8 100644 --- a/control_launch/config/trajectory_follower/6/lateral_controller.param.yaml +++ b/control_launch/config/trajectory_follower/6/lateral_controller.param.yaml @@ -1,8 +1,6 @@ /**: ros__parameters: - # -- system -- - ctrl_period: 0.03 # control period [s] traj_resample_dist: 0.1 # path resampling interval [m] use_steer_prediction: false # flag for using steer prediction (do not use steer measurement) admissible_position_error: 5.0 # stop mpc calculation when error is larger than the following value @@ -40,6 +38,7 @@ mpc_zero_ff_steer_deg: 0.5 # threshold that feed-forward angle becomes zero mpc_acceleration_limit: 2.0 # limit on the vehicle's acceleration mpc_velocity_time_constant: 0.3 # time constant used for velocity smoothing + mpc_min_prediction_length: 5.0 # minimum prediction length # -- vehicle model -- vehicle_model_type: "kinematics" # vehicle model type for mpc prediction. option is kinematics, kinematics_no_delay, and dynamics @@ -54,9 +53,13 @@ steering_lpf_cutoff_hz: 10.0 # cutoff frequency of lowpass filter for steering command [Hz] error_deriv_lpf_cutoff_hz: 5.0 - # stop state + # stop state: steering command is kept in the previous value in the stop state. stop_state_entry_ego_speed: 0.2 stop_state_entry_target_speed: 0.2 + converged_steer_rad: 0.1 + keep_steer_control_until_converged: false + new_traj_duration_time: 1.0 + new_traj_end_dist: 0.3 # vehicle parameters vehicle: diff --git a/control_launch/config/trajectory_follower/7/lateral_controller.param.yaml b/control_launch/config/trajectory_follower/7/lateral_controller.param.yaml index f112edb09b..a92f958bd8 100644 --- a/control_launch/config/trajectory_follower/7/lateral_controller.param.yaml +++ b/control_launch/config/trajectory_follower/7/lateral_controller.param.yaml @@ -1,8 +1,6 @@ /**: ros__parameters: - # -- system -- - ctrl_period: 0.03 # control period [s] traj_resample_dist: 0.1 # path resampling interval [m] use_steer_prediction: false # flag for using steer prediction (do not use steer measurement) admissible_position_error: 5.0 # stop mpc calculation when error is larger than the following value @@ -40,6 +38,7 @@ mpc_zero_ff_steer_deg: 0.5 # threshold that feed-forward angle becomes zero mpc_acceleration_limit: 2.0 # limit on the vehicle's acceleration mpc_velocity_time_constant: 0.3 # time constant used for velocity smoothing + mpc_min_prediction_length: 5.0 # minimum prediction length # -- vehicle model -- vehicle_model_type: "kinematics" # vehicle model type for mpc prediction. option is kinematics, kinematics_no_delay, and dynamics @@ -54,9 +53,13 @@ steering_lpf_cutoff_hz: 10.0 # cutoff frequency of lowpass filter for steering command [Hz] error_deriv_lpf_cutoff_hz: 5.0 - # stop state + # stop state: steering command is kept in the previous value in the stop state. stop_state_entry_ego_speed: 0.2 stop_state_entry_target_speed: 0.2 + converged_steer_rad: 0.1 + keep_steer_control_until_converged: false + new_traj_duration_time: 1.0 + new_traj_end_dist: 0.3 # vehicle parameters vehicle: diff --git a/control_launch/config/trajectory_follower/9/lateral_controller.param.yaml b/control_launch/config/trajectory_follower/9/lateral_controller.param.yaml index f112edb09b..a92f958bd8 100644 --- a/control_launch/config/trajectory_follower/9/lateral_controller.param.yaml +++ b/control_launch/config/trajectory_follower/9/lateral_controller.param.yaml @@ -1,8 +1,6 @@ /**: ros__parameters: - # -- system -- - ctrl_period: 0.03 # control period [s] traj_resample_dist: 0.1 # path resampling interval [m] use_steer_prediction: false # flag for using steer prediction (do not use steer measurement) admissible_position_error: 5.0 # stop mpc calculation when error is larger than the following value @@ -40,6 +38,7 @@ mpc_zero_ff_steer_deg: 0.5 # threshold that feed-forward angle becomes zero mpc_acceleration_limit: 2.0 # limit on the vehicle's acceleration mpc_velocity_time_constant: 0.3 # time constant used for velocity smoothing + mpc_min_prediction_length: 5.0 # minimum prediction length # -- vehicle model -- vehicle_model_type: "kinematics" # vehicle model type for mpc prediction. option is kinematics, kinematics_no_delay, and dynamics @@ -54,9 +53,13 @@ steering_lpf_cutoff_hz: 10.0 # cutoff frequency of lowpass filter for steering command [Hz] error_deriv_lpf_cutoff_hz: 5.0 - # stop state + # stop state: steering command is kept in the previous value in the stop state. stop_state_entry_ego_speed: 0.2 stop_state_entry_target_speed: 0.2 + converged_steer_rad: 0.1 + keep_steer_control_until_converged: false + new_traj_duration_time: 1.0 + new_traj_end_dist: 0.3 # vehicle parameters vehicle: