八、Gazebo 学习笔记:附加网格(Mesh)

官网教程链接:http://gazebosim.org/tutorials/?tut=attach_meshes

概述

先决条件:创建一个移动机器人

网格可以在视觉上和传感器上增加模型的真实感。本教程演示了用户如何使用自定义网格来定义他们的模型在模拟中的显示方式。

1.附加一个网格作为视觉

网格最常见的用途是创建一个逼真的视觉效果。

1.切换到my_robot目录

cd ~/.gazebo/models/my_robot

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

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

3.我们将添加一个网格到底盘视觉。找到带有name=visual的visual,它看起来像:

<visual name='visual'>
      <geometry>
        <box>
          <size>.4 .2 .1</size>
        </box>
      </geometry>
    </visual>

4.网格可以来自磁盘上的文件,也可以来自另一个模型。在这个例子中,我们将使用pioneer2dx模型中的网格。将视觉元素更改为以下内容(但保持文件的其余部分不变):

 <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从模型数据库中拉出模型至少一次,通过在Gazebo中生成pioneer2dx模型(在Insert->http://gazebosim.org/models下)。

或者手动下载模型文件到本地缓存:

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 name='visual'>
      <geometry>
        <mesh>
          <uri>model://pioneer2dx/meshes/chassis.dae</uri>
            <!--仅在此处添加下面一行语句-->
          <scale>0.9 0.5 0.5</scale>
            <!--我是分割线-->
        </mesh>
      </geometry>
    </visual>

在这里插入图片描述

9.视觉效果也有点低(沿z轴)。让我们把它抬高一点,为视觉设定一个姿势:

    <visual name='visual'>
        <!--仅在此处添加下面一行语句-->
      <pose>0 0 0.05 0 0 0</pose>
        <!--我是分割线-->
      <geometry>
        <mesh>
          <uri>model://pioneer2dx/meshes/chassis.dae</uri>
          <scale>0.9 0.5 0.5</scale>
        </mesh>
      </geometry>
    </visual>

在这里插入图片描述

注意,在这一点上,我们已经简单地修改了机器人的<visual>元素,所以机器人看起来像缩小版的pioneer2dx模型,通过GUI和基于GPU的传感器,如摄像头,深度摄像头和GPU激光器。因为我们没有修改这个模型中的<collision>元素,盒子的几何形状仍然会被碰撞动力学的物理引擎和基于CPU的射线传感器使用。

进一步的阅读

当创建一个新的机器人时,您可能需要使用自己的mesh文件。导入网格教程描述了如何将一个网格导入到适合Gazebo的格式中。

自我尝试

1.在3D仓库上找到并下载一个新的网格。确保网格是Collada (.dae)格式。

2.把网格放在~/.gazebo/models/my_robot/meshes,如果有必要的话创建meshes子目录。

3.在机器人上使用您的新网格,要么作为底盘的替换,要么作为附加的<visual>

注意:材料(如扩展名为.png或.jpg的纹理文件),应该放在~/.gazebo/models/my_robot/materials/textures

Next

Next: Add a Sensor to a Robot

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值