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

[RotationShimController] Rotate to goal heading #4332

Merged
merged 1 commit into from
May 29, 2024

Conversation

gennartan
Copy link
Contributor

When arriving in the goal xy tolerance, the rotation shim controller takes back the control to command the robot to rotate in the goal heading orientation.

The initial goal of the rotationShimController was to rotate the robot at the beginning of a navigation towards the paths orientation because some controllers are not good at performing in place rotations. For the same reason, the rotationShimController should be able to rotate the robot towards the goal heading.


Basic Info

Info Please fill out this column
Ticket(s) this addresses #4289
Primary OS tested on Ubuntu
Robotic platform tested on Gazebo simulation on custom robot
Does this PR contain AI generated software? No

Description of contribution in a few bullet points

  • Add new feature to rotationShimController: It can rotate towards the goal heading when arriving in goal XY tolerance

Description of documentation updates required from your changes

  • Added new parameter ´rotate_to_goal_heading´, so need to add that to default configs and documentation page

Future work that may be required in bullet points

For Maintainers:

  • Check that any new parameters added are updated in docs.nav2.org
  • Check that any significant change is added to the migration guide
  • Check that any new features OR changes to existing behaviors are reflected in the tuning guide
  • Check that any new functions have Doxygen added
  • Check that any new features have test coverage
  • Check that any new plugins is added to the plugins page
  • If BT Node, Additionally: add to BT's XML index of nodes for groot, BT package's readme table, and BT library lists

@gennartan gennartan force-pushed the test_goal_rotation branch from bf25e80 to 20917ee Compare May 11, 2024 06:42
@SteveMacenski
Copy link
Member

SteveMacenski commented May 13, 2024

@gennartan please see #4290 (comment) if you hadn't already

@SteveMacenski
Copy link
Member

Please also make sure to sign off your commits. See the DCO failed job for details

SteveMacenski referenced this pull request May 13, 2024
When arriving in the goal xy tolerance, the rotation shim controller
takes back the control and perform the necessary rotation to be in the
correct goal orientation.

This can be useful when the final orientaion of the robot matters. It
can also simplify the configuration of the primary controller since it
would not have to be configured to be able to reach the target
orientation.
@gennartan gennartan force-pushed the test_goal_rotation branch 2 times, most recently from 3aabd4a to 4095c29 Compare May 25, 2024 21:27
@gennartan gennartan requested a review from SteveMacenski May 26, 2024 17:45
@SteveMacenski
Copy link
Member

Essentially done though, this looks good to me. Did you test this out?

@gennartan gennartan force-pushed the test_goal_rotation branch from 4095c29 to 549e591 Compare May 28, 2024 18:57
@gennartan
Copy link
Contributor Author

gennartan commented May 28, 2024

Essentially done though, this looks good to me. Did you test this out?

Yes I tested it in simulation. It works fine.

@gennartan please see #4290 (comment) if you hadn't already

I missed this comment the other day. Now it is fixed (and tested) 😄

@SteveMacenski
Copy link
Member

@gennartan see my new review comments, some are outstanding still. Then I think the last thing left if just adding the new parameter to the configuration guide for this plugin + add to the migration guide that this is a new available feature!

@gennartan gennartan force-pushed the test_goal_rotation branch 2 times, most recently from 5c13988 to 54c1b34 Compare May 28, 2024 19:54
@SteveMacenski
Copy link
Member

I think just docs left now!

When arriving in the goal xy tolerance, the rotation shim controller
takes back the control to command the robot to rotate in the goal
heading orientation.

The initial goal of the rotationShimController was to rotate the robot
at the beginning of a navigation towards the paths orientation because
some controllers are not good at performing in place rotations. For the
same reason, the rotationShimController should be able to rotate the
robot towards the goal heading.

Signed-off-by: Antoine Gennart <[email protected]>
@gennartan gennartan force-pushed the test_goal_rotation branch from 54c1b34 to 16e1bd7 Compare May 29, 2024 18:53
@SteveMacenski
Copy link
Member

@gennartan
Copy link
Contributor Author

here is the PR: ros-navigation/docs.nav2.org#561

@SteveMacenski SteveMacenski merged commit 30e2cde into ros-navigation:main May 29, 2024
9 of 10 checks passed
@SteveMacenski
Copy link
Member

Thanks @gennartan !

@gennartan gennartan deleted the test_goal_rotation branch May 29, 2024 19:52
@gennartan gennartan restored the test_goal_rotation branch May 29, 2024 19:53
SteveMacenski pushed a commit that referenced this pull request May 31, 2024
When arriving in the goal xy tolerance, the rotation shim controller
takes back the control to command the robot to rotate in the goal
heading orientation.

The initial goal of the rotationShimController was to rotate the robot
at the beginning of a navigation towards the paths orientation because
some controllers are not good at performing in place rotations. For the
same reason, the rotationShimController should be able to rotate the
robot towards the goal heading.

Signed-off-by: Antoine Gennart <[email protected]>
SteveMacenski added a commit that referenced this pull request May 31, 2024
* Add configure and cleanup transitions to lifecycle manager and client (#4371)

Signed-off-by: Joni Pöllänen <[email protected]>

* [RotationShimController] Rotate to goal heading (#4332)

When arriving in the goal xy tolerance, the rotation shim controller
takes back the control to command the robot to rotate in the goal
heading orientation.

The initial goal of the rotationShimController was to rotate the robot
at the beginning of a navigation towards the paths orientation because
some controllers are not good at performing in place rotations. For the
same reason, the rotationShimController should be able to rotate the
robot towards the goal heading.

Signed-off-by: Antoine Gennart <[email protected]>

* bump to 1.2.9 for release

---------

Signed-off-by: Joni Pöllänen <[email protected]>
Signed-off-by: Antoine Gennart <[email protected]>
Co-authored-by: Joni Pöllänen <[email protected]>
Co-authored-by: Saitama <[email protected]>
@SteveMacenski
Copy link
Member

// of the goal. The rotation shim controller should rotate toward the goal heading
// then it will throw an exception because the costmap is bogus
controller->setPlan(path);
EXPECT_THROW(controller->computeVelocityCommands(pose, velocity, &checker), std::runtime_error);
Copy link
Contributor

@tonynajjar tonynajjar May 31, 2024

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This test consistently fails for me on rolling. @gennartan would it be possible for you to check it out? It failed on CI too . No idea how it passed for the PR

Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Ah sorry, just saw Steve commented already

Copy link
Contributor Author

@gennartan gennartan Jun 1, 2024

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I fixed the error related to the EXPECT_THROW and implemented real tests for this feature.

But I am still getting error while testing and I cannot figure out what is causing it. Could you help me @tonynajjar or @SteveMacenski ?

build/nav2_rotation_shim_controller/test_results/nav2_rotation_shim_controller/flake8.xunit.xml: 3 tests, 0 errors, 3 failures, 0 skipped
- nav2_rotation_shim_controller.flake8 E501 (./install/_local_setup_util_sh.py:14:100)
  <<< failure message
    line too long (109 > 99 characters):
    FORMAT_STR_INVOKE_SCRIPT = 'COLCON_CURRENT_PREFIX="{prefix}" _colcon_prefix_sh_source_script "{script_path}"'
  >>>
- nav2_rotation_shim_controller.flake8 E501 (./install/_local_setup_util_sh.py:15:100)
  <<< failure message
    line too long (124 > 99 characters):
    FORMAT_STR_REMOVE_LEADING_SEPARATOR = 'if [ "$(echo -n ${name} | head -c 1)" = ":" ]; then export {name}=${{{name}#?}} ; fi'
  >>>
- nav2_rotation_shim_controller.flake8 E501 (./install/_local_setup_util_sh.py:16:100)
  <<< failure message
    line too long (125 > 99 characters):
    FORMAT_STR_REMOVE_TRAILING_SEPARATOR = 'if [ "$(echo -n ${name} | tail -c 1)" = ":" ]; then export {name}=${{{name}%?}} ; fi'
  >>>

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

It seems that I am only getting these test error locally, I created a PR and this error doesn't show up.

See the PR: #4391

However the release tests still fails, but not for the rotationShimController

@Benjamin-Tan
Copy link

Just a curious thought, will this be backported to humble branch?

@SteveMacenski
Copy link
Member

That's the plan, we haven't done a new sync since this was merged, it missed the sync date by a few days. The next one is at the end of this month. If you want it in the branch sooner though, you can open a cherry-picked backport PR to Humble and I can merge that so its not a blocker

@gennartan gennartan deleted the test_goal_rotation branch August 1, 2024 05:45
Manos-G pushed a commit to Manos-G/navigation2 that referenced this pull request Aug 1, 2024
When arriving in the goal xy tolerance, the rotation shim controller
takes back the control to command the robot to rotate in the goal
heading orientation.

The initial goal of the rotationShimController was to rotate the robot
at the beginning of a navigation towards the paths orientation because
some controllers are not good at performing in place rotations. For the
same reason, the rotationShimController should be able to rotate the
robot towards the goal heading.

Signed-off-by: Antoine Gennart <[email protected]>
SteveMacenski pushed a commit that referenced this pull request Aug 23, 2024
When arriving in the goal xy tolerance, the rotation shim controller
takes back the control to command the robot to rotate in the goal
heading orientation.

The initial goal of the rotationShimController was to rotate the robot
at the beginning of a navigation towards the paths orientation because
some controllers are not good at performing in place rotations. For the
same reason, the rotationShimController should be able to rotate the
robot towards the goal heading.

Signed-off-by: Antoine Gennart <[email protected]>
SteveMacenski added a commit that referenced this pull request Aug 24, 2024
* Add configure and cleanup transitions to lifecycle manager and client (#4371)

Signed-off-by: Joni Pöllänen <[email protected]>

* [RotationShimController] Rotate to goal heading (#4332)

When arriving in the goal xy tolerance, the rotation shim controller
takes back the control to command the robot to rotate in the goal
heading orientation.

The initial goal of the rotationShimController was to rotate the robot
at the beginning of a navigation towards the paths orientation because
some controllers are not good at performing in place rotations. For the
same reason, the rotationShimController should be able to rotate the
robot towards the goal heading.

Signed-off-by: Antoine Gennart <[email protected]>

* [RotationShimController] Fix test for rotate to goal heading (#4289) (#4391)

* Fix rotate to goal heading tests

Signed-off-by: Antoine Gennart <[email protected]>

* reset laser_scan_filter before reinit (#4397)

Signed-off-by: goes <[email protected]>
Co-authored-by: goes <[email protected]>

* Warn if inflation_radius_ < inscribed_radius_ (#4423)

* Warn if inflation_radius_ < inscribed_radius_

Signed-off-by: Tony Najjar <[email protected]>

* convert to error

Signed-off-by: Tony Najjar <[email protected]>

---------

Signed-off-by: Tony Najjar <[email protected]>

* chore: cleanup ros1 leftovers (#4446)

Signed-off-by: Rein Appeldoorn <[email protected]>

* precomputeDistanceHeuristic is now computed once (#4451)

Signed-off-by: Vincent Belpois <[email protected]>
Co-authored-by: SiddharthaUpase <[email protected]>

* shutdown services in destructor of `ClearCostmapService` (#4495)

Signed-off-by: GoesM_server <[email protected]>
Co-authored-by: GoesM_server <[email protected]>

* fix(nav2_costmap_2d): make obstacle layer not current on enabled toggle (#4507)

Signed-off-by: Kemal Bektas <[email protected]>
Co-authored-by: Kemal Bektas <[email protected]>

* min_turning_r_ getting param fix (#4510)

* min_turning_r_ getting param fix

Signed-off-by: Ivan Radionov <[email protected]>

* Update nav2_mppi_controller/include/nav2_mppi_controller/motion_models.hpp

Signed-off-by: Steve Macenski <[email protected]>
Signed-off-by: Ivan Radionov <[email protected]>

---------

Signed-off-by: Ivan Radionov <[email protected]>
Signed-off-by: Steve Macenski <[email protected]>
Co-authored-by: Ivan Radionov <[email protected]>
Co-authored-by: Steve Macenski <[email protected]>

* Return out of map update if frames mismatch. Signed-off-by Joey Yang (#4517)

Signed-off-by: Joey Yang <[email protected]>

* check nullptr in smoothPlan() (#4544)

* check nullptr in smoothPlan()

Signed-off-by: GoesM <[email protected]>

* code-style

Signed-off-by: GoesM <[email protected]>

* code-style

Signed-off-by: GoesM <[email protected]>

* simple change

Signed-off-by: GoesM <[email protected]>

---------

Signed-off-by: GoesM <[email protected]>
Co-authored-by: GoesM <[email protected]>

* bump to 1.1.15

Signed-off-by: Steve Macenski <[email protected]>

* Revert "Add configure and cleanup transitions to lifecycle manager and client (#4371)"

This reverts commit 06ec958.

* fix merge conflict with humble sync

* fix merge conflict with humble sync

---------

Signed-off-by: Joni Pöllänen <[email protected]>
Signed-off-by: Antoine Gennart <[email protected]>
Signed-off-by: Antoine Gennart <[email protected]>
Signed-off-by: goes <[email protected]>
Signed-off-by: Tony Najjar <[email protected]>
Signed-off-by: Rein Appeldoorn <[email protected]>
Signed-off-by: Vincent Belpois <[email protected]>
Signed-off-by: GoesM_server <[email protected]>
Signed-off-by: Kemal Bektas <[email protected]>
Signed-off-by: Ivan Radionov <[email protected]>
Signed-off-by: Steve Macenski <[email protected]>
Signed-off-by: Joey Yang <[email protected]>
Signed-off-by: GoesM <[email protected]>
Co-authored-by: Joni Pöllänen <[email protected]>
Co-authored-by: Saitama <[email protected]>
Co-authored-by: GoesM <[email protected]>
Co-authored-by: goes <[email protected]>
Co-authored-by: Tony Najjar <[email protected]>
Co-authored-by: Rein Appeldoorn <[email protected]>
Co-authored-by: Vincent <[email protected]>
Co-authored-by: SiddharthaUpase <[email protected]>
Co-authored-by: Kemal Bektas <[email protected]>
Co-authored-by: Kemal Bektas <[email protected]>
Co-authored-by: Ivan Radionov <[email protected]>
Co-authored-by: Ivan Radionov <[email protected]>
Co-authored-by: Joey Yang <[email protected]>
RBT22 pushed a commit to EnjoyRobotics/navigation2 that referenced this pull request Sep 26, 2024
* Add configure and cleanup transitions to lifecycle manager and client (ros-navigation#4371)

Signed-off-by: Joni Pöllänen <[email protected]>

* [RotationShimController] Rotate to goal heading (ros-navigation#4332)

When arriving in the goal xy tolerance, the rotation shim controller
takes back the control to command the robot to rotate in the goal
heading orientation.

The initial goal of the rotationShimController was to rotate the robot
at the beginning of a navigation towards the paths orientation because
some controllers are not good at performing in place rotations. For the
same reason, the rotationShimController should be able to rotate the
robot towards the goal heading.

Signed-off-by: Antoine Gennart <[email protected]>

* [RotationShimController] Fix test for rotate to goal heading (ros-navigation#4289) (ros-navigation#4391)

* Fix rotate to goal heading tests

Signed-off-by: Antoine Gennart <[email protected]>

* reset laser_scan_filter before reinit (ros-navigation#4397)

Signed-off-by: goes <[email protected]>
Co-authored-by: goes <[email protected]>

* Warn if inflation_radius_ < inscribed_radius_ (ros-navigation#4423)

* Warn if inflation_radius_ < inscribed_radius_

Signed-off-by: Tony Najjar <[email protected]>

* convert to error

Signed-off-by: Tony Najjar <[email protected]>

---------

Signed-off-by: Tony Najjar <[email protected]>

* chore: cleanup ros1 leftovers (ros-navigation#4446)

Signed-off-by: Rein Appeldoorn <[email protected]>

* precomputeDistanceHeuristic is now computed once (ros-navigation#4451)

Signed-off-by: Vincent Belpois <[email protected]>
Co-authored-by: SiddharthaUpase <[email protected]>

* shutdown services in destructor of `ClearCostmapService` (ros-navigation#4495)

Signed-off-by: GoesM_server <[email protected]>
Co-authored-by: GoesM_server <[email protected]>

* fix(nav2_costmap_2d): make obstacle layer not current on enabled toggle (ros-navigation#4507)

Signed-off-by: Kemal Bektas <[email protected]>
Co-authored-by: Kemal Bektas <[email protected]>

* min_turning_r_ getting param fix (ros-navigation#4510)

* min_turning_r_ getting param fix

Signed-off-by: Ivan Radionov <[email protected]>

* Update nav2_mppi_controller/include/nav2_mppi_controller/motion_models.hpp

Signed-off-by: Steve Macenski <[email protected]>
Signed-off-by: Ivan Radionov <[email protected]>

---------

Signed-off-by: Ivan Radionov <[email protected]>
Signed-off-by: Steve Macenski <[email protected]>
Co-authored-by: Ivan Radionov <[email protected]>
Co-authored-by: Steve Macenski <[email protected]>

* Return out of map update if frames mismatch. Signed-off-by Joey Yang (ros-navigation#4517)

Signed-off-by: Joey Yang <[email protected]>

* check nullptr in smoothPlan() (ros-navigation#4544)

* check nullptr in smoothPlan()

Signed-off-by: GoesM <[email protected]>

* code-style

Signed-off-by: GoesM <[email protected]>

* code-style

Signed-off-by: GoesM <[email protected]>

* simple change

Signed-off-by: GoesM <[email protected]>

---------

Signed-off-by: GoesM <[email protected]>
Co-authored-by: GoesM <[email protected]>

* bump to 1.1.15

Signed-off-by: Steve Macenski <[email protected]>

* Revert "Add configure and cleanup transitions to lifecycle manager and client (ros-navigation#4371)"

This reverts commit 06ec958.

* fix merge conflict with humble sync

* fix merge conflict with humble sync

---------

Signed-off-by: Joni Pöllänen <[email protected]>
Signed-off-by: Antoine Gennart <[email protected]>
Signed-off-by: Antoine Gennart <[email protected]>
Signed-off-by: goes <[email protected]>
Signed-off-by: Tony Najjar <[email protected]>
Signed-off-by: Rein Appeldoorn <[email protected]>
Signed-off-by: Vincent Belpois <[email protected]>
Signed-off-by: GoesM_server <[email protected]>
Signed-off-by: Kemal Bektas <[email protected]>
Signed-off-by: Ivan Radionov <[email protected]>
Signed-off-by: Steve Macenski <[email protected]>
Signed-off-by: Joey Yang <[email protected]>
Signed-off-by: GoesM <[email protected]>
Co-authored-by: Joni Pöllänen <[email protected]>
Co-authored-by: Saitama <[email protected]>
Co-authored-by: GoesM <[email protected]>
Co-authored-by: goes <[email protected]>
Co-authored-by: Tony Najjar <[email protected]>
Co-authored-by: Rein Appeldoorn <[email protected]>
Co-authored-by: Vincent <[email protected]>
Co-authored-by: SiddharthaUpase <[email protected]>
Co-authored-by: Kemal Bektas <[email protected]>
Co-authored-by: Kemal Bektas <[email protected]>
Co-authored-by: Ivan Radionov <[email protected]>
Co-authored-by: Ivan Radionov <[email protected]>
Co-authored-by: Joey Yang <[email protected]>
emilnovak pushed a commit to EnjoyRobotics/navigation2 that referenced this pull request Sep 27, 2024
* replace throw-error with error-log to avoid UAF mentioned in ros-navigation#4175 (ros-navigation#4180) (ros-navigation#4305)

* replace throw-error with error-log to avoid UAF



* fix typo



---------

Signed-off-by: GoesM <[email protected]>
Co-authored-by: GoesM <[email protected]>

* Cherry-pick from 15c9be0 (ros-navigation#4317)

Convert all wall timers and wall rates to ROS clock respecting rates and timers (ros-navigation#4000)

* Convert all wall timers and wall rates to ROS clock respecting rates and timers

* linty mclint face

* WPF wait plugin respect time

* move duration metrics to use local clocks

* bumping version for cache to break it

* complete timing refactor

* remove old variable

* Add dynamic parameter (ros-navigation#4319)

To fix ros-navigation#4315

Signed-off-by: Huy Nguyen Van <[email protected]>

* Humble release 11: May 23, 2024 (ros-navigation#4365)

* Scale cost critic's weight when dynamically updated (ros-navigation#4246)

* Scale cost critic's weight when dynamically updated

Signed-off-by: pepisg <[email protected]>

* sign off

Signed-off-by: pepisg <[email protected]>

---------

Signed-off-by: pepisg <[email protected]>

* Add expanding the ~/ to the full home dir of user in the path to the map yaml.  (ros-navigation#4258)

* Add user home expander of home sequence

Signed-off-by: Wiktor Bajor <[email protected]>

* Add passing home dir as string instead of const char*

Signed-off-by: Wiktor Bajor <[email protected]>

* Add docs

Signed-off-by: Wiktor Bajor <[email protected]>

* Fix function declaration

Signed-off-by: Wiktor Bajor <[email protected]>

* Fix linter issues

Signed-off-by: Wiktor Bajor <[email protected]>

* Uncrustify linter

Signed-off-by: Wiktor Bajor <[email protected]>

* Uncrustify linter

Signed-off-by: Wiktor Bajor <[email protected]>

* Uncrustify linter: remove remove whitespace

Signed-off-by: Wiktor Bajor <[email protected]>

---------

Signed-off-by: Wiktor Bajor <[email protected]>

* Implement Critic for Velocity Deadband Hardware Constraints (ros-navigation#4256)

* Adding new velocity deadband critic.

- add some tests
- cast double to float
- add new features from "main" branch

- fix formating

- add cost test
- fix linting issue
- add README

Signed-off-by: Denis Sokolov <[email protected]>

* Remove velocity deadband critic from defaults

Signed-off-by: Denis Sokolov <[email protected]>

* remove old weight

Signed-off-by: Denis Sokolov <[email protected]>

* fix velocity deadband critic tests

Signed-off-by: Denis Sokolov <[email protected]>

---------

Signed-off-by: Denis Sokolov <[email protected]>

* removing clearable layer param (unused) (ros-navigation#4280)

* provide message validation check API (ros-navigation#4276)

* provide validation_message.hpp

Signed-off-by: goes <[email protected]>

* fix typo

Signed-off-by: goes <[email protected]>

* add test_validation_messages.cpp

Signed-off-by: goes <[email protected]>

* change include-order

Signed-off-by: goes <[email protected]>

* reformat

Signed-off-by: goes <[email protected]>

* update test

Signed-off-by: goes <[email protected]>

---------

Signed-off-by: goes <[email protected]>
Co-authored-by: goes <[email protected]>

* Add footprint clearing for static layer (ros-navigation#4282)

* Add footprint clearing for static layer

Signed-off-by: Tony Najjar <[email protected]>

* fix flckering

---------

Signed-off-by: Tony Najjar <[email protected]>

* Fix ros-navigation#4268 (ros-navigation#4296)

Signed-off-by: Steve Macenski <[email protected]>

* Update README.md of nav2_bt_navigator (ros-navigation#4309)

Update link to docs

Signed-off-by: João Britto <[email protected]>

* Fix undefined symbols in `libpf_lib.so` (ros-navigation#4312)

When I build `nav2_amcl` with `-Wl,--no-undefined` I noticed
`libpf_lib.so` has undefined symbols. This PR correctly links
`libpf_lib.so` to `libm` so all symbols can be found.

You can verify this by executing the following command:
```
ldd -r ./build/nav2_amcl/src/pf/libpf_lib.so
	linux-vdso.so.1 (0x00007ffd1f8c0000)
	libc.so.6 => /lib/x86_64-linux-gnu/libc.so.6 (0x000074e909a00000)
	/lib64/ld-linux-x86-64.so.2 (0x000074e909e60000)
undefined symbol: ceil	(./build/nav2_amcl/src/pf/libpf_lib.so)
undefined symbol: atan2	(./build/nav2_amcl/src/pf/libpf_lib.so)
undefined symbol: sin	(./build/nav2_amcl/src/pf/libpf_lib.so)
undefined symbol: hypot	(./build/nav2_amcl/src/pf/libpf_lib.so)
undefined symbol: cos	(./build/nav2_amcl/src/pf/libpf_lib.so)
undefined symbol: log	(./build/nav2_amcl/src/pf/libpf_lib.so)
undefined symbol: sqrt	(./build/nav2_amcl/src/pf/libpf_lib.so)
undefined symbol: floor	(./build/nav2_amcl/src/pf/libpf_lib.so)
```

Signed-off-by: Ramon Wijnands <[email protected]>

* msg validation check for `/initialpose`  in `nav2_amcl` (ros-navigation#4301)

* add validation check for PoseWithCovarianceStamped

Signed-off-by: goes <[email protected]>

* remove rebundant check before

Signed-off-by: goes <[email protected]>

* reformat

Signed-off-by: goes <[email protected]>

* typo fixed

Signed-off-by: goes <[email protected]>

* change the type-name

Signed-off-by: goes <[email protected]>

* update test

Signed-off-by: goes <[email protected]>

* reformat

Signed-off-by: goes <[email protected]>

* .

Signed-off-by: goes <[email protected]>

* add comment

Signed-off-by: goes <[email protected]>

* update comment

Signed-off-by: goes <[email protected]>

* change header

Signed-off-by: goes <[email protected]>

* update test

Signed-off-by: goes <[email protected]>

* typo fixed

Signed-off-by: goes <[email protected]>

---------

Signed-off-by: goes <[email protected]>
Co-authored-by: goes <[email protected]>

* 4320: Changed precision of calculations of the HybridNode MotionTable::getClosestAngularBin. (ros-navigation#4324)

Signed-off-by: Krzysztof Pawełczyk <[email protected]>
Co-authored-by: Krzysztof Pawełczyk <[email protected]>

* [LifecycleNode] add bond_heartbeat_period (ros-navigation#4342)

* add bond_heartbeat_period

Signed-off-by: Guillaume Doisy <[email protected]>

* lint

Signed-off-by: Guillaume Doisy <[email protected]>

---------

Signed-off-by: Guillaume Doisy <[email protected]>
Co-authored-by: Guillaume Doisy <[email protected]>

* Update path_longer_on_approach.cpp (ros-navigation#4344)

Fix the bug that isPathUpdated function will return false for the reason that it compare the timestaped between new path and old path's last pose

Signed-off-by: StetroF <[email protected]>

* [LifecycleManagerClient] clean set_initial_pose and navigate_to_pose (ros-navigation#4346)

Signed-off-by: Guillaume Doisy <[email protected]>
Co-authored-by: Guillaume Doisy <[email protected]>

* Move projectState after getPointsInside (ros-navigation#4356)

* Modify test to check fix

Signed-off-by: Brice <[email protected]>

* Add static polygon check before simulation

Signed-off-by: Brice <[email protected]>

---------

Signed-off-by: Brice <[email protected]>

* adding final pose in analytic expansion to check (ros-navigation#4353)

* fix sync merge conflicts

* bump humble to 1.1.15 for release

* Revert "[LifecycleNode] add bond_heartbeat_period (ros-navigation#4342)"

This reverts commit 6e44178.

---------

Signed-off-by: pepisg <[email protected]>
Signed-off-by: Wiktor Bajor <[email protected]>
Signed-off-by: Denis Sokolov <[email protected]>
Signed-off-by: goes <[email protected]>
Signed-off-by: Tony Najjar <[email protected]>
Signed-off-by: Steve Macenski <[email protected]>
Signed-off-by: João Britto <[email protected]>
Signed-off-by: Ramon Wijnands <[email protected]>
Signed-off-by: Krzysztof Pawełczyk <[email protected]>
Signed-off-by: Guillaume Doisy <[email protected]>
Signed-off-by: StetroF <[email protected]>
Signed-off-by: Brice <[email protected]>
Co-authored-by: Pedro Alejandro González <[email protected]>
Co-authored-by: Wiktor Bajor <[email protected]>
Co-authored-by: Sokolov Denis <[email protected]>
Co-authored-by: GoesM <[email protected]>
Co-authored-by: goes <[email protected]>
Co-authored-by: Tony Najjar <[email protected]>
Co-authored-by: João Britto <[email protected]>
Co-authored-by: Ramon Wijnands <[email protected]>
Co-authored-by: AzaelCicero <[email protected]>
Co-authored-by: Krzysztof Pawełczyk <[email protected]>
Co-authored-by: Guillaume Doisy <[email protected]>
Co-authored-by: Guillaume Doisy <[email protected]>
Co-authored-by: StetroF <[email protected]>
Co-authored-by: BriceRenaudeau <[email protected]>

* adding mutex lock around map resizing due to dynamic parameter changes and associated processes (ros-navigation#4373) (ros-navigation#4378)

(cherry picked from commit b0abc78)

Co-authored-by: Steve Macenski <[email protected]>

* Make BT nodes have configurable wait times (Backport ros-navigation#3960 ros-navigation#4178 ros-navigation#4203) (ros-navigation#4409)

* WIP: Make BT nodes have configurable wait times. (ros-navigation#3960)

* Make BT nodes have configurable wait times.

Previous solution provided hardcoded 1s value.
Right now the value can be configured for BT
Action, Cancel and Service nodes.

[ros-navigation#3920]

Signed-off-by: Adam Galecki <[email protected]>

* Make BT nodes have configurable wait times.

Previous solution provided hardcoded 1s value.
Right now the value can be configured for BT
Action, Cancel and Service nodes.

[ros-navigation#3920]

Signed-off-by: Adam Galecki <[email protected]>

* Fix typos, linting errors and value type from float to int

* Fix extra underscores

* Fix extra underscore

* Update unit tests with blackboard parameter

Signed-off-by: Adam Galecki <[email protected]>

* Fix formatting errors

Signed-off-by: Adam Galecki <[email protected]>

* Update system tests to match new parameter

Signed-off-by: Adam Galecki <[email protected]>

---------

Signed-off-by: Adam Galecki <[email protected]>
Signed-off-by: Christoph Froehlich <[email protected]>

* chore(nav2_behavior_tree): log actual wait period in bt_action_node (ros-navigation#4178)

Signed-off-by: Felix <[email protected]>
Co-authored-by: Felix <[email protected]>
Signed-off-by: Christoph Froehlich <[email protected]>

* fix missing param declare (ros-navigation#4203)

Signed-off-by: nelson <[email protected]>
Signed-off-by: Christoph Froehlich <[email protected]>

* Fix error messages (ros-navigation#4411)

Signed-off-by: Christoph Froehlich <[email protected]>

---------

Signed-off-by: Adam Galecki <[email protected]>
Signed-off-by: Christoph Froehlich <[email protected]>
Signed-off-by: Felix <[email protected]>
Signed-off-by: nelson <[email protected]>
Co-authored-by: Adam Gałecki <[email protected]>
Co-authored-by: bi0ha2ard <[email protected]>
Co-authored-by: Felix <[email protected]>
Co-authored-by: nelson <[email protected]>

* Enable reloading BT xml file with same name (ros-navigation#4209) (ros-navigation#4422)

* Let BtActionServer overwrite xml

* Make a ROS parameter for it

* Rename flag to always reload BT xml file

---------

Signed-off-by: Johannes Huemer <[email protected]>
Signed-off-by: Christoph Froehlich <[email protected]>
Co-authored-by: Johannes Huemer <[email protected]>

* fix bug mentioned in ros-navigation#3958 (ros-navigation#3972) (ros-navigation#4463)

* bug fixed

* add space

* Update planner_server.cpp

* add space for code style

* add childLifecycleNode mode to costmap_2d_ros

* add childLifecycleNode mode to costmap_2d_ros

* add childLifecycleNode mode to costmap_2d_ros

* add childLifecycleNode mode in costmap_2d_ros

* add childLifecycleNode mode in costmap_2d_ros

* add childLifecycleNode mode in costmap_2d_ros

* add ChildLifecycleNode mode in costmap_2d_ros

* NodeOption: is_lifecycle_follower_

* NodeOption: is_lifecycle_follower_

* fit to NodeOption: is_lifecycle_follower_

* NodeOption: is_lifecycle_follower_

* fit to NodeOption: is_lifecycle_follower

* fit to NodeOption: is_lifecycle_follower

* fit reorder Werror

* fix wrong use of is_lifecycle_follower

* remove blank line

* NodeOption: is_lifecycle_follower_

* NodeOption: is_lifecycle_follower_

* Add files via upload

* NodeOption: is_lifecycle_follower_

* NodeOption:is_lifecycle_follower_

* NodeOption:is_lifecycle_follower

* NodeOption:is_lifecycle_follower

* NodeOption:is_lifecycle_follower

* change default

* add NodeOption for costmap_2d_ros

* add node options for costmap2dros as an independent node

* code style reformat

* fit to NodeOption of Costmap2DROS

* fit to NodeOption of Costmap2DROS

* fit to NodeOption of Costmap2DROS

* Update nav2_costmap_2d/include/nav2_costmap_2d/costmap_2d_ros.hpp



* Update nav2_costmap_2d/include/nav2_costmap_2d/costmap_2d_ros.hpp



* Update nav2_costmap_2d/include/nav2_costmap_2d/costmap_2d_ros.hpp



* changes

* comment changes

* change get_parameter into =false

* comment modification

* missing line

* Update nav2_costmap_2d/include/nav2_costmap_2d/costmap_2d_ros.hpp

* Update nav2_costmap_2d/include/nav2_costmap_2d/costmap_2d_ros.hpp

* delete last line

* change lifecycle_test fit to NodeOption

---------

Co-authored-by: GoesM <[email protected]>
Co-authored-by: Steve Macenski <[email protected]>

* bt_service_node and bt_action_node: Don't block BT loop (backport ros-navigation#4214) (ros-navigation#4408) (ros-navigation#4475)

* bt_service_node and bt_action_node: Don't block BT loop (ros-navigation#4214)

* Set smaller timeout for service node



* Fix timeout calculation for service node



* Add a feasible timeout also for action node



---------



* Increasing test count from timeout handling changes (ros-navigation#4234)



---------

Signed-off-by: Christoph Froehlich <[email protected]>
Signed-off-by: Steve Macenski <[email protected]>
Co-authored-by: Steve Macenski <[email protected]>

* Behavior tree node for extracting pose from path (ros-navigation#4518) (ros-navigation#4525)

* add get pose from path action

Signed-off-by: MarcM0 <[email protected]>

* cleanup from PR suggestions

Signed-off-by: MarcM0 <[email protected]>

* Updates for main compatibility

Signed-off-by: MarcM0 <[email protected]>

* Lint and build fix

Signed-off-by: MarcM0 <[email protected]>

* More Lint and warnings

Signed-off-by: MarcM0 <[email protected]>

* More Lint and build

Signed-off-by: MarcM0 <[email protected]>

* remove code left over from older file

Signed-off-by: MarcM0 <[email protected]>

* fix test blackboard var name

Signed-off-by: MarcM0 <[email protected]>

* only populate pose frame if empty

Signed-off-by: MarcM0 <[email protected]>

* lint

Signed-off-by: MarcM0 <[email protected]>

---------

Signed-off-by: MarcM0 <[email protected]>
(cherry picked from commit 12a9c1d)

Co-authored-by: Marc Morcos <[email protected]>

* Make ros-navigation#4525 compile on humble (ros-navigation#4526)

* Make it compile on humble

Signed-off-by: Christoph Froehlich <[email protected]>

* Remove formatting

Signed-off-by: Christoph Froehlich <[email protected]>

---------

Signed-off-by: Christoph Froehlich <[email protected]>

* Fix backward motion for graceful controller (ros-navigation#4527) (ros-navigation#4566)

* Fix backward motion for graceful controller

Signed-off-by: Alberto Tudela <[email protected]>

* Update smooth_control_law.cpp

Signed-off-by: Alberto Tudela <[email protected]>

---------

Signed-off-by: Alberto Tudela <[email protected]>
(cherry picked from commit d1ad640)

Co-authored-by: Alberto Tudela <[email protected]>

* nav2_collision_monitor dynamic parameters polygon and source enabled for Humble (ros-navigation#4615)

* Copy modification from c2d84df into humble collision_monitor for dynamic parameter enabled in polygon

* Add the enabled dynamic parameter for source. Signed-off-by: Enzo Ghisoni <[email protected]>

* Start backport action_state_ declaration in collision_monitor_node_test.cpp

Signed-off-by: EnzoGhisoni <[email protected]>

---------

Signed-off-by: EnzoGhisoni <[email protected]>
Co-authored-by: EnzoGhisoni <[email protected]>

* Humble release 12: August 23 (ros-navigation#4644)

* Add configure and cleanup transitions to lifecycle manager and client (ros-navigation#4371)

Signed-off-by: Joni Pöllänen <[email protected]>

* [RotationShimController] Rotate to goal heading (ros-navigation#4332)

When arriving in the goal xy tolerance, the rotation shim controller
takes back the control to command the robot to rotate in the goal
heading orientation.

The initial goal of the rotationShimController was to rotate the robot
at the beginning of a navigation towards the paths orientation because
some controllers are not good at performing in place rotations. For the
same reason, the rotationShimController should be able to rotate the
robot towards the goal heading.

Signed-off-by: Antoine Gennart <[email protected]>

* [RotationShimController] Fix test for rotate to goal heading (ros-navigation#4289) (ros-navigation#4391)

* Fix rotate to goal heading tests

Signed-off-by: Antoine Gennart <[email protected]>

* reset laser_scan_filter before reinit (ros-navigation#4397)

Signed-off-by: goes <[email protected]>
Co-authored-by: goes <[email protected]>

* Warn if inflation_radius_ < inscribed_radius_ (ros-navigation#4423)

* Warn if inflation_radius_ < inscribed_radius_

Signed-off-by: Tony Najjar <[email protected]>

* convert to error

Signed-off-by: Tony Najjar <[email protected]>

---------

Signed-off-by: Tony Najjar <[email protected]>

* chore: cleanup ros1 leftovers (ros-navigation#4446)

Signed-off-by: Rein Appeldoorn <[email protected]>

* precomputeDistanceHeuristic is now computed once (ros-navigation#4451)

Signed-off-by: Vincent Belpois <[email protected]>
Co-authored-by: SiddharthaUpase <[email protected]>

* shutdown services in destructor of `ClearCostmapService` (ros-navigation#4495)

Signed-off-by: GoesM_server <[email protected]>
Co-authored-by: GoesM_server <[email protected]>

* fix(nav2_costmap_2d): make obstacle layer not current on enabled toggle (ros-navigation#4507)

Signed-off-by: Kemal Bektas <[email protected]>
Co-authored-by: Kemal Bektas <[email protected]>

* min_turning_r_ getting param fix (ros-navigation#4510)

* min_turning_r_ getting param fix

Signed-off-by: Ivan Radionov <[email protected]>

* Update nav2_mppi_controller/include/nav2_mppi_controller/motion_models.hpp

Signed-off-by: Steve Macenski <[email protected]>
Signed-off-by: Ivan Radionov <[email protected]>

---------

Signed-off-by: Ivan Radionov <[email protected]>
Signed-off-by: Steve Macenski <[email protected]>
Co-authored-by: Ivan Radionov <[email protected]>
Co-authored-by: Steve Macenski <[email protected]>

* Return out of map update if frames mismatch. Signed-off-by Joey Yang (ros-navigation#4517)

Signed-off-by: Joey Yang <[email protected]>

* check nullptr in smoothPlan() (ros-navigation#4544)

* check nullptr in smoothPlan()

Signed-off-by: GoesM <[email protected]>

* code-style

Signed-off-by: GoesM <[email protected]>

* code-style

Signed-off-by: GoesM <[email protected]>

* simple change

Signed-off-by: GoesM <[email protected]>

---------

Signed-off-by: GoesM <[email protected]>
Co-authored-by: GoesM <[email protected]>

* bump to 1.1.15

Signed-off-by: Steve Macenski <[email protected]>

* Revert "Add configure and cleanup transitions to lifecycle manager and client (ros-navigation#4371)"

This reverts commit 06ec958.

* fix merge conflict with humble sync

* fix merge conflict with humble sync

---------

Signed-off-by: Joni Pöllänen <[email protected]>
Signed-off-by: Antoine Gennart <[email protected]>
Signed-off-by: Antoine Gennart <[email protected]>
Signed-off-by: goes <[email protected]>
Signed-off-by: Tony Najjar <[email protected]>
Signed-off-by: Rein Appeldoorn <[email protected]>
Signed-off-by: Vincent Belpois <[email protected]>
Signed-off-by: GoesM_server <[email protected]>
Signed-off-by: Kemal Bektas <[email protected]>
Signed-off-by: Ivan Radionov <[email protected]>
Signed-off-by: Steve Macenski <[email protected]>
Signed-off-by: Joey Yang <[email protected]>
Signed-off-by: GoesM <[email protected]>
Co-authored-by: Joni Pöllänen <[email protected]>
Co-authored-by: Saitama <[email protected]>
Co-authored-by: GoesM <[email protected]>
Co-authored-by: goes <[email protected]>
Co-authored-by: Tony Najjar <[email protected]>
Co-authored-by: Rein Appeldoorn <[email protected]>
Co-authored-by: Vincent <[email protected]>
Co-authored-by: SiddharthaUpase <[email protected]>
Co-authored-by: Kemal Bektas <[email protected]>
Co-authored-by: Kemal Bektas <[email protected]>
Co-authored-by: Ivan Radionov <[email protected]>
Co-authored-by: Ivan Radionov <[email protected]>
Co-authored-by: Joey Yang <[email protected]>

* Fixing ros-navigation#4661: MPPI ackermann reversing taking incorrect sign sometimes (ros-navigation#4664) (ros-navigation#4668)

* Fixing ros-navigation#4661: MPPI ackermann reversing taking incorrect sign sometimes

Signed-off-by: Steve Macenski <[email protected]>

* fixing unit test for type implicit cast

Signed-off-by: Steve Macenski <[email protected]>

---------

Signed-off-by: Steve Macenski <[email protected]>
(cherry picked from commit 7eb47d8)

Co-authored-by: Steve Macenski <[email protected]>

---------

Signed-off-by: GoesM <[email protected]>
Signed-off-by: Huy Nguyen Van <[email protected]>
Signed-off-by: pepisg <[email protected]>
Signed-off-by: Wiktor Bajor <[email protected]>
Signed-off-by: Denis Sokolov <[email protected]>
Signed-off-by: goes <[email protected]>
Signed-off-by: Tony Najjar <[email protected]>
Signed-off-by: Steve Macenski <[email protected]>
Signed-off-by: João Britto <[email protected]>
Signed-off-by: Ramon Wijnands <[email protected]>
Signed-off-by: Krzysztof Pawełczyk <[email protected]>
Signed-off-by: Guillaume Doisy <[email protected]>
Signed-off-by: StetroF <[email protected]>
Signed-off-by: Brice <[email protected]>
Signed-off-by: Adam Galecki <[email protected]>
Signed-off-by: Christoph Froehlich <[email protected]>
Signed-off-by: Felix <[email protected]>
Signed-off-by: nelson <[email protected]>
Signed-off-by: Johannes Huemer <[email protected]>
Signed-off-by: EnzoGhisoni <[email protected]>
Signed-off-by: Joni Pöllänen <[email protected]>
Signed-off-by: Antoine Gennart <[email protected]>
Signed-off-by: Antoine Gennart <[email protected]>
Signed-off-by: Rein Appeldoorn <[email protected]>
Signed-off-by: Vincent Belpois <[email protected]>
Signed-off-by: GoesM_server <[email protected]>
Signed-off-by: Kemal Bektas <[email protected]>
Signed-off-by: Ivan Radionov <[email protected]>
Signed-off-by: Joey Yang <[email protected]>
Signed-off-by: GoesM <[email protected]>
Co-authored-by: GoesM <[email protected]>
Co-authored-by: GoesM <[email protected]>
Co-authored-by: Benjamin-Tan <[email protected]>
Co-authored-by: Huy Nguyen Van <[email protected]>
Co-authored-by: Steve Macenski <[email protected]>
Co-authored-by: Pedro Alejandro González <[email protected]>
Co-authored-by: Wiktor Bajor <[email protected]>
Co-authored-by: Sokolov Denis <[email protected]>
Co-authored-by: Tony Najjar <[email protected]>
Co-authored-by: João Britto <[email protected]>
Co-authored-by: Ramon Wijnands <[email protected]>
Co-authored-by: AzaelCicero <[email protected]>
Co-authored-by: Krzysztof Pawełczyk <[email protected]>
Co-authored-by: Guillaume Doisy <[email protected]>
Co-authored-by: Guillaume Doisy <[email protected]>
Co-authored-by: StetroF <[email protected]>
Co-authored-by: BriceRenaudeau <[email protected]>
Co-authored-by: mergify[bot] <37929162+mergify[bot]@users.noreply.github.com>
Co-authored-by: Christoph Fröhlich <[email protected]>
Co-authored-by: Adam Gałecki <[email protected]>
Co-authored-by: bi0ha2ard <[email protected]>
Co-authored-by: Felix <[email protected]>
Co-authored-by: nelson <[email protected]>
Co-authored-by: Johannes Huemer <[email protected]>
Co-authored-by: Marc Morcos <[email protected]>
Co-authored-by: Alberto Tudela <[email protected]>
Co-authored-by: Enzo Ghisoni <[email protected]>
Co-authored-by: EnzoGhisoni <[email protected]>
Co-authored-by: Joni Pöllänen <[email protected]>
Co-authored-by: Saitama <[email protected]>
Co-authored-by: Rein Appeldoorn <[email protected]>
Co-authored-by: Vincent <[email protected]>
Co-authored-by: SiddharthaUpase <[email protected]>
Co-authored-by: Kemal Bektas <[email protected]>
Co-authored-by: Kemal Bektas <[email protected]>
Co-authored-by: Ivan Radionov <[email protected]>
Co-authored-by: Ivan Radionov <[email protected]>
Co-authored-by: Joey Yang <[email protected]>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

4 participants