Dv-hop定位算法原理与仿真实验
一、Dv-hop定位算法基本原理
未知节点获取自身坐标的方式与网络中最小跳数和平均跳距有关,定位的具体步骤如下:
(1)获取最小跳数
网络中的锚节点向周围的其他节点广播信息,消息是采用逐跳的方式进行传播,每个节点都维护一个信息表,并统计离开锚节点的最小跳数。广播完之后,网络中的所有节点都保存了到每个锚节点的最小跳数信息。
(2)估算距离
未知节点可以通过第一步中获得的最小跳数以及网络中已知的锚节点坐标来估计一个跳的平均距离,如式(2-10)所示。
式中: (x_i,y_i ),(x_j,y_j ) 代表锚节点 i 和 j 的坐标, h_i 为锚节点 i 与 j 之间的最小跳数, 平均跳距用 HopSize表示。再通过式(2-11)就可以估算出末知节点 o 与锚节点 i之间的距离。
(3)计算末知节点的自身位置
采用极大似然法计算未知节点的坐标。
如图2.6所示,经过第1和第2阶段,能够计算出信标节点L1 与L2、L3 之间的距离和跳数。信标节点L2 计算得到校正值(即每跳平均距离)为(40+75)/ (2+5)=16.42.假设未知节点A 从L2 获得校正值,则它与3 个信标节点之间的距离分别为L1: 3 ×1