详解无线传感器网络定位技术

合集下载
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

详解无线传感器网络定位技术
1 引言
无线传感器网络作为一种全新的信息获取和处理技术在目标跟踪、入侵监测及一些定位相关领域有广泛的应用前景。

然而,无论是在军事侦察或地理环境监测,还是交通路况监测或医疗卫生中对病人的跟踪等应用场合,很多获取的监测信息需要附带相应的位置信息,否则,这些数据就是不确切的,甚至有时候会失去采集的意义,因此网络中传感器节点自身位置信息的获取是大多数应用的基础。

首先,传感器节点必须明确自身位置才能详细说明“在什么位置发什么了什么事件”,从而实现对外部目标的定位和跟踪;其次,了解传感器节点的位置分布状况可以对提高网络的路由效率提供帮助,从而实现网络的负载均衡以及网络拓扑的自动配置,改善整个网络的覆盖质量。

因此,必须采取一定的机制或算法来实现无线传感器网络中各节点的定位。

无线传感器网络定位最简单的方法是为每个节点装载全球卫星定位系统(GPS)接收器,用以确定节点位置。

但是,由于经济因素、节点能量制约和GPS 对于部署环境有一定要求等条件的限制,导致方案的可行性较差。

因此,一般只有少量节点通过装载GPS 或通过预先部署在特定位置的方式获取自身坐标。

另外,无线传感器网络的节点定位涉及很多方面的内容,包括定位精度、网络规模、锚节点密度、网络的容错性和鲁棒性以及功耗等,如何平衡各种关系对于无线传感器网络的定位问题非常具有挑战性。

可以说无线传感器网络节点自身定位问题在很大程度上决定着其应用前景。

因此,研究节点定位问题不仅必要,而且具有很重要的现实意义。

2 WSN 定位技术基本概念
2.1 定位方法的相关术语
1)锚节点(anchors):也称为信标节点、灯塔节点等,可通过某种手段自主获取自身位置的节点;
2)普通节点(normal nodes):也称为未知节点或待定位节点,预先不知道自身位置,需使用锚节点的位置信息并运用一定的算法得到估计位置的节点;
3)邻居节点(neighbor nodes):传感器节点通信半径以内的其他节点;
4)跳数(hop count):两节点间的跳段总数;
5)跳段距离(hop distance):两节点之间的每一跳距离之和;
6)连通度(connectivity):一个节点拥有的邻居节点的数目;
7)基础设施(infrastructure):协助节点定位且已知自身位置的固定设备,如卫星基站、GPS 等。

2.2 定位方法的性能评价标准
无线传感器网络定位性能的评价标准主要分为7 种,下面分别进行介绍。

1)定位精度。

定位技术首要的评价指标就是定位精确度,其又分为绝对精度和相对精度。

绝对精度是测量的坐标与真实坐标的偏差,一般用长度计量单位表示。

相对误差一般用误差值与节点无线射程的比例表示,定位误差越小定位精确度越高。

2)规模。

不同的定位系统或算法也许可以在一栋楼房、一层建筑物或仅仅是一个房间内实现定位。

另外,给定一定数量的基础设施或一段时间,一种技术可以定位多少目标也是一个重要的评价指标。

3)锚节点密度。

锚节点定位通常依赖人工部署或使用GPS 实现。

人工部署锚节点的方式不仅受网络部署环境的限制,还严重制约了网络和应用的可扩展性。

而使用GPS 定位,锚节点的费用会比普通节点高两个数量级,这意味着即使仅有10%的节点是锚节点,整个网络的价格也将增加10 倍,另外,定位精度随锚节点密度的增加而提高的范围有限,当到达一定程度后不会再提高。

因此,锚节点密度也是评价定位系统和算法性能的重要指标之一。

4)节点密度。

节点密度通常以网络的平均连通度来表示,许多定位算法的精度受节点密度的影响。

在无线传感器网络中,节点密度增大不仅意味着网络部署费用的增加,而且会因为节点间的通信冲突问题带来有限带宽的阻塞。

5)容错性和自适应性。

定位系统和算法都需要比较理想的无线通信环境和可靠的网络节点设备。

而真实环境往往比较复杂,且会出现节点失效或节点硬件受精度限制而造成距离或角度测量误差过大等问题,此时,物理地维护或替换节点或使用其他高精度的测量手段常常是困难或不可行的。

因此,定位系统和算法必须有很强的容错性和自适应性,能够通过自动调整或重构纠正错误,对无线传感器网络进行故障管理,减小各种误差的影响。

6)功耗。

功耗是对无线传感器网络的设计和实现影响最大的因素之一。

由于传感器节点的电池能量有限,因此在保证定位精确度的前提下,与功耗密切相关的定位所需的计算量、通信开销、存储开销、时间复杂性是一组关键性指标。

7)代价。

定位系统或算法的代价可从不同的方面来评价。

时间代价包括一个系统的安装时间、配置时间、定位所需时间;空间代价包括一个定位系统或算法所需的基础设施和网络节点的数量、硬件尺寸等;资金代价则包括实现一种定位系统或算法的基础设施、节点设备的总费用。

上述7 个性能指标不仅是评价无线传感器网络自身定位系统和算法的标准,也是其设计和实现的优化目标。

为了实现这些目标的优化,有大量的研究工作需要完成。

同时,这些性能指标相互关联,必须根据应用的具体需求做出权衡以设计合适的定位技术。

3 主要的WSN 定位方法
WSN 的定位方法较多,可以根据数据采集和数据处理方式的不同来进行分类。

在数据采集方式上,不同的算法需要采集的信息有所侧重,如距离、角度、时间或周围锚节点的信息,其目的都是采集与定位相关的数据,并使其成为定位计算的基础。

在信息处理方式上,无论是自身处理还是上传至其他处理器处理,其目的都是将数据转换为坐标,完成定位功能。

目前比较普遍的分类方法有3 种:
1)依据距离测量与否可划分为:测距算法和非测距算法。

其中测距法是对距离进行直接测量,非测距法依靠网络连通度实现定位,测距法的精度一般高于非测距法,但测距法对节点本身硬件要求较高,在某些特定场合,如在一个规模较大且锚节点稀疏的网络中,待定位节点无法与足够多的锚节点进行直接通信测距,普通测距方法很难进行定位,此时需要考虑用非测距的方式来估计节点之间的距离,两种算法均有其自身的局限性;2)依据节点连通度和拓扑分类可划分为:单跳算法和多跳算法。

单跳算法较多跳算法来说更加的简便易行,但是存在着可测量范围过小的问题,多跳算法的应用更为广泛,当测量范围较广导致两个节点无法直接通信的情况较多时,需要多跳通信来解决;3)依据信息处理的实现方式可划分为:分布式算法和集中式算法。

以监测和控制为目的算法因为其数据要在数据中心汇总和处理,大多使用集中式算法,其精度较高,但通信量较大。

分布式算法是传感器节点在采集周围节点的信息后,在其自身的后台执行定位算法,该方法可以降低网络通信量,但目前节点的能量、计算能力及存储能力有限,复杂的算法难以在实际平台中实现。

普遍认为基于测距和非测距的算法分类更为清晰,本文以其为分类原则介绍主要的WSN 定位方法。

此外,由于目前非测距算法大多为理论研究,且实用性较差,因此,本文将着重介绍基于测距的定位方法。

3.1 基于测距的算法
基于测距的算法通常分为2个步骤,首先利用某种测量方法测量距离(或角度),接着利用测得的距离(或角度)计算未知节点坐标。

下面分别进行介绍。

3.1.1 距离的测量方法
本节将详细说明 3 种主流的测量方法,第一种是基于时间的方法,包括基于信号传输时间的方法(time of arrival,TOA)和基于信号传输时间差的方法(time difference of arrival,TDOA);第二种是基于信号角度的方法(angle of arrival,AOA);第三种是基于信号接收信号强度的方法(received signal strengthindicator,RSSI)方法。

下面分别进行介绍。

1)基于时间的方法
a. 基于信号传输时间的方法:
TOA 技术通过测量信号的传播时间来计算距离,该技术可分为单程测距和双程测距,单程测距即信号只传输一次,双程测距即信号到达后立即发回。

前者需要两个通信节点之间具有严格的时间同步,后者则不需要时间同步,但是本地时钟的误差同样会造成很大的距离偏差。

最典型的应用就是GPS 定位系统。

优点:测量方法简单且能取得较高的定位精度。

缺点:Ⅰ。

精确计时难。

通常传感节点之间通信都采用无线电信号,由于无线电的传输速度非常快,而传感节点之间的距离又较小,这使得计算发送节点和接收节点之间的信号传输时间非常困难。

因此利用此技术定位的节点需要采用特殊硬件来产生用于发送和接收的慢速无线信号。

Ⅱ。

高精度同步难。

有些算法还需要接收节点和发送节点之间具有严格的时间同步,时间同步的问题现在也是无线传感器网络中的一个研究热点并且没有完全解决,这也限制了算法的实用性。

Ⅲ。

易受噪声影响。

在空间传输的信号会受到各种噪声的影响,所以即使在不同的测量中得到了相同的信号传输时间也不能断定这两次测量中的发送节点和接收节点间的距离是相同的。

最早的TOA 距离估计算法是在非时间同步网络中利用对称双程测距协议进行测量的。

之后,单边测距方法在后续的研究中被提出,如Harter 开发的Active Bat 定位系统[10],它由一系列固定在网格中的节点组成。

固定节点从移动节点中接收超声波,并通过TOA 算法计算到移动节点的距离,在通信范围30 m 左右的情况下,其定位精度达到9 cm,相对精度9.3%。

但TOA 只有在视距(line-of-sight,LOS)的情况下才比较精确,在非视距(none line-of-sight,NLOS)情况下,随着传播距离的增加测量误差也会相应增大。

综述了在视距和非视距情况下多种TOA 距离估计方法所需要的复杂度,先验知识和实验结果等。

Hangoo Kang 等人在多径环境下利用基于啁啾展频技术(chirp spread spectrum,CSS)和对称双边双向测距技术(symmetric double sided two-wayranging,SDS-TWR)的TOA 定位系统中提出了误差补偿算法,取得了较好的定位效果,在此基础上Andreas Lewandowski 等人提出了一种加权的TOA 算法,该算法应用于工业环境下,可提高系统容错性,降低自身对测距系统的干扰,在7 m×24.5 m 的范围内,测距误差小于3 m。

b. 基于信号传输时间差的方法:
TDOA 测距技术广泛应用于无线传感器网络的定位方案中。

通常在节点上安装超声波收发器和射频收发器,测距时锚节点同时发送超声波和电磁波,接收节点通过两种信号到达时间差来计算两点之间距离。

优点:在LOS 情况下能取得较高的定位精度。

缺点:Ⅰ。

硬件需求较高。

传感节点上必须附加特殊的硬件声波或超声波收发器,这会增加传感节点的成本;Ⅱ。

传输信号易受环境影响。

声波或者超声波在空气中的传输特性和一般的无线电波不同,空气的温度、湿度或风速都会对声波的传输速度产生较大的影响,这就使得距离的估计可能出现一定的偏差,使用超声波与RF 到达时间差的测距范围为5~7 m,实用性不强,且超声波传播方向单一,不适合面向多点传播;Ⅲ。

应用场合单一。

测距的前提是发送节点和接收节点之间没有障碍物阻隔,在有障碍物的情况下会出现声波的反射、折射和衍射,此时得到的实际传输时间将变大,在这种传输时间下估算出的距离也将出现较大的误差。

由MIT 开发出的Cricket 室内定位系统最早采用了RF 信号与超声波信号组合的TDOA测距技术,在2 m×2 m×2.5 m 的范围内,该系统定位精度在10 cm以下,现已成为Crossbow 的商业化产品。

加利福尼亚大学洛杉矶分校的Medusa 节点在AHLos定位系统之间传输距离为3 m 左右时,测距精度能够达到厘米级别。

加州大学伯克利分校开发的Calamari定位系统均采用TDOA 超声波测距,在144 m2 的区域部署49 个节点,平均定位误差达到0.78 m,文献对于声波收发器的方向单一性问题,给出了两种解决方法:一是将多个传感器调整成向外发射的形状;二是在节点的平面上使用金属圆锥来均匀地传播和收集声波能量。

结合TDOA 测距机制和NTP 协议时间同步原理,一些学者提出了时间同步与节点测距混合算法,结合基于到达时间差的测距机制和网络时间协议中的时钟同步机制,通过逆推时间非同步情况下相互测距的意义,不仅能实现时间同步,还可以实现相对测距甚至绝对测距。

基于时间的定位方法的定位精度虽高,但从上面的例子中可以看出其测距距离较短,且附加的硬件将增加节点的体积和功耗,不适于实际应用。

2)基于信号到达角度的方法
AOA 测距技术依靠在节点上安装天线阵列来获得角度信息。

由于大部分节点的天线都是全向的,无法区分信号来自于哪个方向。

因此该技术需要特殊的硬件设备如天线阵列或有向天线等来支持。

优点:能够取得不错的精度。

缺点:传感节点最耗能的部分就是通信模块,所以装有天线阵列的节点的耗能、尺寸以及价格都要超过普通的传感节点,与无线传感器网络低成本和低能耗的特性相违背,所以实用性较差。

关于AOA 定位的文献比较少,最早提出在室内采集方向信息,并以此实现定位的方法,它的硬件部分包括微控制器、RF 接收器、5 个排成“V”型的超声波接收器,其测量误差精度为5°。

随后,一些学者提出了在只有部分节点有定位能力的情况下确定所有节点的方向和位置信息的算法。

3)基于接收信号强度的方法
RSSI 是在已知发射功率的前提下,接收节点测量接收功率,计算传播损耗,并使用信号传播模型将损耗转化为距离。

优点:低成本。

每个无线传感节点都具有通信模块,获取RSSI 值十分容易,无需额外硬件。

缺点:1)锚节点数量需求多。

由于RSSI 值在实际应用中的规律性较差,使得利用RSSI 信息进行定位的算法在定位精度以及实用性上存在缺陷。

所以为了达到较高的定位精度,利用RSSI 信息进行定位的算法通常需要较多数量的锚节点。

2)多路径反射、非视线问题等因素都会影响距离测量的精度。

早期的RSSI 距离测量方法有Hightower 等人设计的室内定位SpotON tags 系统,通过RSSI 方法来估计两点间的距离,通过节点间的相互位置来进行定位,在边长3 m 的立方体内,其定位精度在1 m 以内。

目前,基于RSSI 值的距离测量方法可以分为2 种,一种是需要预先测试环境信息的方法,即在实验开始前,对定位的区域进行大量的RSSI 值测试,将不同点得到的RSSI 值保存到数据库中,建成场强图或拟合曲线,在实际测试时查询和调用。

另外一种是无需预先测试环境信息的方法,直接在
定位区域进行节点布置和定位,如双曲线模型法,迭代的分布式算法,结合露珠洪泛思想引入RSSI 机制的HCRL(hop-count-ratio based localization)算法等。

总体来说,需要预先测试环境参数的方法在实际定位中计算量小,这类方法只需要简单的查表或根据拟合曲线进行计算,其缺点是实验前需要做大量的准备工作,而且一旦环境改变则预先建立的模型将不再适用。

无需预先测试环境参数的方法需要定位引擎的计算操作,往往具有复杂的计算过程,但适应性较强。

以上几种测距方法各有利弊,以2009 年发表的基于测距法的文献来看,研究RSSI 方法的大约占了以上几种方法总数的52%,TOA 方法25%,TDOA 方法13%和AOA 方法10%,其比例图如图1 所示,从实用性的角度来看,基于RSSI 的定位方法更简便易行,因此,基于RSSI 测距方法的研究占基于测距算法研究总数的一半以上。

图1 各类方法研究比例图
3.1.2 节点坐标计算方法
无线传感器节点定位过程中,当未知节点获得与邻近参考节点之间的距离或相对角度信息后,通常使用以下原理计算自己的位置。

1)三边测量法是一种基于几何计算的定位方法,如图2 所示,已知3 个节点A,B, C 的坐标以及3 点到未知节点的距离就可以估算出该未知点D 的坐标,同理也可以将这个结果推广到三维的情况。

2)三角测量法也是一种基于几何计算的定位方法,如图3 所示,已知3 个节点A,B,C 的坐标和未知节点D 与已知节点A,B, C 的角度,每次计算2 个锚节点和未知节点组成的圆的圆心位置
如已知点A,C与D的圆心位置O,由此能够确定3 个圆心的坐标和半径。

最后利用三边测量法,根据求得的圆心坐标就能求出未知节点D 的位置。

图2 三边测量法原理示意图
图3 三角测量法原理示意图
3)极大似然估计法。

如图4 所示,已知n 个点的坐标和它们到未知节点的距离,列出坐标与距离的n 个方程式,从第1 个方程开始,每个方程均减去最后一个方程,得到n?1 个方程组成的线性方程组,最后用最小二乘估计法可以得到未知节点的坐标。

图4 极大似然估计法原理示意图
4)极小极大定位算法,在无线传感器网络定位中也被广泛使用。

如图5 所示,计算未知节点与锚节点的距离,接着锚节点根据与未知节点的距离d,以自身为中心,画以2d 为边长的正方形,所有锚节点做出的正方形中重叠的部分的质心就是未知节点的坐标。

针对极小极大定位算法对锚节点密度依赖过高的问题,有学者利用锚节点位置信息提出了分步求精定位算法,该算法在只利用适量的锚节点的情况下可达到较高定位精度。

图5 极小极大定位算法原理示意图
文献[35]在12 m×19.5 m 的范围内对上述三边测量法、极大似然估计法和极小极大法方法的计算量和精度进行了测试。

实验表明,极大似然估计法的计算量最大,锚节点小于10 个时,极小极大法的计算量最小,在锚节点较少情况下,三边法和极小极大法的精确度较高,而当锚节点超过6 个时,极大似然估计法精确度更高。

因此,在计算坐标时要根据实际情况合理选择坐标计算方法。

另外,针对现存的定位算法都是假设信标节点不存在误差,与真实情况不符的情况,文献[36]提出信标优化选择定位算法(OBS),即通过减小定位过程中的误差传递来提高定位精度。

3.2 基于非测距的算法
基于非测距的算法与测距法的区别在于前者不直接对距离进行测量,而是使用网络的连通度来估计节点距锚节点的距离或坐标,由于方法的不确定性,基于非测距的方法众多。

下面按时间顺序,介绍部分典型非测距定位算法。

Bulusu 等人提出了一个单跳,低功耗的算法,它利用锚节点的连通性来确定坐标。

未知节点的坐标通过计算无线电范围内所有节点的质心获得。

节点将自己定位在与它们表现相近节点的质心处,该算法虽然简单,但误差较大,需要的锚节点密度较高。

约90%节点的定位精度在锚节点分布间距的1/3以内。

He 等人提出了APIT 算法,目标节点任选3 个相邻锚节点,测试未知节点是否位于它们所组成的三角形中。

使用不同锚节点组合重复测试直到穷尽所有组合或达到所需定位精度。

最后计算包含目标节点的所有三角形的交集质心,并以这一点作为目标节点位置,该算法需要较高的锚节点密度,其定位精度为40%。

Niculescu 等人提出了DV-Hop 定位算法,它从网络中收集相邻节点信息,计算不相邻节点之间最短路径。

DV-Hop 算法使用已知位置节点的坐标来估测一个跳跃距离,并使用最短路径的跳跃距离估计未知节点和锚节点的距离,该算法仅适用于各向同性的密集网络,当锚节点密度为10%时,定位误差为33%。

Radhika 等人提出的Amorphous Positioning 算法,使用离线的跳跃距离估测,同DV-Hop 算法一样,通过一个相邻节点的信息交换来提高定位的估测值,需要预知网络连通度,当网络连通度为15 时,定位精度20%。

Savvides 等人介绍了一种N-Hop multilateration算法,使用卡尔曼滤波技术循环求精,该算法避免了传感器网络中多跳传输引起的误差积累并提高了精度,节点通信距离为15 m,当锚节点密度为20%,测距误差为1 cm 时,定位误差为3 cm。

Capkun 等人提出了self-positioning algorithm(SPA),该算法首先根据通信范围在各个节点建立局部坐标系,通过节点间的信息交换与协调,建立全局坐标系统,网络中的节点可以在与它相隔N 跳的节点建立的坐标系中计算自己的位置。

综上可知,非测距算法多为理论研究,其定位精度普遍较低并且与网络的连通度及节点的密集程度密切相关,因此,其适用范围有一定的局限性,在进行无线传感器网络定位技术研究过程中应更多地考虑基于测距的定位算法。

4 新型WSN 定位研究分析
除了传统的定位方法,新型的无线传感器网络定位算法也逐渐出现,如利用移动锚节点来定位未知节点、在三维空间内定位未知节点、以及采用智能定位算法来提高定位精度等,下面分别介绍。

4.1 基于移动锚节点的定位算法
利用移动锚节点定位可以避免网络中多跳和远距离传输产生的定位误差累计,并且可以减少锚节点的数量,进而降低网络的成本。

如MBAL(mobilebeacon assisted localization scheme)定位方法,锚节点在移动过程中随时更新自身的坐标,并广播位置信息。

未知节点测量与移动节点处于不同位置时的距离,当得到3 个或3 个以上的位置信息时,就可以利用三边测量法确定自己的位置,进而升级为锚节点。

此外,移动锚节点用于定位所有未知节点所移动的路径越长则功耗越大,因此对移动锚节点的活动路径进行合理规划可以减小功耗。

文献[48]提出了一种基于加权最小二乘法的移动锚节点定位距离估计算法,作者首先建立一个移动模型,锚节点沿着线性轨迹移动,使用加权最小二乘法来减小距离估计误差,并在Cramér-Raobound (CRB)的基础上分析了距离估计的最小误差边界,该算法在距离估计和位置估计方面都有较好的性能。

利用移动锚节点自身的可定位性和可移动性可定位网络局部相关节点,但移动锚节点的路径规划算法和采取的定位机制需要深入考虑。

2009 年发表的关于WSN 定位的文章中,约25%是关于移动节点定位的。

4.2 三维定位方法
随着传感器网络的空间定位需求不断提升,三维空间场景下的定位也成为了一个新的研究方向。

目前的三维定位算法包括基于划分空间为球壳并取球壳交集定位的思想,提出的对传感器节点进行三维定位的非距离定位算法APIS(approximatepoint in sphere)。

在此基础上针对目前三维定位算法的不足,提出的基于球面坐标的动态定位机制,该机制将定位问题抽象为多元线性方程组求解问题,最终利用克莱姆法则解决多解、无解问题。

建立了WSN 空间定位模型并结合无线信道对数距离路径衰减模型,为解决不适定型问题提出了Tikhonov 正则化方法,并结合偏差远离方便的得到了较优的正则化参数,在3.5 m×6 m×3 m 的区域内定位精度可控制在2 m。

三维定位方法可扩展WSN 的应用场合,目前三维定位在许多方面还有待完善,如获取更准确的锚节点需要寻求更精确的广播周期和消息生存周期,缩减定位时间需要改进锚节点的选择和过滤机制等。

相关文档
最新文档