• 欢迎访问开心洋葱网站,在线教程,推荐使用最新版火狐浏览器和Chrome浏览器访问本网站,欢迎加入开心洋葱 QQ群
  • 为方便开心洋葱网用户,开心洋葱官网已经开启复制功能!
  • 欢迎访问开心洋葱网站,手机也能访问哦~欢迎加入开心洋葱多维思维学习平台 QQ群
  • 如果您觉得本站非常有看点,那么赶紧使用Ctrl+D 收藏开心洋葱吧~~~~~~~~~~~~~!
  • 由于近期流量激增,小站的ECS没能经的起亲们的访问,本站依然没有盈利,如果各位看如果觉着文字不错,还请看官给小站打个赏~~~~~~~~~~~~~!

【ROS-Gazebo】SDF规范文档与模型资源

人工智能 小明工坊 2780次浏览 0个评论

前言

这是一个系列小文章,主要介绍在ROS-Gazebo中如何更好地使用SDF格式建模与仿真。众所周知,URDF是ROS的原生支持格式,但在某些情况下(尤其是Gazebo仿真时),使用SDF格式会更加合理。鉴于中文网络上几乎没有成体系的SDF介绍博文,因此我将自己在硕士期间关于SDF模型的使用经验稍作总结。如有谬误,还望友好地指出。

 

本系列规划如下内容,建议按顺序阅读。尤其是第一篇,以确认你是否有必要使用SDF建模:

1 SDF规范文档

SDF官网上有详尽且直观的规范文档。点击相应元素,即可查看其结构和定义,链接:

SDFormat Specification​sdformat.org

 
【ROS-Gazebo】SDF规范文档与模型资源

SDF规范文档

 

规范文档该怎么使用呢?我一般采取逆向查阅的方法,先通过Gazebo的模型编辑器生成标准的SDF模型文件,其基本包含了需要的元素。如果遇到含义不明的元素,再到文档中逐级找到相应的说明。

2 SDF简要分析

下面我们简要分析文档,看看SDF有哪些有意思的特性。

 

首先,SDF元素中,除了版本信息外,包含了以下4个子元素:

  • world:描述环境信息
  • model:描述机器人
  • actor:描述一种可执行脚本动画的特殊模型
  • light:描述光照

相比之下,URDF的子元素就相对单调,缺少了对环境和光照的描述:

 

【ROS-Gazebo】SDF规范文档与模型资源

URDF的子元素

 

另外,二者还有一个重要的区别:SDF的<model>元素下,还可以包含<model>元素。而URDF的<model>元素下只有<link>和<joint>。这就意味着,相比起URDF,SDF可以很容易地通过嵌套<model>(model里面再放model)的形式实现多机器人仿真

3 SDF模型资源的下载使用

gazebo官方项目中提供了大量SDF示例模型,链接和界面如下:

Bitbucket​bitbucket.org

 

【ROS-Gazebo】SDF规范文档与模型资源
Gazebo官方的SDF示例模型

 

在左侧的Downloads栏目中,我们可以找到模型资源包的下载链接。将其下载解压后,放到如下目录:(.gazebo是隐藏目录,想要查看,可先ctrl+h显示)

 

~/.gazebo/models

 

接下来打开gazebo,找到左侧的insert栏目,点击相应的名称即可插入模型。常用的模型有室内环境、楼房、各种材质地形、围墙等,甚至还有整个城市的粗模型,用于搭建机器人的工作环境;一些水瓶、桌椅等小物品可以与机器人交互。

 

【ROS-Gazebo】SDF规范文档与模型资源模型库中的一些模型

 

参考资料

[1] SDF官网


开心洋葱 , 版权所有丨如未注明 , 均为原创丨未经授权请勿修改 , 转载请注明【ROS-Gazebo】SDF规范文档与模型资源
喜欢 (0)

您必须 登录 才能发表评论!

加载中……