ros-navigation / navigation2

ROS 2 Navigation Framework and System
https://nav2.org/
Other
2.5k stars 1.27k forks source link

Docking - Unexpected behavior when trying to dock while already docked or undock while already not docked #4447

Closed jcarlosgm30 closed 3 months ago

jcarlosgm30 commented 3 months ago

Hi @SteveMacenski ,

I think there are two non-optimal behaviors in the docking server:

what do you think?

Bug report

Required Info:

Steps to reproduce issue

Dock behavior:

  1. Dock the robot
  2. Send another goal into /dock_robot with navigate_to_staging_pose set to true

Undock behavior:

  1. Send a goal into ' /undock_robot' while the robot is not docked

Expected behavior

Dock behavior:

Undock behavior:

Actual behavior

Dock behavior

Undock behavior:

Additional information


Feature request

I think it would be nice if the docking server checks if the robot is docked or not before the execution of dock / undock maneuvers.

Feature description

Implementation considerations

jcarlosgm30 commented 3 months ago

Here you can find a video with the behavior I would expect in these cases

ajtudela commented 3 months ago

Hi Carlos,

Yes, I faced the same behavior while testing the docking_server and is one of the things I'm improving. I was planning on fixing it in later PRs but if you don't want to wait, here is the fix.

jcarlosgm30 commented 3 months ago

Hi @ajtudela ,

Good catch!

I was preparing a PR pretty similar to yours. Here there is a video with the behavior after the fix I did.

Since you have opened the PR, I'll save myself from opening it. Let's wait for the review then!

SteveMacenski commented 3 months ago

https://github.com/ros-navigation/navigation2/pull/4448 addresses