01 前言
当我们想在gazebo中仿真一个比较逼真的机器人时,光有机器人的样子是远远不够的,一个真实的机器人往往附带着各种各样的传感器,比如用来估计机器人位置的编码器、IMU;用来感知外部环境的摄像头、雷达等等,如果我们想自己在电脑中完全复现出一个逼真的传感器,这是很难得一件事,幸运的是gazebo为我们提供了用来仿真传感器的插件,最常用的有相机、kinect、激光雷达等等,这极大地方便了用户在仿真环境中机器人的构建。
本文以三种常见且难度中等的传感器仿真为例,介绍如何在gazebo中搭建我们自己的传感器模型。
02RGB相机
1.urdf建模
相机的urdf模型还是分为三部分,视觉模型、碰撞模型、惯性模型,在前面的文章中简要介绍了关于urdf建模的知识,在相机的建模中,我们简单的将它建模为一个盒子(box),然后赋予它一些真实的特性。
然后我们使用xacro格式的建模方法,将传感器单独列为一个文件,然后在主文件中调用它。
2.gazebo物理特性
在gazebo中的颜色显示和在rviz中的颜色显示有所不同,在上述视觉模型中设定的"black"颜色显示,只能显示在rviz中,因此我们先通过以下代码,设置模型在gazebo中的颜色。
< gazebo reference="${prefix}_link" >
< material >Gazebo/Black< /material >
< /gazebo >
下面这一部分给出相机的参数,这些参数可以根据现实生活中我们购买的相机参数填入
下面将我们的相机链接到插件库,实现真正的相机仿真
相关的仿真教程可以在gazebo官网教程找到
03 深度相机
1.urdf建模
kinect是ROS中常用的深度相机,在gazebo建模中我们将它建模为一个盒子,但是由于kinect模型的通用性,作为微软的一个品牌,人们为其配置了模型渲染文件
仍然使用了xacro文件格式,然后在主文件中调用它
2.gazebo物理特性
第一部分仍然是根据我们购买的相机参数填入它们,其实现在比较流行的一种建模方法是使用.sdf文件,比如kinect的官方教程中就是根据提供的sdf再进行建模
然后再链接到插件库,进行更详细的设置
最后附上了gazebo中使用kinect的教程和如何制作自己sdf模型的教程
04 激光雷达
1.urdf建模
在激光雷达建模部分,我们将其建模为一个圆柱体,通过固定关节(fixed)连接在机器人上方,描述了它的视觉模型、惯性模型以及碰撞模型
2.gazebo物理特性
在官方教程中,说以下参数都是不说自明的,其实根据我们真实的雷达参数进行修改即可,我对它们进行简单解释。
其中,这一条如果为真,则在 gpu 激光器的扫描区域内可以看到半透明的激光射线
< visualize >false< /visualize >
然后我们将雷达链接到插件库
最后,我们在主文件中,调用我们写好的传感器文件,然后建立关节将他们与我们的主体连接起来即可。
05 差速驱动
在我们的移动机器人中电机关节往往需要搭配减速器使用,而且通常需要对其进行PID控制,ROS为我们提供了差速驱动插件,以及传动机构的配置。
1.传动机构
ROS中的传动机构主要是在urdf文件中,通过transmission标签体现,这一部分其实是属于ros提供的通用硬件接口ros_control,有几种类型的transmission可以使用,如:TransmissionInfo、TransmissionLoader、SimpleTransmission等,我们常用的就是SimpleTransmission,transmission标签分为两部分-joint和actuator。
joint部分主要是针对要设置的关节,hardwareInterface标签指定的是关节空间的接口类型。
actuator部分主要是针对驱动器部分进行设置,mechanicalReduction标签指定关节/执行器传动装置处的机械减速;hardwareInterface标签指定的是关节空间的接口类型。
关于接口类型的更多说明参考ros的官方解释。
2.差速驱动插件
差速驱动插件也是通过plugin标签链接到相应的差速驱动库,下面对它的一些参数进行了解释。
06 总结
本文介绍了ROS仿真中常用的三种传感器-RGB相机、Kinect深度相机、激光雷达的仿真建模方式以及其中参数的含义,最后介绍了SLAM中常见的载体-移动机器人的差速驱动器建模方式,并简单介绍了ros_control硬件接口中关节的传动机构的配置。
-
传感器
+关注
关注
2551文章
51163浏览量
754120 -
机器人
+关注
关注
211文章
28466浏览量
207291 -
编码器
+关注
关注
45文章
3646浏览量
134638 -
仿真
+关注
关注
50文章
4093浏览量
133665 -
ROS
+关注
关注
1文章
278浏览量
17022
发布评论请先 登录
相关推荐
评论