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

Add option to use open-loop control with Rotation Shim #4880

Open
wants to merge 5 commits into
base: main
Choose a base branch
from

Conversation

RBT22
Copy link
Contributor

@RBT22 RBT22 commented Jan 29, 2025


Basic Info

Info Please fill out this column
Ticket(s) this addresses NA
Primary OS tested on Ubuntu
Robotic platform tested on own robot hardware
Does this PR contain AI generated software? No

Description of contribution in a few bullet points

Description of documentation updates required from your changes

New parameter description needed and migration guide.


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

Copy link

codecov bot commented Jan 29, 2025

Codecov Report

Attention: Patch coverage is 93.75000% with 1 line in your changes missing coverage. Please review.

Files with missing lines Patch % Lines
...m_controller/src/nav2_rotation_shim_controller.cpp 93.75% 1 Missing ⚠️
Files with missing lines Coverage Δ
..._shim_controller/nav2_rotation_shim_controller.hpp 100.00% <ø> (ø)
...m_controller/src/nav2_rotation_shim_controller.cpp 95.05% <93.75%> (-0.27%) ⬇️

... and 2 files with indirect coverage changes

Copy link
Member

@SteveMacenski SteveMacenski left a comment

Choose a reason for hiding this comment

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

There are some pretty reasonable blocks of code without coverage, so I think this needs some tests to cover those gaps by enabling the setting and checking for the expected outputs without odometry feedback

Otherwise, LTGM!

RBT22 added 5 commits January 30, 2025 08:45
Signed-off-by: RBT22 <rozgonyibalint@gmail.com>
Signed-off-by: RBT22 <rozgonyibalint@gmail.com>
Signed-off-by: RBT22 <rozgonyibalint@gmail.com>
Signed-off-by: RBT22 <rozgonyibalint@gmail.com>
Signed-off-by: RBT22 <rozgonyibalint@gmail.com>
Copy link
Member

@SteveMacenski SteveMacenski left a comment

Choose a reason for hiding this comment

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

Small docs nitpick and I can merge the pair!

Copy link
Member

@SteveMacenski SteveMacenski left a comment

Choose a reason for hiding this comment

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

Whoops, missed one.

If you have a goal then stop navigating for some time, then start navigating again, the state will be stale. If the goal is canceled mis-spin, then the last value will not be reset

We should override reset() in the controller and reset the value to max there as well. The reset() was added to the controller API a little while ago for exactly these kinds of between-request state clearing operations

https://github.com/ros-navigation/navigation2/blob/main/nav2_controller/src/controller_server.cpp#L766

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.

2 participants