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(autonomous_emergency_braking): update and speed up aeb #1532

Closed
wants to merge 15 commits into from

Conversation

danielsanchezaran
Copy link

@danielsanchezaran danielsanchezaran commented Sep 11, 2024

Description

This PR updates the AEB module to match the current OSS implementation.
Improvements include:

  1. AEB can function when one path (imu or mpc) is missing.
  2. Fixes bug causing the MPC predicted path to have an extra, unwanted polygon
  3. Adds info markers to AEB to improve visibility
  4. Adds the timekeeper to better track AEB performance
  5. Speeds up AEB with refactoring by reducing expensive function calls.

Related links

Parent Issue:

  • Link

How was this PR tested?

Notes for reviewers

None.

Interface changes

None.

Effects on system behavior

None.

danielsanchezaran and others added 15 commits September 11, 2024 09:20
…aeb (autowarefoundation#7548)

* add polling sub to predicted objects

Signed-off-by: Daniel Sanchez <[email protected]>

* WIP requires changing path frame to map

Signed-off-by: Daniel Sanchez <[email protected]>

* add parameters and reuse predicted obj speed

Signed-off-by: Daniel Sanchez <[email protected]>

* introduce early break to reduce computation time

Signed-off-by: Daniel Sanchez <[email protected]>

* resolve merge conflicts

Signed-off-by: Daniel Sanchez <[email protected]>

* fix guard

Signed-off-by: Daniel Sanchez <[email protected]>

* remove unused declaration

Signed-off-by: Daniel Sanchez <[email protected]>

* fix include

Signed-off-by: Daniel Sanchez <[email protected]>

* fix include issues

Signed-off-by: Daniel Sanchez <[email protected]>

* remove inline

Signed-off-by: Daniel Sanchez <[email protected]>

* delete unused dependencies

Signed-off-by: Daniel Sanchez <[email protected]>

* add utils.cpp

Signed-off-by: Daniel Sanchez <[email protected]>

* remove _ for non member variable

Signed-off-by: Daniel Sanchez <[email protected]>

---------

Signed-off-by: Daniel Sanchez <[email protected]>
…utowarefoundation#7605)

* add minimum cluster height threshold

Signed-off-by: Daniel Sanchez <[email protected]>

* add update param option

Signed-off-by: Daniel Sanchez <[email protected]>

* use param

Signed-off-by: Daniel Sanchez <[email protected]>

* avoid the float check if cluster_surpasses_threshold_height is already true

Signed-off-by: Daniel Sanchez <[email protected]>

* update README

Signed-off-by: Daniel Sanchez <[email protected]>

* add cluster height description

Signed-off-by: Daniel Sanchez <[email protected]>

---------

Signed-off-by: Daniel Sanchez <[email protected]>
…utowarefoundation#7707)

* add support for negative speeds

Signed-off-by: Daniel Sanchez <[email protected]>

* remove negative speed check for predicted obj

Signed-off-by: Daniel Sanchez <[email protected]>

---------

Signed-off-by: Daniel Sanchez <[email protected]>
…utowarefoundation#7703)

* apply clangd suggestions

Signed-off-by: Daniel Sanchez <[email protected]>

* add maintainer

Signed-off-by: Daniel Sanchez <[email protected]>

---------

Signed-off-by: Daniel Sanchez <[email protected]>
…owarefoundation#7894)

* add virtual stop wall to aeb

Signed-off-by: Daniel Sanchez <[email protected]>

* add maintainer

Signed-off-by: Daniel Sanchez <[email protected]>

* add uppercase

Signed-off-by: Daniel Sanchez <[email protected]>

* use motion utils function instead of shiftPose

Signed-off-by: Daniel Sanchez <[email protected]>

---------

Signed-off-by: Daniel Sanchez <[email protected]>
…state (autowarefoundation#8312)

add info marker and override for state

Signed-off-by: Daniel Sanchez <[email protected]>
…undation#8126)

* add initial tests

Signed-off-by: Daniel Sanchez <[email protected]>

* add more tests

Signed-off-by: Daniel Sanchez <[email protected]>

* more tests

Signed-off-by: Daniel Sanchez <[email protected]>

* WIP add publishing and test subscription

Signed-off-by: Daniel Sanchez <[email protected]>

* add more tests

Signed-off-by: Daniel Sanchez <[email protected]>

* fix lint cmake

Signed-off-by: Daniel Sanchez <[email protected]>

* WIP tf topic

Signed-off-by: Daniel Sanchez <[email protected]>

* Revert "WIP tf topic"

This reverts commit b5ef11b.

Signed-off-by: Daniel Sanchez <[email protected]>

* add path crop test

Signed-off-by: Daniel Sanchez <[email protected]>

* add test for transform object

Signed-off-by: Daniel Sanchez <[email protected]>

* add briefs

Signed-off-by: Daniel Sanchez <[email protected]>

* delete repeated test

Signed-off-by: Daniel Sanchez <[email protected]>

---------

Signed-off-by: Daniel Sanchez <[email protected]>
…autowarefoundation#8569)

* make it so AEB works with only one req path type (imu or MPC)

Signed-off-by: Daniel Sanchez <[email protected]>

* fix missing mpc path return

Signed-off-by: Daniel Sanchez <[email protected]>

* add check

Signed-off-by: Daniel Sanchez <[email protected]>

* modify no path msg

Signed-off-by: Daniel Sanchez <[email protected]>

---------

Signed-off-by: Daniel Sanchez <[email protected]>
…arefoundation#8611)

fix bug by using the collision data keeper

Signed-off-by: Daniel Sanchez <[email protected]>
…DME (autowarefoundation#8612)

* docs: improve AEB module's README

Signed-off-by: Kyoichi Sugahara <[email protected]>

* update rss distance length

Signed-off-by: Kyoichi Sugahara <[email protected]>
---------

Signed-off-by: Kyoichi Sugahara <[email protected]>
…undation#8706)

* add timekeeper to AEB

Signed-off-by: Daniel Sanchez <[email protected]>

* add more info to output

Signed-off-by: Daniel Sanchez <[email protected]>

---------

Signed-off-by: Daniel Sanchez <[email protected]>
…t transform (autowarefoundation#8734)

set stamp to 0 to get the latest stamp instead of waiting for the stamp

Signed-off-by: Daniel Sanchez <[email protected]>
…8778)

* add missing rclcpp::Time(0)

Signed-off-by: Daniel Sanchez <[email protected]>

* refactor to reduce cropping to once per iteration

Signed-off-by: Daniel Sanchez <[email protected]>

* add LookUpTransform to utils

Signed-off-by: Daniel Sanchez <[email protected]>

* separate object creation and clustering

Signed-off-by: Daniel Sanchez <[email protected]>

* error handling of empty pointcloud

Signed-off-by: Daniel Sanchez <[email protected]>

---------

Signed-off-by: Daniel Sanchez <[email protected]>
Copy link

sonarcloud bot commented Sep 11, 2024

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants