没有兴趣玩SolidWorks可直接略过本节,开发包已经提供直接导出的URDF文件

简述

ROS中通过RVIZ可视化机器人导航情况,其中,URDF(Unified Robot Description Format)是统一的机器人描述文件,此类文件通过HTML格式定义机器人模型(Robot Model)的相关信息,如:连杆、关节名称,运动学参数、动力学参数、可视化模型、碰撞检测模型等。

例如下面的URDF文件定义了机器人头部关节:

  <joint name="head_swivel" type="continuous">
    <parent link="base_link"/>
    <child link="head"/>
    <axis xyz="0 0 1"/>
    <origin xyz="0 0 0.3"/>
  </joint>

当机器人比较复杂时,URDF文件会很长,不可能全部手动定义。那么如何快速建立URDF文件来描述自己的机器人?

安装sw_urdf_exporter插件

ROS目前在SolidWorks中提供了自动生成URDF文件的插件。官网地址[:http://wiki.ros.org/sw_urdf_exporter]

安装成功后,SW中会多出一个SW2URDF插件,勾选启用:
image.png

3D模型建立完后,点击菜单栏里file->Export as URDF
image.png

进入URDF配置界面,在左侧URDF Exporter中输入连杆名称,选择属于该连杆的模型文件,子连杆数。这里简单的将除激光雷达意外部分全部定义为base_link, 它将有1个子连杆(激光雷达)。
image.png

这时base_link下会多出一个Empty_link,点击编辑。
image.png

给连杆起名为laser_link,关节名称为laser_link_joint,选择激光雷达3d模型,没有子连杆,然后点击Preview and Export...
image.png

随后会出现窗口设置具体连杆关节参数,可直接跳过。
image.png

完成后, 会生产一个URDF package,里面launch文件夹中有display.launch,可以直接在ROS中运行。

image.png

Rviz展示机器人模型

启动Rviz,即可展示机器人模型roslaunch pibot_description display.launch
SW 2014下生产的launch文件运行可能会报以下错误:
image.png
原因是路径有误,没有robots文件夹,生产的urdf文件在urdf文件夹中,手动修改即可。
另外可能出现找不到3d模型文件的错误,原因是meshes文件夹中模型文件后缀大小写和urdf文件中不匹配,手动修改匹配即可。
image.png

重新启动后显示如下
image.png

备注

这里我们定义了2个link,一个是底盘base_link, 另一个是laser_link,导航中我们需要用到这2个link