【图解物联网】第4章 先进的感测技术

4.1   逐步扩张的传感器世界

        在前面的章节中,传感器的概念是“用来获取温度和湿度等纯数据的电子零件”。温度传感器和加速度传感器等确实是用来获取简单数据的小零件,我们可以将其理解为构成智能手机等电子设备的一个要素。
        然而,随着零件的小型化和高性能小型处理器的出现,市面上出现了具备先进能力的传感器。这类传感器能轻松地获取那些原来难以当成数据来处理的信息。这样的传感器与其说是零件,不如说是狭义上的设备,或者说是多个因素复杂协作的“系统”(图4.1)。本章将会为大家讲解这些功能先进的新型传感器。

4.2   先进的感测设备

        首先要说的是用于感测的设备。
        就像各位在前文看到的那样,使用传感器能够制造出用以获取人和环境等相关信息的设备。例如,第3 章就以冰箱为例,讲解了微控制器的应用。微控制器不仅能使制冷机和鼓风机运转,如果基于用传感器获取的信息来进行控制,还能设定冰箱的温度。这样一来,它就既能根据用途改变冰箱的设定温度,还能达到省电的效果。
        那么,先进的感测设备到底是什么呢?就是把多个传感器和处理器组合在一起,从而获取更复杂信息的新型传感器。传感器已经不再是一个电子零件,而是一个具备强大信息获取能力的、更方便的物件了。然而,使用这种先进的感测设备时必须注意一件事,即传感器的进化可能会造成“信息获取过剩”(图4.2)。

        搭载了加速度传感器的智能手机可以检测人的行动,办公室和百货商店的厕所里也有自动开关灯的感测机制。
        对于应用了传感器的系统而言,像这样用简单的传感器来获取必备的最低程度信息的设计是非常明智的。只要找到能用少量信息达成目的的方法,就无需大量传感器和高配置计算机,也减少了无意中侵犯隐私的可能性。
        综上所述,在应用先进的感测设备时,我们就需要考虑到传感器能在无意中获取什么样的信息。
        虽然谈了不少消极的方面,但先进的感测设备能比传感器感测到更多的信息,所以它才能够实现单凭以往的传感器无法实现的服务,才会极具魅力。毫无疑问,日益进化的感测设备丰富了我们的生活。接下来就一起看一下这些具有代表性的感测设备。

4.2.1 RGB-D传感器

        如果传感器能测量出人和物之间的距离,就能实现便民服务。如果传感器能帮我们自动测量房间大小和家具尺寸,那么我们在要买新家具的时候也不会发愁了。一进厨房灯就自动打开,同时不知何时起居室的灯就关上了……这样是不是很方便呢?至今为止,为了用传感器实现这些功能,开发者们付出了很多努力。
        一般情况下,获取物品位置时使用的是测距传感器。然而,测距传感器只能获取某一点的距离信息,还不能分辨测量点上的是人还是物。虽然我们也能通过把普通相机和图像处理结合起来进行分辨,但一般情况下,用这种拍摄获取的信息里不包括距离信息。因此,要同时实现这两个目的是非常困难的。不过近年来,为了解决这个问题,人们开发出了一种叫作RGB-D 传感器的感测设备,这种设备已经逐渐得到普及和应用(图4.3)。

        RGB 是红(Red)、绿(Green)、蓝(Blue)这3 个英文单词的首字母缩写,由这3 种颜色能进一步变幻出各种各样的颜色。在用计算机等设备表示颜色的时候经常用到RGB 色彩模式这个说法。最近,计算机上的绘图软件也都普遍使用R、G、B 这3 个参数来调整色调。
        那么RGB-D 又是什么呢?如刚才所说,RGB 表示的是3 种原色,而RGB-D 最后的D 是深度(Depth)的首字母。说深度可能比较难以理解,请大家理解成“传感器到传感器所能捕捉到的物体的距离”。大多数情况下,就以往的图像数据(如位图格式等)而言,每个像素都有色彩信息。RGB-D 在此基础上还包括了距离信息。也就是说,RGB-D 传感器在相机原有的功能上又添加了测量距离的功能,它甚至能测量传感器到被拍摄物体的距离。
        第3 章讲过测距传感器的机制。请把RGB-D 传感器想象成测距传感器和相机的组合强化版传感器。有几种方法可以实现RGB-D 传感器,这里要讲的是RGB-D 传感器的一般机制及其特征。

立体相机

        很久以前就有人在研究如何用相机来测量距所拍摄物体的距离,立体相机便是其中历史最为悠久的一门技术。立体相机有使用胶卷的,也有连在计算机上使用的。这两种立体相机都有两个镜头(如图4.4 所示)。这两个镜头就跟人类的眼睛一样,利用双眼视差(左右眼看到的角度不同)来捕捉距离。

        正如我们所知,人类对空间进行立体上的认知时,利用的是双眼视差原理(两眼捕捉到的图像有所偏差)。普通的立体相机利用的原理也跟它很相似。在此,我们来一边了解这个原理,一边思考立体相机的机制。
        请看图4.5。大家用双眼看物体时,左眼和右眼捕捉到的影像存在着微小的差异。这是因为左眼和右眼之间隔着几厘米的距离。凭借这段距离,人类就能获取捕捉物体立体影像时需要的信息。于是,从这两个有着微妙差距的位置中捕捉到的影像就在我们的大脑中得以合成,并作为立体影像被处理。

        那么人类具体是如何感觉到纵深的呢?捕捉近处和远处的物体时,我们的眼睛里又发生了什么呢(图4.6)?
        看近处的物体和看远处的物体时,两眼视线形成的角度(辐辏角)相差很大。离得远,角度就小;离得近,角度就大。大脑负责把眼睛的转动信息与影像进行合成,这样我们才能感觉到远近。

        与此相对,立体相机中两个镜头的角度通常是固定的。根据左右镜头拍摄的图像的差距,就可以测算出所拍摄图像中的距离(图4.7)。首先,把用一个镜头拍摄下来的图像细分成一幅幅小图像。接下来利用图像处理的手法,调查一下分割好的图像相当于另一个镜头所拍摄图像的哪个部分。这样一来,就能知道图像某一部分会是另一个镜头中的哪一部分。虽然拍摄是在同一个地方,但镜头位置不同,所以会产生微小的偏差。对这个偏差进行几何学计算,就能算出图像中的距离。另外,对分割的图像分别地反复进行同样的操作,还能计算相机图像上任意一点的距离,从而制作出整体图像的距离分布模型。
        立体相机是利用两个镜头来计算距离的。基本上,只要两个镜头里都有这个地方,就能对其进行测量。不过,如果两幅图像间重复的地方太多,或是有透明玻璃等无法拍摄出来的地方,就无法测量相机到这些地方的距离。另外,如果想提升测量的精确度,则需要基于两个镜头的距离关系,以及相机本身的规格来决定参数。
        此外,也许是因为技术方面的成熟,近年很多汽车上配备的辅助功能(如快追尾时自动减速等)也应用了用立体相机测量距离这一测距方法。

点阵图判断法 

        立体相机是利用两个镜头来测量距离的,其实还有用一个镜头就能测量距离的方法。这个方法就是点阵图判断法。点阵图判断法就是拿一幅叫作点阵图的图案来作为标志,从多个方向投影这幅图,再根据投影的变化检测出物体之间存在的纵深关系。
        点阵图判断法本身不是RGB-D 传感器,这门技术只能检测出纵深(D)。不过拍摄中会用到镜头,所以可以跟图像相结合。请看图4.8,使用点阵图判断法需要点阵投影部位、点阵识别部位、判断装置这3 个要素。通常这些模块都是集中在一台设备上的,所以操作起来并不困难。

        下面来看一下点阵图判断法的原理。
        一开始,点阵投影部位会发光,把点阵图投影在要测量的对象上。通常在投影点阵时使用的是红外线,所以我们用肉眼是看不到的。图4.9 的左侧是投影出的点阵图的示意图。只要像这样把点阵图投影在物体(例如房间的墙壁)上,点阵识别部位就会将点阵检测出来。点阵识别部位通常采用能检测出红外线的镜头模组。此时,如果对投影的点阵图进行拍摄,平面上就会浮现出点阵图,这样一来就能不偏不倚地对其进行识别了。

        如图4.9 的右侧所示,在墙壁前面随便放个物体。这样一来,投影处的深度就发生了变化。这次是已识别的图案发生了变化,因为只有存在物体的那部分点的投影会比较近,所以位于投影位置旁边的点阵识别部位就会识别出点之间的距离发生了改变。也就是说,点阵图判断法利用的也是视差原理。因为投影点的模块和识别点的模块是不同的零件,所以设置位置是有偏差的(这跟我们的左右眼不可能存在于同一个位置是一个道理)。因此,点的位置会随着距墙壁前物体的距离而在左右方向上产生偏差。
        点阵图判断法只有一个镜头用于识别,而判断装置负责存储原始的点阵图。这样一来,就能与设想的图案进行对比,寻找差距,从而判断物体的深度关系。另外,点阵图判断法和立体相机一样,在有透明玻璃等时,无法正确判断距离。不过,只要是红外线点阵图能识别出来的场所,就算有很多地方相同,也能测出距离。

TOF

        关于RGB-D 设备的机制,最后要为大家介绍的是一种叫TOF(Time of Flight)的技术,直译过来就是“飞行时间”。它的原理也跟其名字一样,是通过测量从发射光线到光线反射回来的时间来求出距离。前面给大家说明的立体相机和点阵图判断法都存在一个难点,即测量时容易受到干扰(扰乱控制的外部作用,如阳光、灯光、阴影等)。因此如何在屋外使用设备就成了一个必须突破的难关,基本上多数产品都是以在室内使用为前提的。而TOF 技术抗干扰性强,精确度也高,是RGB-D 传感器当下最受瞩目的技术。
        TOF 技术的原理非常简明易懂,不过解释原理和开发实现原理的设备完全是两码事。如此优秀的设备之所以能被商品化,其原因都在于工程师们的努力。这里来看一下TOF 技术的基石:创意。
        TOF 技术的传感器分为两部分:发光部位和内置有特殊传感器的相机部位。相机部位和普通的数码相机一样,镜头里都含有感光元件。传感器通过这个元件来感应光线,以此来记忆图像的各个点是什么颜色的,从而形成一张完整的照片。通常的数码相机到这一步就结束了,而采用TOF 技术的相机会在此基础上向各个点追加距离信息。
        为了获取距离信息,需要调查光反射回来的飞行时间。也就是说,只要测量出从发光部位发出光的瞬间开始,直到感光元件的各个点捕捉到光的这一段时间,就能判断每个感光元件拍摄了多远的物体(图4.10)。实际上测量光的反射时间时,需要调查发射出的光和接收到的光这两者的相位差(两个波动的差),不过从思路上来说两者是没有差别的。

        除此之外,TOF 技术还包含了利用超声波测距的技术。超声波与光不同,就算是透明玻璃之类的物体,也能测出到此物体的距离。

4.2.2 自然用户界面

        RGB-D 传感器都用在什么方面呢?
        RGB-D 传感器最广泛最普遍的用途是用在一种叫作自然用户界面的设备上。自然用户界面就是利用了人类的手势和语音的用户界面,英语记作NUI(Natural User Interface)。在实现NUI 时,我们会用到很多RGB-D 传感器的技术,下面就为大家介绍几个主要的NUI。

微软Kinect

        现在各种各样的制造商都销售RGB-D 传感器,其中最著名的产品就是微软公司的Xbox 360 Kinect 传感器(以下简称Kinect)(图4.11)。

        Kinect 是微软公司的游戏机Xbox 360 的一种控制器,这款产品为RGB-D 传感器的热潮又添了一把火。它支持语音识别,能够识别用户全身的动作,颠覆了以往“用双手拿着控制器才能玩电子游戏”的常识。
        过去也有过不用手操作的控制器,比如玩跳舞游戏用的毯型控制器等,而Kinect 就不需要与控制器有物理上的触碰。从这点上可以说,它是一款前所未有的控制器。虽然微软官方尚未公布准确的信息,但已知第一代Kinect 内部装有PrimeSense 公司的传感器模块,在三维空间识别方面应用了点阵图判定法。
        虽然后续机型Xbox One Kinect 传感器采用了TOF 技术,但Kinect的强大之处不在于测距,而在于能够从距离图像中检测出人的位置和姿势。过去那些使用毯型控制器的游戏无法判断双手的位置,而Kinect 却实现了用双手双脚来玩游戏。
        不过十分可惜的是,在Kinect推出10年之际时,微软宣布该系列设备的停产,有兴趣的可以通过以下链接去了解了解,这里不做过多叙述。

(56 封私信 / 80 条消息) 如何评价微软停产Kinect? - 知乎 (zhihu.com)

Leap 

        Kinect 的出现带来的冲击已经颠覆了人们以往关于传感器的常识,而给新型传感器时代的到来砸下定音之槌的则是Leap(Leap MotionController,厉动控制器),它是Leap Motion 公司于2012 年公布的一款小型用户界面设备,从外表上看,是一个长约8 cm 的立方体(图4.12)。

        把Leap 放在桌子上,它就能高速且精密地追踪其上方半径约50 cm范围内的人类手指发出的动作,其精确度最高在0.01 mm(图4.13)。

        那么Leap 是如何捕捉手指动作的呢?
        Leap 配备有两个摄像头,一个用来捕捉照射在机体上的红外线光,另一个用来捕捉反射出的红外线光(图4.14)。也就是说,Leap 和立体相机都是利用相同的原理去捕捉人手的,只不过Leap 应用的是红外线。另外,因为拍摄利用的是红外线,所以它有一个强大的机制来对抗外部干扰,比如从设备上方投射下来的房间内光线等。

        这里介绍的NUI 可以识别手势,也能够轻易地识别出人的动作。此外,作为RGB-D 传感器而言,Kinect 操作简单且可用性强,也能够用作实验用途。

4.3   先进的感测系统

        通过前面的学习,相信大家已经了解到,传感器不只是一个电子零件,还“作为设备”而存在着。然而当代传感器不仅限于这个层面,其中还存在靠多个装置协作来获取信息的机制,也就是说还存在“作为系统”的传感器。

4.3.1 卫星定位系统

        “定位”就是测定位置。“卫星定位系统”这个词听上去给人感觉很生硬也很复杂,换成GPS(Global Positioning System,全球卫星定位系统)这个说法,想必大家就不陌生了。GPS 传感器在车载导航系统和智能手机上也有所应用,在除工程师之外的人群中也有着很高的知名度。并且想必各位也知道,GPS 是一款利用人造卫星测量位置的传感器。
        前面说的还是作为电子零件的传感器,不知不觉地,现在话题竟上升到宇宙层面了。那么就索性一起来思考一下这浪漫的GPS 的机制。说到宇宙层面大家可能有点犯怵,不过只要有初中程度的数学知识就足以理解GPS 定位的基本原理,所以不必担心。

GPS的结构

        虽然我也想赶紧讲解GPS 原理,不过在那之前先来理解一下GPS系统的结构。对理解系统运行来说,理解结构是至关重要的。请看图4.15。

        首先,如果大家想借助GPS 的力量,则需要专用的“接收器”。接收器的功能不同,其尺寸和价格也不同。小到用在智能手机上的小接收器,大到带有精密的土地测量功能的接收器,可谓是一应俱全。因为接收器是接收无线电波用的,所以还能够把接收器分解成天线,以及解析无线电波的装置。这里就不往深处讲了,不过请大家记住,接收器中装有一台能够知道现在时刻的“时钟”。
        接下来该谈谈“人造卫星”了。GPS 是由不少于24 颗的人造卫星组成的,这些卫星无时无刻都围绕着地球旋转(图4.16)。基础轨道是由24 颗人造卫星负责的,事实上用于GPS 的人造卫星约有30 颗左右,第25 颗及以后的卫星则用于提升可靠性和精确度。

        还有一个重要角色大家可不能忘了。那就是从地面上监测卫星状态的“监控站”。监控站是GPS 的一个重要的构成要素,它负责确认轨道,修正卫星时刻的偏差。GPS 原本是美国政府为了军事目的而配备的,当然现在也仍然为美军所用。
        那么来看一下GPS 的原理,首先请想象图4.17 描述的状况。你现在正站在草原上,周围没有任何高楼大厦,脱离了平日里闹市的喧嚣,心情无比舒畅。只要夜幕降临,似乎就可以看见繁星点点的夜空。然后你拿着GPS 接收器,现在就用这台接收器查询一下你的当前位置。
        一启动接收器,接收器就会开始接收卫星发射出的无线电波。这里有个地方比较容易被误解,还请大家注意。即,GPS 接收器并不会向卫星发射信息,它毕竟只是一台用来接收卫星发来的无线电波的设备。正因如此,不管有多少人使用GPS,也不会出现GPS 被挤爆的现象。

        可想而知,如果有24 颗用于GPS 的人造卫星在绕着地球周围旋转,那么有一半都在地球的内侧飞着。而剩下的12 颗中可能有差不多一半刚好在绕地平线飞行,或是在森林的另一边。这样一来,通常能观测到的人造卫星最多也只有6 颗左右。
        话说回来,在这些卫星发射出的无线电波中,都含有什么样的信息呢?由GPS 人造卫星发射的无线电波与手机和Wi-Fi 一样,都包含刻意生成的数据。下面两条信息尤其重要。

        ●发射无线电波时的准确时刻
        ●卫星在宇宙空间中的位置

        第一条是准确时刻,这无疑是GPS 最重要的要素。由于用于GPS 的人造卫星上搭载有相
当精确的时钟——原子钟,这种产品才得以实现。这里就不细讲原子钟了,大家把它视作世界上最精确最难产生误差的时钟即可。
        第二条是卫星的位置,这或许有点难以想象。在前面讲过的GPS 的结构里,出现了监控站这一事物,大家还记得监控站的作用吗?监控站起着检查卫星轨道的作用,更进一步说,监控站负责计算卫星的位置,并将这些信息输入卫星。简单点说,请大家想象宇宙空间里有一个坐标系(x, y, z),卫星的位置信息是用这个坐标系来表示的。卫星会使用无线电波告诉我们自己位于宇宙空间的何处。
        这样一来需要的信息就齐了,接下来看看计算方法。

GPS定位法

        用一句话来概括,GPS 定位就是“寻找球的交点”。关于这个球,大家可以在脑海中先形成一个圆的概念。请回到之前那片草原上。
        现在,你手中的接收器接到了从卫星发来的无线电波。当然,要用肉眼找到卫星是极其困难的,不过你可以估算出人造卫星所在的轨道离你有多远。这又是怎么一回事儿呢?请大家回忆一下,GPS 接收器里是内置有“时钟”的。那么人造卫星发出的无线电波里包含着什么样的信息呢?里面包含有“发射无线电波时的准确时刻”,也就是说接收器知道“无线电波从卫星飞过来用了多长时间”。因为用时间乘以速度就可以求出距离,所以,根据无线电波的传播速度(光速:2.99792458×108 m/s)就可以求出接收器与卫星之间的距离。这样一来就可以把你跟接收器的位置缩小为“以卫星为中心画的圆周上的某一处”了(图4.18)。
        当然光这样是确定不了位置的。大家在智能手机的地图应用和车载导航上应用的GPS 显示的不是“一条线上的某一处”,而是清晰的一个点(尽管可能存在误差)。这里就需要用到“球的交点”这一思路了。刚才我们考虑的是接收1 颗卫星发来的无线电波的情况,而实际上地球周围被24 颗用于GPS 的人造卫星包围着,这点前面已经讲过了。现在假设接收器正同时接收2 颗卫星发来的无线电波,此时的情况如图4.19所示。

        我们知道,2 颗人造卫星离接收器的距离是各不相同的,所以两个圆的大小(半径)也不同。这两个圆周表示的是你(接收器)可能所在的位置。那么当然,你实际所在的位置就是两个圆周的交点处。因为从地球上来看,其中一个交点的位置刚好跟人造卫星的位置相反,所以就算有两个交点,也不难判断出哪个才是你的当前位置。
        前面都是基于二维平面来考虑的。实际上,换到三维空间也是同一个思路(图4.20)。

        从人造卫星的角度来看,可以推测出接收器的位置在球面的某处。用2 颗人造卫星时,接收器的所在区域就被缩小到两个球相交而成的圆上,如果再加1 颗人造卫星,所在位置就是圆周和球面的交点,其可能范围就缩小到了两处。跟二维平面的例子一样,因为其中一个点位于卫星的另一侧,所以能够判断出哪个交点才是接收器的所在位置。
        现在话题一步步深入到了二维和三维,下面来思考一下“现实世界”中的计算。这里可能有人会奇怪:“咦?不能直接用三维空间来计算吗?”毫无疑问,我们的世界是三维世界,但是在前面的解说中有个部分我们一直没提。那就是“接收器内部时钟的误差”。请回忆一下这些知识。

        ● GPS 接收器里内置有“时钟”
        ●人造卫星里内置有相当精确的时钟——原子钟
        ●地面上的监控站负责修正人造卫星内的时钟的误差

        在这里,接收器和卫星差别很大。人造卫星的时钟显示时刻永远都是精确的,而接收器的时钟却并非如此(图4.21)。

        接下来就用数学公式思考一下,也算是对前文的总结。大家可能会觉得这些内容有点难,不过只要有初中程度的数学知识就足够了。下面的内容对于理解GPS 的机制很重要,请大家好好思考。
        那么,让我们再次回到草原。如图4.22 所示,假设你拿着接收器站在草原的O 处。现在,有4 颗人造卫星A、B、C、D 正在绕着上空的轨道飞行。
        此时,你想用GPS 求出你现在所在的坐标O(Xo, Yo, Zo)。因为公式里全是字母,所以需要区分一下未知值和已知值。 

       4 颗人造卫星的位置是已知的。这是因为监控站时刻掌握着人造卫星的轨道,并对轨道进行着修正。也就是说,4 颗人造卫星的位置,即

        这些都是已知值。
        那么,是不是还有其他已知值呢?按理说,我们还知道接收器接收到无线电波的时刻,以及每颗卫星发射出无线电波的时刻。设这些时刻如下。

        这些也都成了已知值。
        然后,被发射出去的无线电波和光的速度相同。因此只要知道光的速度c,以及发射或者接收无线电波的时刻,就能求出卫星到接收器的距离。

        一起来想想还有哪些方法能表示距离。例如用AO 表示A 到接收器的距离,就能用勾股定理将距离表示如下。

        已知这个公式里需要求的值只有你所在位置O 的坐标,即(Xo, Yo, Zo)这3 个坐标。数学好的读者或许会马上想到:“这样啊!既然有3 个变量,那就用同样的公式表示B 跟C,再联立方程式求解,不就能求出来O 的坐标(Xo, Yo, Zo) 了吗!”不过,这里有一个陷阱。那就是接收器时钟的误差。请再回忆一下前面的公式。

        为了让这些公式成立,需要用同一个时钟测算Ta、Tb、Tc、Td。卫星内部用于测算Ta、Tb、Tc、Td 的时钟一直受着严密的管理,所以,虽然从物理角度来说是4 个不同的时钟,但可想而知,它们的时刻是一致的。然而接收器的时间就不同了。接收器接收到无线电波的时刻T 再怎
么说也只是“接收器的时钟所表示的时刻”。
        用于GPS 的卫星是在20 200 km 的高空上沿轨道旋转的,因此如果发射出的无线电波速度为秒速300 000 km,那么不超过一秒就能发到接收器那里。举个极端的例子:如果接收器的时钟慢了10 秒,那么接收到的无线电波中包含的Ta、Tb、Tc、Td 所指的应该是未来的时刻。
        那么要怎么办才好呢?
        实际上这是个很简单的问题。把接收器的时钟产生的误差τ 提前加入公式里就好了。就是说,用T - τ 来表示接收器接收到无线电波的准确时刻。这样一来,接收器和每颗卫星间的距离就得改成以下这样的形式了。

        不知大家是否注意到了,为什么要以4 颗卫星为前提条件呢?没错,现实世界中不止有Xo、Yo、Zo 这3 个未知数,把误差τ 也算在内,一共有4 个未知数。想求出4 个未知数就要用到4 个等式。所以才需要准备4 颗人造卫星和接收器的关系式,用联立方程式解这4 个公式,就能求出当前位置O。
        事实上在现实世界中,GPS 接收器测定位置时,需要一个能从4 颗卫星接收到无线电波的环境。
        以上就是GPS 定位的基本计算方法。乍看上去很复杂的宇宙规模的系统,其原理并没有那么复杂。此外,像GPS 这样,使用到多个参照点的距离来求出当前位置的方法不只适用于GPS。这里测量的前提是测量时间要精确,而用一般的设备是很难达到高精确度的,不过之后也会讲解一下这些位置测量技术。
        在讲解之前,先来一起看一下卫星定位近来的发展趋势。

从GPS到GNSS

        近几年,相对于GPS 而言,GNSS(Global Navigation Satellite System,全球导航卫星系统)这个词的使用频率逐渐增多。只要拿着接收器,任何人都能享受到GPS 带来的福利。然而GPS 说到底只是卫星定位系统的名称之一,使用的是美国人造卫星。现在除了GPS,还存在着各种各样的卫星定位系统。这些卫星定位系统的统称是GNSS,其中美国版的系统叫作GPS。顺带一提,接下来要为大家介绍一些只能在特定地区使用的卫星定位系统(如准天顶卫星等),这些系统叫作RNSS(RadioNavigation Satellite System,卫星无线电导航系统)。
        除了GPS 以外, 著名的GNSS 还有俄罗斯的GLONASSA。GLONASS 的起源能够追溯到苏联时代。跟美军开发GPS 的目的一样,当时的苏联政府对GLONASS 的定位是:用于导弹制导等方面的具有高精确度的位置测定系统。苏联政府就是基于此定位逐步整顿GLONASS的。相传20 世纪90 年代,苏联已经发射了数量相当多的人造卫星。苏联解体后,GLONASS 就由俄罗斯联邦政府接管。不过因为没能进行充分的维护,GLONASS 失去了它原本的价值。
        然而迈入21 世纪以来,俄罗斯政府宣布了要重新整顿GLONASS的计划,恢复了运行所需的卫星数量。如今GLONASS 已经能为普通百姓所用,支持GLONASS 的接收器也已经普及开来。举个例子,大家如果去苹果公司的Web 网站查询最新款iPhone 的规格,就会看到其支持GPS 和GLONASS 这两种卫星定位系统。
        像这种支持多种GNSS 的情况就叫作“支持GNSS” 或“多重GNSS”。除此之外,还有欧盟的Galileo 和我国的北斗等能在世界范围内使用的卫星定位系统。

GNSS时代的优点

        如果世界各国都配备了GNSS 卫星,那么对我们来说有什么好处呢?最大的优点是“测量的精确度提升,能够测量的范围扩大”。大家读到这里应该已经知道,要用GPS 获取当前位置,需要能看到4 颗卫星(接收到4 颗卫星发来的无线电波)。又因为地球周围围绕着的GPS 人造卫星有24 颗,所以定位时实际能够利用的卫星最多也只有6 颗左右。如果总是能在草原中央使用GPS 倒没什么问题,但实际上人们拿着智能手机打开附有GPS 导航功能的地图时,基本都是在市中心找目的地所在的办公大楼,或是在找一家没去过的店铺。像这样被大楼包围的地方,往往连4 颗卫星都很难捕捉到。我们无法指望着卫星轨道上总是有4 颗没被大楼挡住的卫星,而且这4 颗卫星还正好在我们头顶的正上方。
        不过现在是GNSS 时代了。大家手里的智能手机和移动电话上或许已经配备支持多种GNSS 的接收器了。如果装有这种接收器,那么即使只有一颗GPS 卫星在我们的正上方,也有可能通过把这颗卫星跟GLONASS 卫星或Galileo 卫星相结合,来保证卫星的个数在4 颗及以上。通过世界各国的合作来使GNSS 这门覆盖全世界的技术变得更加方便,这不正是GNSS 的魅力所在吗?

4.3.2 准天顶卫星

        准天顶卫星是什么样的卫星呢?“准天顶”听着别扭,读成“准·天顶”就能理解了,即“大致位于正上方”。
        可是为什么需要这种大致位于正上方的卫星呢?前文也解释过了,地球周围有24 颗GPS 卫星,还配备GLONASS 等卫星,定位越来越方便了。为什么还要在这种情况下单独配备人造卫星呢?关键就在于位置条件和GNSS 的匹配度。为了在市中心和山区等各种场所使用GPS,人们用多重GNSS 来增加卫星的数量,这样就易于补充无线电波了。但实际上仅仅增加卫星数量并不能做到完美。因为要是人进到大楼的夹缝中间,要捕捉到人造卫星就会变得异常困难。解决这个问题的办法就是在正上方设置卫星(图4.23)。

        据称,准天顶卫星还配备了与前文那些卫星定位系统不一样的技术机制。如果能够实现,预计误差最大不会超过几厘米。这种技术一旦普及,想必会在各个领域掀起一场技术革新的浪潮,例如能够让农用拖拉机自动驾驶,而且不会破坏田垄。

4.3.3 IMES

        凭借多重GNSS 和准天顶卫星,即使处于大楼的夹缝和山区,都能得到GNSS 的帮助。那么在室内又如何呢?
        例如地铁里的地下商业街。这种情况下正好是该GNSS 出场的时候,但地下收不到卫星发射的无线电波,获取到的位置信息无法精确到可以拿来导航。不只是地下,博物馆和百货商店等所有
类型的建筑物中都存在这个问题(图4.24)。

        很早以前,IT 和机器人领域就开始研究估算位置的方法了。本章开头介绍的RGB-D 传感器等,也被广泛用于研究位置估算。然而在技术层面实现和在服务层面实现是两回事。即使在技术层面能够实现,也还存在着一个问题,即因为做不出小型且廉价的设备,所以难以普及。GPS 原本是作为用于室外的定位设备而被人们熟知的,在这种情况下,有人尝试改良GPS 的机制,试图让室内也能使用GPS,这门技术就叫作IMES(Indoor Messaging System,室内通信系统)(图4.25)。
        IMES 最大的技术特征就是兼容GPS。IMES 通过发出和GPS 所用频宽相同的无线电波来传送信息,使用者只需更换GPS 接收器的软件就能够使用IMES。不过IMES 也有一些与GPS 相差甚远之处。
        请看应用示意图4.25。如果一台接收器能同时支持GPS 和IMES,那么就有望实现两种技术的无缝结合服务:在室外用GPS 导航,进到室内自动切换成IMES 继续导航。此时,GPS 卫星和IMES 的发送终端发出的无线电波使用的是相同的频宽,不过里面的数据形式却是不同的。就像前面讲的那样,GPS 的无线电波里包括卫星的位置和时刻数据,测算时需要从不少于4 颗卫星那里接收数据,再根据数据算出位置。而IMES 的终端发送的是IMES 终端的位置信息,使用前要先给每个终端设定坐标或楼层编号等信息,把这些终端安装在天花板等处。这样一来,IMES 的发送终端就会持续发送其所在场所的位置信息,并向经过其附近的接收器提供位置信息。

        从这种机制可知,IMES 接收器的位置精确度取决于设置间隔,以及发射的无线电波的强度。如果单纯用于导航,其精确度是不成问题的,而要达到精确度为几厘米的程度就不容易了。虽然IMES 还没有广泛普及,但经过实证实验,已顺利地取得了一定成果。如果有朝一日IMES 得到普及,那么或许人们在室内和室外都能用智能手机等设备享受到无缝的导航服务。

4.3.4 使用了Wi-Fi的定位技术

        对于那些经常使用车载导航的人来说,GPS 是一种再熟悉不过的事物了。那么我们身边还有哪些设备是使用无线电波来定位的呢?众所周知,Wi-Fi 已经普及到家庭、办公室、大学等各种各样的场所,在这里就为大家介绍一下使用了Wi-Fi 的定位技术。

接受信号强度

        就跟大家注意到的那样,这个标志意味着无线电波(信号)的接收状态。虽然接收状态也会受到障碍物等因素的影响,不过接收状态的特征是强度随距离成比例减弱。打个比方,移动电话离基站越远,接收到的信号就越弱。利用这个性质就可以算出大概的距离和位置(图4.27)。
        接收到的信号越强,就说明离无线电波的发射地越近。更何况发射地有3 处,这样一来就能从信号的强弱差异来判定位置。
        但实际上,就算直接把上述想法拿来用也没法得到所期望的精确度。使用环境的影响是一方面,另一方面,无线电波的反射和干扰等因素的影响也会导致信号强度和距离的比例关系失效。

指纹定位

        那么,是不是就不能用Wi-Fi 测定位置了呢?
        Wi-Fi 首先在家庭中普及,而后又普及到办公室和购物中心等地。如果Wi-Fi 能测定位置,那么应该有很多人会使用Wi-Fi 来定位。近年来人们热衷于研究Wi-Fi 定位技术,并逐步在优化这门技术。其中有种方法成果显著,叫作“指纹”(Fingerprint)。
        从指纹这个词大家就能想象到,这种方法要用到某些固有的信息。指纹这个概念在Wi-Fi 里有很多版本,一般指的是“某个地点的无线电波状态”。
        前文提到了应用3 个无线电波发射地来测定位置的方法,但是这个方法并不好用。这是因为墙壁等物体的反射会造成无线电波状态紊乱。这项备受瞩目的技术正是把“无线电波的紊乱”作为指纹记录下来,从而推测位置的。
        来看一下具体该怎么做。图4.28 显示的是房间内设置了数个Wi-Fi接入点的状态。每个接入点都发出无线电波,由这些无线电波来测量各个地点的信号强弱情况,将结果记录到数据库。

        实际进行定位的时候,先用智能手机等支持Wi-Fi 的设备测量当前位置的信号状态,再从注册到数据库的内容里找出距离自己较近的发射地。这样就能明白自己现在在哪里了。
        这个方法要事先测量,比较费工夫,不过现在也出现了一种服务,据称该服务的测量误差不超过1 m。如果能用模拟判定等来达到事先测量的目的,想必这门技术会更易为人们所用。

4.3.5 Beacon

        近几年有一种定位技术很是热门,这种技术利用了接收信号的强度,它就是Beacon。说起Beacon,我们常常听到它被用于雪山搜救方面。若是登山者要去危险的地方,就先让他/ 她带上Beacon。万一遇到灾难,救助人员就会拿着接收器去Beacon 发出的信号较强的地方寻找
        Beacon 是一门近来引发人们热议的新技术。它使用了第3 章介绍过的BLE 技术这种省电的通信标准。最近的iPhone 也以iBeacon 为名向用户们提供了一种使用Beacon 的途径,其基本用法和用于灾难搜救中的Beacon 并无不同。打个比方,各位来试着想象一家品牌专卖店(图4.29)。

        品牌商品价格昂贵,如果不能让消费者理解商品的精妙所在,消费者就不会来购买。就算安排员工在店内为顾客说明,人手也有限。要是在附近贴上大量的说明单子,还会破坏店铺的气氛。有没有什么好的方法能向顾客详细地说明每件商品呢?这时候,Beacon 技术就派上用场了。
        首先,在不破坏店铺气氛的前提下,悄悄给各个商品(或者货架)安上Beacon 发送器,并接通发送器电源(大部分机器只需要放入电池),发送器就会发射出BLE 标准的信号。这个信号中只包含事先定好的ID。
        接下来,请来到店里的顾客用支持BLE 的智能手机打开专用的应用程序。顾客一靠近商品,也就是Beacon 的发送器,智能手机就会接收到信号。然后应用程序会获取信号中包含的ID,再访问这个品牌的服务器,显示商品的信息就可以了!
        像这样,Beacon 能够把信息巧妙地提供给用户。除了前面举的关于商品说明的事例,或许还能实现以下服务:利用Beacon 向来店的顾客赠送优惠券,或者根据接收到的Beacon 的ID 告知顾客其当前所在位置。
        必须注意的是,发送器不同,Beacon 输出的无线电波信号的强弱也不同,并且,接收器(即智能手机)被放在手机套或背包里时,无线电波信号可能会减弱。在开发应用时,需要事先进行试验,选择发送器信号的强度。此外,在设计时还需要考虑到各种各样的情况,例如接收器接收到强度为多少的信号时才会有响应,以及接收到多个信号时要怎么办,等等。

4.3.6 位置信息和物联网的关系

        本章从RGB-D 开始讲起,介绍了许多测量位置信息的传感器。作为最后的总结,让我们一起来思考一下位置信息和物联网的关系。位置信息是如何应用在物联网的世界里的呢?
        有很多像GNSS 和Wi-Fi 指纹定位这样帮助用户确定自己当前位置的技术,这些技术方便了我们的生活,比如导航。智能手机的问世使得很多人能够立即浏览当前位置和周边地图。这些进步在10 年前都是无法想象的。还有,即使丢失了手机,也能用远程操作锁定手机,并让手机把位置信息发送过来。虽然乍看起来会让人觉得这些事例似乎跟物联网世界之间的联系很微弱。话说回来,正因为能如此轻松地获取位置信息,物联网世界才会多了几分现实感。
        通过设置大量的传感器来采集大量的数据,或者通过设备间的通信力图实现新的服务,这就是物联网和机器对机器通信这些技术的背景。这些服务或许是监管水坝的储水量,或许是守护濒危物种,又或者是优化运输路线,以及在海洋上监测海啸。无论想要实现哪种服务,位置信息都是不可或缺的。
        有些情况下,位置信息本身就具有极大价值,例如守护濒危物种,以及优化运输路线;也有些情况是需要用位置信息来掌握测量点,或者管理设备的,例如监管储水量和监测海啸。在位置信息的相关技术中,虽然有些部分乍看起来很复杂,其应用方法也难以理解,然而这种技术却是支撑着物联网世界的宝贵的技术。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/759001.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

分布式文件存储与数据缓存(二)| Redis

目录 Redis概述_什么是NoSQLNoSQL的四大分类KV型NoSql(代表----Redis)列式NoSql(代表----HBase)文档型NoSql(代表----MongoDB)搜索型NoSql(代表----ElasticSearch) 关系型数据库和非…

Aspose.PDF功能演示:在 JavaScript 中优化 PDF 文件

PDF 文件是一种普遍存在的文档共享格式,但它们有时可能会很大,导致加载时间变慢并增加存储要求。优化 PDF 文件对于确保无缝的用户体验至关重要,尤其是在 Web 应用程序中。因此,在这篇博文中,我们将探讨如何使用 JavaS…

NCV4266ST50T3G线性稳压器芯片中文资料规格书PDF数据手册引脚图参数图片价格

产品概述: NCV4266 是一款集成了 150 mA 输出电流的低漏稳压器系列,可用于严酷汽车环境。它包括了较宽的运行温度范围和输出电压范围。该器件提供 3.3 V、5.0 V 固定电压版本,以及可调电压版本,输出电压准确度为 2%。它具有较高的…

IDEA 下载依赖包源码报错 Cannot download sources Sources not found for:XXX

最近在做一个功能的时候想看一个库的源码,结果源码下不下来,报Cannot download sources Sources not found for:XXX,网上搜了半天,也找不到靠谱的结论 后来想了下,应该是镜像那边出了问题,把镜像一删,源码…

HTML静态网页成品作业(HTML+CSS)——非遗徽州木雕网页(6个页面)

🎉不定期分享源码,关注不丢失哦 文章目录 一、作品介绍二、作品演示三、代码目录四、网站代码HTML部分代码 五、源码获取 一、作品介绍 🏷️本套采用HTMLCSS,未使用Javacsript代码,共有6个页面。 二、作品演示 三、代…

Linux nginx 域名申请证书后无法使用(无法访问此网站)阿里云域名

首先我们一步排除 1、域名备案是否成功? 网站备案_ICP备案_备案迁移_备案-阿里云 2、域名是否解析(我就是错在这里) 阿里云登录 - 欢迎登录阿里云,安全稳定的云计算服务平台 3、是否申请证书成功? 4、nginx是否支持…

【云原生 • Kubernetes】认识 k8s、k8s 架构、核心实战

文章目录 Kubernetes基础概念1. 是什么2. 架构2.1 工作方式2.2 组件架构 3. k8s组件创建集群步骤一 基础环境步骤二 安装kubelet、kubeadm、kubectl步骤三 主节点使用kubeadm引导集群步骤四 副节点加入主节点步骤五 部署dashboard Kubernetes核心实战1. 资源创建方式2. Namespa…

Beamer模板——基于LaTeX制作学术PPT

Beamer模板——基于LaTeX制作学术PPT 介绍Beamer的基本使用安装和编译用于学术汇报的模板项目代码模板效果图 Beamer的高级特性动态效果分栏布局定理环境 介绍 在学术领域,演示文稿是展示和讨论研究成果的重要方式。传统的PowerPoint虽然方便,但在处理复…

python爬虫之爬虫入门

import requests rrequests.get("http://www.baidu.com") print(r.status_code)#用status_code来确定页面状态是否正常 type(r) r.headers requests库入门 status_code可以用来检验网页状态是否正常type(r)返回r的类型r.headers返回该页面头部信 运行结果如下&#x…

SQLiteC/C++接口详细介绍sqlite3_stmt类(二)

返回目录:SQLite—免费开源数据库系列文章目录 上一篇:SQLiteC/C接口详细介绍sqlite3_stmt类简介 下一篇:SQLiteC/C接口详细介绍sqlite3_stmt类(三) sqlite3_reset() 功能:重置一个准备好执行的SQL语…

跨越时空的纽带:探索Facebook如何连接人与人

引言 Facebook作为全球最大的社交媒体平台之一,已经成为了人们日常生活中不可或缺的一部分。它不仅仅是一个社交网络,更是连接人与人、人与世界的纽带。在这篇文章中,我们将深入探讨Facebook如何跨越时空,连接人与人之间的关系&a…

Idea 不能创建JDK1.8的spring boot项目

由于https://start.springboot.io/ 不支持JDK1.8,那么我们需要换idea的springboot创建源,需要换成 https://start.aliyun.com,这也是网上大部分教程说的,但是我这边会报这样的错误: Initialization failed for https:…

Linux/Monitored

Enumeration nmap 用 nmap 扫描了常见的端口,发现对外开放了 22,80,389,443,5667 端口,端口详细信息如下 ┌──(kali㉿kali)-[~/vegetable/HTB/Monitored] └─$ nmap -sC -sV -p 22,80,389,443,5667 10.10.11.248 Starting Nmap 7.93 ( https://nm…

《论文阅读》带边界调整的联合约束学习用于情感原因对提取 ACL 2023

《论文阅读》带边界调整的联合约束学习用于情感原因对提取 前言简介Clause EncoderJoint Constrained LearningBoundary Adjusting损失函数前言 亲身阅读感受分享,细节画图解释,再也不用担心看不懂论文啦~ 无抄袭,无复制,纯手工敲击键盘~ 今天为大家带来的是《Joint Cons…

音频和视频标签

音频用audio标签 controls表示控制栏 loop循环播放音频 autoplay自动播放&#xff08;浏览器基于隐私一般不支持&#xff09; <!DOCTYPE html> <html lang"en"> <head><meta charset"UTF-8"><meta http-equiv"X-UA-Com…

UDP客户端与服务端执行bind和connect

udp服务器使用connect()函数指明套接字的目的地址/端口号&#xff0c;使服务器只接受特定主机的请求&#xff1b; udp服务器调用了bind()函数为服务器套接字绑定本地地址/端口&#xff0c;使得客户端知道发数据的目的地址/端口&#xff1b; udp客户端调用connect()函数指明目的…

ubuntu10.04 apache2.2开启tls1.2的支持,使现代的edge和firefox浏览器能正常访问https

最近发现自己ubuntu10.04服务器上的apache https无法通过win11上的edge和firefox浏览器访问&#xff0c;但xp下的ie6和ie8没有问题。 firefox的错误提示为“此网站可能不支持TLS 1.2协议,而这是Firefox支持的最低版本”。 经过检查发现&#xff1a; IE6访问https所需的版本是SS…

时序预测 | Matlab实现BiTCN-BiLSTM双向时间卷积神经网络结合双向长短期记忆神经网络时间序列预测

时序预测 | Matlab实现BiTCN-BiLSTM双向时间卷积神经网络结合双向长短期记忆神经网络时间序列预测 目录 时序预测 | Matlab实现BiTCN-BiLSTM双向时间卷积神经网络结合双向长短期记忆神经网络时间序列预测预测效果基本介绍程序设计参考资料 预测效果 基本介绍 1.Matlab实现BiTCN…

ASP .Net Core ILogger日志服务

&#x1f433;简介 ILogger日志服务是.NET平台中的一个内置服务&#xff0c;主要用于应用程序的日志记录。它提供了灵活的日志记录机制&#xff0c;允许开发者在应用程序中轻松地添加日志功能。以下是其主要特点和组件&#xff1a; ILogger接口&#xff1a;这是ILogger日志服…

【Vue】三、使用ElementUI实现图片上传

目录 一、前端代码实现 二、后端代码实现 三、调试效果实现 一、前端代码实现 废话不多说直接上代码 <el-form-item prop"image" label"上传图片" v-model"form.image"><el-upload:action"http://localhost:8…