Gazebo创建机器人教程(四,五)

教程四:附上meshes

Meshes能够给模型添加真实感.这个教程描述了用户如何用自定义的meshes来定义他们的模型在仿真时的显示.

一.添加视觉效果

1.回到my_robot文件夹下

cd ~/.gazebo/models/my_robot

2.用你最喜欢的编辑器打开model.sdf

gedit ~/.gazebo/models/my_robot/model.sdf

3.接下来我们给车体添加一个mesh.找到name=visual的部分,如下所示.

<visual name='visual'>

      <geometry>

        <box>

          <size>.4 .2 .1</size>

        </box>

      </geometry>

    </visual>

4.mesh能够来自磁盘中的文件或者其他模型.本例中我们将会使用来自 pioneer2dx 模型中的mesh.改变程序如下:

<visual name='visual'>

      <geometry>

        <mesh>

          <uri>model://pioneer2dx/meshes/chassis.dae</uri>

        </mesh>

      </geometry>

    </visual>

5.查看本地缓存的模型数据库,查看是否具有上述<mesh>块引用的pioneer2dx模型.

ls -l ~/.gazebo/models/pioneer2dx/meshes/chassis.dae

如果不存在,通过在Gazebo中至少运行一次Pioneer 2DX模型或者下载这个模型到本地:

cd ~/.gazebo/models

wget -q -R *index.html*,*.tar.gz --no-parent -r -x -nH http://models.gazebosim.org/pioneer2dx/

6.在Gazebo中,拖动My Robot模型到世界中.它看起来和pioneer2dx很像.


7.这个车身看起来太大了,所以我们要调整

8.在visual中添加一个<scale>



9.这看起来又太低了.我们把他抬高一点.




需要注意的是,我们只修改了<visual>元素,没有修改<collision>元素,,所以我们只是改变了模型的显示情况,但是在物理碰撞上使用的还是<collision>中所定义的尺寸.




教程五:向机器人中添加传感器

这个教程介绍了用户如何使用<include>和<joint>连接不同模型来构成的复杂模型.

一.添加一个雷达

向模型中添加雷达的问题相当于是将它包含在模型中.

1.回到你之前的model文件夹

cd ~/.gazebo/models/my_robot

2.用你最喜欢的编辑器打开model.sdf.

3.在末尾</model>前添加如下代码

<include>

      <uri>model://hokuyo</uri>

      <pose>0.2 0 0.2 0 0 0</pose>

    </include>

    <joint name="hokuyo_joint" type="fixed">

      <child>hokuyo::link</child>

      <parent>chassis</parent>

    </joint>

<include>部分命令Gazebo去找指定的模型,并将它以一定的位姿插入.这里我们将hokuyo雷达放在了机器人的前端.<uri>部分告诉Gazebo所要找的模型在它的模型库中的位置.(你可以通过这里这里2查看模型库中的模型).

<joint>用来连接雷达和车身.设置为fixed是为了防止它移动.

<child>中的内容来自hokuyo model's SDF,它的开头是这样的


当hokuyo被插入以后,它的link被放在了以它的模型名字为名的命名空间中.这样,因为它的模型名为hokuyo,所以每一个hokuyo模型中的link的表示都要加上hokuyo::.

4.现在启动Gazebo,并将机器人插入.如果当前hokuyo模型不存在,那么Gazebo会从Model Database中添加又或者直接下载:

cd ~/.gazebo/models

wget -q -R *index.html*,*.tar.gz --no-parent -r -x -nH http://models.gazebosim.org/hokuyo/

启动效果如下


5.(练习)尝试添加一个照相机.相机模型的URI是model://camera.

©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

  • 教程一:创建一个模型 一.简述 该教程主要讲述SDF文件的细节. 二.SDF模型的组成部分 links:它描述了一...
    LangweiligeMens阅读 12,263评论 0 1
  • iOS中工厂模式我的理解是:利用OC语言的特性“多态”来创建不同的对象 如果后台提供的一个接口中有两至三种不同的数...
    wu2016阅读 11,610评论 3 22
  • 我是个武断的人,因为我脑袋想多了东西会头晕,所以很多事情,凭兴趣不用想那么多计较那么多,对于我来说就是很舒服的一件...
    MeganChou阅读 2,435评论 0 0
  • 微信里,前男友给我回了一句,周末愉快,这并不是我惊讶的原因,让我吃惊的是他的微信头像,他和我的合影吗?不对吧,记...
    李小画儿阅读 4,619评论 0 0
  • 第十二节 从席面上看,母亲对小白颇有好感。但在回宾馆的路上,母亲却把对女儿和小白的诸多不满都泼给了顺子。 “你看看...
    涂画小白阅读 2,790评论 0 0

友情链接更多精彩内容