节点定位方法及节点定位系统与流程

文档序号:14481339阅读:1010来源:国知局

本发明属于通信技术领域,具体涉及一种节点定位方法及相应的节点定位系统。



背景技术:

随着物联网技术的发展,需要对传感器进行定位的场合和需求也越来越多。如果缺少节点的具体位置信息,则可能导致相关数据信息不能发挥正确的用途。比如在环境监测中,准确定位森林温度是预防火灾的前提。获得传感器的准确位置信息是物联网技术应用的前提。

在大多数室外环境应用中,节点采取随意投放的方式来采集信息,节点坐标位置有很大的不确定性;而在室内环境应用中,虽然可以将gps装在传感器上获取位置信息,但是gps信号接收装置费用高,受环境影响较大,在应用推广上存在一定的障碍。

可见,如何在限制一定能耗和费用的前提下,提高节点定位的精度具有重要意义。



技术实现要素:

本发明所要解决的技术问题是针对现有技术中上述不足,提供一种物联网场景下的节点定位方法及相应的节点定位系统,只需少数锚节点即可对大量未知节点进行定位,大大提升了节点的定位精度。

解决本发明技术问题所采用的技术方案是该节点定位方法,包括步骤:

对节点进行初始化,筛选周围具备至少四个锚节点的待测节点;

对定位坐标的权值因子进行优化;

根据定位坐标的优化权值因子,计算待测节点的估计坐标值;

选择与待测节点距离最近的四个节点作为修正锚节点,根据定位坐标的优化权值因子,计算修正锚节点的测量坐标值;

根据锚节点的测量坐标值,计算定位均值误差;

根据定位均值误差对待测节点的估计坐标值进行校正,计算待测节点的位置。

优选的是,在对定位坐标的权值因子进行优化的步骤中,优化定位坐标的权重因子为:

其中,db、dc分别表示任两个锚节点分别到待测节点的距离;p、q为与db、dc相关的两个变量,p/q=dc/db。

优选的是,在计算待测节点的估计坐标值和计算修正锚节点的测量坐标值的步骤中,其中,

横坐标值为:

纵坐标值为:

其中,在以三个锚节点为圆心、通信半径形成的三个圆的重叠区域,xa”i、xb”i、xc”i为各自重叠点到第i个锚节点的横坐标距离;ya”i、yb”i和yc”i为各自重叠点到第i个锚节点的纵坐标距离;da”i、db”i、dc”i为各自重叠点到第i个锚节点的距离。

优选的是,在计算定位均值误差的步骤中,将修正锚节点的测量坐标值与其真实坐标值进行比较,得到该修正锚节点的定位误差,其中,

横坐标方向的定位误差的均值为:

纵坐标方向的定位误差的均值为:

其中,(xi,yi)为第i个锚节点的真实坐标值,(x'i,y'i)为第i个锚节点的测量坐标值。

优选的是,在根据定位均值误差对待测节点的估计坐标值进行校正,计算待测节点的位置的步骤中,确定待测节点的位置为:

其中,(x',y')为待测节点的位置坐标值,(x,y)为待测节点的估计坐标值。

一种节点定位系统,包括筛选模块、优化权值因子模块、计算模块、均值模块和定位模块,其中:

所述筛选模块,用于对节点进行初始化,筛选周围具备至少四个锚节点的待测节点;

所述优化权值因子模块,用于对定位坐标的权值因子进行优化;

所述计算模块,用于根据定位坐标的优化权值因子,计算待测节点的估计坐标值;以及,选择与待测节点距离最近的四个节点作为修正锚节点,根据定位坐标的优化权值因子,计算修正锚节点的测量坐标值;

所述均值模块,用于根据锚节点的测量坐标值,计算定位均值误差;

所述定位模块,用于根据定位均值误差对待测节点的估计坐标值进行校正,计算待测节点的位置。

优选的是,在所述优化权值因子模块中,优化定位坐标的权重因子为:

其中,db、dc分别表示任两个锚节点分别到待测节点的距离;p、q为与db、dc相关的两个变量,p/q=dc/db。

优选的是,在所述计算模块中,计算待测节点的估计坐标值和计算修正锚节点的测量坐标值时,其中,

横坐标值为:

纵坐标值为:

其中,在以三个锚节点为圆心、通信半径形成的三个圆的重叠区域,xa”i、xb”i、xc”i为各自重叠点到第i个锚节点的横坐标距离;ya”i、yb”i和yc”i为各自重叠点到第i个锚节点的纵坐标距离;da”i、db”i、dc”i为各自重叠点到第i个锚节点的距离。

优选的是,在所述均值模块中,将修正锚节点的测量坐标值与其真实坐标值进行比较,得到该修正锚节点的定位误差,其中,

横坐标方向的定位误差的均值为:

纵坐标方向的定位误差的均值为:

其中,(xi,yi)为第i个锚节点的真实坐标值,(x'i,y'i)为第i个锚节点的测量坐标值。

优选的是,在所述定位模块中,确定待测节点的位置为:

其中,(x',y')为待测节点的位置坐标值,(x,y)为待测节点的估计坐标值。

本发明的有益效果是:该节点定位方法及相应的节点定位系统通过对优化定位坐标的权值因子和定位误差补偿的方式得到更精确的位置坐标,从而能够有效地提升节点定位精度,能最大限度的提高节点定位的精度。

附图说明

图1为本发明实施例中节点定位方法的流程图;

图2为本发明实施例中节点定位方法的详细流程图;

图3为本发明实施例中对定位坐标的权值因子进行优化的位置关系图;

图4为本发明实施例中节点定位系统的结构示意图;

图中:

1-筛选模块;2-优化权值因子模块;3-计算模块;4-均值模

块;5-定位模块。

具体实施方式

为使本领域技术人员更好地理解本发明的技术方案,下面结合附图和具体实施方式对本发明节点定位方法及相应的节点定位系统作进一步详细描述。

本发明的技术构思在于,在确定待测节点周围具备锚节点的情况下,利用待测节点周围的至少三个锚节点对另外一个锚节点进行定位,得到锚节点的估计坐标值,此时的待测节点可与锚节点同等对待得到估计坐标值。由于锚节点已经被证实具有准确的位置坐标,进而,比较锚节点的估计坐标值和精确位置,得到定位系统误差,利用定位系统误差来修正待测节点的估计坐标值,从而得到待测节点的精确位置。

本发明针对节点定位的精确问题,创新的提出了一种物联网场景下的节点定位方法及节点定位系统,能有效地提高节点定位的精度。

如图1和图2所示,本发明实施例中节点定位方法包括步骤:

步骤s1):对节点进行初始化,筛选周围具备至少四个锚节点的待测节点。

例如,在该网络中,节点个数为m,锚节点个数为n,待测节点个数为m-n,n≥4,m为大于n的自然数。

在步骤中,以n=4,即通过四个锚节点对待测节点进行位置确定作为示例。一个待测节点在得到精确位置后,在下一轮循环中,即可称为锚节点,即每个已知其真实坐标值的节点均可作为锚节点。

在该步骤中,首先确定待测节点周围是否存在四个锚节点,如果不存在四个锚节点,确定该待测节点为孤立节点,孤立节点无法利用周围节点对其进行准确定位;如果存在四个锚节点,继续下一步。

步骤s2):对定位坐标的权值因子进行优化。

在该步骤中,优化定位坐标的权重因子如公式(1)所示:

其中,db、dc分别表示任两个锚节点分别到待测节点的距离,例如锚节点b和锚节点c到待测节点的距离;

p、q为与db、dc相关的两个变量,起到控制算法修正的程度的作用,p/q=dc/db。

例如,当db>dc时,说明锚节点c离待测节点的距离更近,理论上对待测节点的坐标估计会产生较大影响。而此时q>p,修正系数中的作用反而被稍微弱化,起到防止修正过度的作用。

这里应该理解的是,这里以锚节点b和锚节点c作为示例,对其他的锚节点a或锚节点d同样进行定位坐标的权值因子优化,这里不做赘述。

该步骤提供了一种计算估计坐标值的通用方法,可以用于计算待测节点的估计坐标值,也可以用于计算锚节点的估计坐标值,且在计算锚节点估计坐标值时并不限定与待测节点的距离。

步骤s3):根据定位坐标的优化权值因子,计算待测节点的估计坐标值。

在该步骤中,如图3所示,从距离待测节点最近的四个锚节点中任意选择三个节点作为锚节点,将以该三个锚节点为圆心、通信半径形成的圆的重叠的区域,视为待测节点坐标的估计区域。利用优化后的权值因子,对距离待测节点最近的四个锚节点中任意一个锚节点进行定位。

其中,横坐标值如公式(2)所示:

纵坐标值如公式(3)所示:

其中,在三个圆的重叠区域,xa”i为重叠点a”到第i个锚节点的横坐标距离,xb”i为重叠点b”点到第i个锚节点的横坐标距离,xc”i为重叠点c”点到第i个锚节点的横坐标距离;同理,ya”i、yb”i和yc”i为各自重叠点到第i个锚节点的纵坐标距离。

da”i为重叠点a”点到第i个锚节点的距离,db”i为重叠点b”点到第i个锚节点的距离,dc”i为重叠点c”点到第i个锚节点的距离。

公式(2)、公式(3)中的分母部分的参数合并得到。

步骤s4):选择与待测节点距离最近的四个节点作为修正锚节点,根据定位坐标的优化权值因子,计算修正锚节点的测量坐标值。

在该步骤中,选取修正锚节点中的三个作为新的锚节点,变更上述锚节点的权值因子和公式(2)、公式(3)相应的量值,对未选取的另外一个锚节点进行定位,从而得到第i个锚节点的测量坐标值。

在该节点定位方法中,计算待测节点的估计坐标值和计算修正锚节点的测量坐标值的顺序并不做限定,可以灵活设置步骤s4)和步骤s5)的执行顺序。

步骤s5):根据锚节点的测量坐标值,计算定位均值误差。

定位系统误差与修正锚节点的测量坐标值相关。在该步骤中,将该定位出来的修正锚节点的测量坐标值与其真实坐标值进行比较,得到该修正锚节点的定位误差,为网络节点提供定位系统误差。

同理,用同样的方法分别对其余三个修正锚节点计算定位误差。

对四个修正锚节点的定位误差求平均值,计算得到定位均值误差。横坐标方向的定位误差的均值为:

纵坐标方向的定位误差的均值为:

其中,(xi,yi)为第i个锚节点的真实坐标值,(x'i,y'i)为第i个锚节点的测量坐标值。

步骤s6):根据定位均值误差对待测节点的估计坐标值进行校正,最终计算待测节点的位置。

在该步骤中,确定待测节点的位置为:

(x',y')为利用该改进的加权定位算法求得的待测节点的位置坐标值,(x,y)为步骤s3)中得到的待测节点的估计坐标值。

该节点定位方法,基于优化后的权值因子,利用距离待测节点最近的四个锚节点分别三三组合对待测节点进行定位,求出定位均值误差,该定位均值误差为计算待测节点的坐标值提供类似于系统误差的偏差定位参考,从而对待测节点的估计坐标值进行精确校正。

与现有技术的三角区域覆盖式方法和质心算法相比,避免了锚节点的组合复杂、计算复杂度比较高,而且节点的定位精度与节点数目有密切的关系的弊端;同时,也避免了质心算法中对锚节点需求的密度较大,造成的能耗也较高的弊端。

相应的,本实施例还提供一种节点定位系统,如图4所示,该节点定位系统包括筛选模块1、优化权值因子模块2、计算模块3、均值模块4和定位模块5,其中:

筛选模块1,用于对节点进行初始化,筛选周围具备至少四个锚节点的待测节点;

优化权值因子模块2,用于对定位坐标的权值因子进行优化;

计算模块3,用于根据定位坐标的优化权值因子,计算待测节点的估计坐标值;以及,选择与待测节点距离最近的四个节点作为修正锚节点,根据定位坐标的优化权值因子,计算修正锚节点的测量坐标值;

均值模块4,用于根据锚节点的测量坐标值,计算定位均值误差;

定位模块5,用于根据定位均值误差对待测节点的估计坐标值进行校正,计算待测节点的位置。

其中,在优化权值因子模块2中,优化定位坐标的权重因子为:

其中,db、dc分别表示任两个锚节点分别到待测节点的距离;p、q为与db、dc相关的两个变量,p/q=dc/db。

在计算模块3中,计算待测节点的估计坐标值和计算修正锚节点的测量坐标值时,其中,

横坐标值为:

纵坐标值为:

其中,在以三个锚节点为圆心、通信半径形成的三个圆的重叠区域,xa”i、xb”i、xc”i为各自重叠点到第i个锚节点的横坐标距离;ya”i、yb”i和yc”i为各自重叠点到第i个锚节点的纵坐标距离;da”i、db”i、dc”i为各自重叠点到第i个锚节点的距离。

在均值模块4中,将修正锚节点的测量坐标值与其真实坐标值进行比较,得到该修正锚节点的定位误差,其中,

横坐标方向的定位误差的均值为:

纵坐标方向的定位误差的均值为:

其中,(xi,yi)为第i个锚节点的真实坐标值,(x'i,y'i)为第i个锚节点的测量坐标值。

就计算结果而言,计算模块3中有关于计算修正锚节点的测量坐标值部分和均值模块4中计算定位均值误差部分可以合并为一模块,而将计算模块3中有关于计算待测节点的估计坐标值部分为一独立模块,这里不做限定。

在定位模块5中,确定待测节点的位置为:

其中,(x',y')为待测节点的位置坐标值,(x,y)为待测节点的估计坐标值。

这里应该理解的是,上述节点定位系统各模块中存储有完成功能的多条指令,指令适用于由处理器加载并执行。各模块具体的实现功能可参考上述节点定位方法对应的各步骤,这里不再详述。

该节点定位系统,通过对优化定位坐标的权值因子和定位误差补偿的方式得到更精确的位置坐标,从而能够有效地提升节点定位精度,能最大限度的提高节点定位的精度。

可以理解的是,以上实施方式仅仅是为了说明本发明的原理而采用的示例性实施方式,然而本发明并不局限于此。对于本领域内的普通技术人员而言,在不脱离本发明的精神和实质的情况下,可以做出各种变型和改进,这些变型和改进也视为本发明的保护范围。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1