本发明涉及无线传感器技术领域,特别涉及一种节点定位方法及系统、服务器。
背景技术:
在无线传感器网络中,传感器节点往往经飞机散播方式部署于复杂的环境中,这使得传感器节点的位置信息随机且无法确定。为了实现对传感器节点的监测,需要对传感器节点进行精准定位。受传感器节点的成本、能量和体积等因素的限制,现有的传感器节点定位方法主要基于部分信标节点以实现对传感器节点的定位。具体地,现有的传感器节点定位方法包括:部署少量已知的信标节点,根据未知节点相对信标节点的位置关系或网络连通性计算得出未知节点的位置信息。
目前常用的定位方法包括:节点间多跳的定位方法和凸规划非测距定位方法。节点间多跳的定位方法通过无线传感器网络的连通性实现未知节点的定位。该节点间多跳的定位方法易受最小跳数的影响,当最小跳数的偏差较大时,会导致对未知节点的定位误差较大。凸规划非测距定位方法将节点定位问题转化为凸约束优化问题以实现对未知节点的定位。该凸规划非测距定位方法易受信标节点部署位置的影响,当信标节点部署在无线传感器网络中心时会导致未知节点的定位误差较大。
技术实现要素:
本发明旨在至少解决现有技术中存在的技术问题之一,提供了一种节点定位方法及系统、服务器,能够有效降低未知节点的定位误差。
为实现上述目的,本发明提供了一种节点定位方法,基于节点定位系统,所述节点定位系统包括服务器、多个信标节点和至少一个未知节点,所述节点定位方法包括:
服务器计算多个信标节点的平均中心度与所述节点定位系统中所有节点的平均中心度的比值;
服务器根据所述比值生成修正后的节点平均跳距;
未知节点根据所述修正后的节点平均跳距和预先生成的所述未知节点与信标节点间的最小跳数生成所述未知节点到信标节点的跳段距离。
可选地,所述服务器根据所述比值生成修正后的节点平均跳距具体包括:
服务器根据公式
可选地,在所述未知节点根据所述修正后的节点平均跳距和预先生成的所述未知节点与信标节点间的最小跳数生成所述未知节点到信标节点的跳段距离之前还包括:
信标节点泛洪扩散信标节点信息,所述信标节点信息包括跳转次数;
未知节点接收所述信标节点信息并根据所述跳转次数生成所述未知节点与信标节点间的最小跳数。
可选地,所述信标节点信息还包括所述信标节点的位置信息和信标节点标识;
在所述未知节点根据所述修正后的节点平均跳距和预先生成的所述未知节点与信标节点间的最小跳数生成所述未知节点到信标节点的跳段距离之后还包括:
所述未知节点判断是否接收到三个以上信标节点发送的信标节点信息;
所述未知节点若判断出接收到三个以上信标节点发送信标节点信息,根据所述信标节点的位置信息、所述信标节点标识和所述未知节点到信标节点的跳段距离生成所述未知节点的位置坐标。
为实现上述目的,本发明还提供了一种服务器,包括第一生成模块和第二生成模块;
所述第一生成模块,用于计算多个信标节点的平均中心度与所述节点定位系统中所有节点的平均中心度的比值;
所述第二生成模块,用于根据所述比值生成修正后的节点平均跳距。
可选地,所述第二生成模块具体用于根据公式
为实现上述目的,本发明还提供了一种节点定位系统,包括服务器和未知节点;
所述服务器,用于计算多个信标节点的平均中心度与所述节点定位系统中所有节点的平均中心度的比值,根据所述比值生成修正后的节点平均跳距;
所述未知节点,用于根据所述修正后的节点平均跳距和预先生成的所述未知节点与信标节点间的最小跳数生成所述未知节点到信标节点的跳段距离。
可选地,所述服务器具体用于根据公式
可选地,还包括信标节点;
所述信标节点,用于泛洪扩散信标节点信息,所述信标节点信息包括跳转次数;
所述未知节点还用于接收所述信标节点信息并根据所述跳转次数生成所述未知节点与信标节点间的最小跳数。
可选地,所述信标节点信息还包括所述信标节点的位置信息和信标节点标识;
所述未知节点还用于判断是否接收到三个以上信标节点发送的信标节点信息,若判断出接收到三个以上信标节点发送信标节点信息,根据所述信标节点的位置信息、所述信标节点标识和所述未知节点到信标节点的跳段距离生成所述未知节点的位置坐标。
本发明具有以下有益效果:
本发明提供的节点定位方法,服务器计算多个信标节点的平均中心度与所述节点定位系统中所有节点的平均中心度的比值,并根据所述比值生成修正后的节点平均跳距,未知节点根据所述修正后的节点平均跳距和预先生成的所述未知节点与信标节点间的最小跳数生成所述未知节点到信标节点的跳段距离。该节点定位方法能够有效降低未知节点的定位误差。
附图说明
图1为本发明实施例一提供的一种节点定位方法的流程示意图;
图2为本发明实施例二提供的一种节点定位方法的流程示意图;
图3为本发明实施例三提供的一种节点定位系统的结构示意图;
图4为图3中服务器的结构示意图。
具体实施方式
为使本领域的技术人员更好地理解本发明的技术方案,下面结合附图对本发明中的技术方案进行清楚、完整的描述,显然,所描述的实施例是本发明的一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动的前提下所获得的所有其他实施例,都属于本发明保护的范围。
实施例一
图1为本发明实施例一提供的一种节点定位方法的流程示意图,该节点定位方法基于节点定位系统,节点定位系统包括服务器、多个信标节点和至少一个未知节点,如图1所示,该节点定位方法包括以下步骤:
步骤101、服务器计算多个信标节点的平均中心度与所述节点定位系统中所有节点的平均中心度的比值。
步骤102、服务器根据所述比值生成修正后的节点平均跳距。
步骤103、未知节点根据所述修正后的节点平均跳距和预先生成的所述未知节点与信标节点间的最小跳数生成所述未知节点到信标节点的跳段距离。
本实施例提供的节点定位方法,服务器计算多个信标节点的平均中心度与所述节点定位系统中所有节点的平均中心度的比值,并根据所述比值生成修正后的节点平均跳距,未知节点根据所述修正后的节点平均跳距和预先生成的所述未知节点与信标节点间的最小跳数生成所述未知节点到信标节点的跳段距离。本实施例提供的该节点定位方法能够有效降低未知节点的定位误差。
实施例二
图2为本发明实施例二提供的一种节点定位方法的流程示意图,该节点定位方法基于节点定位系统,节点定位系统包括服务器、多个信标节点和至少一个未知节点,如图2所示,该节点定位方法包括以下步骤:
步骤201、物联网网络初始化,所述物联网网络包括服务器、多个信标节点和至少一个未知节点。
该物联网网络包括上所述的节点定位系统。
信标节点为物联网网络中位置已知的节点,未知节点为物联网网络中位置未知的节点,本实施例中的物联网网络需包括至少三个信标节点。
步骤202、信标节点泛洪扩散信标节点信息,所述信标节点信息包括所述信标节点的位置信息、信标节点标识及跳转次数。
物联网网络中的每个信标节点均向整个物联网网络泛洪广播信标节点信息,信标节点信息与信标节点相对应。跳转次数表示由信标节点泛洪传播至物联网网络中未知节点的跳转次数。
步骤203、未知节点接收所述信标节点信息并根据所述跳转次数生成所述未知节点与信标节点间的最小跳数。
未知节点接收到多个信标节点泛洪广播的信标节点信息。未知节点接收到的信标节点信息对应的信标节点为可以与未知节点连通的信标节点。未知节点根据接收到的多个信标节点泛洪广播的信标节点信息生成未知节点与每个信标节点间的最小跳数。
具体地,未知节点接收到同一信标节点发送的多个信标节点信息时,根据多个信标节点信息中的多个跳转次数筛选出数值最小的跳转次数,并将该数值最小的跳转次数作为未知节点与该信标节点间的最小跳数。
步骤204、服务器计算多个信标节点的平均中心度与所述物联网网络中所有节点的平均中心度的比值。
中心度表示网络中的任一节点与网络中其他节点的相遇总次数,服务器中预先存储有物联网网络中所有节点的中心度。
将多个信标节点的平均中心度记为m,将物联网网络中所有节点的平均中心度记为n,将多个信标节点的平均中心度与所述物联网网络中所有节点的平均中心度的比值记为p,则p=m/n。多个信标节点的平均中心度m为物联网网络中所有信标节点的中心度的平均值。物联网网络中所有节点的平均中心度n为物联网网络中所有信标节点和所有未知节点的中心度的平均值。
步骤204与步骤202的执行顺序可根据需要进行变更,例如,步骤204可在步骤202之前执行或者步骤202和步骤204可同时执行。
步骤205、服务器根据所述比值生成修正后的节点平均跳距。
服务器根据公式
具体地,当多个信标节点的平均中心度与物联网网络中所有节点的平均中心度的比值p≤1时,表示多个信标节点的平均中心度小于或等于物联网网络中所有节点的平均中心度,修正后的节点平均跳距hopsize=2(maxhs-avehs)*p+avehs。当多个信标节点的平均中心度与物联网网络中所有节点的平均中心度的比值p>1时,表示多个信标节点的平均中心度大于物联网网络中所有节点的平均中心度,信标节点在物联网网络中更受欢迎,修正后的节点平均跳距hopsize为节点平均跳距的最大值maxhs。本实施例中,修正后的节点平均跳距的上限值为节点平均跳距的最大值maxhs,能够避免出现节点平均跳距过度修正的现象。
步骤206、未知节点根据所述修正后的节点平均跳距和预先生成的所述未知节点与信标节点间的最小跳数生成所述未知节点到信标节点的跳段距离。
未知节点到信标节点的跳段距离=修正后的节点平均跳距hopsize*未知节点与信标节点间的最小跳数。
步骤207、未知节点判断是否接收到三个以上信标节点发送的信标节点信息,若是,执行步骤208;若否,执行步骤203。
当未知节点判断出未接收到三个以上信标节点发送的信标节点信息时,未知节点继续接收信标节点泛洪广播的信标节点信息直至未知节点判断出接收到三个以上信标节点发送的信标节点信息。
步骤208、未知节点根据所述信标节点的位置信息、所述信标节点标识和所述未知节点到信标节点的跳段距离生成所述未知节点的位置坐标。
本实施例中,未知节点需接收到三个以上信标节点发送的信标节点信息,以使得未知节点可以根据三边测量法计算生成未知节点的位置坐标。具体地,未知节点根据三个以上信标节点的位置信息、信标节点标识和未知节点到信标节点的跳段距离,基于三边测量法生成未知节点的位置坐标。
三边测量法具体包括:未知节点根据多个信标节点的位置信息判断自身是否包含于三个信标节点为顶点构成的三角形内,若未知节点判断出自身包含于三个信标节点为顶点构成的三角形内,则将该三角形围成的区域的中心的位置坐标作为自身的位置坐标。
本实施例提供的节点定位方法,服务器计算多个信标节点的平均中心度与物联网网络中所有节点的平均中心度的比值,并根据所述比值生成修正后的节点平均跳距,未知节点根据所述修正后的节点平均跳距和预先生成的所述未知节点与信标节点间的最小跳数生成所述未知节点到信标节点的跳段距离。本实施例提供的该节点定位方法利用物联网网络中信标节点的平均中心度与所有节点的平均中心度的比值修正节点平均跳距,在信标节点的中心度较高或较低的情况下均能够对未知节点进行精准定位,能够有效降低未知节点的定位误差。
实施例三
图3为本发明实施例三提供的一种节点定位系统的结构示意图,如图3所示,该节点定位系统包括:服务器1和未知节点2。
服务器1用于计算多个信标节点的平均中心度与所述节点定位系统中所有节点的平均中心度的比值,根据所述比值生成修正后的节点平均跳距。
未知节点2用于根据所述修正后的节点平均跳距和预先生成的所述未知节点2与信标节点间的最小跳数生成所述未知节点2到信标节点的跳段距离。
进一步地,服务器1具体用于根据公式
进一步地,该节点定位系统还包括信标节点3。
信标节点3用于泛洪扩散信标节点信息,所述信标节点信息包括跳转次数。
未知节点2还用于接收所述信标节点信息并根据所述跳转次数生成所述未知节点与信标节点间的最小跳数。
进一步地,信标节点信息还包括所述信标节点3的位置信息和信标节点标识。
未知节点2还用于判断是否接收到三个以上信标节点3发送的信标节点信息,若判断出接收到三个以上信标节点3发送信标节点信息,根据所述信标节点3的位置信息、所述信标节点标识和所述未知节点2到信标节点3的跳段距离生成所述未知节点的位置坐标。
图4为图3中服务器的结构示意图,如图4所示,该服务器1包括第一生成模块11和第二生成模块12。
第一生成模块11用于计算多个信标节点的平均中心度与所述节点定位系统中所有节点的平均中心度的比值。
第二生成模块12用于根据所述比值生成修正后的节点平均跳距。
进一步地,第二生成模块12具体用于根据公式
本实施例三提供的节点定位系统,可用于实现上述实施例一或实施例二提供的节点定位方法。
本实施例提供的节点定位系统,包括服务器和未知节点,服务器用于计算多个信标节点的平均中心度与所述节点定位系统中所有节点的平均中心度的比值,并根据所述比值生成修正后的节点平均跳距,未知节点用于根据所述修正后的节点平均跳距和预先生成的所述未知节点与信标节点间的最小跳数生成所述未知节点到信标节点的跳段距离。本实施例提供的该节点定位系统能够有效降低未知节点的定位误差。
可以理解的是,以上实施方式仅仅是为了说明本发明的原理而采用的示例性实施方式,然而本发明并不局限于此。对于本领域内的普通技术人员而言,在不脱离本发明的精神和实质的情况下,可以做出各种变型和改进,这些变型和改进也视为本发明的保护范围。