ROS Resources: Documentation | Support | Discussion Forum | Index | Service Status | ros @ Robotics Stack Exchange
Ask Your Question

Is there a tool to pause/resume/seek MoveIt trajectories?

asked 2016-06-24 10:33:50 -0500

VictorLamoine gravatar image

updated 2017-07-20 06:45:26 -0500

I am planning robot trajectories using MoveIt, sometimes the path is very long and I want to see only a specific part of the trajectory.

Is there a tool in ROS that provides a seek bar and allows me to pause/resume trajectories?

edit retag flag offensive close merge delete



Good question. I haven't seen something like that. It would be quite involved though: caching trajectories, sitting between MoveIt and whatever controller you have configured, recalculating time_from_start and velocity/accel profiles, etc.

gvdhoorn gravatar image gvdhoorn  ( 2016-06-25 02:39:28 -0500 )edit

@gvdhoorn should I open an issue on MoveIt issue tracker? This probably requires work in more packages than just MoveIt.

VictorLamoine gravatar image VictorLamoine  ( 2017-07-20 06:44:54 -0500 )edit

I would suggest opening one on the MoveIt tracker. At the very least we can discuss there where this sort of functionality could/should live.

Although I expect the consensus will be: if there is no (re)planning involved, implement an action server that supports what you want and use that.

gvdhoorn gravatar image gvdhoorn  ( 2017-07-20 07:00:27 -0500 )edit

2 Answers

Sort by ยป oldest newest most voted

answered 2017-07-20 07:31:16 -0500

gvdhoorn gravatar image

updated 2018-11-05 08:10:13 -0500

VictorLamoine gravatar image

O wait. I missed this part:

sometimes the path is very long and I want to see only a specific part

If it's really just about visualisation -- instead of execution, as I initially understood your question: that has actually recently been added. See ros-planning/moveit#491.

The updated MoveIt! RViz Plugin Tutorial tutorial shows what this looks like now (in Introspecting trajectory waypoints):

image description

edit flag offensive delete link more


My goal is to be able to pause/resume/seek the simulation. I'll take a look at this and try it!

VictorLamoine gravatar image VictorLamoine  ( 2017-07-20 08:14:53 -0500 )edit

Afaik this is really just for visualisation.

For execution I don't think there is something.

gvdhoorn gravatar image gvdhoorn  ( 2017-07-20 08:15:35 -0500 )edit

I have tried it and it looks surprisingly easy at first sight. I won't select your answer as correct right now as I'm not sure yet how I can use it but it is certainly very useful. I will comment again when I understand more about how it works!

VictorLamoine gravatar image VictorLamoine  ( 2017-07-24 04:14:46 -0500 )edit

answered 2017-07-24 04:37:43 -0500

v4hn gravatar image

Basically the answer to your question depends on what you mean by "pause the simulation".

  • Pause gazebo? That's easy.

  • Pause the visualized trajectory in RViz? That's what the new Trajectory Slider is for.

  • Pause MoveIt's demo mode? That's not as easy. We could add a new execution mode 'in rviz' (or something like that) to the (or write a new fake controller) and publish the last point displayed in RViz back to the fake controller. That way the fake controller could actually "execute" the Trajectory by showing it in RViz. That way you could pause the visualization in RViz and it would actually pause the execution.

It might be that you have to disable trajectory execution monitoring for this to work. At the moment, I'm unsure whether MoveIt monitors the execution process of the fake controllers.

edit flag offensive delete link more


I think the question is indeed really what "simulation" is supposed to mean here. If it's just the visualisation that RViz shows, then the slider would indeed suffice. For everything else more work will be needed.

gvdhoorn gravatar image gvdhoorn  ( 2017-07-24 05:19:30 -0500 )edit

Question Tools



Asked: 2016-06-24 10:33:50 -0500

Seen: 1,018 times

Last updated: Nov 05 '18