Robotics StackExchange | Archived questions

Gazebo can't find the link after declaring it

Failed to build tree: child link [ired1] of joint [ired1_joint] not found This is what I get when I try to launch my gazebo simulation. It is strange because I have declared all the joints and links:

<link name="color"/>
  <link name="depth"/>
  <iink name="ired1"/>
  <link name="ired2"/>

  <joint name="body_to_camera_mount" type="fixed">
    <parent link="chassis"/>
    <child link="rs200_camera"/>
    <origin xyz=".2 0 0" rpy="0 0 0"/>
  </joint>

  <joint name="color_joint" type="fixed">
    <parent link="rs200_camera"/>
    <child link="color"/>
    <origin xyz="0 -0.046 0.004" rpy="${pi/2} ${pi} ${pi/2}"/>
  </joint>

  <joint name="depth_joint" type="fixed">
    <parent link="rs200_camera"/>
    <child link="depth"/>
    <origin xyz="0 -0.03 0.004" rpy="${pi/2} ${pi} ${pi/2}"/>
  </joint>

  <joint name="ired1_joint" type="fixed">
    <parent link="rs200_camera"/>
    <child link="ired1"/>
    <origin xyz="0 -0.06 0.004" rpy="${pi/2} ${pi} ${pi/2}"/>
  </joint>

  <joint name="ired2_joint" type="fixed">
    <parent link="rs200_camera"/>
    <child link="ired2"/>

    <origin xyz="0 0.01 0.004" rpy="${pi/2} ${pi} ${pi/2}"/>
  </joint>

Can someone spot a problem may be?

The full error message:

[ERROR] [1537878063.001524419]: Failed to build tree: child link [ired1] of joint [ired1_joint] not found
[ INFO] [1537878063.115866218]: Initializing nodelet with 8 worker threads.
[state_publisher-5] process has died [pid 80082, exit code 255, cmd /opt/ros/kinetic/lib/robot_state_publisher/robot_state_publisher __name:=state_publisher __log:=/home/ikhsanov/.ros/log/775a9ee0-c0bd-11e8-9cfd-000c29e39aa6/state_publisher-5.log].
log file: /home/ikhsanov/.ros/log/775a9ee0-c0bd-11e8-9cfd-000c29e39aa6/state_publisher-5*.log

Asked by stevemartin on 2018-09-25 05:26:55 UTC

Comments

None of your links have inertial children, and none of your joints have dynamics children. Those used to be required for Gazebo to load your URDF correctly. You might want to check it.

Asked by gvdhoorn on 2018-09-25 06:03:41 UTC

There is no need to specify interial for camera parts. The actual camera has interial parameters. I do not think that this is a problem

Asked by stevemartin on 2018-09-25 06:36:22 UTC

The Gazebo URDF parser plainly ignores links without the required dynamics-related elements. Whether they are necessary or not, it is a common cause for error messages relating to missing links and/or joints with Gazebo.

Can you please copy-paste more lines of output from Gazebo? Then we can see.

Asked by gvdhoorn on 2018-09-25 06:39:28 UTC

I did just now

Asked by stevemartin on 2018-09-25 07:22:03 UTC

Answers