TIANBOT MINI机器人建模与仿真:SolidWorks到Gazebo的详细教程

一、下载sw_urdf_exporter插件

电脑SolidWorks版本为2019版本,下载sw2urdfSetup文件后点击安装,安装后打开SolidWorks,点击“工具—File”就能看到“Export as URDF”选项,点击该选项就能用插件从SolidWorks中导出URDF模型了。(注:该插件目前不适配SolidWorks2018版本,大家酌情安装),sw_urdf_exporter下载地址:http://wiki.ros.org/sw_urdf_exporter。

二、打开创建好的SolidWorks模型

下面为构建好的Tianbot_mini差速小车模型,模型是由多个零件组成的装配体,大家可以把一些散的零件保存为一个part,这样配置起来会方便很多。值得注意的是,小车的前进方向为SolidWorks坐标系的X轴方向(这个要在装配模型的时候自己配置),上方向为Z轴方向,这样在之后的建立坐标系以及再之后导出URDF并在gazebo中的小车运动运动方向不会出错。

三、创建所有link点和坐标系

依次点击 “装配体—参考几何体—点”,选择小车左轮,会在左轮中间生成一个点。

再依次点击“装配体—参考几何体—坐标系”,选择点2,在左轮中间生成一个坐标系。并将其命名为left_wheel。

用相同的方法为右轮,激光雷达,万向轮,以及万向轮中的滚轮创建点和坐标系,由于base_link在小车的旋转中心,以左右轮中心点连线的中点构建点和坐标系,并分别标注各坐标系的名称。

我们再这里可以测一下左右轮之间的距离,以及base_link到地面的距离,为接下去的配置做准备。我们测得左右轮距为91mm,base_link到地面的距离约为22mm。

四、创建各个joint的轴线

依次点击“装配体—参考几何体—基准轴”,左右轮共用一个基准轴“轮轴”,依次创建激光雷达的轴线,万向轮Z方向的轴线,万向轮小轮的轴线并进行命名。

五、使用插件进行配置

依次点击“工具—File—Export as URDF”,进入到配置界面。

先配置base_link。Global Origin Coordinate System选择为刚才命名为base的坐标系,Link Components选择为除去左右轮、激光雷达、万向轮的一个整体底盘,底盘变成蓝色,Number of child links选为4,因为底盘连接有4个link。

点击第一个empty_link,先配置左轮,将link_name改为left_wheel,将joint name填写为left_wheel_joint,Reference Coordinate System选择为刚才给左轮创建的坐标系,Reference Axis选择为“left_wheel_axis”,Joint Type选择为continuous, Link Components选择为左轮,左轮变成蓝色。同理对右轮进行配置。 

接着我们来配置万向轮,将link_name改为caster,将joint name填写为caster _joint,Reference Coordinate System选择为“caster”,Reference Axis选择为“front_caster_axis”,Joint Type选择为continuous, Link Components选择为万向轮,万向轮变成蓝色,在Number of child links选1,因为与其装配的还有一个滚轮。接着对万向轮滚轮进行配置。

最后配置激光雷达,将link_name改为lidar,将joint name填写为lidar_joint,Reference Coordinate System选择为“lidar”,Reference Axis选择为“lidar_axis”,Joint Type选择为fixed, Link Components选择为激光雷达,万向轮变成蓝色。

配置完所有link后,点击“Preview and Export”选项,若joint配置无误则点击next。   

接着看link配置参数是否有问题,检查无误后点击“Export URDF and Meshes”。选择路径对导出文件进行保存,命名为mini_description。切记命名的时候,文件名不能带有大写字母和中文,以免出现问题。

六、运行文件

我们先看一下文件,我将文件放进工作空间下的src目录,再回到catkin_ws目录,打开终端并且catkin_make,再source devel/setup.bash一下,然后roslaunch mini_description gazebo.launch就打开了小车在gazebo中显示了(如下图所示,这里我帖了tianbot标志并且配置了一下各个link的颜色)。

我们再稍微修改一下launch文件中的display.launch文件,将default=“false”改为default=“ture”并保存,此时再roslaunch mini_description display.launch后可打开rviz再插入robot model可以有一个joint_state_publisher_gui界面来控制各个joint旋转。

以上就是SolidWorks小车模型导出urdf模型的全过程,接下去会用xacro文件对urdf模型进行优化,并实现键盘控制小车的运动,敬请期待。注意:如果在键盘控制小车运动过程中出现左右颠倒的情况,这可能是SolidWorks装配模型过程中,Y轴方向的问题,出现该问题可以在URDF文件中进行修改,需要保持URDF文件中左右轮的JOINT坐标正负保持一致即可,无需重新导模型。

八、参考文献

感谢下文给予的参考

https://blog.csdn.net/weixin_45168199/article/details/105755388

QR Code
微信扫一扫,欢迎咨询~

联系我们
武汉格发信息技术有限公司
湖北省武汉市经开区科技园西路6号103孵化器
电话:155-2731-8020 座机:027-59821821
邮件:tanzw@gofarlic.com
Copyright © 2023 Gofarsoft Co.,Ltd. 保留所有权利
遇到许可问题?该如何解决!?
评估许可证实际采购量? 
不清楚软件许可证使用数据? 
收到软件厂商律师函!?  
想要少购买点许可证,节省费用? 
收到软件厂商侵权通告!?  
有正版license,但许可证不够用,需要新购? 
联系方式 155-2731-8020
预留信息,一起解决您的问题
* 姓名:
* 手机:

* 公司名称:

姓名不为空

手机不正确

公司不为空