一种改进的无线传感器网络三维定位方法技术

技术编号:15795342 阅读:80 留言:0更新日期:2017-07-10 12:08
本发明专利技术公开了一种改进的无线传感器网络三维定位方法,属于无线传感器定位技术领域,使用VTM‑APIT‑3D算法不断分割定位区域,使用费马点模型进行初步定位,绘制三角形中线垂面划分定位空间,用来缩小定位范围,同时还使用中线(点)修复方法绘制三角形中线或线中点来划分定位空间,其中针对未知节点周围的锚节点数量的不同分成四种情况进行处理,实现了无线传感器的三维定位,减少了使用费马点模型的三维定位方法中多次把未知节点估计在三棱锥形状的有效范围内造成的累积误差。

【技术实现步骤摘要】
一种改进的无线传感器网络三维定位方法
本专利技术属于无线传感器定位

技术介绍
为了在无线传感器网络中监测传感器网络的活动情况以实现一些具体的网络操作和网络应用,节点的位置信息非常重要。事件发生的位置以及节点的信息都建立在监测信息的基础上,毋庸置疑的是,没有定位信息的监测消息往往是毫无意义的。因此,位置信息在无线传感器网络应用中起到了关键作用。在现阶段,常见的测距方法包括:到达时间(ToA),到达时间差(TDoA),到达角度(AoA)和接收信号强度指示器(RSSI)等等。这种类型的方法虽然精度较高,但同时也带来了硬件要求极高和通信消费严重方面的问题。因此,他们不适用于低能耗或低成本的应用程序。具体的定位方法可以根据是否需要测量距离或角度信息划分为基于测距的定位和无需测距的定位。无需测距的定位方法不需要测量绝对距离或方向,依靠网络连通性的信息或其他方法即可完成定位。现实中的无线传感器网络往往被布局在复杂的三维地形中,若采用基于测距的定位则需要测量三个维度的位置或角度信息,易产生测量误差且增加了能耗。为了实现三维环境下更为精确的节点定位,无需测距的定位方法是研究的重点。
技术实现思路
本专利技术的目的是提供一种改进的无线传感器网络三维定位方法,减少了使用费马点模型的三维定位方法中多次把未知节点估计在三棱锥形状的有效范围内造成的累积误差。为实现上述目的,本专利技术采用以下技术方案:一种改进的无线传感器网络三维定位方法,包括如下步骤:步骤1:建立无线传感器网络,无线传感器网络包括数个无线传感器和上位机,任意两个相邻的无线传感器之间通过无线网络通信,所有无线传感器均通过无线网络与上位机通信;步骤2:所有无线传感器均向上位机发送入网信息,入网信息包括位置坐标信息和无线传感器编号;步骤3:设定任意一个无线传感器为无线传感器A,上位机判断无线传感器A的位置坐标信息是否为空:是,则上位机标记无线传感器A为锚节点,并生成标记信息;否,则上位机标记无线传感器A为未知节点,并生成标记信息;步骤4:上位机将标记信息发送给无线传感器A,无线传感器A通过标记信息获知自身为锚节点或未知节点;步骤5:重复步骤3和步骤4,直到所有无线传感器均获得标记信息;步骤6:上位机记录所有无线传感器的标记信息;步骤7:设定任意一个未知节点为未知节点B,未知节点B向与其邻近的所有无线传感器均发送入网请求,所有接收到入网请求的锚节点均向未知节点B发送自身的入网信息;步骤8:未知节点B将接收到的所有锚节点的入网信息,未知节点B判断入网信息的信号的强弱并生成信号强弱信息,未知节点B将入网信息和信号强弱信息合成处理为定位数据包,并通过无线网络将定位数据包发送给上位机;步骤9:重复步骤7和步骤8,直到所有的未知节点均将自身的定位数据包发送给上位机;步骤10:上位机查询是否有无线传感器被标记为未知节点:是,则执行步骤11;否,则执行步骤26;步骤11:上位机选择任意一个未知节点作为待定未知节点C,并读取待定未知节点C的定位数据包;步骤12:上位机从待定未知节点C的定位数据包中读取并判断与待定未知节点C邻近的锚节点的个数:如锚节点的个数大于或等于四个,则执行步骤13;如锚节点的个数小于四个,则执行步骤18;步骤13:使用VTM-APIT-3D算法对待定未知节点C进行定位,其步骤如下:步骤A:上位机读取待定未知节点C的定位数据包中所有锚节点的入网信息,并根据入网信息中的位置坐标信息建立待定未知节点C周边的锚节点网络数学模型;步骤B:所述锚节点网络数学模型中的任意四个锚节点作为顶点组成一个三棱锥,上位机建立该三棱锥的数学模型,并通过以下方法进行计算:首先上位机通过APIT-3D算法判断所述三棱锥是否包含有待定未知节点C:是,则保留该三棱锥的数学模型信息,并定义该三棱锥为定位三棱锥;否,则舍弃该三棱锥;所述三棱锥的数学模型信息包括组成三棱锥的所有锚节点的入网信息;步骤C:上位机记录保留下来的三棱锥的数学模型信息;步骤D:上位机执行重复步骤B和步骤C,直到找出所有包含待定未知节点C的定位三棱锥;步骤E:首先上位机选择任意一个定位三棱锥,并计算出该定位三棱锥的费马点的坐标,然后上位机通过以下方法进行计算:该定位三棱锥的4个顶点与所述费马点连线后将该定位三棱锥分为了4个区域,每一个区域均设定为一个子三棱锥;通过APIT-3D算法判断哪一个待定未知节点C包含在哪一个子三棱锥中,并定义该子三棱锥为定位子三棱锥,并记录定位子三棱锥的4个顶点的位置坐标信息;步骤F:上位机建立定位子三棱锥的数学模型,并通过以下方法进行计算:在定位子三棱锥内找到不含费马点的三角形,取该三角形的一边作为定位边,作定位边的中线,在通过所述中线做中线垂面,将定位子三棱锥划分为两个定位区域;步骤G:上位机通过对比定位数据包中的信号强弱信息,判断待定未知节点C距离哪一个顶点近,从而判断待定未知节点C处于所述中线垂面的哪一侧,即待定未知节点C处于哪一个定位区域;步骤H:重复步骤B到步骤G,上位机找出所有包含待定未知节点C的定位区域;步骤14:上位机通过计算所有定位区域的重叠区域,并通过计算所述重叠区域的质心坐标;步骤15:上位机将所述质心坐标通过无线网络发送给待定未知节点C;步骤16:待定未知节点C接收所述质心坐标,并将所述质心坐标作为自身的位置坐标信息;待定未知节点C根据自身的位置坐标信息和无线传感器编号生成入网信息,待定未知节点C将自身的入网信息发送给上位机;步骤17:执行步骤2;步骤18:上位机判断与待定未知节点C邻近的锚节点为几个:当锚节点为三个时,执行步骤19;当锚节点为两个时,执行步骤20;当锚节点为一个时,执行步骤21;当锚节点为零个时,执行步骤22;步骤19:定义与待定未知节点C邻近的三个锚节点组成定位三角形,上位机建立所述定位三角形数学模型并通过以下方法进行计算得出待定未知节点C的位置坐标:步骤I:取定位三角形的任意一边,并作该边的中线,中线将定位三角形分割成两个小三角形;步骤J:上位机通过对比定位数据包中的信号强弱信息,判断待定未知节点C距离哪一个顶点近,从而判断待定未知节点C处于中线的哪一侧,即待定未知节点C处于哪一个小三角形内,并通过计算得出该小三角的费马点,该费马点的坐标即为待定未知节点C的位置坐标;执行步骤23;步骤20:定义与待定未知节点C邻近的两个锚节点组成定位线,上位机建立所述定位线的数学模型并通过以下方法进行计算得出待定未知节点C的位置坐标:步骤L:计算出定位线的中点并通过中点将定位线分为两段;步骤M:上位机通过对比定位数据包中的信号强弱信息,判断待定未知节点C距离定位线上的哪一个锚节点近,计算该锚节点与所述中点组成的线段的中点坐标,该坐标即为待定未知节点C的位置坐标,执行步骤23;步骤21:上位机将锚节点的坐标作为待定未知节点C的位置坐标;执行步骤23;步骤22:上位机将所有锚节点组成一个网络空间,并通过计算得出该网络空间的重心的坐标,并将该坐标作为待定未知节点C的位置坐标;执行步骤23;步骤23:上位机将待定未知节点C的位置坐标通过无线网络发送给待定未知节点C;步骤24:待定未知节点C接收位置坐标,并生成位置坐标信息,待定未知节点C存储位置坐标信息;待定未知节点C根据自本文档来自技高网...
一种改进的无线传感器网络三维定位方法

【技术保护点】
一种改进的无线传感器网络三维定位方法,其特征在于:包括如下步骤:步骤1:建立无线传感器网络,无线传感器网络包括数个无线传感器和上位机,任意两个相邻的无线传感器之间通过无线网络通信,所有无线传感器均通过无线网络与上位机通信;步骤2:所有无线传感器均向上位机发送入网信息,入网信息包括位置坐标信息和无线传感器编号;步骤3:设定任意一个无线传感器为无线传感器A,上位机判断无线传感器A的位置坐标信息是否为空:是,则上位机标记无线传感器A为锚节点,并生成标记信息;否,则上位机标记无线传感器A为未知节点,并生成标记信息;步骤4:上位机将标记信息发送给无线传感器A,无线传感器A通过标记信息获知自身为锚节点或未知节点;步骤5:重复步骤3和步骤4,直到所有无线传感器均获得标记信息;步骤6:上位机记录所有无线传感器的标记信息;步骤7:设定任意一个未知节点为未知节点B,未知节点B向与其邻近的所有无线传感器均发送入网请求,所有接收到入网请求的锚节点均向未知节点B发送自身的入网信息;步骤8:未知节点B将接收到的所有锚节点的入网信息,未知节点B判断入网信息的信号的强弱并生成信号强弱信息,未知节点B将入网信息和信号强弱信息合成处理为定位数据包,并通过无线网络将定位数据包发送给上位机;步骤9:重复步骤7和步骤8,直到所有的未知节点均将自身的定位数据包发送给上位机;步骤10:上位机查询是否有无线传感器被标记为未知节点:是,则执行步骤11;否,则执行步骤26;步骤11:上位机选择任意一个未知节点作为待定未知节点C,并读取待定未知节点C的定位数据包;步骤12:上位机从待定未知节点C的定位数据包中读取并判断与待定未知节点C邻近的锚节点的个数:如锚节点的个数大于或等于四个,则执行步骤13;如锚节点的个数小于四个,则执行步骤18;步骤13:使用VTM‑APIT‑3D算法对待定未知节点C进行定位,其步骤如下:步骤A:上位机读取待定未知节点C的定位数据包中所有锚节点的入网信息,并根据入网信息中的位置坐标信息建立待定未知节点C周边的锚节点网络数学模型;步骤B:所述锚节点网络数学模型中的任意四个锚节点作为顶点组成一个三棱锥,上位机建立该三棱锥的数学模型,并通过以下方法进行计算:首先上位机通过APIT‑3D算法判断所述三棱锥是否包含有待定未知节点C:是,则保留该三棱锥的数学模型信息,并定义该三棱锥为定位三棱锥;否,则舍弃该三棱锥;所述三棱锥的数学模型信息包括组成三棱锥的所有锚节点的入网信息;步骤C:上位机记录保留下来的三棱锥的数学模型信息;步骤D:上位机执行重复步骤B和步骤C,直到找出所有包含待定未知节点C的定位三棱锥;步骤E:首先上位机选择任意一个定位三棱锥,并计算出该定位三棱锥的费马点的坐标,然后上位机通过以下方法进行计算:该定位三棱锥的4个顶点与所述费马点连线后将该定位三棱锥分为了4个区域,每一个区域均设定为一个子三棱锥;通过APIT‑3D算法判断哪一个待定未知节点C包含在哪一个子三棱锥中,并定义该子三棱锥为定位子三棱锥,并记录定位子三棱锥的4个顶点的位置坐标信息;步骤F:上位机建立定位子三棱锥的数学模型,并通过以下方法进行计算:在定位子三棱锥内找到不含费马点的三角形,取该三角形的一边作为定位边,作定位边的中线,在通过所述中线做中线垂面,将定位子三棱锥划分为两个定位区域;步骤G:上位机通过对比定位数据包中的信号强弱信息,判断待定未知节点C距离哪一个顶点近,从而判断待定未知节点C处于所述中线垂面的哪一侧,即待定未知节点C处于哪一个定位区域;步骤H:重复步骤B到步骤G,上位机找出所有包含待定未知节点C的定位区域;步骤14:上位机通过计算所有定位区域的重叠区域,并通过计算所述重叠区域的质心坐标;步骤15:上位机将所述质心坐标通过无线网络发送给待定未知节点C;步骤16:待定未知节点C接收所述质心坐标,并将所述质心坐标作为自身的位置坐标信息;待定未知节点C根据自身的位置坐标信息和无线传感器编号生成入网信息,待定未知节点C将自身的入网信息发送给上位机;步骤17:执行步骤2;步骤18:上位机判断与待定未知节点C邻近的锚节点为几个:当锚节点为三个时,执行步骤19;当锚节点为两个时,执行步骤20;当锚节点为一个时,执行步骤21;当锚节点为零个时,执行步骤22;步骤19:定义与待定未知节点C邻近的三个锚节点组成定位三角形,上位机建立所述定位三角形数学模型并通过以下方法进行计算得出待定未知节点C的位置坐标:步骤I:取定位三角形的任意一边,并作该边的中线,中线将定位三角形分割成两个小三角形;步骤J:上位机通过对比定位数据包中的信号强弱信息,判断待定未知节点C距离哪一个顶点近,从而判断待定未知节点C处于中线的哪一侧,即待定未知节点C处于哪一个小三角形内,并通过计算得出该小三角的费马点,该费马点的坐标即...

【技术特征摘要】
1.一种改进的无线传感器网络三维定位方法,其特征在于:包括如下步骤:步骤1:建立无线传感器网络,无线传感器网络包括数个无线传感器和上位机,任意两个相邻的无线传感器之间通过无线网络通信,所有无线传感器均通过无线网络与上位机通信;步骤2:所有无线传感器均向上位机发送入网信息,入网信息包括位置坐标信息和无线传感器编号;步骤3:设定任意一个无线传感器为无线传感器A,上位机判断无线传感器A的位置坐标信息是否为空:是,则上位机标记无线传感器A为锚节点,并生成标记信息;否,则上位机标记无线传感器A为未知节点,并生成标记信息;步骤4:上位机将标记信息发送给无线传感器A,无线传感器A通过标记信息获知自身为锚节点或未知节点;步骤5:重复步骤3和步骤4,直到所有无线传感器均获得标记信息;步骤6:上位机记录所有无线传感器的标记信息;步骤7:设定任意一个未知节点为未知节点B,未知节点B向与其邻近的所有无线传感器均发送入网请求,所有接收到入网请求的锚节点均向未知节点B发送自身的入网信息;步骤8:未知节点B将接收到的所有锚节点的入网信息,未知节点B判断入网信息的信号的强弱并生成信号强弱信息,未知节点B将入网信息和信号强弱信息合成处理为定位数据包,并通过无线网络将定位数据包发送给上位机;步骤9:重复步骤7和步骤8,直到所有的未知节点均将自身的定位数据包发送给上位机;步骤10:上位机查询是否有无线传感器被标记为未知节点:是,则执行步骤11;否,则执行步骤26;步骤11:上位机选择任意一个未知节点作为待定未知节点C,并读取待定未知节点C的定位数据包;步骤12:上位机从待定未知节点C的定位数据包中读取并判断与待定未知节点C邻近的锚节点的个数:如锚节点的个数大于或等于四个,则执行步骤13;如锚节点的个数小于四个,则执行步骤18;步骤13:使用VTM-APIT-3D算法对待定未知节点C进行定位,其步骤如下:步骤A:上位机读取待定未知节点C的定位数据包中所有锚节点的入网信息,并根据入网信息中的位置坐标信息建立待定未知节点C周边的锚节点网络数学模型;步骤B:所述锚节点网络数学模型中的任意四个锚节点作为顶点组成一个三棱锥,上位机建立该三棱锥的数学模型,并通过以下方法进行计算:首先上位机通过APIT-3D算法判断所述三棱锥是否包含有待定未知节点C:是,则保留该三棱锥的数学模型信息,并定义该三棱锥为定位三棱锥;否,则舍弃该三棱锥;所述三棱锥的数学模型信息包括组成三棱锥的所有锚节点的入网信息;步骤C:上位机记录保留下来的三棱锥的数学模型信息;步骤D:上位机执行重复步骤B和步骤C,直到找出所有包含待定未知节点C的定位三棱锥;步骤E:首先上位机选择任意一个定位三棱锥,并计算出该定位三棱锥的费马点的坐标,然后上位机通过以下方法进行计算:该定位三棱锥的4个顶点与所述费马点连线后将该定位三棱锥分为了4个区域,每一个区域均设定为一个子三棱锥;通过APIT-3D算法判断哪一个待定未知节点C包含在哪一个子三棱锥中,并定义该子三棱锥为定位子三棱锥,并记录定位子三棱锥的4个顶点的位置坐标信息;步骤F:上位机建立定位子三棱...

【专利技术属性】
技术研发人员:陈勇张欣慧赵学健蔡阳波孙知信徐钊许云龙
申请(专利权)人:南京龙渊微电子科技有限公司南京龙渊众创空间股份有限公司南京邮电大学江苏龙睿物联网科技有限公司淮安龙渊农业科技有限公司
类型:发明
国别省市:江苏,32

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1