Chinaunix首页 | 论坛 | 博客
  • 博客访问: 701001
  • 博文数量: 112
  • 博客积分: 10010
  • 博客等级: 上将
  • 技术积分: 1192
  • 用 户 组: 普通用户
  • 注册时间: 2008-03-12 16:46
文章分类

全部博文(112)

文章存档

2009年(4)

2008年(108)

我的朋友

分类: 系统运维

2008-03-19 09:29:40

 

在很多无线传感器网络应用中,没有节点位置信息的监测信息往往毫无意义。当监测到事件发生时,关心的一个重要问题就是该事件发生的位置,如森林火灾监测,天然气管道泄漏监测等。这些事件的发生,首先需要知道的就是自身的地理位置信息。定位信息除了用来报告事件发生的地点外,还可用于目标跟踪、目标轨迹预测、协助路由以及网络拓扑管理等。

 

常见的定位技术如全球定位系统GPS(Globe Position System)是目前应用最广的、最成熟的定位系统,通过卫星的授时和测距来对用户节点进行定位,具有较高的定位精度,实时性较好,抗干扰能量强。但是,使用GPS技术定位只适合于视距通信的场合,即室外无遮挡的环境,用户节点通常能耗高、体积大且成本也较高,还需要固定基础设施等,这不太适合低成本自组织无线传感器网络。另外,机器人领域采用的定位技术也与无线传感器网络的定位技术不同,尽管二者非常相似,节点都具有自组织和移动特性,但是机器人节点数量少,节点能量充足且携带精确的测距设备,这在一般的能量受限的无线传感器网络中很难满足类似的条件。由于资源和能量受限的无线传感器网络对定位的算法和定位技术都提出了较高的要求。因此,无线传感器网络的定位技术或定位算法通常需要具备以下重要特征:

 

       ·自组织特性,节点可能随机分布或人工部署;

       ·能量高效特性,尽量采用低复杂度的定位算法,减少通信开销,延迟网络寿命;

·分布式计算特性,各个节点都计算自己的位置信息;

·鲁棒性,可能监测数据有误差,要求定位算法具有良好的容错性;

·节点位置计算的常用方法。

 

1.定位的基本方法

 

    (1) 三边测量法(Trilateration)

 

如图3-32所示,已知ABC三个节点的坐标分别为(xaya)(xbyb)(xc,yc),以及它们到未知节点D的距离分别为dadbdc,假设节点D的坐标为(xy),则存在下面公式:
 

由式(3-14)可以得知节点D的坐标为:



(2) 三角测量法(Triangulation)

 

如图3-33所示,已知ABC三个节点的坐标分别为(xaya)(xbyb)(xcyc),节点D相对于节点ABC的角度分别为:∠ADB,∠ADC,∠BDC,假设节点D的坐标为(xy)。对于节点AC以及∠ADC,如果弧段AC在△ABC内,则唯一能够确定一个圆,设圆心为O1(xO1yO1),半径为r1,则α=AO1C=(2π-2ADC),并存在下列公式:



由式(3-15)就能够确定圆心O1的坐标和半径r1。同理,可以确定相应的圆心和半径。最后根据三边测量法,由点D(xy)O1(xO1yO1)O2(xO2yO2)O3(xO3,yO3)确定D点的坐标。



(3) 极大似然估计法

 

极大似然估计法示意图如图3-34所示。



已知123n个节点的坐标分别为(x1y1)(x2y2),…,(xnyn)。它们到节点D的距离分别为d1d2,…,dn,假设D的坐标为(xy),则有



从式(3-16)中第一个方程开始分别减去最后一个方程得到:



(3-17)的线性方程表示为:AX=b,其中



利用标准的最小均方误差估计法,可以求得节点D的坐标为:



2.定位算法的分类

 

    (1) 基于距离定位和距离无关的定位算法

 

根据是否需要测量实际节点间的距离将定位算法分为基于距离定位和与距离无关的定位算法。前者需要测量相邻节点间的距离或方位,并利用实际测得距离来计算未知节点的位置。后者是利用节点间的估计距离来计算节点的位置。

 

(2) 递增式定位算法和并发式定位算法

 

根据节点定位先后次序不同,将定位算法分为递增式定位算法和并发式定位算法。前者通常是从信标节点开始,先对信标节点附近的节点开始定位,依次向外扩展延伸,对各个节点逐次进行定位,这类算法的一个缺陷就是造成定位过程中测量误差的累积,从而影响定位精度。后者是指所有节点同时进行位置的计算。

 

(3) 基于信标节点定位和无信标节点辅助的定位算法

 

根据定位过程中是否使用信标节点将定位算法分为基于信标节点的定位算法和无信标节点辅助的定位算法。前者以信标节点作为定位中的参考点,各个节点定位后产生整体的绝对坐标系统。后者只需知道节点之间的相对位置,定位过程中无须信标节点的参与辅助,各个节点先以自身作为参考点,然后将邻居节点纳入自己的坐标系统,相邻的坐标系统依次合并转换,最后产生整体的相对坐标系统,从而完成定位任务。

 

随着无线传感器网络应用和定位技术研究的深入,一些新的定位技术和方法也应运而生,如基于相对部署位置的定位方法、基于绝对的地理信息定位方法以及基于UWB超宽带技术的定位方法等。加上无线传感器网络应用千差万别,没有普遍适应的定位方法和技术。因此,必须根据不同的应用特点和环境状况,选择合适的定位算法和技术,才能满足用户特定的应用需求。

 

5  无线传感器网络同步管理机制

 

无线传感器网络的同步管理主要是指时间的同步管理。因为在分布式无线传感器网络的应用中,每个传感器节点都有自己的本地时钟。不同节点的晶体振荡器频率存在偏差,以及温度和电磁波的干扰等都会造成无线传感器网络节点之间的运行时间偏差。无线传感器网络本质上是一个分布式协同工作的网络系统,很多具体应用都要求网络各个节点存在相互的协同配合,因此时间同步是无线传感器网络同步管理机制的重要内容。

 

传统无线网络中,时间同步机制已经得到广泛应用。如网络时间协议NTP(NetworkTime Protocol)就是因特网中普遍采用的时间同步协议。另外,GPS和无线测距技术也可以用来提供网络的全局时间同步。在无线传感器网络应用中也不乏利用时间同步机制的例子,如在节点时间同步的基础上,远程观察卫星或导弹发射的轨道变化情况等。由于传感器网络本身的特点,节点体积和造价都不能太高,故设计时间同步机制必须考虑节点的体积和造价成本大小的影响。另外,还得考虑节点的能耗以及应用相关性等特点和约束条件。

 

    1.时间同步机制设计中应当考虑的因素

 

无线传感器网络中的时间同步机制设计会受到很多因素的影响。首先,传感器节点需要彼此并行操作和协作,去完成复杂的监测和感知环境的任务。数据融合是这种并行操作的典型实例,不同的节点采集的数据集合构成一个有意义的结果。例如,在车辆跟踪系统中,传感器节点记录车辆的位置和时间并传送给网关汇聚节点,然后结合这些信息估计车辆的位置和速度。如果传感器节点缺乏统一的时间同步,车辆的位置估计将是不准确的。其次,许多节能方案是利用时间同步来实现的。例如,传感器可以在适当的时候休眠,在需要的时候再唤醒。当应用这种节能模式的时候,网络节点应该在相同的时间休眠和唤醒,也就是说当数据到来时,节点的接收器并没有关闭。无线传感器网络时间同步机制设计的目的是为网络中所有节点的本地时钟提供共同的时间戳。

 

2.设计时间同步机制一般关注的主要性能参数

 

(1) 能量效率。达到同步所需要的时间以及消耗的能量。同步需要的时间越长,消耗的能量越多,同步的效率就越低。无线传络的感器网主要特点就是节点的能量受限问题,设计的时间同步算法需以考虑传感器节点有效的能量资源作为前提。

 

(2) 可扩展性。无线传感器网络需要部署大量的传感器节点,时间同步机制应该支持有效扩展网络中节点的数目或者密度。

 

(3) 精确度。精确度的需求依赖于特殊的应用和时间同步的目的而有所不同,对于某些应用,知道时间和消息的先后顺序就够了,然而某些则要求较高的同步精确。

 

(4) 健壮性。无线传感器网络可能在敌占区域长时间无人管理,一旦某些节点被破坏,在余下的网络中,时间同步机制应该继续保持有效并且功能健全。

 

(5) 同步期限(或寿命)。指节点需要一直保持时间同步的时间长度。时间同步算法提供的同步时间可以是瞬时的,也可以和网络的寿命一样长。

 

(6) 有效同步范围。是指需要节点同步的区域范围,可以是物理上的地理范围,也可是逻辑范围,如网络路由的跳数。时间同步机制可以给网络内所有的节点提供时间,也可以给局部区域内的部分节点提供时间。

 

(7) 成本和尺寸。同步可能需要特定的硬件,另外,体积的大小也影响同步机制的实现,无线传感器网络节点非常小而且廉价。

 

(8) 最大误差。一组传感器节点之间的最大时间差,或相对外部标准时间的最大差。通常,最大误差会随着同步的网络范围扩大而增加。

 

3.常用的时间同步算法

 

文献[77]给出了无线传感器网络的最常见的几种同步算法,见表3-5,主要包括了RBS算法、TPSN算法、Mini-SyncTiny-Sync算法和LTS算法。
 

  (1) RBS(Reference Broadcast Synchronization)算法

 

RBS算法是Elson等人以“第三节点”实现同步的思想而提出的。基本思想就是节点广播参考消息给他的邻居节点,这个参考消息不包括时戳,相反,它的到达时间被节点用来作为参考对比时钟。节点广播单个脉冲给两个接收者,接收者在收到脉冲的基础上再交换记录脉冲的时间,进而估计节点间的相对相位偏移。这样,通过单个脉冲实现了两个节点的同步,另外增加脉冲数还可提高精确度。由于RBS算法将发送者的不确定性从关键路径里消除,不需要节点之间的双向信息交换,从而获得比传统时钟同步方法更好的精确度(如图3-35所示)RBS算法时间误差的主要来源是传输时间和接收时间的不确定性。当广播范围较小时,可以忽略传输误差。



(2) TPSN算法

 

TPSN(Timing-Sync Protocol for Sensor Networks)算法是Ganeriwal等人提出的适用于无线传感器网络整个网络内的时间同步算法。该算法分为两步:分级和同步。第一步的目的是建立分级的网络拓扑,每个节点有个级别。只有一个节点则为零级,叫做根节点。第二步主要任务是节点间的信息交换,i级节点与i-1级节点同步,最后所有的节点都与根节点同步,从而达到整个网络的时间同步。

 

(3) Mini-Sync算法和Tiny-Sync算法

 

Mini-Sync算法和Tiny-Sync算法是由SichitiuVeerarittiphan提出的两种用于无线传感器网络的时间同步算法。这两种算法假设每个时钟能够与固定频率的振荡器近似,都采用传统的双向消息交换来估计节点时钟间的相对漂移和相对偏移。

 

  (4) LTS算法

 

LTS(Lightweight Tree-based Synchronization)算法是GreunenRabaey提出的。与其他算法的最大区别是该算法的目的并不是提高精确度,而是减小时间同步的复杂度。该算法在具体应用所需要的时间同步精确度范围内,以最小的复杂度来满足需要的精确度。无线传感器网络的最大时间精确度相对较低(通常在几分之一秒内),所以可利用这种相对简单的时间同步算法。此外,它们还提出了两种基于多跳的无线传感器网络LTS算法。第一种多跳LTS算法是集中算法。在集中同步算法中,参考节点就是树的根节点,如果需要可以进行“再同步”。其基本过程就是首先要构造树状图,然后沿着树的n-1子叶边缘进行成对同步。希望通过构造树状图使同步精度最大化,最小深度的树是最优的。如果考虑时钟漂移,同步的精确度将受到同步时间的影响。为了最小化同步时间,同步应该沿着树的枝干并行进行,这样所有的子叶节点基本同时完成同步。通过假设时钟漂移被限定和给出需要的精确度,参考节点计算单个同步有效的时间周期。因此,树的深度影响整个网络的同步时间和子叶节点的精度误差。为了利用这个信息决定再同步所需时间,需要把树的深度参数传给根节点。

 

第二种多跳LTS算法通过分布式方法实现全网内的同步。每个节点决定自己同步的时问,算法中没有利用树结构。当节点i决定需要同步,它发送一个同步请求给最近的参考节点。然后,所有沿着从参考节点到节点i的路径的节点必须在节点i同步以前已经同步。这个算法的优点就是一些节点可以减少传输负载,因此可以不需要频繁的同步。另一方面,让每个节点决定再同步可以推进成对同步的数量,因为对于每个同步请求,沿着参考节点到再同步发起者的路径的所有节点都需要同步。随着同步需求数量的增加,沿着这个路径的整个同步将导致很大的节点和带宽资源浪费。因此,通过适当的融合算法是十分必要的。当任何节点需要同步时,需要询问相邻节点是否存在未处理的请求。如果存在,这个节点的同步请求将和未处理的请求融合,减少无效请求的传输。

 

    无线传感器网络的同步管理是无线传感器网络的关键技术之一,内容还包括很多个方面,本书只简要介绍了常见的几种同步管理方法,对于特定的应用,对时间同步的要求各不相同,需要具体问题具体解决。

阅读(1477) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~