摘要:由于无线传感器网络具有其它网络不可比拟的各种优势,使得它在很多领域都有广泛的应用。对于无线传感器网络中的未知节点本身的定位工作是网络的各项应用的基础。本文主要分析无线传感器网络的节点定位技术,研究已有的定位算法,并根据现有算法提出一种改进的分布式的节点定位算法。该算法使用RSSI方法测距,无需增加新的硬件设备,通过分布式的算法来提高效率降低能耗,利用多次定位的平均值提高定位,降低了网络中的能量消耗,延长网络寿命。
1.引言
无线传感器网络(Wireless sensornetworks,WSN)是一种由成百上千的传感节点组成的非结构化的无线网络,通过这些传感节点间的互相协作,无线传感器网络同时具备了信息获取、信息处理和信息传播等多种功能。
定位是无线传感器网络中的一个至关重要的问题,它是无线传感器网络各种具体应用的基础。节点位置是重要的信息之一,感知到的无位置信息的数据是没有意义的。传感节点必须知道本身的位置信息,才能描述“在什么位置或区域发生了特定事件”.本文首先介绍了无线传感器网络的基本概念,然后分析了节点定位需要的基本测距技术,详细分析了现有的节点定位算法的特点,提出了一种改进的节点定位算法,对节点定位算法进行归纳总结,提出未来的研究目标。
2.无线传感器网络的基本概念
无线传感器网络是由大量具有传感功能、数据处理功能和无线通信功能的传感器节点构成的分布式自组织网络,它能根据环境需要,通过功能有限的微小的传感器节点进行协同工作,完成对网络覆盖的地理区域中的对象进行感知、采集、处理和发布感知信息等任务。
一般情况下,无线传感器网络中的节点是成本低廉但功能有限的无线传感器节点,这些网络节点在观测区域中是随机均匀投放的。感器节点是一个微型的嵌入式系统,主要由传感器模块、处理器模块、无线通信模块和能量供应模块四个部分组成。
无线传感器网络的节点定位是通过被定位节点与已知位置的节点之间的相关性来确定它们空间坐标之间的相关性。
(1)RSSI(Received Signal StrengthIndicator)
RSSI测距方法基于信号传输模型来计算接收信号强度和距离的对应关系,只需使用传感器节点本身自带的无线收发器发射信号,不用额外添加硬件设备,方法简单,成本低廉,在理想条件下,能得到比较准确的距离值。在定位要求不高的情况下,利用RSSI信息进行定位是一种不错的方法。当需要达到较高的定位时,可以通过增加网络中的锚节点数量来实现。
(2)TOA(Time of Arrival)
在无线传感器网络中,TOA方法也能获得不错的定位,但是该技术需要节点安装特殊的硬件设备来发送和接收具有较慢速度的无线信号,增加了成本支出,而且信号在传输空间中会受到各种噪声的影响,会降低。重要的是TOA方法要求接收节点和发送节点之间实现严格的时间同步,这个问题还没有很好的解决办法。
(3)TDOA(Time Difference On Arrival)
发射节点同时发射两种不同传播速度的无线信号,接收节点通过记录两种不同信号在两节点间的传播时间差以及已知的两种信号的速率计算两个节点间的距离。这两种不同的信号常采用无线射频信号(RF)和超声波信号(US)。在节点部署较为密集,障碍物较少的环境中,使用TDOA技术来测量距离成本低廉而且较高。
(4)AOA(Angle of Arrival)
使用AOA方法需要在传感器节点上安装特殊的硬件设备,增加了节点的硬件尺寸和能量消耗,而角度的测量有时也会受外界环境影响,产生较大的误差。但是,它扩展了测距的方法,通过与其他技术的结合可以更好的实现定位。
3.无线传感器网络节点定位算法
定位是无线传感器网络中的一个重要的研究方向,定位算法的优劣直接影响着无线传感器网络在实际应用中是否可行。测量的数据不同以及使用的坐标计算方法的不同导致了各种不同的定位算法的产生。
质心定位算法是通过计算发送信息的锚节点所组成的多边形的质心做为未知节点的坐标位置的一种算法。质心算法基于网络连通性对未知节点进行定位,无需锚节点与未知节点进行协同操作,是一种非常简单而且易于实现的定位算法,对于那些对定位要求不高的应用,质心算法是一个很好的定位方法。
DV-Hop算法的基本思想是先获得未知节点与锚节点的跳数,然后计算网络平均每跳的距离,再通过跳数与平均每跳的距离的乘积得到未知节点与锚节点的距离,,通过未知节点与至少3个锚节点之间的距离得到未知节点的位置坐标。DV-Hop定位算法是一种无需测距技术的、完全基于节点密度的、适用于密集部署的各向同性网络的定位算法。
MDS-MAP定位算法的基本思想是先从全局角度生成网络拓扑连通图,当节点有测距能力时,用测距结果作为每条边的值,否则,用所有边赋值为1,表示仅有连通性信息,生成节点间距矩阵。然后用多维标度技术MDS(MultidimensionalScaling)生成网络的相对坐标系统,,使用不在同一直线的n+1个锚节点信息把n维的相对坐标系统转化为坐标系统。
分簇算法把网络中的传感器节点组织成簇的形式,只在一个簇范围内传输信息,不需要把控制消息传遍整个网络,可以有效地减少网络的能量消耗。
簇成员的功能比较简单,不需要维护复杂的路由信息,具有很好的可扩充性。
簇头节点由簇头选举算法选举产生,能根据网络拓扑的变化动态分簇,具有很强的抗毁性和鲁棒性。但是分簇算法中的簇头选择算法复杂度较高,而且簇头节点还可能会成为网络的瓶颈,从而影响网络的能量消耗和定位效率。
4.改进的无线传感器网络节点定位算法
分簇算法的定位较高,但是其计算量也较大,用RSSI测距方法定位却不够。首先,把无线传感器网络划分成多个区域,然后在每个区域内使用RSSI测距方法,通过多个锚节点计算未知节点的位置,,计算多个结果求出平均值为的定位结果。
网络区域的划分是按照锚节点的距离为依据的,先计算网络中所有锚节点之间的距离,选择近的几个锚节点作为一个网络区域,在该区域内的未知节点就用这些锚节点来定位。用RSSI测距方法测量未知节点与范围内的锚节点的距离,用极大似然估计法计算未知节点的位置,并存储于该节点中。,计算存储在未知节点中的多个坐标数据的平均值,把平均坐标值作为节点的终坐标。
对于网络边界的未知普通节点,它们周围的锚节点数量较少,不适于上面的方法。可以通过它们周围已经定位的普通节点来定位网络边界节点,把这些已经知道位置的普通节点看成上面方法中的锚节点,使用上面的步骤完成定位。
算法的具体步骤:
(1)计算网络中锚节点之间的距离,并存储离它较近的几个锚节点的信息。
(2)以几个锚节点为边界划分定位区域,锚节点的个数决定越多定位越高。
(3)在每个区域内,使用RSSI方法测量未知节点与几个锚节点的距离。
(4)通过极大似然估计法计算未知节点的位置坐标,并把数据保存在未知节点中。
(5)对要定位的未知节点重复(3)(4)步骤。
(6)对网络中每个区域中要定位的节点同时进行(3)(4)(5)步骤。
(7)网络中每个未知节点对本身存储的多个坐标计算平均值,把平均坐标值更新为该节点的坐标值。
(8)处理网络的边界未知节点。
5.结束语
节点定位技术是无线传感器网络中一项重要的支撑技术,它是无线传感器网络中其他很多应用的基础,具有重要的理论研究意义和广泛的应用价值。定位和网络能耗是定位算法需要考虑的两个重要问题,如何提高定位并降低网络能耗是定位算法研究的重点。(作者:陈凤娟)
免责声明: 凡注明来源本网的所有作品,均为本网合法拥有版权或有权使用的作品,欢迎转载,注明出处。非本网作品均来自互联网,转载目的在于传递更多信息,并不代表本网赞同其观点和对其真实性负责。