news 2026/6/15 16:33:53

从SolidWorks中导出机器人URDF模型

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
从SolidWorks中导出机器人URDF模型

要把通过SolidWorks创建的机器人模型导出为URDF集成到ROS中,需要通过一个插件实现。
SolidWorks URDF导出插件的基础使用方法参考这篇文章

这里补充一些实用的操作。

通过添加草图实现基准轴和基准坐标系的定位

这需要你对SolidWorks的操作有一定的了解。
有时候机器人的结构件的模型是来自供应商的,或者这个结构并没有天然的点和线给我们设置基准轴和基准坐标系。这时候就需要我们自己去编辑这个零件,为它添加草图,并在这个草图上添加点和线,用来定位基准轴和基准坐标系。
比如图中的轮子,我们可以在轮子的一个面上添加一个草图用来设置基准坐标系。

多层级frame_id实现

机器人的frame_id往往是分成多个层级的,所以导出的时候需要特意为各个frame_id设置好正确的层级关系。

比如,机器人的主动轮(蓝色)装在悬挂摆臂(黄色)上,悬挂摆臂装在车体上(橙色)。那么frame_id的关系就是这样的:

base_link|_ wheel_arm|_wheel

如果摆臂上还装有万向轮(粉色),而且万向轮往往有2个关节,第一个关节是竖直摆动旋转轴,第二个是轮子旋转轴,那么frame_id的关系就是这样的:

base_link|_ wheel_arm|_ wheel|_ caster_vertical|_ caster_horizontal

其中万向轮竖直摆动旋转轴和轮子是属于同一层级的,但是万向轮的轮子旋转轴是从属于万向轮竖直摆动旋转轴的,因为万向轮的轮子会随着万向轮的摆动而改变位置。

在导出插件中,实际的配置如图所示:

为每个frame_id选择正确的部件

在导出插件中,需要为每个frame_id选择属于这个frame_id的结构部件。
要做好这一步,需要把握一个原则:只选择随着这个frame_id运动且不随着其他frame_id运动的部件。
比如悬挂摆臂上连接着主动轮和万向轮,那么属于悬挂摆臂wheel_arm的部件只有下图中黄色部分。
虽然主动轮和万向轮都是固定在悬挂摆臂上的,但是因为它们有自己的frame_id,所以不属于wheel_arm。
同理可得,只有蓝色部分属于wheel;粉色部分的上部属于caster_vertical,粉色的轮子部分属于caster_horizontal。

解决导出后发现关节旋转方向错误的问题

如果哪个轮子的旋转方向不对,可以调整对应joint的z轴(一般把z轴作为旋转轴,如果不是z轴则调整对应的其他轴的符号)的符号,如:

<jointname="LeftWheelJoint"type="continuous"><originxyz="0.0870424169783998 -0.102556655814713 0.0669000000015223"rpy="0 0 0.499407169293928"/><parentlink="left_wheel_arm"/><childlink="left_wheel_link"/><axisxyz="0 0 1"/><!-- 改这里,把-1改成1,或者把1改成-1 --></joint>
版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/6/15 11:21:08

救命神器9个一键生成论文工具,研究生高效写作必备!

救命神器9个一键生成论文工具&#xff0c;研究生高效写作必备&#xff01; 论文写作的救星&#xff0c;AI 工具如何改变研究生生活 在当今学术研究日益复杂的背景下&#xff0c;研究生们常常面临时间紧、任务重的压力。尤其是在撰写论文的过程中&#xff0c;从选题到大纲搭建&a…

作者头像 李华
网站建设 2026/6/15 14:56:11

帧同步与状态同步

特性维度帧同步状态同步核心思想同步操作指令&#xff0c;让所有客户端运行相同的“模拟器”。同步游戏状态&#xff0c;客户端主要作为“显示器”。比喻一起看同一本乐谱&#xff08;指令&#xff09;各自演奏。听同一个指挥&#xff08;服务器&#xff09;告诉你每个乐器的音…

作者头像 李华
网站建设 2026/6/15 14:44:21

短视频智能获客系统源码,一键部署,支持私有化与二次开发

温馨提示&#xff1a;文末有资源获取方式在数字化营销浪潮中&#xff0c;拥有一套自主可控、功能强大的技术系统&#xff0c;已成为企业构建核心竞争力的关键。本文将为您深度剖析一款备受瞩目的短视频智能运营系统源码&#xff0c;它不仅是一套高效的工具集&#xff0c;更是一…

作者头像 李华
网站建设 2026/6/15 11:07:46

航空航天领域,PHP如何编写视频文件的大文件上传示例?

专业开发&#xff1a;WebUploader大文件传输系统开发纪实 日期&#xff1a;2023年11月15日 星期三 郑州 晴 今日接到客户紧急需求&#xff1a;需在信创国产化环境下实现20G级大文件&#xff08;含文件夹&#xff09;安全传输系统&#xff0c;要求覆盖全浏览器兼容性、国密加密…

作者头像 李华
网站建设 2026/6/15 11:05:45

为什么你的自动化测试覆盖率虚高?AI帮你识破“假覆盖”

揭开自动化测试覆盖率的“虚高”迷雾 在软件测试领域&#xff0c;自动化测试覆盖率是衡量测试有效性的关键指标&#xff0c;通常以代码行、分支或路径覆盖率百分比表示。然而&#xff0c;许多团队盲目追求高覆盖率数字&#xff0c;却忽视了一个陷阱&#xff1a;虚高覆盖率&…

作者头像 李华