0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
会员中心
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

ROS仿真中常用的三种传感器

CHANBAEK 来源:月月望归鸟 作者:K.Fire 2023-06-15 16:52 次阅读

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物理特性

在官方教程中,说以下参数都是不说自明的,其实根据我们真实的雷达参数进行修改即可,我对它们进行简单解释。

image.png

其中,这一条如果为真,则在 gpu 激光器的扫描区域内可以看到半透明的激光射线

< visualize >false< /visualize >

然后我们将雷达链接到插件库

image.png

最后,我们在主文件中,调用我们写好的传感器文件,然后建立关节将他们与我们的主体连接起来即可。

图片

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
    ROS
    +关注

    关注

    1

    文章

    278

    浏览量

    17022
收藏 人收藏

    评论

    相关推荐

    触觉反馈设计中常用的执行

    目前主流触觉反馈设计中常用的执行三种:第一是偏转质量马达(ERM),第二是线性共振致动
    发表于 07-07 10:21 2293次阅读

    常用传感器原理

    简介:介绍了机器人中常用传感器的原理。包括:红外传感器,超声波传感器,陀螺仪,GPS,电子罗盘,激光传感器,编码盘以及多普勒
    发表于 07-11 09:28

    求毕业设计时,入侵系统中常用的红外传感器的型号及其.....

    新人虚心求教毕业设计时,入侵系统中常用的红外传感器的型号及其电路仿真图,C51程序等。谢谢大家了
    发表于 04-08 10:26

    DAQmx仿真中的力传感器和位移传感器仿真

    刚刚接触labview,需要用到力传感和位移传感,但是在DAQmx仿真中总是出现错误,求大神讲解创建力传感和位移传感
    发表于 09-04 16:49

    非标机械设计常用传感器

    大约有以下几种:磁性开关、接近开关、光电开关、光纤传感器、光栅、位移传感器、压力传感器、电热偶、激光传感器、编码等。根据其输出型号类型的不
    发表于 09-25 09:56

    热线式空气流量传感器三种形式介绍

    路板以及空气流量传感器的壳体等元件组成。以下主要来介绍热线式空气流量传感器三种类型。  热线式空气流量传感器类型 热线式空气流量传感器
    发表于 11-08 16:10

    三种液位传感器的原理应用

    三种液位传感器的原理应用,1、浮筒式液位变送器2、浮球式液位变送器3、静压式液位变送器
    发表于 04-17 09:43 2333次阅读

    传感器应用实例--三种数字扭矩测量仪电路实例

    传感器应用实例--三种数字扭矩测量仪电路实例
    发表于 12-11 23:15 2次下载

    三种温度传感器的原理及优势介绍

    以上三种温度传感器覆盖了-40℃到1150℃的温度场景,其中,闭口式温度传感器和数字式热电偶温度传感器均可用于GPF。
    的头像 发表于 10-25 09:22 6867次阅读

    三种常见的非接触式液位传感器的特点

    常用的非接触式液位传感器三种,分别是电容式液位传感器、超声波液位传感器、分离式的光电液位传感器
    发表于 11-12 15:01 1.6w次阅读

    压力传感器常见的三种测量方式

    方式在以后的测量中就会更加的精准,下面就由南京聚航科技有限公司为大家具体介绍一下压力传感器常见的三种测量方式。
    发表于 02-14 17:38 8752次阅读

    可以测量车辆寿命的三种汽车传感器

    新技术星期二:可以测量车辆寿命的三种汽车传感器
    的头像 发表于 12-29 10:02 977次阅读

    FPGA应用之vivado三种常用IP核的调用

    今天介绍的是vivado的三种常用IP核:时钟倍频(Clocking Wizard),实时仿真(ILA),ROM调用(Block Memory)。
    发表于 02-02 10:14 3568次阅读

    ROS移动机器人中常用的编码

      前两篇文章介绍了电机基础知识和直流有刷电机驱动电路。这篇文章介绍ROS移动机器人中电机测速传感器----编码ROS移动机器人中常用
    的头像 发表于 03-17 10:46 1882次阅读
    <b class='flag-5'>ROS</b>移动机器人<b class='flag-5'>中常用</b>的编码<b class='flag-5'>器</b>

    物联网中常用传感器有哪些

    物联网中常用传感器有哪些 随着科技的快速发展,物联网已经成为人们日常生活中不可或缺的一部分。在物联网中,传感器是非常关键的元素之一,它们可以感知、测量和收集环境中的各种参数,比如温度、湿度、光线
    的头像 发表于 09-08 11:23 4750次阅读