Gazebo can't find the link after declaring it

asked 2018-09-25 05:26:55 -0500

stevemartin gravatar image

updated 2018-09-25 07:21:55 -0500

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 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 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 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 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}"/>

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
edit retag flag offensive close merge delete


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.

gvdhoorn gravatar image gvdhoorn  ( 2018-09-25 06:03:41 -0500 )edit

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

stevemartin gravatar image stevemartin  ( 2018-09-25 06:36:22 -0500 )edit

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.

gvdhoorn gravatar image gvdhoorn  ( 2018-09-25 06:39:28 -0500 )edit

I did just now

stevemartin gravatar image stevemartin  ( 2018-09-25 07:22:03 -0500 )edit