0
$\begingroup$

Rosanswers logo

Hello everyone, I'm struggling with a urdf model to visualize in rviz, this is the file I've written so far:

<?xml version="1.0"?>
<robot name="bot2489">

  <material name="black">
    <color rgba = "0 0 0 1"/>
  </material>

  <link name="base_link">
    <visual>
      <origin rpy="0.0 0 0" xyz="0 0 0"/>
      <material name="black"/>
      <geometry>
        <mesh filename="package://bot2489_description/meshes/bot2489_body.dae"/>
      </geometry>
    </visual>
    <collision>
      <origin rpy="0.0 0 0" xyz="0 0 0"/>
      <geometry>
        <mesh filename="package://bot2489_description/meshes/bot2489_body.dae"/>
      </geometry>
    </collision>
  </link>
</robot>

The problem is that when I launch it in rviz, using the urdf_tutorial display.launch file, nothing appears. In the "Global Status" section of the window there's a warning :

No tf data. Actual error: Fixed Frame [base_link] does not exist

It is weird, because the .dae file should be fine (is made with Rhino v5 and saved as .dae), and on the terminal, while loading the file, I get no errors. Can you please help me to understand what I'm doing wrong?


Originally posted by SteBisi on ROS Answers with karma: 3 on 2017-11-28

Post score: 0


Original comments

Comment by gvdhoorn on 2017-11-29:
Can you update your question text with the exact command that you use to start everything (ie: the one with display.launch) and include the complete output you see on the console after starting it?

Comment by jarvisschultz on 2017-11-29:
If you posted your complete URDF, I think the issue is that you don't have any <joint> elements. Without a joint connecting two links, there is nothing for the robot_state_publisher to send on /tf. Try adding a link with only the name set, and a fixed joint connecting the two links

Comment by SteBisi on 2017-11-29:
@jarvisschultz, I think it t could be also that, but I got the same error even after adding the joints. Ended up that the problem were the .dae files, that I created with rhino.I just had to export them to Blender as .3ds files and there export them as .dae files and everything worked

Comment by gvdhoorn on 2017-11-30:
It would perhaps be good to see what the incompatibility is. Could you perhaps submit an issue to ros-visualization/rviz/issues with a minimal URDF and an example Collada file that shows this problem?

$\endgroup$

1 Answer 1

0
$\begingroup$

Rosanswers logo

Try adding inertial before the ,, this way

  <inertial>
    <mass value="1.0" />
    <inertia ixx="1.0" ixy="0.0" ixz="0.0" iyy="1.0" iyz="0.0" izz="1.0" />
  </inertial>

More accurate inertial can be from the CAD software itself. Also, often the mesh (*.dae or *.stl ) from CAD software will be in millimeters. So you might also need to scale the dimensions by 0.001 this way


Originally posted by avcx with karma: 26 on 2017-11-28

This answer was ACCEPTED on the original site

Post score: 0


Original comments

Comment by SteBisi on 2017-11-29:
Thank you for the answer, I tried to do what you said but I still ave the same problem

$\endgroup$

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.