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

MoveIt multiple planning pipelines

asked 2021-04-26 03:59:44 -0500

IgnacioUD gravatar image

I recently found the pilz_industrial_motion_planner, It can plan industrial tipical movements (PTP, LIN and CIRC). Following the MoveIt tutorials pilz_industrial_motion_planner tutorial and the prbt_moveit_config I've managed to work with ompl and pilz_industrial_motion_planner in RVIZ.

As the tutorial explains, using the pilz_industrial_motion_planner with the Python/C++ MoveIt interface is as simple as setting the planner_id to "PTP", "LIN" or "CIRC". The main issue is when you try to work with ompl and pilz_industrial_motion_planner in the same script.

Apparently you can only work with one planning pipeline at a time. When I try to work with the pilz_industrial_motion_planner having set ompl to default I get the following warning: Cannot find planning configuration for group 'robot_1' using planner 'PTP'. Will use defaults instead.

When I set pilz_industrial_motion_planner to default I get the same error the other way (I can only plan with "PTP", "LIN" or "CIRC").

¿I'm mising something or is there a way or a workaround to work with both planning pipelines with the Python/C++ MoveIt interface?

edit retag flag offensive close merge delete


hi, do you know how to set the pilz as the default planner when there're multiple pipelines, cause in my case, the default planner is always ompl even if i changed the default planner as pilz in the move_group launch file

xxiaoxiong gravatar image xxiaoxiong  ( 2022-05-31 22:10:24 -0500 )edit

1 Answer

Sort by » oldest newest most voted

answered 2021-04-26 10:30:06 -0500

fvd gravatar image
  1. You need to be on Noetic or later, or build MoveIt from source to use multiple planning pipelines in Melodic or earlier. You already did this (since it works in Rviz), I just want to state it for the record.

  2. You need to use not only setPlannerId (LIN, PTP, CIRC) but also setPlanningPipelineId (pilz_industrial_motion_planner).

If you find that a part of the tutorial is insufficient or an error message is not clear enough, please feel free to submit a pull request to improve it.

edit flag offensive delete link more


Hi fvd, as always thank you for your accurate and quick response. I will indeed submit a pull request, a simple example script can be selfexplanatory for such things. ¿Is there a way of changing the planning pipeline using the Python interface?

IgnacioUD gravatar image IgnacioUD  ( 2021-04-26 14:00:48 -0500 )edit

Yes, soon. In the meantime you can use these changes.

fvd gravatar image fvd  ( 2021-04-26 14:07:00 -0500 )edit

Question Tools



Asked: 2021-04-26 03:59:44 -0500

Seen: 945 times

Last updated: Apr 26 '21