Solidworks导出URDF模型及实践过程中遇到的问题

1 篇文章 0 订阅
本文介绍了如何在SolidWorks2024中下载并安装SolidWorkstoURDFExporter插件,详细描述了底盘模型的导出过程,包括拆分重组、坐标系建立和Link/Joint配置。同时,文章列举了在导出过程中遇到的问题,如参数缺失、坐标系错误和模型在gazebo中的问题,以及相应的解决办法。
摘要由CSDN通过智能技术生成

1、插件下载

在开始导入之前,需要在Solidworks中下载SolidWorks to URDF Exporter的这个插件

下载地址:sw_urdf_exporter - ROS Wiki

我的Soliworks版本为2024,我们直接下载最新版的插件即可

安装完成后,直接可以在工具中可以找到

如果没有找到该选项,就点击设置——插件中勾选。

2、导出过程

以本次参加比赛的底盘为例,首先预处理,将整个装配体重新组合,形成几部分关键的零件,这些零件主要是用于gazebo仿真,在仿真过程中需要配置相关参数等,或者其他作用。

2.1 拆分重组

,在配置urdf中各个Link和Joint的时候,如果零件越多,需要配置的次数也就越多,这里我和师兄学习,将大大小小的子装配体模块化,再生成零件,因此我主要把底盘拆分成三部分:底盘主体base、电机motor、车轮weel。

               

2.2 建立坐标系、轴系

这里我认为的重点如下:

主体部分:点、坐标系

转动部分:点、参考轴、坐标系

详细的参考系tree:

2.3 配置Link、Joint

Link:相当于你要配置的一个关节,通俗来说就是人体中的各个部件

Joint:就是连接关节的方式

开始配置过程:

  1. 确立主体部分base_Link(名字可自由更改)作为最大的父系零件,确定关节对应的零件base和对应生成的零件坐标系,连接着4个二级Link:rf_motor_Link、 rf_motor_Link、rf_motor_Link、rf_motor_Link。(框内的数字4代表这个部件(base_Link)安装了有4个子部件(二级Link))
  2. 配置二级Link(motor),确定对应的零件以及坐标系,选择连接方式(电机与主体部分)为固定(fixed),在二级Link下安装三级Link(weel)。
  3. 配置三级Link(weel),步骤一样

3.遇到问题以及解决办法

3.1 urdf文件参数缺失或多生问题

在我生成模型的urdf过程中,不是一次发现文件中丢失了相关数据,如我的一个Joint的所有参数基本全为0,并且也有时候多生成了一个Joint。

解决方法:重新生成一次就能解决,手动删除。

3.2 urdf文件中坐标系问题

通过查阅相关资料和实践,在urdf模型里的base_Link(parents)的坐标系方向和gazebo里的世界坐标系是相关联的,因此通常希望每次模型生成在原点(或者特定的点),将模型的坐标系布置在你模型的几何中心或者底部中心位置比较好,但是在我在仿真过程中总是发现:在gazebo中打开移动我的模型,他的坐标系不和Solidworks中设置的一样,并且发生了改变,个人猜想,在最后生成的步骤中,软件默认将原点设置在质点上

解决方法:生成的最后一步将base_Link的origin参数全部更改0

3.3 urdf在gazebo中打开直接炸模

在urdf生成完后,在gazebo仿真,具体的仿真过程可以参考我的【仿真教程】,导入到gazebo中,发现我的模型出现了一些问题:

(1)有一个轮子感觉没安装上去甚至更糟

(2)车体完全不受控制的运动

解决方法:根据我师兄以前的解决方案,在生成的时候人为的将mass(质量)设置小一点。

  • 37
    点赞
  • 58
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值