How to make move_group_python node move the pr2 in gazebo

asked 2017-01-13 12:26:16 -0600

dinesh gravatar image

updated 2017-01-13 20:28:40 -0600

How can i make the move_group_python_interface_tutorial.py to move the pr2 robot inside the gazebo. I have moved the pr2 inside the gazebo from this tutorial from a moveit_planning_execution.launch file and i've used this tutorial to move a pr2 robot inside the rviz. When try to put this node inside the moveit_planning_execution.launch file which contains the planning and execution component of moveit, the robot moves inside the rviz as the python code describes but the robot inside the gazebo is not moving. According to the move_group_interface_python tutorial after i uncomment the # group.go(wait=True) line shouldn't the pr2 inside gazebo also move sinnce all the controllers are active. How should i complete this task, i want to move a robot(right now pr2) from a action client/moveit python node, but i dont know right now how can i do it. The screen shot of the msgs after the line group.go() is: image description My moveit_planning_execution.launch file:

<launch>
 <include file="$(find pr2_moveit_config)/launch/move_group.launch">
  <arg name="publish_monitored_planning_scene" value="true" />
 </include>

  <node name="move_group_python_interface_tutorial" pkg="pr2_moveit_tutorials" type="move_group_python_interface_tutorial.py" respawn="false" output="screen">
  </node>

 # The visualization component of MoveIt!
 <include file="$(find pr2_moveit_config)/launch/moveit_rviz.launch"/>
</launch>

The move_group.launhc file has below lines:

 <arg name="moveit_controller_manager" default="pr2_moveit_controller_manager/Pr2MoveItControllerManager" />
 <param name="moveit_controller_manager" value="$(arg moveit_controller_manager)"/>
 <arg name="controller_manager_name" default="pr2_controller_manager" />
 <param name="controller_manager_name" value="$(arg controller_manager_name)" />
 <arg name="use_controller_manager" default="true" />
 <param name="use_controller_manager" value="$(arg use_controller_manager)" />
 <rosparam file="$(find pr2_moveit_config)/config/pr2_execution_controllers.yaml"/>

  <rosparam command="load" file="$(find pr2_moveit_config)config/pr2_execution_controllers.yaml"/>

and the pr2_execution_controllers.yaml file is:

controller_list:
  - name: r_arm_controller
    action_ns: follow_joint_trajectory
    default: true
    joints:
      - r_shoulder_pan_joint
      - r_shoulder_lift_joint
      - r_upper_arm_roll_joint
      - r_elbow_flex_joint
      - r_forearm_roll_joint
      - r_wrist_flex_joint
      - r_wrist_roll_joint
  - name: l_arm_controller
    action_ns: follow_joint_trajectory
    default: true
    joints:
      - l_shoulder_pan_joint
      - l_shoulder_lift_joint
      - l_upper_arm_roll_joint
      - l_elbow_flex_joint
      - l_forearm_roll_joint
      - l_wrist_flex_joint
      - l_wrist_roll_joint
  - name: torso_controller
    action_ns: follow_joint_trajectory
    default: true
    joints:
      - torso_lift_joint
  - name: r_gripper_controller
    action_ns: gripper_action
    default: true
    joints:
      - r_gripper_joint
      - r_gripper_l_finger_joint
      - r_gripper_r_finger_joint
      - r_gripper_l_finger_tip_joint
      - r_gripper_r_finger_tip_joint
      - r_gripper_motor_screw_joint
      - r_gripper_motor_slider_joint
  - name: l_gripper_controller
    action_ns: gripper_action
    default: true
    joints:
      - l_gripper_joint
      - l_gripper_l_finger_joint
      - l_gripper_r_finger_joint
      - l_gripper_l_finger_tip_joint
      - l_gripper_r_finger_tip_joint
      - l_gripper_motor_screw_joint
      - l_gripper_motor_slider_joint
  - name: head_traj_controller
    action_ns: follow_joint_trajectory
    default: true
    joints:
      - head_tilt_joint
      - head_pan_joint

I'm running

 roslaunch pr2_moveit_config moveit_planning_execution.launch

I'm using ros indigo.

edit retag flag offensive close merge delete