Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

feat(pid_longitudinal_controller)!: add acceleration feedback block #8325

Merged
merged 8 commits into from
Aug 27, 2024

Conversation

yuki-takagi-66
Copy link
Contributor

@yuki-takagi-66 yuki-takagi-66 commented Aug 1, 2024

Description

This PR provides an acceleration feedback feature for the pid_longitudinal_controller.

The red allows in the following figure are added by this PR.
image

Note that the acceleration feedback gain G_a(s) is set as 0 in the default parameters, autowarefoundation/autoware_launch#1139.
Therefore, no behavior is changed by this PR.

With the current construction of the speed controller, it is difficult to achieve both disturbance tolerance and tracking performance when the response delay of the vehicle is large. In order to better ensure this performance, we have added a block that performs feedback control by looking at acceleration information.
This is because acceleration is closer to the input value to the plant than velocity, and the response is about 90 degrees faster.

Related links

launch PR: autowarefoundation/autoware_launch#1139

How was this PR tested?

psim and tier4 internal tests

Notes for reviewers

None.

Effects on system behavior

None.

@github-actions github-actions bot added the component:control Vehicle control algorithms and mechanisms. (auto-assigned) label Aug 1, 2024
Copy link

github-actions bot commented Aug 1, 2024

Thank you for contributing to the Autoware project!

🚧 If your pull request is in progress, switch it to draft mode.

Please ensure:

@yuki-takagi-66 yuki-takagi-66 force-pushed the takagi/add-acc-fb branch 2 times, most recently from 2e7a069 to e07503c Compare August 26, 2024 02:56
@yuki-takagi-66 yuki-takagi-66 changed the title wip add acc feedback feat(pid_longitudinal_controller)!: add acceleration feedback Aug 26, 2024
@yuki-takagi-66 yuki-takagi-66 changed the title feat(pid_longitudinal_controller)!: add acceleration feedback feat(pid_longitudinal_controller)!: add acceleration feedback block Aug 26, 2024
@yuki-takagi-66 yuki-takagi-66 marked this pull request as ready for review August 26, 2024 06:54
@yuki-takagi-66 yuki-takagi-66 added the run:build-and-test-differential Mark to enable build-and-test-differential workflow. (used-by-ci) label Aug 26, 2024
Signed-off-by: Yuki Takagi <yuki.takagi@tier4.jp>
Signed-off-by: Yuki Takagi <yuki.takagi@tier4.jp>
Signed-off-by: Yuki Takagi <yuki.takagi@tier4.jp>
Signed-off-by: Yuki Takagi <yuki.takagi@tier4.jp>
Signed-off-by: Yuki Takagi <yuki.takagi@tier4.jp>
Signed-off-by: Yuki Takagi <yuki.takagi@tier4.jp>
Signed-off-by: Yuki Takagi <yuki.takagi@tier4.jp>
Signed-off-by: Yuki Takagi <yuki.takagi@tier4.jp>
Copy link

codecov bot commented Aug 26, 2024

Codecov Report

Attention: Patch coverage is 40.00000% with 9 lines in your changes missing coverage. Please review.

Project coverage is 24.09%. Comparing base (c80eddc) to head (ac5ebfe).
Report is 16 commits behind head on main.

Files Patch % Lines
...nal_controller/src/pid_longitudinal_controller.cpp 42.85% 7 Missing and 1 partial ⚠️
...are/pid_longitudinal_controller/lowpass_filter.hpp 0.00% 1 Missing ⚠️
Additional details and impacted files
@@            Coverage Diff             @@
##             main    #8325      +/-   ##
==========================================
- Coverage   24.10%   24.09%   -0.01%     
==========================================
  Files        1399     1399              
  Lines      102455   102469      +14     
  Branches    38921    38924       +3     
==========================================
  Hits        24695    24695              
- Misses      75235    75248      +13     
- Partials     2525     2526       +1     
Flag Coverage Δ *Carryforward flag
differential 34.15% <40.00%> (?)
total 24.10% <ø> (-0.01%) ⬇️ Carriedforward from c80eddc

*This pull request uses carry forward flags. Click here to find out more.

☔ View full report in Codecov by Sentry.
📢 Have feedback on the report? Share it here.

@yuki-takagi-66
Copy link
Contributor Author

yuki-takagi-66 commented Aug 26, 2024

@Motsu-san
Just a notification, We will merge this PR, and then, the twist2accel node and stop_fillter node will be included in the feedback control loop. No interfaces are changed.

@yuki-takagi-66 yuki-takagi-66 merged commit 603dd13 into autowarefoundation:main Aug 27, 2024
29 of 31 checks passed
@yuki-takagi-66 yuki-takagi-66 deleted the takagi/add-acc-fb branch August 27, 2024 03:02
kyoichi-sugahara pushed a commit to kyoichi-sugahara/autoware.universe that referenced this pull request Aug 27, 2024
a-maumau pushed a commit to a-maumau/autoware.universe that referenced this pull request Sep 2, 2024
yuki-takagi-66 added a commit to tier4/autoware.universe that referenced this pull request Sep 17, 2024
yuki-takagi-66 added a commit to tier4/autoware.universe that referenced this pull request Sep 17, 2024
ktro2828 pushed a commit to ktro2828/autoware.universe that referenced this pull request Sep 18, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
component:control Vehicle control algorithms and mechanisms. (auto-assigned) run:build-and-test-differential Mark to enable build-and-test-differential workflow. (used-by-ci)
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants