发明内容
为了解决上述技术问题,本发明的目的是:提供一种利用监控平台结合多种定位算法实现的提高传感器网络节点定位准确度的系统。
本发明所采用的技术方案是:一种提高传感器网络节点定位准确度的系统,包括有监控平台和无线传感器网络节点,所述监控平台包括有任务调度模块和移动监控模块,所述无线传感器网络节点包括有信号处理器、信号发射模块、信号接收模块和综合定位模块,所述任务调度模块与信号处理器连接,所述任务调度模块通过移动监控模块连接至综合定位模块,所述信号处理器分别与信号发射模块和信号接收模块连接。
进一步,所述综合定位模块包括有极小极大定位子模块和APIT定位子模块。
进一步,所述移动监控模块用于对无线传感器网络节点的节点密度的监控,当节点密度低于密度阈值时,控制综合定位模块中的极小极大定位子模块工作,当节点密度大于等于密度阈值时,控制综合定位模块中的APIT定位子模块工作。
进一步,所述移动监控模块用于通过综合定位模块的信息实时监控无线传感器网络节点的移动,进而将正在移动的无线传感器网络节点的移动信息发送至任务调度模块。
进一步,所述任务调度模块用于对无线传感器网络节点的移动信息进行分析,进而通过信号处理器对信号发射模块和信号接收模块进行调度。
进一步,所述监控平台还包括与能量监控模块,所述无线传感器网络节点还包括有电源检测模块,所述电源检测模块与信号处理器连接,所述任务调度模块通过能量监控模块与信号处理器连接。
进一步,所述能量监控模块用于通过信号处理器读取电源检测模块检测的无线传感器网络节点的电源信息,进而将无线传感器网络节点的电源信息发送至任务调度模块。
进一步,所述任务调度模块用于对无线传感器网络节点的电源信息进行分析,进而通过信号处理器对信号发射模块和信号接收模块进行调度。
本发明的有益效果是:本发明通过综合定位模块实现对无线传感器网络节点的精确定位,有移动监控模块实时监控网络中给个节点的移动状态,有任务调度模块根据移动情况对节点的工作状态进行调度,使系统的工作效率更高,进一步增加了网络节点定位的精度;同时,本发明还根据对每个节点的电源检测,能够利用任务调度模块对电源电量不同的节点分配不同的任务量,从而使节点的利用率尽可能高,结合节点的移动和电源电量信息更进一步提高网络节点定位的精度。
具体实施方式
下面结合附图对本发明的具体实施方式作进一步说明:
参照图1,一种提高传感器网络节点定位准确度的系统,包括有监控平台和无线传感器网络节点,所述监控平台包括有任务调度模块和移动监控模块,所述无线传感器网络节点包括有信号处理器、信号发射模块、信号接收模块和综合定位模块,所述任务调度模块与信号处理器连接,所述任务调度模块通过移动监控模块连接至综合定位模块,所述信号处理器分别与信号发射模块和信号接收模块连接。
参照图1,进一步作为优选的实施方式,所述综合定位模块包括有极小极大定位子模块和APIT定位子模块。
进一步作为优选的实施方式,所述移动监控模块用于对无线传感器网络节点的节点密度的监控,当节点密度低于密度阈值时,控制综合定位模块中的极小极大定位子模块工作,当节点密度大于等于密度阈值时,控制综合定位模块中的APIT定位子模块工作。
无线传感器网络中需要定位的节点称为未知节点,而已知自身位置并协助未知节点定位的节点称为锚节点(anchor node)。无线传感器网络定位最简单的方法是为每个节点装载全球卫星定位系统(GPS) 接收器,用以确定节点位置。但是,由于经济因素、节点能量制约和GPS 对于部署环境有一定要求等条件的限制。因此,一般只有少量节点通过装载GPS 或通过预先部署在特定位置的方式获取自身坐标。
节点准确地进行自身定位是无线传感器网络应用的重要条件。由于节点工作区域或者是人类不适合进入的区域,或者是敌对区域,传感器节点有时甚至需要通过飞行器抛撒于工作区域,因此节点的位置都是随机并且未知的。然而在许多应用中,节点所采集到的数据必须结合其在测量坐标系内的位置信息才有意义,否则,如果不知道数据所对应的地理位置,数据就失去意义。除此之外,无线传感器网络节点自身的定位还可以在外部目标的定位和追踪以及提高路由效率等方面发挥作用。因此,实现节点的自身定位对无线传感器网络有重要的意义。
获得节点位置的一个直接想法是利用全球定位系统(GPS)来实现。但是,在无线传感器网络中使用GPS来获得所有节点的位置受到价格、体积、功耗以及可扩展性等因素限制,存在着一些困难。因此目前主要的研究工作是利用传感器网络中少量已知位置的节点来获得其他未知位置节点的位置信息。已知位置的节点称作锚节点,它们可能是被预先放置好的,或者采用GPS或其他方法得知自己的位置。未知位置的节点称作未知节点,它们需要被定位。锚节点根据自身位置建立本地坐标系,未知节点根据锚节点计算出自己在本地坐标系里的相对位置。
根据具体的定位机制,可以将现有的无线传感器网络自身定位方法分为两类:基于测距的(Range-based)方法和不基于测距的(Range-free)方法。基于测距的定位机制需要测量未知节点与锚节点之间的距离或者角度信息,而不基于测距的定位机制无需距离或角度信息,或者不用直接测量这些信息,仅根据网络的连通性等信息实现节点的定位。
本发明是结合两种特定的定位计算方法和传感器网络时间同步技术来达到理想的准确度:
方法一、基于测距的定位方法
本发明使用的是极小极大定位算法:
如图2所示,计算未知节点与锚节点的距离,接着锚节点根据与未知节点的距离d, 以自身为中心,画以2d 为边长的正方形, 所有锚节点做出的正方形中重叠的部分的质心就是未知节点的坐标。
方法二、不基于测距的定位算法
本发明使用的是APIT算法,即近似三角形内点测试法(approximate point-in-triangulation teat, APIT):
一个未知节点从它所有能够与之通信的锚节点中选择3个节点,测试它自身是在这3个锚节点所组成的三角形内部还是在其外部;然后再选择另外3个锚节点进行同样的测试,直到穷尽所有的组合或者达到所需的精度。如果未知节点在某三角形内部,称此三角形包含未知节点;最后,未知节点将包含自己的所有三角形的相交区域的质心作为自己的估计位置。
APIT算法最关键的步骤是测试未知节点是在3个锚节点所组成的三角形内部还是外部,这一测试的理论基础是三角形内的点(PIT)测试。PIT测试用来测试一个节点是在其他3个节点所组成的三角形内部还是在其外部。假如存在一个方向,沿着这个方向M点会同时远离或者同时接近A、B、C 3个点,那么M位于△ABC外,如图4所示;否则,M位于△ABC内,如图3所示。这就是PIT测试的原理。
在静态网络中,M点固定,不能朝着不同的方向移动,此时无法执行PIT测试,为此定义APIT测试(Approximate PIT):假如节点M的邻居节点中没有同时远离或同时靠近3个锚节点A、B、C的节点,那么M就在△ABC之内;否则M就在△ABC外,如图3所示。
这种方法是利用网络较高的节点密度来模拟节点移动,根据给定方向上一个节点距离锚节点越远接收信号强度越弱的无线传播特性来判断距锚节点的远近。在无线传感器网络中,邻居节点间互相交换信息,仿效PIT测试的节点移动。如图5所示,节点M通过与邻居节点1交换信息,得知自身如果运动至节点1,将远离锚节点B和C,但会接近锚节点A,与邻居节点2、3、4的通信和判断过程类似,最终确定自身位于△ABC内,而在图6中,节点M可知假如自身运动至邻居节点2处,将同时远离锚节点A、B、C,故判断自身不在△ABC中。
当节点M比较靠近△ABC的一条边,或者M周围的邻居节点分布不均匀时,APIT的判断可能会发生错误,当未知节点密度较大时,APIT判断发生错误的概率较小。
APIT算法是完全分布式的,仅需要少量通信和简单计算,具有良好的扩展性,无线传感器网络自身定位算法的性能对其可用性有直接的影响。
NTP(Network time protocol,网络时间协议)和 GPS(Global Positioning System,全球定位系统)尽管在技术上已经很成熟,但是却无法直接应用于无线传感器网络的时间同步,这是由于无线传感器网络具有其自身的特点,要依靠同步机制,如图7所示的发送者-接收者同步机制与图8所示的接收者-接收者同步机制,其中NIC为网络接口控制卡(Network Interface Controller)。
进一步作为优选的实施方式,所述移动监控模块用于通过综合定位模块的信息实时监控无线传感器网络节点的移动,进而将正在移动的无线传感器网络节点的移动信息发送至任务调度模块。
进一步作为优选的实施方式,所述任务调度模块用于对无线传感器网络节点的移动信息进行分析,进而通过信号处理器对信号发射模块和信号接收模块进行调度。
参照图9,进一步作为优选的实施方式,所述监控平台还包括与能量监控模块,所述无线传感器网络节点还包括有电源检测模块,所述电源检测模块与信号处理器连接,所述任务调度模块通过能量监控模块与信号处理器连接。
进一步作为优选的实施方式,所述能量监控模块用于通过信号处理器读取电源检测模块检测的无线传感器网络节点的电源信息,进而将无线传感器网络节点的电源信息发送至任务调度模块。
进一步作为优选的实施方式,所述任务调度模块用于对无线传感器网络节点的电源信息进行分析,进而通过信号处理器对信号发射模块和信号接收模块进行调度。
当一个节点收到一个邻居节点发来的消息之后,它可以将它的接收机关闭,避免接收到重复的消息。同样,当一个节点的能量极低时,它会向邻节点广播一条消息,告诉邻节点自己已经没有多少能量,不能再用来对消息进行传递了,这样它就可以不再接收邻节点发来的需要传递的消息,将能量都留给自己的消息发送。
任务调度模块用来平衡和规划某个区域的感知任务,安排哪些节点执行哪些感知任务,能量高的节点可以比那些能量低的节点多承担一些任务。有了任务调度模块,节点能够低能耗地协调工作,能够在移动的情况下传递数据,能够在节点之间共享资源。
以上是对本发明的较佳实施进行了具体说明,但本发明创造并不限于所述实施例,熟悉本领域的技术人员在不违背本发明精神的前提下还可以作出种种的等同变换或替换,这些等同的变形或替换均包含在本申请权利要求所限定的范围内。