爱吧机器人网 » 技术 > 机器人学 > 正文

一文读懂机器人传感器的秘密

核心提示:机器人也是通过感知系统来感知世界,这个感知系统是通过各种各样的传感器组成的。传感器可以感受外界的信号,如光、热、烟雾、压力和湿度等等,并将信息传递给下一级装置,机器人得到

目前,有些先进的机器人和人类一样,有感官和知觉,比如你推倒它,它会自己爬起来;你打它一下,它会把头转向你;它看到了障碍,会自己绕开……这种自动化或半自动化的机器人不需要人工操作,就可以自己完成这些动作。
机器狗
可以保持平衡的机器人
 
人类通过各种感官系统来认识世界,比如触觉、嗅觉和味觉等等,对于下图的萝卜君,我们通过视觉,知道它是一个橙色的、戴着绿帽子的胡萝卜;通过听觉,知道它是一个贱萌的汉子;还可以通过味觉,尝出萝卜君的炒胡萝卜丝味。那机器人是通过什么感知世界的呢?
 
\
通过视觉认识萝卜君
 
机器人也是通过感知系统来感知世界,这个感知系统是通过各种各样的传感器组成的。传感器可以感受外界的信号,如光、热、烟雾、压力和湿度等等,并将信息传递给下一级装置,机器人得到外界信息就可以做出相应的对策。传感器让冷冰冰的物体有了感官。
 
传感器有很多种,按照应用分类就有温度、压力、PH、浸水和称重传感器等等,你能想到的需要测量的属性,几乎都有对应的传感器。我们可以根据需要的功能,选择对应的传感器,例如下图汽车上应用了不同功能的传感器。
 
汽车上的传感器
汽车上的传感器
 
不同功能的传感器所运用的原理也不同,按照原理分类就有超声波、紫外线、电量、磁敏和加速度传感器等等,不同原理的传感器也会带来使用效果上的差别。
 
传感器随处可见,楼道里的烟雾探测器、监控摄像头里的图像传感器、公交卡读卡器……这些都是传感器。能够灵敏地感知外界环境的变化,拥有强大功能的传感器到底是什么?
 
 
传感器(Sensor)
 
传感器就是能感受到被测量的信号,并能将这个输入信号按照一定规律转换成输出信号的器件或装置。假设机器人被打一下,压力就是输入信号,传感器按照自己的规则,将它换成头部能看懂的信号,头部收到输出信号就会有所反应。
 
传感器和外界
传感器感知外界
 
输出信号往往是指电信号,电信号可以是电压或电流,很容易被传送和控制,能够很方便地被传输、处理和存储。传感器一般由敏感元件和转换元件组成,典型的传感器结构可以用下图表示。
 
敏感元件和转换元件的位置
敏感元件和转换元件的位置
 
本文主要介绍几种机器人身上常用的传感器,它们可以帮助机器人实现一些基础的功能,例如躲避障碍物、调整站姿和识别物体等等。

 
超声波距离传感器
 
机器人想要正常行动,就要知道周边是否有障碍,所以机器人和外界的距离是最经常用的信息。要做精致高贵的机器人,就要和外界保持距离,不然,就会变成一台不优雅的碰碰车。
 
超声波距离传感器
疯狂撞墙
 
用于测距的传感器非常多,比较简单的超声波传感器了,它利用超声波进行距离探测。虽然初中学过超声波,但估摸着大家都忘了,超声波就是高于 20KHZ 的声波,而超声波传感器利用的一般是频率在 0.25MHZ 到 2MHZ 的声波。(1MHZ=1000KHZ,人类听到的是 20HZ~20KHZ)
 
超声波距离传感器
超声波传感器
 
它的原理非常简单:声音的反射。传感器发射出超声波,超声波撞到物体后弹回来,传感器再接收超声波,通过时间差来测距。这种传感器有很多类型,但无论是哪种,它的原理都是一样的。
 
超声波传感器原理图
超声波传感器原理图
 
上面两个圆柱就是超声波发射接收器,它将电信号转化为超声波信号发送,又将接收到的反射信号转化为电信号,然后递送给下一级处理器,就可以计算出距离了。
 
典型的超声波发射接收器
一个典型的超声波发射接收器
 
我们设定传感器距离一个物体的距离为 d,传感器发出超声波信号到接收反射信号的时间差为 t,一般情况下,传输介质是空气,声音的传播速度是常数 v = 340m/s,那么所测距离 d 满足:
 
用声音测量距离的公式
 
常用的超声波距离传感器有 HC-SR04 超声波距离传感器,因为它简单、好操作还便宜。那现在想知道 d,就差 t 了,我们以 HC-SR04 为例,来找到 t。
 
经典的 HC-SR04 超声波距离传感器
经典的 HC-SR04 超声波距离传感器
 
HC-SR04 有四个端口:供电的 Vcc 端、接地的 GND 端、控制发射超声波信号的 Trig 端,以及反馈所测距离,向更高级的处理器发射电信号的 Echo 端。
 
控制器在 Trig 端给予一个宽 10μs 的高电平信号,传感器就向外界物体发送 8 个频率为 40kHz 的超声波信号。发送完后,怎么计时呢?这时,Echo 端就会输出高电平,然后,计时开始!滴答滴答……超声波碰到物体后被弹回来,传感器接收到信号,计时结束!高电平停止输出。
 
工作过程
工作过程
 
最后,通过时间间隔,就可以算出这个物体和超声波传感器的距离啦。
 
红外测距传感器
 
除了超声波,还有很多其他可以被反射的媒介能被用于测距。在机器人领域中,性价比较高的是红外测距传感器。
 
一款常见的红外测距传感器
一款常见的红外测距传感器
 
聪明的你一下就猜到了,它是用红外线来测距的。而且相比声波,光信号更集中,不易扩散,就像我们会说“一束光”,而不说“一束声音”,所以它的精度更高。而且光的速度更快,在一定测量范围内,也不会因为测量时间的延误导致机器人撞墙。
 
能够快速避障的机器人
能够快速避障的机器人
 
红外线测距传感器大致由一个红外线发射器和一个 CCD 检测器组成。CCD 检测器可以检测到被反射回来的光线,在很多数码相机和手机相机都用它来成像。
 
红外线十分有个性,即使被反射回来也不走回头路,非要拐一个弯再回来,我们把它叫做三角测量原理。相比起光线原路返回,三角原理允许外界物体不在发射器的正前方,有更高的容错率。
 
三角测量原理
三角测量原理
 
那怎么检测距离呢?以上图为例,反射光线距离 CCD 检测器中心线偏移了长度 L,那么已知发射角度 α,中心距离 X 以及滤镜的焦距 f,我们可以通过几何关系得到传感器到物体的距离 D:
公式
 
为了能更直观的反应出这个需要探测的偏移值与物体距离的关系,我们可以用物体的距离 D 来表示偏移值 L,表现为:
公式
 
通过这个关系可以发现,当物体的距离 D 足够小时,L 值大小会趋近于 X,而这个 X 值一般情况下要大于 CCD 检测器所能允许的最大偏移值,导致太近的物体无法被检测到。而当物体的距离 D 足够大时,L 值大小会趋近于 ftan(α),与此同时当物体较远的时候发射角往往很小甚至趋近于 0,即 L 值也会很小,再次检测实效。
 
所以红外测距传感器探测范围会比超声波测距传感器更小,使用的距离限制更多,想要更好地测量物体的距离,就需要更高分辨率的 CCD 检测器。(更高分辨率可以更好分辨出两个点)
 
有些小伙伴就会想,如果用上述两种测距传感器,我往左侧发射信号,但是障碍在右侧怎么办?聪明的人类想到一个绝妙的办法,那就是——多安装几个,往各个方向都发射信号就好了。大概像这样:
 
假装发射信号
假装发射信号
 
惯性测量单元(IMU)
 
机器人可以躲避前方的障碍,却躲不过脚下的坎坷。如果人类被石头绊了一跤,会马上调整重心,重新站稳,那机器人要如何知道自己目前的姿态,以调整出想要的新姿势呢?
 
失去平衡的机器人
姿态调节不好的机器人
 
这时,就用到惯性测量单元,这是个可以测量物体三轴角速度和三轴加速度的装置。三轴是指三个方向,也就是测出三个方向角速度和加速度。对于不同应用,三轴表示的方向也会不同。
 
例如,三轴角速度是在欧拉角坐标系上三个方向的角速度。
 
欧拉角坐标系
欧拉角坐标系
roll 是耳朵贴肩膀、pitch 是点头、yaw 是摇头
 
三轴加速度是在直线立体坐标系中的三个方向的加速度。
直线立体坐标系
直线立体坐标系
x 是左右,y 是前后,z 是上下
 
如果两个坐标系合体,铛铛~就变成了六轴,是不是惊喜又意外! 
 
一个典型的 IMU 会包含三轴加速度计(测加速度)和三轴陀螺仪(测角速度),也有些会加入三轴磁力计(测磁场大小,获得磁场指向),其中涉及到了两种坐标系,这就是六轴传感器。
 
由三轴陀螺仪和三轴加速度计组合而成
由三轴陀螺仪和三轴加速度计组合而成
 
得到了加速度和角速度还不够,机器人依然是一脸懵逼,不知道自己的姿态(姿态指欧拉角坐标系的三个角度),这时就需要输出这些物理量,让下一级处理器进行姿态解算,就能得到自己目前的姿态了。生活中,手机的重力感应、计步器手环等等,都需要检测和解算姿态。
 
重力感应
重力感应
 
具体的解算方式比较繁杂,推荐阅读两个简单的姿态解算例子(复制链接至浏览器):
 
1、Arduino 教程——MPU6050 的数据获取、分析与处理:
 
https://zhuanlan.zhihu.com/devymex/20082486
 
2、如何使用 MPU9250 获取实时运动数据:
 
https://create.arduino.cc/projecthub/30503/using-the-mpu9250-to-get-real-time-motion-data-08f011
 
图像传感器
 
现在机器人终于可以自如地在路上行走,不用担心它撞墙或者被绊倒了,但这时机器人就像拄着拐杖的盲人,无法看到物体,我们需要让它的眼睛(摄像头)能够感知光线,这就用到了图像传感器。以前提到的视觉识别算法,都是需要摄像头感知光线然后输出图像才能完成的。
 
镜头中的图像传感器
镜头中的图像传感器
 
图像传感器可以把收集到的光信号转化成电信号,比较常见的有感光耦合原件 (CCD)和互补式金属氧化物半导体有源像素传感器(CMOS)。这里的 CCD 就是红外传感器里的检测器。
 
光信号转化成电信号
光信号转化成电信号
 
CCD 图像传感器
 
CCD 图像传感器是一个基于模拟信号的设备。传感器上有很多光敏电容排成队伍,图像或者光信号通过透镜,投影到光敏电容的阵列上,每个电容都会积累一定的电荷,入射光越强,电荷越多。
 
电容阵列积累电荷
电容阵列积累电荷
 
接受光线后,每个电容就会把自己的电荷传给相邻的下一个电容,电荷会被传到最后一个电容,最后一个电容就把电荷传给电荷放大器,电荷就被转化为电压信号。只要循环这个过程,控制回路可以把整个阵列中的电荷转化为一系列的电压信号。电压信号会被下一级处理器转换为数字信号。
 
CCD图像传感器原理
CCD 图像传感器的原理
 
CMOS 图像传感器
 
CMOS 图像传感器是一类利用 CMOS 半导体的有源像素传感器。它身上有很多光电二极管,每个二极管附近都有对应的电路,直接将光信号转换成电压信号,不需要一个一个地传递电荷。同样,下一级处理器也会将电压信号转换为数字信号。
 
CMOS图像传感器原理
CMOS 图像传感器的原理
 
两种图像传感器比较,CCD 图像传感器灵敏度更高,也更加具有抗噪声的能力。但由于工艺上的限制,CCD 上的敏感元件和信号处理电路处在不同的电路中,不像 CMOS 能将整个图像系统集成在一块芯片上,所以体积更大和功耗更大。
 
图像传感器
图像传感器
 
传感器的应用
 
如今,传感器的运用已经非常广泛,我们需要在特定的环境下合理选择传感器。
 
例如无人机的自动避障功能,一般不使用红外测距传感器和超声波测距传感器,因为红外线会被黑色物体吸收,会穿过透明物体,而超声波会被海绵等物体吸收,容易被桨叶气流干扰。
 
一般使用图像传感器,让两个平行的摄像头进行拍摄,根据两幅图像之间的视觉差异,经过一系列复杂的算法来计算出特定点的距离。
 
双摄像头避障
两个摄像头避障
 
除了避障,无人机还需要精确地测量自己的高度,所以会在底部安装超声波距离传感器,辅助它在一定范围内完成精确的高度测量。
 
两个超声波距离传感器
两个超声波距离传感器
 
如果看了这么多期智囊团,技术已经过硬,想拼装出一台无人机,就需要对无人机的姿态进行精确的测量,才能控制它,这其中就会用到惯性测量单元。
 
◆◆◆
 
机器人的智能化离不开传感器的发展,随着工艺的提升,传感器也越来越小型化、多用化和智能化。本文只是介绍了几种最常见的传感器,相信随着发展,会出现更先进的传感器,为我们的生活带来更多便利。

上一篇:工业机器人的主要组成结构和技术原理
下一篇:工业机器人的主要部件、材料、构形与控制系统

本周栏目热点

[2018-11-28]  固定在灰色角部的黑色头部有两个自由度:绕垂直轴旋转,绕水平轴旋转。每个动作都由接地步进电机控制。这是一个球形机构(所有五个旋转关节的轴线都是平行的)。...

研究人员帮助机器人“思考”,并进行抽象的计划

[2018-02-11]  布朗大学和麻省理工学院的研究人员已经开发出一种方法,可以帮助机器人通过构建周围世界的抽象画像,来帮助机器人完成连续的多个步骤的任务 ...

全面了解机器人的精度

[2018-05-07]  1 绝对精度是啥玩意? 这个软件能否后刷进机器人系统?关于第二个问题,近期有不少客户询问本助手,这个软件可以后刷到系统里卖面吗?可以 ...

一文读懂机器人传感器的秘密

[2017-12-20]  机器人也是通过感知系统来感知世界,这个感知系统是通过各种各样的传感器组成的。传感器可以感受外界的信号,如光、热、烟雾、压力和湿度等等,并将信息传递给下一级装置,机......

麻省理工正研究植物机器人 让植物自主控制机器人

[2018-12-08]  控制论通常指人类用机器人部件增强自己。我们听说过动物机器人或昆虫机器人,但我们很少听说植物机器人对吧?一个机器人其实是对植物有很大益处的,因为一般植物根本无法移动......

移动机器人的视觉算法解析

[2018-12-03]  如果对移动机器人视觉算法进行拆解,你就会发现获取物体深度信息、定位导航以及壁障等都是基于不同的视觉算法,本文就带大家聊一聊几种不同但又必不可少的视觉算法组成。...

如何用30行代码实现微信自动回复机器人?

[2018-12-06]  很多朋友对itchat非常感兴趣,近日又学到了itchat另一种有趣的玩法——微信自动回复机器人。程序很简单仅仅三十行代码左右,实现了机器人自动与你的微信好友聊天,下面是我的......

[2018-12-10]  仿生机器鱼,不仅仅长得像鱼,还有跟鱼相似的功能,而且在集体行动时也涌现出集群现象。北京大学工学院谢广明团队,基于人工侧线系统的仿生感知技术,让仿生机器鱼能够感知周......

语音对话机器人,百行Python代码就能轻松实现

[2018-12-06]  许多现代语音识别系统会在HMM识别之前使用神经网络,通过特征变换和降维技术来简化语音信号,也可以使用语音活动检测器将音频信号减少到可能包含语音的部分。...

精选推荐

人工智能民主化能否实现取决于科技巨头
人工智能民主化能否实现取决于科技巨头

[2017-12-29]  我们经常听到像谷歌和微软这样的公司说他们希望人工智能民主化。这是一个很好的词,民主化。 但这些公司如何界定“民主化”还不清楚,像AI本身一样,它似乎有点炒作的味道...

通过对抗性图像黑入大脑
通过对抗性图像黑入大脑

[2018-03-02]  在上面的图片中,左边是一张猫的照片。在右边,你能分辨出它是同一只猫的图片,还是一张看起来相似的狗的图片?这两张图片之间的区别在于, ...

农业将为高科技行业 农业机器人的应用领域
农业将为高科技行业 农业机器人的应用领域

[2017-12-17]  农业正在迅速成为一个令人兴奋的高科技产业,吸引了新专业人士,新公司和新投资者。技术发展迅速,不仅提高了农民的生产能力,而且促进了我们所知道的机器人和自动化技术的发展。...

如何让人工智能机器人快速自我纠正错误并吃一堑长一智?
如何让人工智能机器人快速自我纠正错误并吃一堑长一智?

[2017-08-23]  莱斯特大学数学系的研究人员在《Neural Networks》杂志上发表了一篇文章,概述了新算法的数学基础,可以使人工智能收集错误报告并立即纠正,而不影响现有技能 ,同时还会积......

美国人工智能公司Skymind进入福建全面开展业务
美国人工智能公司Skymind进入福建全面开展业务

[2017-12-11]  人工智能在当今这个时代对大家来说想必是非常熟悉的,这也是我国近十几年来一直追求的目标,未来的时间里这也将是全人类追求的目标。就目前来看,近年来,人工智能或在我国迎......

担心机器换人?自1950年以来只有一个职业被机器彻底取代

[2017-03-21]  虽然有很多关于机器人取代工人的担心,但哈佛经济学家James Bessen的论文指出,在过去的67年里机器人仅仅淘汰掉人类工作中的一个。在1950 ...

受大脑控制的机器人
受大脑控制的机器人

[2017-03-21]   想让机器人做我们想做的,首先,他得全面地了解我们。通常,这就意味着人类需要要付出更多。比如,教机器人复杂的人类语言或者把一项任务 ...

2023年服务机器人市场将超过250亿美元
2023年服务机器人市场将超过250亿美元

[2017-09-04]  全球服务机器人市场预计到2023年将达到250亿美元, 并在预测期内登记15% 的复合年增长率。短期中期回收期和投资回报率高 (ROI), 以及在教育和研究、临场感、防御、救援和安......