从SolidWorks中导出机器人URDF模型

要把通过SolidWorks创建的机器人模型导出为URDF集成到ROS中,需要通过一个插件实现。

SolidWorks URDF导出插件的基础使用方法参考这篇文章

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

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

这需要你对SolidWorks的操作有一定的了解。

有时候机器人的结构件的模型是来自供应商的,或者这个结构并没有天然的点和线给我们设置基准轴和基准坐标系。这时候就需要我们自己去编辑这个零件,为它添加草图,并在这个草图上添加点和线,用来定位基准轴和基准坐标系。

比如图中的轮子,我们可以在轮子的一个面上添加一个草图用来设置基准坐标系。

多层级frame_id实现

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

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

c 复制代码
base_link
  |_ wheel_arm
     |_wheel

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

cpp 复制代码
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轴则调整对应的其他轴的符号)的符号,如:

xml 复制代码
<joint name="LeftWheelJoint" type="continuous">
	<origin xyz="0.0870424169783998 -0.102556655814713 0.0669000000015223" rpy="0 0  0.499407169293928" />
	<parent link="left_wheel_arm" />
	<child link="left_wheel_link" />
	<axis xyz="0 0 1" />  <!-- 改这里,把-1改成1,或者把1改成-1 -->
</joint>

解决机器人运行卡顿的问题

得到urdf并在gazebo中成功加载后,发现机器人运动卡顿,最后排查出来是万向轮的碰撞配置有问题。这会导致万向轮运行卡顿最终造成机器人运行卡顿。

通过把由msh文件定义碰撞空间改为由box模型定义可以解决卡顿问题。

相关推荐
LeeZhao@2 小时前
【具身智能】VLA-DM0.5:让机器人真正理解世界
人工智能·计算机视觉·机器人·agi
XMAIPC_Robot3 小时前
工商业储能EMS边缘计算:本地AI负荷预测,彻底摆脱云端依赖
人工智能·fpga开发·机器人·边缘计算·arm+fpga·rk3588+fpga
wjkjpcba4 小时前
机器人控制板PCBA贴片厂家制造工艺解析:SMT贴片、DIP插件与检测流程
人工智能·机器人·smt贴片加工·pcba贴片加工厂
不悔哥5 小时前
开源 ElectronBot:稚晖君的桌面机器人
机器人·开源
杜子不疼.5 小时前
我给 Claude Code 写了个 MCP Server,让它自己上蓝耘挑模型干活
人工智能·ai·机器人
HAHAXX815 小时前
从国内到跨境:RPA 自动上架机器人开发实战(拼多多 / 抖店 / 淘宝 / Shopee 批量刊登方案)
机器人·rpa
蓝悦无人机15 小时前
无人机系列之发展史:从战争工具到“智能空中机器人”的百年跃迁
机器人·无人机·无人机发展
cnbestec15 小时前
当灵巧手不靠触觉感知:汉阳大学 RCML 基于DG-5F-S 灵巧手的手内操作研究
机器人·传感器·灵巧手·机器人灵巧手·tesollo·tesollo五指灵巧手
成都方航科技16 小时前
FA6无人巡逻机器人 L4级无人驾驶安保巡逻车 AI摄像头劝导系统解决方案
机器人
workflower18 小时前
矿用机器人人工智能安全与治理体系
人工智能·安全·机器学习·机器人·云计算·无人机