专利名称:一种对wsn混合定位的系统和方法模型的制作方法
技术领域:
本发明应用于大规模WSN(Wireless Sensor Network,无线传感器网络)中节点的自身位置定位的领域中,利用分布式计算技术和数理统计的方法解决了无线传感器网络的节点自身定位问题,并且提出一种混合式定位的方法弥补了现有定位方法中的不足。因此特别提供了一种在大规模无线传感器网络中基于混合定位的方法模型。
背景技术:
近年来微机电系统(nicro-electro-mechanism system,简称MEMS)、集成电路、无线通讯、传感器和低功耗高集成数字设备的发展,导致了低成本、低功耗、微体积传感器节点的出现。
无线传感器网络被认为室21世纪最重要的技术之一,是众多的传感器节点通过无线通信的方式相互联系,处理并传递信息的网络。该网络的实现综合了传感器技术、嵌入式计算技术、分布式信息处理技术和通信技术。传感器节点通常是一个微型的嵌入式系统,它的处理能力、存储能力和通信能力相对较弱,主要是通过携带能量有限的电池供电,可以实时监测、感知和采集网络分布区域内的各种环境或者监测对象的信息,并对这些信息进行处理,传递给所需用户。无线传感器网络在军事、工业、交通、安全、医疗、探测以及家庭和办公环境等很多方面都有着广泛的用途。
在传感器网络中,位置信息对传感器网络的监测活动非常重要,事件发生的位置或获取信息的节点位置是传感器节点监测信息中所包含的重要信息,没有位置信息的监测消息往往是没有意义的,因此,节点准确地进行自身定位是WSN应用的重要条件,并且WSN节点自身的定位还可以在外部目标的定位和追踪以及提高路由效率等方面发挥作用,因此,实现节点的自身定位对WSN具有重要的意义。
定位信息除了用来报告事件发生的地点外,它还具备目标跟踪、协助路由、网络管理等。因此在传感器网络中,节点的精确定位对各种应用有着重要的作用。一种优良的定位方法应该具备1、锚节点的数目尽可能少,容易配置网络;2、网络通信量最小化,节省节点在通信中所消耗的能量;3、计算方案简单,可以有效的降低硬件的成本;4、鲁棒性要强,使传感器可以适合各种地理环境,并且易于网络维护,延长网络的寿命;5、定位精度高,保证信息上报的准确性。
现在无线传感器网络节点自身定位方法主要有两种1、无需测距的定位方法此方法需要建立固定锚节点,其就是要知道自身的地理坐标位置的传感器节点,它们经常被事先安置在某个确定位置,或者自身配置GPS装置。前者要求在某些场合不能得到满足,例如人类不易到达的条件恶劣、地势险要的地区;后者虽然能避免自然环境的限制,但是由于GPS(GlobalPosition System,全球定位系统)接收装置的价格昂贵,能耗高且不易回收,因此不能大规模的安置;2、基于测距的定位方法此方法通过测量节点间点到点的距离或角度信息计算出节点的位置,这种方法固定锚节点少,降低了成本的开销,适应于大规模的布置,并且大大降低自然环境的限制,但是这种方法的定位精度相对不高,估算出的位置和真实位置之间的偏差,即定位误差较大。由于误差的累计,会使整个网络离锚节点越远的节点偏差越大。并且这种方法通常需要多次测量、循环求精,在获得相对精确的定位结果的同时会产生大量的计算和通信开销。
现有的定位方法存在着很多局限性,例如GPS设备昂贵使得成本过高,不利于大规模的布置节点进行监测,而且不能在室内使用RSSI(Received Signal Strength Indicator,接受信号强度显示)来计算节点之间的距离,由于RF容易受到噪声和障碍物的干扰,因此测量到的结果误差特别大,从而导致了定位精度的下降;TOA(Time Of Arrival,到达的时间)和TDOA(Time Difference Of Arrival,到达的不同时间)将超声波用于到节点的距离计算,虽然定位精度比较高,但是由于超声波有很强的方向性,从而使得在实际应用方面受到很大的限制,会出现节点无法得到用于定位所需的锚节点的个数,因此部分节点将无法定位而产生很多盲区。
因此,设计无线传感器网络自身定位的方法要兼顾上面两种定位方法取之精华,去之糟粕,均衡它们的有缺点,所以设计了一种应用于WSN混合定位的系统和方法模型。
发明内容
本发明的目的在于提出一种应用于WSN混合定位的系统和方法模型,采用建立少量固定位置的锚节点,通过节点间点到点的测量,然后利用数学的方法来定位其他节点,因此本发明优化了多种定位方法,弥补了它们之间的不足,这样既可以降低成本,而且提高了定位精度。
在本发明中,无线传感器网络中的节点主要分为如下四类 标准位置节点(锚点)这类节点通过GPS(全球定位系统)定位或人工设置等手段已经预先知道自己的精确位置,为无线传感器网络中其他需要定位的节点提供位置计算参考。这类节点必须事先散布在无线传感器网络中。
未知位置节点(目标节点)不知道自己的位置,需要参考标准位置节点或者已知位置节点的位置信息。
SINK节点通过无线传感器网络收集多个目标节点的坐标信息,并对目标节点提供相应的基于位置的服务。
训练节点在实验训练中,用于接收SINK节点命令,反馈测量数据,并配合锚点学习信号强度与距离的关系曲线(RSS(Received Signal Strength,接受信号强度)曲线)的传感器节点。
针对大规模无线传感器网络的特殊性和上述需要解决的技术问题,兼顾减少节点位置计算过程中产生的网络数据流量和数据计算量,本发明提出了一种适用于大规模无线传感器网络中基于RF和超声波的混合定位的系统和方法模型,其方法主要分为 步骤1利用训练节点通过实验训练,得出信号强度与距离的关系曲线。根据RSS关系曲线得到RSS信号强度与距离关系参照表。
步骤2目标节点同时发射无线射频信号和超声波信号,接受节点根据RSS信号强度与距离关系参照表和两种传播速度不同的无线信号到达的时间差以及已经这两种信号的传播速度,计算两个节点之间的距离。接受节点将计算出的距离回复给目标节点,然后由目标节点根据锚点个数动态选择定位算法求出目标节点的具体位置坐标。
步骤3目标节点将比较精确的物理坐标(x,y)发给SINK节点,由后台服务端提供具体的服务项目。
对上述方法的操作流程具体说明如下 1)本发明对每个锚点进行独立训练,绘制RSS曲线,如图1所示,并且为每个锚节点独立建立它这个环境的RSS信号强度与距离关系参照表,充分减少环境对距离计算的影响,同时避免类似RADAR方法中对目标区域大量的训练,便于对大范围布置节点。根据RSS曲线的特性,规定在一定的通信范围距离内的信号强度有效,即在某个特定无线信号强度内距离的测量值与真实值的误差在可接受的范围内,进一步提高定位的精度。
2)如图2所示,目标节点同时发射无线射频信号和超声波信号,附近的锚节点接收无线射频信号,记录到达时间T1,测量RSS值并进行筛选,根据本地RSS曲线将RSS均值转换为距离S1。有些锚节点可能会收到超声波信号,记录到达时间T2,根据两种信号的传播速度已知,可以计算出两节点之间的距离S2。然后接受节点将计算出的距离和锚节点的坐标位置信息发回给目标节点,如果锚节点测量出同一个目标节点的距离只为S1和S2,则只回复距离S2给目标节点。
目标节点收到锚节点回复的距离信号后根据锚节点的个数动态决定定位算法当锚点个数小于3个时,采用近似位置估计的方法,给出符号位置;当锚点个数仅为3个时,通过三角定位的方法计算目标节点坐标;当锚点个数大于3时,利用排列组合和极大似然估计的方法减小测距误差对定位的影响。这种动态的算法决定,充分利用节点资源,并在有限的资源里提供相对精确的坐标。最后将得到的坐标发送给SINK节点。
3)在本发明中所有锚点提供物理坐标和符号坐标,中心服务器根据目标节点所注册的业务类型,提供线路导航等服务。
图1为本发明给出的训练信号强度与距离关系的示意图。
图2为本发明给出的测量目标节点到锚点距离和计算坐标的示意图。
图3为本发明给出的RF信号强度和距离的关系参考表。
图4为本发明给出的训练节点流程示意图。
图5为本发明给出的锚节点训练流程示意图。
图6为本发明给出的射频信号和超声波信号传输示意图。
图7为本发明给出的三边定位算法原理示意图。
图8为本发明给出的锚节点定位流程示意图。
图9为本发明给出的目标节点定位流程示意图。
具体实施方法 本发明的具体方法如下 步骤1利用训练节点通过实验训练,得出信号强度与距离的关系曲线。从RSS关系曲线得到RSS信号强度与距离关系参照表。
在步骤1中建立训练信号强度与距离的关系参照表是本发明的技术核心和难点之一,因为它是RSS定位的关键环节,将收到的RF信号强度转换为节点间的距离。在经典的无线信号强度模型中信号衰落主要由大尺度衰落和小尺度衰落组成。大尺度衰落包括由于信号传输的路径损耗和由于被墙、地板等物体吸收的而产生的遮蔽。这部分衰落使RSS曲线呈指数衰减,是可以预测的;然而小尺度衰落主要是多径效应,导致RSS曲线无规律的波动,难以预测。在理想情况下信号强度和距离的关系可有以下公式表示 Pr,dB(d)=Pt,dB-PLdB(d) Pr,dB(d)代表接收信号强度,Pt,dB代表发送信号强度,PLdB(d)代表传输d距离的路径损耗,d0代表参考距离,η代表路径损耗指数,Xσ,dB代表一个平均值为0标准偏差为σ的高斯分布随机变量。因此无线信号在传播时受到环境因素的影响比较大,我们就必须为每个锚节点独立训练,绘制RSS曲线,并且为每个锚节点独立建立它这个环境的RSS信号强度与距离关系参照表,如图3所示,充分减少环境对距离计算的影响。具体过程如下 1.本发明的采用实验训练的方法,目标节点与每个锚点在不同距离的位置训练一次,学习信号强度与距离的关系曲线,,最后将RSS信号强度与距离关系参照表记录在当前锚点的ROM中。
2.当训练节点收到TRAIN消息后开始工作流程如图4所示,节点加电自动初始化微控制器和接受器部分,然后等待消息,当接收到消息后首先判断消息类型,如果为TRAIN消息,启动训练过程,即发送ASK消息给锚点,然后等待锚点的应答,当接收到锚点的ANSWER消息后,提取相应的RSS采样,累加RSS和计数器,当累计收到ANSWER消息50次后,计算RSS采样平均值,向PC端发送RESULT命令,反馈所有RSS采样值。之后清空计数器和均值,返回等待消息状态。手动改变训练节点和锚点间距离,之后重新发送TRAIN命令,重复上述过程。
3.锚点训练流程如图5所示,首先完成加电、初始化,进入等待消息状态,当锚点收到训练节点发来的ASK消息后,启动训练过程,向训练节点发送ANSWER消息50次,之后进入等待状态;当锚点收到STORE消息时,将RSS信号强度与距离关系参照表写入ROM中;对于收到WHERE将在定位流程中描述。
4.经过多次重复的训练实验绘出无线信号强度和距离的关系曲线,我们发现无线信号强度的衰落整体上符合大尺度衰落的指数变化规律,同时随着距离的增大,距离的测量值与真实值之间的误差越来越大。为了使距离的测量值与真实值的误差在可接受的范围内,我们规定在一定的通信范围距离内的信号强度有效。根据这些建立RSS信号强度与距离关系参照表,并将其储存在锚节点的ROM中。
在步骤2中锚节点的距离计算和目标节点的精确定位是本发明的关键技术。
在定位过程中目标节点加电、初始化并每秒广播一次WHERE信号,同时发射超声波信号,如图6所示,之后等待锚节点的应答。由于无线射频的传输速度快于超声波的速度,因此附近的锚节点会先接收到无线射频信号。当锚节点收到WHERE信号后的具体流程如图8所示将无线射频信号到达的时候记录为T1,同时启动等待接受超声波信号的接受,并且测量RSS值进行筛选,如果RSS值超出了有效范围,则此锚节点将不能为目标节点定位,这时锚节点返回等待状态;在有效范围内的锚节点将根据本地RSS曲线将RSS均值转换为距离S1。由于超声波的发射是有方向性的,因此不是所有在有效范围内的锚节点都能够收到超声波信号,则有些锚节点会收到超声波信号,当收到超声波信号之后将其到达时间记录为T2,已知无线射频信号和超声波的传输速度为c1,c2,那么两节点之间的距离为 (T2-T1)×C(2) 其中可以计算出两节点之间的距离S2。因为根据大量的实验我们可以知道距离S2比距离S1的测量结果精确,所以收到超声波信号的锚节点只将比较精确的距离S2发送给目标节点,而没有收到超声波信号的锚节点只能将距离S1发送给目标节点。最后清空,再返回等待状态。
目标节点收到锚节点应答的距离信号后的具体流程如图9所示根据锚节点的个数动态决定定位算法目标节点解析收到的信号,判断收到S2的锚点个数,当锚点个数仅为3个时,通过三角定位的方法计算目标节点坐标;当锚点个数大于3时,利用排列组合和极大似然估计的方法减小测距误差对定位的影响;当锚点个数小于3个时,统计S1+S2的锚点个数,判断全部锚节点的个数,当小于3个时,采用近似位置估计的方法,给出符号位置;其他情况则按上面的计算方式进行。
目标节点解析锚节点发回的信号后会根据锚点个数动态选择定位算法,基本定位原理为三边测量定位算法,如图7所示 当参考锚点小于3个时,无法得到物理坐标,利用位置估计方法,给出目标节点的符号坐标,例如在锚点A和锚点C之间等。
当参考锚点个数为3个时,目标节点提取三个锚点的坐标(O1(x1,y1),O2(x2,y2),O3(x3,y3))和测量距离(d1,d2,d3),假设目标节点D的坐标(x0,y0)根据两点间距离公式可得方程组 有上述方程组(1),目标节点坐标(x0,y0)为 当参考锚点个数大于3个时,根据每三个锚点可以计算出一个目标节点坐标,为了充分利用节点资源,且修正定位误差,我们首先利用排列组合的方法将这些锚节点任意3个一组进行全排列,然后计算每组锚节点所能定位出目标节点的坐标,最后对这些坐标采用极大似然估计的方法,估计出一个比较精确的坐标。具体如下设目标节点D的坐标为(x0,y0),参考锚节点的坐标为{O1(x1,y1),O2(x2,y2),…,Om(xm,ym)},dm表示(x0,y0)与(xm,ym)之间的真实距离。即根据每三个锚点可以计算出一个目标节点坐标,利用全排列公式可得到的坐标个数为 其中n=3,m为锚节点的个数。然后计算每组锚节点所能定位出目标节点的坐标,根据三边测量定位算法 由于存在误差,因此测量距离
和真实距离di之间的误差表示为(7)求(x0,y0)得问题变成求
的问题。整理(6)式和(7)式,得 展开(8)式,变化得 将第M个等式减去前面M-1个等式,得 即可以化为矩阵 其中A为(m-1)×2的矩阵,A的第m行尾[2(xm-xm-1)2(ym-ym-1)],x为代表目标节点坐标的向量[x0 y0]T,B为(m-1)向量,B的第m项为xm2+ym2-xm-12-ym-12-dm2+dm2。实际的问题是我们不确定向量B,能够得到了只有测量值向量
(类似B中
代替di),对(11)应用最小二乘法可得到估计值x为
即 最后,我们可以得到一个比较精确的坐标。最后将得到的坐标发送给SINK节点,并清空返回等待消息状态。
步骤3中由中心服务器提供具体的服务项目,由SINK节点将目标节点的坐标传输给后台服务端,利用物理坐标系统,可以为目标节点根据其坐标和想要到达的目的地,为其选择最优路径,从而实现导航服务。
以上所述的具体实施例,对本发明的目的、技术方案和有益效果进行了进一步详细说明,所应理解的是,以上所述仅为本发明的具体实施例而已,并不用于限制本发明,凡在本发明的精神和原则之内,所做的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。
权利要求
1、一种对WSN混合定位的系统和方法模型,针对大规模无线传感器网络的特殊性和现有定位方法中存在的问题,兼顾了减少节点位置计算过程中产生的网络数据流量和数据计算量,本发明提出了一种适用于大规模无线传感器网络中基于RF和超声波的混合定位的系统和方法模型,其方法主要分为
步骤1利用训练节点通过实验训练,得出信号强度与距离的关系曲线。根据RSS关系曲线得到RSS信号强度与距离关系参照表。
步骤2目标节点同时发射无线射频信号和超声波信号,接受节点根据RSS信号强度与距离关系参照表和两种传播速度不同的无线信号到达的时间差以及已经这两种信号的传播速度,计算两个节点之间的距离。接受节点将计算出的距离回复给目标节点,然后由目标节点根据锚点个数动态选择定位算法求出目标节点的具体位置坐标。
步骤3目标节点将比较精确的物理坐标(x,y)发给SINK节点,由后台服务端提供具体的服务项目。
2、根据权利要求1所述的WSN混合定位的系统和方法模型,其特征在于在步骤1中,训练信号强度与距离的关系曲线,具体步骤如下
1)SINK节点发送TRAIN消息给训练节点,每个预置距离一次;
2)训练节点发送ASK消息给锚点,要求锚点应答;
3)锚点应答ANSWER消息,每个距离应答50次;
4)训练节点记录每个RSS采样值,并计算均值;
5)训练节点发送RESULT消息给SINK节点,反馈记录的RSS数据和距离。
6)多次改变测量距离,重复以上操作
7)根据反馈(距离,RSS)数据对按数学计算的方法(近似距离估计)绘制RSS曲线。
3、根据权利要求1所述的WSN混合定位的系统和方法模型,其特征在于在步骤1)中,根据RSS关系曲线得到本地位置的RSS信号强度与距离关系参照表。具体步骤如下
1)根据RSS曲线的特性,规定在一定的通信范围距离内的信号强度有效。
2)有效范围内的RSS曲线按照一定单位长度将距离和信号强度分段,使信号强度与通信距离在单位长度内相对应。得到了这个位置的RSS信号强度与距离关系参照表。
3)SINK节点发送STORE消息给锚点,要求锚点将RSS信号强度与距离关系参照表存储于本地ROM中;
4、根据权利要求1所述的WSN混合定位的系统和方法模型,其特征在于在步骤2)中,目标节点同时发射无线射频信号和超声波信号,接受节点根据RSS信号强度与距离关系参照表和两种传播速度不同的无线信号到达的时间差以及已经这两种信号的传播速度,计算两个节点之间的距离。具体步骤如下
1)目标节点同时发射无线射频信号和超声波信号。
2)附近的锚节点接收无线射频信号,记录到达时间T1,测量RSS值并进行筛选,根据本地RSS曲线将RSS均值转换为距离S1。
3)有些锚节点可能会收到超声波信号,记录到达时间T2,根据两种信号的传播速度为c1,c2,根据公式
S=(T2-T1)×C(1)
其中可以计算出两节点之间的距离S2。然后接受节点将计算出的距离和锚节点的坐标位置信息发回给目标节点,如果锚节点测量出同一个目标节点的距离只为S1和S2,则只回复距离S2给目标节点。
5、根据权利要求1所述的WSN混合定位的系统和方法模型,其特征在于在步骤2)中,目标节点收到锚节点的回复信息后要对信息包中的距离S进行筛选,具体步骤如下
1)目标节点解析收到的信号
2)判断收到S2的锚点个数,当锚点个数仅为3个时,通过三角定位的方法计算目标节点坐标。
3)当锚点个数大于3时,利用排列组合和极大似然估计的方法减小测距误差对定位的影响。
4)当锚点个数小于3个时,统计S1+S2的锚点个数,判断全部锚节点的个数,当小于3个时,采用近似位置估计的方法,给出符号位置;其他情况则按上面的计算方式进行。
6、根据权利要求1所述的WSN混合定位的系统和方法模型,其特征在于在步骤2)中锚点个数动态选择定位算法,具体步骤如下
1)当参考锚点小于3个时,无法得到物理坐标,利用位置估计方法,给出目标节点的符号坐标,例如在锚点A和锚点C之间等。
2)当参考锚点个数为3个时,目标节点提取三个锚点的坐标(O1(x1,y1),O2(x2,y2),O3(x3,y3))和测量距离(d1,d2,d3),假设目标节点D的坐标(x0,y0)根据两点间距离公式可得方程组
有上述方程组(2),目标节点坐标(x0,y0)为
3)当参考锚点个数大于3个时,根据每三个锚点可以计算出一个目标节点坐标,为了充分利用节点资源,且修正定位误差,我们首先利用排列组合的方法将这些锚节点任意3个一组进行全排列,然后计算每组锚节点所能定位出目标节点的坐标,最后对这些坐标采用极大似然估计的方法,估计出一个比较精确的坐标。具体如下设目标节点D的坐标为(x0,y0),参考锚节点的坐标为{O1(x1,y1),O2(x2,y2),…,Om(xm,ym)},dm表示(x0,y0)与(xm,ym)之间的真实距离。即根据每三个锚点可以计算出一个目标节点坐标,利用全排列公式可得到的坐标个数为
其中n=3,m为锚节点的个数。然后计算每组锚节点所能定位出目标节点的坐标,根据三边测量定位算法
由于存在误差,因此测量距离
和真实距离di之间的误差表示为
(6)
最后得到目标节点的坐标估计为
7、根据权利要求1所述的WSN混合定位的系统和方法模型,其特征在于在步骤3)中,由后台服务端提供服务。利用物理坐标系统,可以为目标节点根据其坐标和想要到达的目的地,为其选择最优路径,从而实现导航服务。
全文摘要
本发明涉及一种对WSN混合定位的系统和方法模型,利角分布式计算技术和数理统计方法解决无线传感器网络的节点自身定位问题。主要思路是1.利用训练节点通过训练模式,得出信号强度与距离的关系曲线,且据此建立节点的RSS信号强度与距离关系参照表;2.目标节点同时发射无线射频和超声波信号,接受节点据两种传播速度不同的信号到达的时间差及两信号的传播速度,算出两节点间的距离,并将该距离回复给目标节点,然后由目标节点根据锚点个数动态选择定位算法求出目标节点的具体位置坐标;3.目标节点将较精确的物理坐标发给SINK节点。本发明采用少量固定锚节点,利用数学方法来定位其他节点,优化了多种定位方法,降低了成本,提高了定位精度。
文档编号H04L29/08GK101576615SQ20081010578
公开日2009年11月11日 申请日期2008年5月5日 优先权日2008年5月5日
发明者鹏 王, 张宝贤, 壮 赵, 奎 黄, 郑 姚, 雪 高, 锋 张 申请人:北京银易通网络科技有限公司