moveit_task_constructor icon indicating copy to clipboard operation
moveit_task_constructor copied to clipboard

Set max cartesian end-effector speed in planning pipeline

Open gautz opened this issue 3 years ago • 5 comments

Enable trajectory post-processing in planning pipeline to set maximum cartesian end-effector speed. Requires following to be merged:

  • https://github.com/ros-planning/moveit/pull/2856
  • https://github.com/ros-planning/moveit_msgs/pull/130

How to use? Instead of setProperty("max_velocity_scaling_factor", velocity);, use:

pipeline_planner->setProperty("max_cartesian_speed", velocity); // cartesian_velocity
pipeline_planner->setProperty("cartesian_speed_end_effector_link", welding_tcp_frame_);

I will also implement it in the cartesian demo.

Solves #276

gautz avatar Jun 25 '21 08:06 gautz

I tested this successfully in the pick_place_task to set velocity of the hand when moving the panda_arm with the pipeline planner. For instance I can set:

  • Move-to pre-grasp with max free_space_velocity_=1 [m/s]
  • Move-to place with max approach_velocity_=0.1 [m/s]

Do you see a better pipeline planner demo where to set the max cartesian velocity?

gautz avatar Jun 25 '21 09:06 gautz

Do you see a better pipeline planner demo where to set the max cartesian velocity?

Instead of squeezing all features into the one demo, I would encourage you to just create a new demo, possibly something that resembles a simple welding trajectory.

v4hn avatar Jun 25 '21 12:06 v4hn

Do you see a better pipeline planner demo where to set the max cartesian velocity?

Instead of squeezing all features into the one demo, I would encourage you to just create a new demo, possibly something that resembles a simple welding trajectory.

Makes sense, we will probably propose a welding demo, but rather in middle-long term.

In shorter term I could propose to adapt the cartesian Demo to use the pipeline planner (Pilz and/or OMPL constrained planning) and set different cartesian velocities in there.

gautz avatar Jun 25 '21 13:06 gautz

I tried to add the explicit call in cartesian_path but I do not manage to get the velocity set in the cartesian demo.

gautz avatar Jun 30 '21 14:06 gautz

@rhaschke when using the cartesian_path planner, neither setting max_velocity_scaling_factor nor max_cartesian_speed results in a change in robot velocity. Could it be somehow related to the discussions in #210 ?

gautz avatar Jul 20 '21 15:07 gautz