最近用到了URDF2WEBOTS工具将URDF文件导入webots软件。简单记录一下以防忘记。
一般urdf文件可以在solidworks中用solidworks_urdf_exporter将所需模型转为urdf文件。
具体用法参考此博主:
https://blog.youkuaiyun.com/weixin_42617247/article/details/124787457
-
URDF安装方法
该工具既可以在Linux系统也能Windows安装,不过在Linux系统更容易安装,在Windows系统需要先行配置python环境并安装pip命令。这些工作准备完之后可以打开Linux终端或者用win+R输入cmd进入终端然后输入如下命令:pip install urdf2webots
此命令默认安装最新版的urdf2webots工具,其版本和我们的webots有一定对应关系,用高版本工具导入urdf时可能在webots提示报错并且看不到模型。此时可以登录下面网站根据发布年份以及说明寻找对应的版本
https://github.com/cyberbotics/urdf2webots/releases
安装对应版本的命令为
pip install urdf2webots==1.0.19 查询已安装软件的命令为 pip list
卸载urdf2webots工具的命令为:
pip uninstall urdf2webots
-
使用urdf2webots
打开Linux终端或者用win+R输入cmd进入终端然后输入如下命令:#python -m urdf2webots.importer --input=urdf所在目录 python -m urdf2webots.importer --input=F:\a1_description\urdf\a1.urdf
注意与urdf文件夹同级的应该还要用一个meshs文件夹用来存放对应三维模型和贴纸
输入后一般会输出如下:Robot name: a1 Root link: base There are 23 links, 22 joints and 1 sensors
此时则说明输出成功且输出的proto文件会在你运行目录下
-
移动和处理proto文件
1 打开webots,新建一个项目,然后将proto文件放入该项目的protos文件夹。
2 然后在webots中点击新增,在 PROTO nodes(Current Project)中将模型加入webots环境。
3最后在模型树下找到刚生成的节点,右键点击Convert Root to Base Node(s)转化为可操作的机器人节点。 这时URDF模型已经成功导入Webots中。
异常处理
生成了proto可能导入进webots之后在模型区看不到模型。此时用任意编辑器打开proto文件,可能会发现stl模型的url的路径斜杠有问题,如图:
可以用ctr+h快捷键将所有“\”换成“/”。