-
Notifications
You must be signed in to change notification settings - Fork 155
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
Progress and ETA in feedback #174
Comments
Hi @Timple, I think that would be great! I think one could estimate the current position on the global plan by a radius search. First I would suggest to add the functionality to MBF and later also adding an optional interface to the plugins for these two feedbacks. PRs are welcome, regarding this idea ;) Cheers. |
Nice to see you agree. |
Nice idea! The radius search, or closest point of the path to the robot could be implemented without changing the interfaces to the planners and controllers. |
As stated in #216, we can incorporate this on Noetic. But also I'm planning to include waypoints in the GetPath action. Would make sense to pass the waypoints also to ExePath and provide the reached waypoints in the feedback? |
What is the difference between |
In general I would try to stick close to the interfaces provided by I see that |
That's why we didn't include the waypoints in the initial version. However, I have found that in some cases you really want waypoints:
But in any case, using the waypoints will be optional (and most planners will simply ignore them), so it will make no difference if you don't want the feature. |
Not exactly the same, as I'm thinking in ExePAth getting both a smooth path as now plus some sparse (optional) waypoints. |
I'm trying to make it up in Python and facing those questions |
This is exactly why I would leave this feedback up to the local planner. That one knows best. And if the local planner thinks a radius search is the best estimate, it can be implemented there. |
I was thinking in a very crude, best case estimation, like remaining path length / current linear speed. Otherwise, it will be NaN most of the times, as commonly used controllers as DWA don't implement MBF interface, much less this ETA. But we can always provide a means to the controller to replace with a better estimate. |
Regarding ETA, there are also some special cases, such as Restrict max velocity of the robot based on the robot position #905, which is based on a costmap. |
@corot A best-effort default is better than NaN, I agree! @artemiialessandrini We have also velocity restrictions for our planner (both internal as external). The internal ones we can account for, the external once not. That is why we are suggesting an ETA and not a TA 🙂 |
+1 , something similar as https://github.com/ros-planning/navigation/blob/melodic-devel/base_local_planner/src/goal_functions.cpp#L96 can be used for this default + base local planner limits. :). |
For better feedback in our application we would like to know how far the
ExePath
action is and at what time it thinks to finish.The
dist_to_goal
is not useful for this because U-shaped paths will initially have an increasingdist_to_goal
value.Therefor we propose to add these to values to the feedback:
However these values are probably only known to the local planner so the local planner should provide these.
Alternative:
Any comments / suggestions?
The text was updated successfully, but these errors were encountered: