moveit_tutorials icon indicating copy to clipboard operation
moveit_tutorials copied to clipboard

Switching controllers during runtime while using MoveIt

Open Cody-Vu opened this issue 11 months ago • 0 comments

I work with the franka panda robot using moveit and have a question about switching controllers. Is it possible to configure multiple controllers in the moveit_controllers.yaml file, for example position and effort controller: controller_list:

- name: effort_joint_trajectory_controller
   action_ns: follow_joint_trajectory
   type: FollowJointTrajectory
   joints:
     - panda_joint1
     - panda_joint2
     - panda_joint3
     - panda_joint4
     - panda_joint5
     - panda_joint6
     - panda_joint7
 - name: position_joint_trajectory_controller
   action_ns: follow_joint_trajectory
   type: FollowJointTrajectory
   default: True
   joints:
     - panda_joint1
     - panda_joint2
     - panda_joint3
     - panda_joint4
     - panda_joint5
     - panda_joint6
     - panda_joint7

and switch them during runtime while the moveit node is constantly running? Right now I have the issue that moveit is only sending the trajectory to the default controller, even if I stop the default controller and run the other one instead. In the franka control node I get the error:

Can't accept new action goals. Controller is not running.

Is there a way to switch the controllers during runtime while using moveit ? Thanks in advance!

Cody-Vu avatar Apr 10 '25 13:04 Cody-Vu