0
$\begingroup$

Rosanswers logo

This question is related to my earlier one on the nav stack.

Suppose I'm sending move_base a goal; I want to be able to interrupt move_base during its plan execution. Afaik, the current nav stack doesn't allow this.

Is it better to design an "interruptible" nav stack, or are there other alternatives?

As an example of alternative: I could get a global plan from the ~make_plan , and directly use cmd_vel to navigate between waypoints. These commands can be turned off when an interrupt flag is set.


Originally posted by PKG on ROS Answers with karma: 365 on 2014-03-05

Post score: 0


Original comments

Comment by David Lu on 2014-03-05:
Do you just want to interrupt the nav stack (i.e. get it to pause) or would stopping the action and then restarting it work?

Comment by PKG on 2014-03-05:
Stopping the action for good, and restarting it later if needed, is OK

$\endgroup$

1 Answer 1

0
$\begingroup$

Rosanswers logo

move_base exposes two APIs: a simple topic for recieving goals ( move_base_simple/goal ) and an actionlib server ( move_base/goal, move_base/cancel, etc).

The actionlib server supports queuing and canceling goals, so it does in fact support canceling a goal while it is in progress.

This tutorial describes how to set up an actionlib client to send goals to the navigation stack, and the actionlib API documentation documents the various cancel functions that are available.


Originally posted by ahendrix with karma: 47576 on 2014-03-06

This answer was ACCEPTED on the original site

Post score: 2

$\endgroup$

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.