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

MoveIt with rrbot

asked 2015-08-06 12:57:02 -0500

mg001 gravatar image


Has anyone implemented MoveIt with rrbot? Would you mind sharing your code? [Rrbot is used to introduce ROS controls in gazebosim tutorials: . ]

My goal is to learn how to set-up MoveIt with a very simple robot so its joints could be moved in a simulator. I have configured MoveIt setup assistant and I can plan paths towards the goal position. However, I am struggling with plan execution.

I am raising this questions because I could not find any tutorials for this and I believe there are a lot of students who would benefit from step-by-step explanation about full MoveIt set-up.

Thank you in advance.


edit retag flag offensive close merge delete

1 Answer

Sort by ยป oldest newest most voted

answered 2016-06-16 22:01:03 -0500

mizu_lily gravatar image

I think the key problem is that the example of rrbot uses a hardware interface of joint effort. If you want to implement MoveIt to it, you need to build a joint trajectory controller.

  • Add a trajectory controller to your robot:


type: effort_controllers/JointTrajectoryController
   - joint1
   - joint2
    goal_time: 0.0
    stopped_velocity_tolerance: 0.01
    joint1: {trajectory: 0.01, goal: 0.01}
    joint2: {trajectory: 0.01, goal: 0.01}
   joint1: {p: 100.0, d: 75.0, i: 0.0, i_clamp: 0.0}
   joint2: {p: 100.0, d: 25.0, i: 0.0, i_clamp: 0.0}
state_publish_rate:  100
action_monitor_rate: 100
stop_trajectory_duration: 0.0

notice that you should maunally setup these parameters to have a good performance, especially pid.

  • Remap the controller topic to MoveIt topic


    <remap from="/rrbot/arm_controller/follow_joint_trajectory" to="/joint_trajectory_action"/> <remap from="/rrbot/arm_controller/state" to="/feedback_states"/> <remap from="/rrbot/arm_controller/command" to="/joint_path_command"/>

If you just want to learn how to set-up MoveIt with a simple robot, I suggest you change the hardware interface to joint position interface. It's at the bottom of the description of rrbot. Tag hardwareInterface of joint and actuator both should be PositionJointInterface. And then in the joint trajectory controller, you don't have to tune pid any more.

Hope this would help.

edit flag offensive delete link more

Question Tools

1 follower


Asked: 2015-08-06 12:57:02 -0500

Seen: 551 times

Last updated: Aug 06 '15