Escenario del proyecto:
Principiante ROS2, quiere mostrar el modelo urdf en RViz2. El archivo .urdf hace referencia a la carpeta de mallas externas.
Descripción del problema
Luego de acceder al tema de descripción del robot en RViz, se presenta el siguiente error
Análisis de causa:
Según la descripción del error, debería ser que los archivos de las mallas no se han importado correctamente a las variables de entorno.
Compruebe si el archivo de mallas en la carpeta install/pkg/share se muestra correctamente en el espacio de trabajo.
Se encontró que las carpetas visual y de colisión no existían.
Por lo tanto, debemos modificar el archivo setup.py para incluirlo correctamente.
solución:
La importación de malla en el archivo urdf debe usar el siguiente formato:
<mesh filename="package://webots_ros2_ur_demo/meshes/visual/base.dae"/>
en lugar de <mesh filename="file://$(find ur5_pick_and_place)/meshes/visual/base.dae"/>
un formato como .
Modifique el archivo setup.py para agregar lo siguiente al parámetro data_files:
('share/' + package_name + '/meshes/visual', [
'meshes/visual/base.dae',
'meshes/visual/forearm.dae',
'meshes/visual/shoulder.dae',
'meshes/visual/upperarm.dae',
'meshes/visual/wrist1.dae',
'meshes/visual/wrist2.dae',
'meshes/visual/wrist3.dae',
]),
('share/' + package_name + '/meshes/collision', [
'meshes/collision/base.stl',
'meshes/collision/forearm.stl',
'meshes/collision/shoulder.stl',
'meshes/collision/upperarm.stl',
'meshes/collision/wrist1.stl',
'meshes/collision/wrist2.stl',
'meshes/collision/wrist3.stl',
]),
El resultado es el siguiente: