Robotics StackExchange | Archived questions

Cannot spawn .dae robot in indigo

Hey there,

I have a collada .dae file of a plate see below.

If I would like to spawn now an urdf model with that collada file in indigo I get an error (see below)

If I test the same in ros kinetic I have no errors. All works as it should. Anybody knows why this is the case?

Do I have to somehow integrate the image into the collada file and not as extra png file?

I would like to get this to work on ROS-INDIGO.

Error:

    [ERROR] [1535445649.111351713]: Could not load resource [package://plate_aruco_description/meshes/visual/plate.dae]: Collada: package://plate_aruco_description/meshes/visual/plate.dae - Expected attribute "texcoord" at element "texture".
[ERROR] [1535445649.111697416]: Could not load model 'package://plate_aruco_description/meshes/visual/plate.dae' for link 'plate_link': OGRE EXCEPTION(6:FileNotFoundException): Cannot locate resource package://plate_aruco_description/meshes/visual/plate.dae in resource group Autodetect or any other group. in ResourceGroupManager::openResource at /build/buildd/ogre-1.8-1.8.1+dfsg/OgreMain/src/OgreResourceGroupManager.cpp (line 756)
[ERROR] [1535445649.111833177]: Could not load model 'package://plate_aruco_description/meshes/visual/plate.dae' for link 'plate_link': OGRE EXCEPTION(6:FileNotFoundException): Cannot locate resource package://plate_aruco_description/meshes/visual/plate.dae in resource group Autodetect or any other group. in ResourceGroupManager::openResource at /build/buildd/ogre-1.8-1.8.1+dfsg/OgreMain/src/OgreResourceGroupManager.cpp (line 756)
[ERROR] [1535445649.111994178]: Could not load model 'package://plate_aruco_description/meshes/visual/plate.dae' for link 'plate_link': OGRE EXCEPTION(6:FileNotFoundException): Cannot locate resource package://plate_aruco_description/meshes/visual/plate.dae in resource group Autodetect or any other group. in ResourceGroupManager::openResource at /build/buildd/ogre-1.8-1.8.1+dfsg/OgreMain/src/OgreResourceGroupManager.cpp (line 756)

.dae - Collada file of a plate:

<?xml version="1.0" encoding="utf-8"?>
<COLLADA xmlns="http://www.collada.org/2005/11/COLLADASchema" version="1.4.1">
  <asset>
    <contributor>
      <author>Blender User</author>
      <authoring_tool>Blender 2.79.0</authoring_tool>
    </contributor>
    <created>2018-08-27T11:55:01</created>
    <modified>2018-08-27T11:55:01</modified>
    <unit name="meter" meter="1"/>
    <up_axis>Z_UP</up_axis>
  </asset>
  <library_images>
    <image id="_0x50_png" name="_0x50_png">
      <init_from>50x50.png</init_from>
    </image>
  </library_images>
  <library_effects>
    <effect id="Material_001-effect">
      <profile_COMMON>
        <newparam sid="_0x50_png-surface">
          <surface type="2D">
            <init_from>_0x50_png</init_from>
          </surface>
        </newparam>
        <newparam sid="_0x50_png-sampler">
          <sampler2D>
            <source>_0x50_png-surface</source>
          </sampler2D>
        </newparam>
        <technique sid="common">
          <phong>
            <emission>
              <color sid="emission">0 0 0 1</color>
            </emission>
            <ambient>
              <color sid="ambient">0 0 0 1</color>
            </ambient>
            <diffuse>
              <texture texture="_0x50_png-sampler"/>
            </diffuse>
            <specular>
              <color sid="specular">0.5 0.5 0.5 1</color>
            </specular>
            <shininess>
              <float sid="shininess">50</float>
            </shininess>
            <index_of_refraction>
              <float sid="index_of_refraction">1</float>
            </index_of_refraction>
          </phong>
        </technique>
      </profile_COMMON>
    </effect>
  </library_effects>
  <library_materials>
    <material id="Material_001-material" name="Material_001">
      <instance_effect url="#Material_001-effect"/>
    </material>
  </library_materials>
  <library_geometries>
    <geometry id="Cube-mesh" name="Cube">
      <mesh>
        <source id="Cube-mesh-positions">
          <float_array id="Cube-mesh-positions-array" count="24">1 1 -1 1 -1 -1 -1 -0.9999998 -1 -0.9999997 1 -1 1 0.9999995 1 0.9999994 -1.000001 1 -1 -0.9999997 1 -1 1 1</float_array>
          <technique_common>
            <accessor source="#Cube-mesh-positions-array" count="8" stride="3">
              <param name="X" type="float"/>
              <param name="Y" type="float"/>
              <param name="Z" type="float"/>
            </accessor>
          </technique_common>
        </source>
        <source id="Cube-mesh-normals">
          <float_array id="Cube-mesh-normals-array" count="36">0 0 -1 0 0 1 1 0 -2.38419e-7 0 -1 -4.76837e-7 -1 2.38419e-7 -1.49012e-7 2.68221e-7 1 2.38419e-7 0 0 -1 0 0 1 1 -5.96046e-7 3.27825e-7 -4.76837e-7 -1 0 -1 2.38419e-7 -1.19209e-7 2.08616e-7 1 0</float_array>
          <technique_common>
            <accessor source="#Cube-mesh-normals-array" count="12" stride="3">
              <param name="X" type="float"/>
              <param name="Y" type="float"/>
              <param name="Z" type="float"/>
            </accessor>
          </technique_common>
        </source>
        <source id="Cube-mesh-map-0">
          <float_array id="Cube-mesh-map-0-array" count="72">0 0 1 1 0 1 1 0 0 1 0 0 1 0 0 1 0 0 1 0 0 1 0 0 0 0 1 1 0 1 1 0 0 1 0 0 0 0 1 0 1 1 1 0 1 1 0 1 1 0 1 1 0 1 1 0 1 1 0 1 0 0 1 0 1 1 1 0 1 1 0 1</float_array>
          <technique_common>
            <accessor source="#Cube-mesh-map-0-array" count="36" stride="2">
              <param name="S" type="float"/>
              <param name="T" type="float"/>
            </accessor>
          </technique_common>
        </source>
        <vertices id="Cube-mesh-vertices">
          <input semantic="POSITION" source="#Cube-mesh-positions"/>
        </vertices>
        <triangles material="Material_001-material" count="12">
          <input semantic="VERTEX" source="#Cube-mesh-vertices" offset="0"/>
          <input semantic="NORMAL" source="#Cube-mesh-normals" offset="1"/>
          <input semantic="TEXCOORD" source="#Cube-mesh-map-0" offset="2" set="0"/>
          <p>0 0 0 2 0 1 3 0 2 7 1 3 5 1 4 4 1 5 4 2 6 1 2 7 0 2 8 5 3 9 2 3 10 1 3 11 2 4 12 7 4 13 3 4 14 0 5 15 7 5 16 4 5 17 0 6 18 1 6 19 2 6 20 7 7 21 6 7 22 5 7 23 4 8 24 5 8 25 1 8 26 5 9 27 6 9 28 2 9 29 2 10 30 6 10 31 7 10 32 0 11 33 3 11 34 7 11 35</p>
        </triangles>
      </mesh>
    </geometry>
  </library_geometries>
  <library_controllers/>
  <library_visual_scenes>
    <visual_scene id="Scene" name="Scene">
      <node id="Cube" name="Cube" type="NODE">
        <matrix sid="transform">0.25 0 0 0 0 0.25 0 0 0 0 0.004999995 0 0 0 0 1</matrix>
        <instance_geometry url="#Cube-mesh" name="Cube">
          <bind_material>
            <technique_common>
              <instance_material symbol="Material_001-material" target="#Material_001-material"/>
            </technique_common>
          </bind_material>
        </instance_geometry>
      </node>
    </visual_scene>
  </library_visual_scenes>
  <scene>
    <instance_visual_scene url="#Scene"/>
  </scene>
</COLLADA>

Asked by Markus on 2018-08-28 03:47:45 UTC

Comments

Kinetic and Indigo use different versions of Assimp (the library used to load all meshes): v3.2 and v3.0 respectively. It could be that your Collada file is simply not compatible with the version of Assimp being used on Indigo.

Asked by gvdhoorn on 2018-08-28 04:13:45 UTC

Hm I do not think that is my problem. cause I use collada version 1.4.1 and I have another collada file also with version 1.4.1 which can be displayed in ros indigo. But this second collada file which works does not depend on an extra image but has it included somehow

Asked by Markus on 2018-08-28 04:25:53 UTC

Answers