一种无线传感器网络中的节点间协作定位方法

文档序号:28745925发布日期:2022-02-07 23:21阅读:56来源:国知局
一种无线传感器网络中的节点间协作定位方法

1.本发明属于无线传感器网络技术领域,具体涉及一种协作定位方法。


背景技术:

2.随着物联网的逐步发展,人们在生活中对位置服务的需求越来越大,如物流管理、路径寻找、广告投放和智能家居等。而物联网与传感器网络(wireless sensor network,wsn)的结合,将有望实现万物互联、万物互通。目前较为流行的wsn定位系统有蓝牙定位系统、蜂窝定位系统、射频识别定位系统和无线局域网(wireless location area network,wlan)定位系统。现有的wsn定位技术可以满足部分场景下用户对定位的需求,但随着wsn节点组网规模和组网密度的增大,wsn定位对wsn节点的剩余能量和计算能力都产生了很大的挑战。针对此问题,本发明专利利用目标区域内节点的剩余能量和其与位置已知节点间的几何关系对wsn节点进行了分簇,基于多维尺度变换(multidimensional scaling,mds)提出了一种wsn中的节点间协作定位方法,其在降低系统能量损耗和计算开销的同时保证了定位精度。


技术实现要素:

3.本发明的目的是提供一种无线传感器网络中的节点间协作定位方法,它通过计算位置未知节点关于各个位置已知节点的归属度对其进行分簇,并在簇内基于节点间距离和位置已知节点位置实现位置未知节点全局坐标的获取,该方法在降低系统能量损耗和计算开销的同时保证了定位精度。
4.本发明所述的一种无线传感器网络中的节点间协作定位方法,包括以下步骤:
5.步骤一、在目标区域(不妨令其为边长为l1的正方形区域)内随机放置m(m≥1,m为整数)个位置已知的wsn节点(即锚节点)和n(n≥1,n为整数)个位置未知的wsn节点(即待定位节点);
6.步骤二、记录待定位节点电池中的剩余能量ei(1≤i≤n,i为整数);
7.步骤三、定义每个锚节点为一个临时簇头,由临时簇头发出广播信号,记录第i个待定位节点处来自第j(1≤j≤m,j为整数)个临时簇头的接收信号强度(received signal strength,rss)为rss
ji

8.步骤四、利用对数传播模型公式rss
ji
=rss
0-10βlog
10
(d
ji
d0),估计第i个待定位节点与第j个临时簇头之间的距离d
ji
,即其中,rss0为参考距离d0处的rss,β为路径衰减指数(在本发明中,令β=2);
9.步骤五、计算第i个待定位节点属于第j簇的归属度p
ji
,即其中,为所有待定位节点的剩余能量均值,为待定位节点i与所有临时
簇头之间的估计距离均值;
10.步骤六、根据归属度对待定位节点进行分簇,将待定位节点归入归属度最高的簇;
11.步骤七、设置阈值dc,当两个及以上临时簇头之间的相互距离均小于dc时,将这些临时簇头及其对应的簇内待定位节点归为同一簇,并选择具有最小簇内均方距离的临时簇头为该簇的簇头;反之,即不存在两个及以上临时簇头之间的相互距离均小于dc时,簇结构不改变,选择此时的临时簇头为各簇的簇头。具体包括以下步骤:
12.步骤七(一)、将节点传输数据长度为l的报文时消耗的能量表示为其中,e
t
为发射单位报文的损耗能量,er为接收单位报文的损耗能量,ε
fs
为自由空间损耗系数,ε
mp
为多径损耗系数,d
t
为多径衰落与自由空间衰落之间的切换阈值(在本发明中,令),d为传输距离;
13.步骤七(二)、设置阈值dc,当存在p(p≥2,p为整数)个临时簇头之间的相互距离均小于dc时,将这些临时簇头及其对应的p个簇内共q(q≥1,q为整数)个待定位节点归入同一簇,并计算这些临时簇头b1(1≤b1≤p)与各待定位节点a1(1≤a1≤q)之间的欧氏距离d
ba
;反之,即不存在两个及以上临时簇头之间的相互距离均小于dc时,簇结构不改变,选择此时的临时簇头为各簇的簇头;
14.步骤七(三)、当存在两个及以上临时簇头之间的相互距离均小于dc时,由于报文长度l一定,e
t
和er为常数且d≤l1,若d
t
<l1,则有d>d
t
,从而e
l
=l(e
t
+er)+l
×
ε
mp
×
d4,可得e
l
正比于d4,并由此计算簇内均方距离为若d
t
≥l1,则有d<d
t
,从而e
l
=l(e
t
+er)+l
×
ε
fs
×
d2,可得e
l
正比于d2,并由此计算簇内均方距离为基于此,选择具有最小簇内均方距离的临时簇头为该簇的簇头;
15.步骤八、利用对数传播模型公式,计算包含mc(mc≥1,mc为整数)个节点的单个簇内不同节点之间的欧式距离e
ij
,得到欧氏距离矩阵e,其中,e中第i行、第j列元素为e
ij

16.步骤九、基于mds计算单个簇内各节点的相对坐标a,其中,锚节点的相对坐标为pa,待定位节点的相对坐标为ga。具体包括以下步骤:
17.步骤九(一)、计算和
18.步骤九(二)、构造内积矩阵m,其第i行、第j列元素为m
ij
,其中,
19.步骤九(三)、对m进行特征值分解,令最大的两个特征值为u和v,且其对应的特征向量分别为p和q,构造对角矩阵特征向量矩阵v=[p q];
[0020]
步骤九(四)、计算降维后的矩阵a={(vλ)
1/2
}
t
,a中每一列表示一个节点的相对
位置坐标,其中,锚节点的相对坐标为pa,待定位节点的相对坐标为ga;
[0021]
步骤十、根据锚节点的相对坐标pa和全局坐标pb,计算锚节点的相对坐标与全局坐标之间的转换关系r和t。具体包括以下步骤:
[0022]
步骤十(一)、令锚节点的相对坐标和全局坐标分别为和计算其对于的质心和其中,1≤r≤b;
[0023]
步骤十(二)、计算协方差矩阵
[0024]
步骤十(三)、对h进行奇异值分解,得到h=usν,其中,u和n为特征向量矩阵,s为奇异值矩阵;
[0025]
步骤十(四)、计算相对坐标与全局坐标之间的旋转关系矩阵r=nu
t

[0026]
步骤十(五)、计算相对坐标与全局坐标之间的平移关系矩阵t=-rca+cb;
[0027]
步骤十一、根据r和t,利用ga计算待定位节点的全局坐标gb,即gb=rga+t。
[0028]
有益效果
[0029]
本发明从待定位节点节点的剩余能量和位置几何关系出发,首先,根据待定位节点节点的剩余能量和到锚节点的距离对所有wsn节点进行分簇;然后,在单个簇中基于rss对各节点间距离进行估计,并利用mds得到节点的相对坐标;最后,基于锚节点的全局坐标和相对坐标推导出坐标系的转换关系,并利用转换关系计算出待定位节点的全局坐标。本发明降低了在大规模wsn组网中进行定位的复杂程度,在降低系统能量损耗和计算开销的同时保证了定位精度。
附图说明
[0030]
图1为本发明流程图;
[0031]
图2为目标区域内所有wsn节点的分簇示意图;
[0032]
图3为测距误差率为20%时真实节点坐标与估计出的全局坐标的位置关系图;
[0033]
图4为估计出的全局坐标平均误差与测距误差率间的关系图。
具体实施方案
[0034]
下面结合附图对本发明作进一步说明:
[0035]
如图1所示的一种无线传感器网络中的节点间协作定位方法,具体包含以下步骤:
[0036]
步骤一、在目标区域(不妨令其为边长为l1的正方形区域)内随机放置m(m≥1,m为整数)个位置已知的wsn节点(即锚节点)和n(n≥1,n为整数)个位置未知的wsn节点(即待定位节点);
[0037]
步骤二、记录待定位节点电池中的剩余能量ei(1≤i≤n,i为整数);
[0038]
步骤三、定义每个锚节点为一个临时簇头,由临时簇头发出广播信号,记录第i个待定位节点处来自第j(1≤j≤m,j为整数)个临时簇头的rss为rss
ji

[0039]
步骤四、利用对数传播模型公式rss
ji
=rss
0-10βlog
10
(d
ji
d0),估计第i个待定位节
点与第j个临时簇头之间的距离d
ji
,即其中,rss0为参考距离d0处的rss,β为路径衰减指数(在本发明中,令β=2);
[0040]
步骤五、计算第i个待定位节点属于第j簇的归属度p
ji
,即其中,为所有待定位节点的剩余能量均值,为待定位节点i与所有临时簇头之间的估计距离均值;
[0041]
步骤六、根据归属度对待定位节点进行分簇,将待定位节点归入归属度最高的簇,图2为目标区域的分簇示意图;
[0042]
步骤七、设置阈值dc,当两个及以上临时簇头之间的相互距离均小于dc时,将这些临时簇头及其对应的簇内待定位节点归为同一簇,并选择具有最小簇内均方距离的临时簇头为该簇的簇头;反之,即不存在两个及以上临时簇头之间的相互距离均小于dc时,簇结构不改变,选择此时的临时簇头为各簇的簇头。具体包括以下步骤:
[0043]
步骤七(一)、将节点传输数据长度为l的报文时消耗的能量表示为其中,e
t
为发射单位报文的损耗能量,er为接收单位报文的损耗能量,ε
fs
为自由空间损耗系数,ε
mp
为多径损耗系数,d
t
为多径衰落与自由空间衰落之间的切换阈值(在本发明中,令),d为传输距离;
[0044]
步骤七(二)、设置阈值dc,当存在p(p≥2,p为整数)个临时簇头之间的相互距离均小于dc时,将这些临时簇头及其对应的p个簇内共q(q≥1,q为整数)个待定位节点归入同一簇,并计算这些临时簇头b1(1≤b1≤p)与各待定位节点a1(1≤a1≤q)之间的欧氏距离d
ba
;反之,即不存在两个及以上临时簇头之间的相互距离均小于dc时,簇结构不改变,选择此时的临时簇头为各簇的簇头;
[0045]
步骤七(三)、当存在两个及以上临时簇头之间的相互距离均小于dc时,由于报文长度l一定,e
t
和er为常数且d≤l1,若d
t
<l1,则有d>d
t
,从而e
l
=l(e
t
+er)+l
×
ε
mp
×
d4,可得e
l
正比于d4,并由此计算簇内均方距离为若d
t
≥l1,则有d<d
t
,从而e
l
=l(e
t
+er)+l
×
ε
fs
×
d2,可得e
l
正比于d2,并由此计算簇内均方距离为
[0046]
步骤七(四)、当存在两个及以上临时簇头之间的相互距离均小于dc时,选择具有最小簇内均方距离的临时簇头为该簇的簇头;反之,选择此时的临时簇头为各簇的簇头;
[0047]
步骤八、利用对数传播模型公式,计算包含mc(mc≥1,mc为整数)个节点的单个簇内不同节点之间的欧式距离e
ij
,得到欧氏距离矩阵e,其中,e中第i行、第j列元素为e
ij

[0048]
步骤九、基于mds计算单个簇内各节点的相对坐标a,其中,锚节点的相对坐标为pa,待定位节点的相对坐标为ga。具体包括以下步骤:
[0049]
步骤九(一)、计算和
[0050]
步骤九(二)、构造内积矩阵m,其第i行、第j列元素为m
ij
,其中,
[0051]
步骤九(三)、对m进行特征值分解,令最大的两个特征值为u和v,且其对应的特征向量分别为p和q,构造对角矩阵特征向量矩阵v=[pq];
[0052]
步骤九(四)、计算降维后的矩阵a={(vλ)
1/2
}
t
,a中每一列表示一个节点的相对位置坐标,其中,锚节点的相对坐标为pa,待定位节点的相对坐标为ga;
[0053]
步骤十、在单个分簇中,基于锚节点的全局位置坐标pa和相对位置坐标pb,推导出相对坐标到全局坐标的坐标转换关系。具体包括以下步骤:
[0054]
步骤十(一)、令锚节点的相对坐标和全局坐标分别为和计算其对应和其中,1≤r≤b;
[0055]
步骤十(二)、计算协方差矩阵
[0056]
步骤十(三)、对h进行奇异值分解,得到h=usν,其中,u和n为特征向量矩阵,s为奇异值矩阵;
[0057]
步骤十(四)、计算相对坐标与全局坐标之间的旋转关系矩阵r=nu
t

[0058]
步骤十(五)、计算相对坐标与全局坐标之间的平移关系矩阵t=-rca+cb,仿真结果如图3、图4所示;
[0059]
步骤十一、根据r和t,利用ga计算待定位节点的全局坐标gb,即gb=rga+t。
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1