Skip to content

CSDA10F Moveit Configuration

Daniel Ordonez edited this page May 18, 2018 · 12 revisions

CSDA10F Moveit Configuration

The invite_motoman_moveit_config package host the MoveIt! configuration of the Motoman CSDA10F with robotiq (85mm and 140mm stroke) 2-finger adaptive grippers.

Move Groups

The following move groups were configured:

  • csda10f: Move group of all actuated joints in the CSDA10F robot.
  • arms: Move group of both arms without the torso joint.
  • arm_left: Move group of all the joints in the left arm with the 85mm Robotiq gripper.
  • arm_right: Move group of all the joints in the right arm with the 140mm Robotiq gripper.
  • torso: Move group with only the torso as actuated joint.
  • left_gripper: Move group representing the left 85mm Robotiq gripper.
  • right_gripper: Move group representing the right 140mm Robotiq gripper.

In order to see the move groups in link level detail, launch the Moveit setup assistant and go through the configuration.

roslaunch invite_motoman_moveit_config setup_assistant.launch

final Top left clockwise: csda10f, arms, arm_left, arm_right

End effectors

The two move groups left_gripper and right_gripper contain all the respective joints for each gripper (with adapter plates and sensors), the gripper TCP is configured through virtual links that belong to the arm_left and arm_right move groups instead of the grippers one, but this is just how ROS tcp should be configurated.

Tool Center Points

Both robotiq grippers have configured their TCP through the virtual links arm_left_link_tcp and arm_right_link_tcp (defined on the invite_csda10f.xacro file), in case any new TCP needs to be configured keep in mind that the new virtual link representing you tool TCP should be a child of each arm tool_0 joint .

37992258-7c5dc7dc-320b-11e8-8a8a-cf8d08433623 left_gripper, right_gripper

Kinematic Solver

  • csda10f: KDL_kinematics_plugin
  • arms: trac_ik_kinematics_plugin
  • arm_left: trac_ik_kinematics_plugin
  • arm_right: trac_ik_kinematics_plugin
  • torso: KDL_kinematics_plugin

Track_IK solve_type parameter

All move groups configured to work with Trac_IK kinematics solver are configured with the parameter solve type to Manipulation2, which means that the solver will runs for full timeout, and return a solution that minimizes cond(J) = |J|*|J^-1|, being J the Jacobian matrix of the move group joints.

Track_IK performance

Track_IK is selected since it has proven its superiority over KDL over a different set of robots (none of them Motoman), specifically on 7 DoF arms used in two arm robots (i.g. Valkyre, Pr2, Baxter, Robonaut). Currently it doesnt support mimic joints which makes it impossible to integrate over any moove group that uses the torsoo joint.

Comparison between KDL and Track IK kineamics solvers