After creating the MoveIt! configuration, we should update the controllers.yamlfile inside the config folder of the MoveIt! package. Here is an example of controllers.yaml:
controller_list: - name: "" action_ns: follow_joint_trajectory type: FollowJointTrajectory joints: - shoulder_pan_joint - shoulder_lift_joint - elbow_joint - wrist_1_joint - wrist_2_joint - wrist_3_joint
We should also update joint_limits.yaml about the joint information. Here is a code snippet of joint_limits.yaml:
joint_limits: shoulder_pan_joint: has_velocity_limits: true max_velocity: 2.16 has_acceleration_limits: true max_acceleration: 2.16
We can also change the Kinematic solver plugin by editing the kinematics.yaml file. After editing all the configuration files, we need to edit the controller manager launch file (<robot>_moveit_config/launch/<robot>_moveit_controller_manager.launch).
Here is an example of the controller manager.launch file:
<launch> <rosparam file="$(find ur10_moveit_config)/config/
controllers.yaml"/> <param name="use_controller_manager" value="false"/> <param name="trajectory_execution/execution_duration_monitoring"
value="false"/> <param name="moveit_controller_manager" value=
"moveit_simple_controller_manager/
MoveItSimpleControllerManager"/> </launch>
After creating the controller manger, we need to create the <robot>_moveit_planning_execution.launch file. Here is an example of this file:
<launch> <arg name="sim" default="false" /> <arg name="limited" default="false"/> <arg name="debug" default="false" /> <!-- Remap follow_joint_trajectory --> <remap if="$(arg sim)" from="/follow_joint_trajectory" to="/arm_controller/follow_joint_trajectory"/> <!-- Launch moveit -->
<include file="$(find ur10_moveit_config)/launch/move_group.launch"> <arg name="limited" default="$(arg limited)"/> <arg name="debug" default="$(arg debug)" /> </include> </launch>