ROS Resources: Documentation | Support | Discussion Forum | Index | Service Status | Q&A
Ask Your Question

MoveIt: Is it possible to have different types of controllers in one planning group?

asked 2020-05-07 14:03:10 -0500

JunTuck gravatar image

Dear all,

as the question suggests, is it possible to have inside one MoveIt planning group, for example: a FollowJointTrajectory controller along with an effort_controllers/JointPositionController?

edit retag flag offensive close merge delete

2 Answers

Sort by ยป oldest newest most voted

answered 2020-05-19 08:28:57 -0500

fvd gravatar image

updated 2020-05-19 10:47:53 -0500

It looks like each planning group connects to a single action server advertising the respective action (e.g. /follow_joint_trajectory), but since you can combine multiple planning groups into another one, you should be able to use that meta planning group to control your two subgroups which use different controllers.

If that doesn't work, you could write a custom controller for your robot that accepts the FollowJointTrajectory goal, passes part of it to a "real" FollowJointTrajectory controller and then does something else for a few of the joints.

edit flag offensive delete link more


At least the joint_trajectory_controller from ros_control can be configured to accept partial goals (ie: for only a subset of joints).

This may not need any custom controllers.

gvdhoorn gravatar image gvdhoorn  ( 2020-05-19 08:32:50 -0500 )edit

I was actually unsure and looked into it a little more. I updated my answer.

fvd gravatar image fvd  ( 2020-05-19 10:47:57 -0500 )edit

Well I'm not sure about the MoveIt side. I just wanted to point out the fact that partial goals are supported, so this could work without needing custom code.

gvdhoorn gravatar image gvdhoorn  ( 2020-05-19 13:36:44 -0500 )edit

answered 2020-05-28 09:28:12 -0500

jahad gravatar image

updated 2020-05-28 09:28:53 -0500

The answer has already been given in the discussion. Any type of controller can be grouped into a planning group. The trick is to define the group in roslaunch moveit_setup_assistant setup_assistant.launch and check if Pose is actually possible. And since the Generate Package generates a .srdf file, you should be able to use it in your Moveit by copying or editing a part of the group into your package.

edit flag offensive delete link more

Your Answer

Please start posting anonymously - your entry will be published after you log in or create a new account.

Add Answer

Question Tools



Asked: 2020-05-07 14:03:10 -0500

Seen: 349 times

Last updated: May 28 '20