SolidWorks 到 URDF 导出器是一个 SolidWorks 插件,可以方便地将 SW 零件和装配体导出到 URDF 文件中。导出器将创建一个类似 ROS 的包,其中包含网格、纹理和机器人(urdf 文件)的目录。对于单个 SolidWorks 零件,零件导出器将提取材料属性并在 URDF 中创建单个链接。对于程序集,导出器将构建链接并基于 SW 程序集层次创建树。导出器可以自动确定正确的关节类型、关节变换和轴。
1. SolidWorks 版本兼容性
SolidWorks 2018 存在一个已知的 STL 导出错误,该错误一直存在到 Service Pack 4,导致此插件无法使用。如果您使用的是 2018,请更新到 Service Pack 5 或使用 SolidWorks 2019 或更高版本。2017 年及以下也可能有效。(因此我接下来采用的是2016版也可以)🎈🎆🎇
2. 开发环境
首先我们需要安装SolidWorks
开发环境:
win10家庭版(无需关注,本人记录而已) SolidWorks版本: SOLIDWORKS(R) Premium 2016 x64版SP 1.0
- 最近这个插件的开发来自于几个 ROS社区成员的慷慨捐赠。如果没有这种支持或来自社区成员的拉取请求,开发将无法继续。我们也感谢任何错误或功能请求,以便我们可以在资源可用时处理它们。
- 该项目不依赖于 ROS,可用于导出 SolidWorks 文件以满足任何 URDF 需求。URDF 将包含 rospack URI文件位置(‘package://’),因此您需要为非 ROS 系统更改这些位置(一些 Gazebo 系统可以处理 'package’URI)。 此插件已在装有 SolidWorks 2018 SP 5 64 位的 Windows 10 64位上进行了测试。它目前不安装在 32 位机器上。该插件使用最新的 SW API,因此它可能不适用于 SolidWorks 2018之前的版本(但这尚未得到证实)。要了解有关 URDF 的更多信息,请查看其文档。
- 如果您在阅读本文档后对 SolidWorks 到URDF 导出器有任何疑问,请查看ROS Answers以获得可能的答案。如果您没有找到答案,请提交带有“sw_urdf_exporter”标签的问题。
3. 安装 URDF
首先下载URDF插件,大家可以上ROS也可以进官网哟!
下载可作为预编译的安装程序或作为 Visual Studio C# 项目的源提供。这听起来是编造的,但您不能将文件安装到标有“SW2URDF”的目录中。由于某种原因,Windows 很难找到支持的插件,并且会抛出未处理的异常错误。
3.1 预编译安装程序
- 这将安装最新的稳定版本。
- 如果您还没有,请至少升级到🎃.NET Framework V4.7.2。
- 下载上面链接的安装程序。 运行安装程序。它将要求您允许对您的计算机进行更改。
- 您的 Windows帐户需要有足够的权限才能进行这些更改。它应该安装到程序文件中的 SolidWorks 目录中。
- 打开 SolidWorks,在“工具>插件”下,您将在最底部看到一个 SW2URDF项目。如果此安装文件不起作用,请尝试如下所述手动安装。
3.2 编译源
- 这些是最新的源文件。因为这是定期签入的,所以源文件中可能存在错误或未完成的代码。如果您需要源的稳定版本,请查看与安装程序相关的修订。
- 要构建源代码,您需要下载Visual Studio Community。
- 使用 git查看源代码。
- 以管理员身份运行Visual Studio。您的 Windows 帐户需要具有这些权限才能注册 .dll。为此,请右键单击开始菜单中的 Visual
- C#,然后单击“以管理员身份运行”。
- 单击“调试>开始调试”或按 F5。它将一起编译和运行 SolidWorks。这样做一次后,您只需要从 Visual Studio 运行重新编译即可。否则,仅使用该工具,您可以正常启动 SW。
- 当 SolidWorks 打开时,在“工具>插件”下,您将在最底部看到一个 SW2URDF项目。如果此安装文件不起作用,请尝试如下所述手动安装。
3.3 验证效果
可以打开SolidWorks装配体文件,工具>插件”下,您将在最底部看到一个 SW2URDF 项目,说明插件安装成功。
此模型为本人画的阿克曼模型,已经设置好对应的模型,所以可以直接导出。
设计思路见:
4. 小结
- 通过以上内容我们对URDF 插件有了初步了解。最终实现了插件安装。
- 在以后的博文中我们将学会用== SolidWorks装配体导出URDF 教程 ==,从而实现对外部世界进行感知,充分认识这个有机与无机的环境,科学地合理地进行创作和发挥效益,然后为人类社会发展贡献一点微薄之力。