Gazebo | Ignition | Community
Ask Your Question

Revision history [back]

Make sure you're setting the virtual joint with the correct robot base link. Assuming you're using the WidowX arm from RobotnikAutomation, you should be using base_footprint as the child frame name. You can check the root link for a robot URDF/Xacro using e.g.

check_urdf <(xacro --inorder $(rospack find widowx_arm_description)/robots/widowx_arm.urdf.xacro)

Source

Often, Gazebo-specific code is placed in a separate .xacro file that incorporates the original URDF. Such a file might look like:

<?xml version="1.0" ?>
<robot name="widowx_arm" xmlns:xacro="http://ros.org/wiki/xacro">
  <xacro:include filename="$(find widowx_arm_description)/robots/widowx_arm.urdf.xacro"/>

  <!-- Used for fixing robot to Gazebo 'base_link' -->
  <link name="world"/>
  <joint name="fixed" type="fixed">
    <parent link="world"/>
    <child link="base_footprint"/>
  </joint>
</robot>