错误具体情况
我用的是matlab2021a
matlab里输入smimport(“xxxx.urdf”)后加载成功
run之后报错提示如下:
它说找不到stl文件但实际上是生成了的
显示界面:就是这样只有坐标系在,但是没有实体显示
错误原因其实是matlab对meshes文件夹的定位错误,自动定位就是urdf所在的文件夹
解决方法
我的solidwworks2018生成的urdf文件包是这样的
可以看到有urdf文件夹和mesh文件夹(各个部件的stl文件在这里)
解决的办法:
- 把mesh里面所有的stl文件拷贝到urdf文件夹里,并在urdf文件里修改三维模型读取的地址
打开urdf。找到下面这一行
红色框里显示的就是几何性质(geometry)的mesh文件地址。
将他的meshes修改为urdf:
filename="package://spiderur/urdf/base_link.STL" />
全都要改哦~
再来一遍:
在leg的block里,找到visual模块,操作如下:
双击visual的block
会出现正常的读取,说明成功!
- 直接在bolck tree重新给stl文件定位
没有进行修改之前,会看到下面的图片:
他是报错的,而文件夹选择地址是正确的mesh文件夹。
但是点开之后会发现自动定位的是urdf文件所在的文件夹。
再次选择存储stl的mesh文件夹的对应文件即可,选择好之后会出现下面的样子。
他说参数有变化,实际上问题不大,但在后面的运用不知道会不会有什么问题,所以建议还是用第一种方法。