随着传感器及RFID应用的普及,无线传感网络WSN在海上信号传输中应用更加广泛。WSN自身为一自适应反馈网络,由部署在不同地理位置的传感器及RFID组成,根据业务逻辑或位置可划分为不同的节点,节点定位是信号传输首要解决的问题。现有的节点定位方法主要有无源定位与有源定位,其中无源定位利用信号的强弱进行计算,有源定位则利用物理测距进行测量。
RSSI是无源节点定位算法,利用信号强度来测量传感节点的三边距离,其算法复杂度低,较易实现[1]。但由于信号在传输过程中受到海上噪声及信道衰减等因素影响,最终接收的信号强度损耗较大,导致定位结果出现偏差。卡尔曼滤波器是一种非线性滤波器,通过对输入输出信号进行评估从而改变系统状态,与RSSI算法相结合可以有效提高定位精度。
本文在分析了无线传感网络节点定位模型基础上,设计了一种卡尔曼滤波节点定位算法,提高了定位精度。
1 RSSI无线传感网络节点定位RSSI算法利用节点发射及接收信号强度的不同与观测描节点进行对比来得到节点的距离,信号强度损耗与路径距离之间关系满足自由损耗及正态分布公式:
${P_r}(d) = {P_t}{(\frac{\lambda }{{4{\rm{\pi }}d}})^n}{G_r}{G_t},$ | (1) |
$P_r(d) = P_r(d_0) - 10\alpha \lg (\frac{d}{{d_0}}) + v。$ | (2) |
式(1)对应自由损耗模型,式(2)对应正态分布模型,式中
通过上述方法,可以得到传感网络各节点与描节点信号传输路径大小,则根据描节点的坐标位置可以计算出目标节点坐标,在未知节点周围设置3个描节点,其位置坐标分别为
$\sqrt {\begin{array}{*{20}{c}} {(x - x_a)^2 + (y - y_a)^2 = d_a}\\ {(x - x_b)^2 + (y - y_b)^2 = d_b}\\ {(x - x_c)^2 + (y - y_c)^2 = d_c} \end{array}}。 $ | (3) |
式(3)得到未知节点初始坐标后,可以利用卡尔曼滤波对节点进行跟踪[3]。
卡尔曼滤波本质是对离散非线性系统进行预测,系统方程为:
$x_{k + 1} = f_k(x_k) + w_k,$ | (4) |
$z_k = h_k(x_k) + v_k。$ | (5) |
式中:k为离散时刻点,
卡尔曼滤波利用
$\left\{ {\begin{aligned} & {\xi _0 = \bar x},\\ & {\xi _i = \bar x + \sqrt {(n + \lambda )P_x} _i,i = 1,2, \cdots n},\\ & {\xi _{i + 1} = \bar x - \sqrt {(n + \lambda )P_x} _i,i = 1 + n,2 + n, \cdots 2n}。 \end{aligned}} \right.$ | (6) |
其中,卡尔曼滤波可以推导出k -1时刻的
卡尔曼离散滤波中的预测模型如图 1所示。
设传感网络节点初始坐标为
$x_{k + 1} = f_k(x_k) + w_k = Ax_k + w_k。$ | (7) |
这里,二维坐标用
对未知节点的位置测量与其扫描点选择有关,传统的方法是直接以节点与描点之间的实测距离为参考量[5],其模型描述如下:
采用三维坐标法,选择3个描节点,与未知节点的路径大小分别为
$\left\{ {\begin{array}{*{20}{c}} {z_k = d_k = h_k(X_k) + v_k = H_kX_k + v_k},\\[8pt] {d_k = \left( {\begin{array}{*{20}{c}} {d_{k1}}\\[8pt] {d_{k2}}\\[8pt] {d_{k3}} \end{array}} \right) = \left( {\begin{array}{*{20}{c}} {\sqrt {(x_k - x_{n1})^2 + (y_k - y_{n1})^2} }\\[8pt] {\sqrt {(x_k - x_{n2})^2 + (y_k - y_{n2})^2} }\\[8pt] {\sqrt {(x_k - x_{n3})^2 + (y_k - y_{n3})^2} } \end{array}} \right)}。 \end{array}} \right.$ | (8) |
式中:参考3个描节点的位置坐标分别为
$H_k = \frac{{\partial d_k}}{{\partial (x_k,y_k)}} = \left( {\begin{array}{*{20}{c}} {\displaystyle\frac{{x_k - x_{n1}}}{{d_{k1}}}{\rm{ }}\frac{{y_k - y_{n1}}}{{d_{k1}}}}\\[8pt] {\displaystyle\frac{{x_k - x_{n2}}}{{d_{k2}}}{\rm{ }}\frac{{y_k - y_{n2}}}{{d_{k2}}}}\\[8pt] {\displaystyle\frac{{x_k - x_{n3}}}{{d_{k3}}}{\rm{ }}\frac{{y_k - y_{n3}}}{{d_{k3}}}} \end{array}} \right)。$ | (9) |
由于海上地形及测量环境的复杂性,以实测距离为参考量的节点定位难度较大,本文以接收到信号的强度对比其功率损耗模型(如式(2))为观测值,可以有效抑制海上信号损耗,提高定位精度,基于此方法的系统状态方程为:
$\left\{ {\begin{array}{*{20}{c}} {z_k = P_r(d_k) = h_k(X_k) + v_k},\\[8pt] {P_r(d_k) \!\!= \!\!\left( \!\!{\begin{array}{*{20}{c}} {P_r(d_{k1})}\\[8pt] {P_r(d_{k2})}\\[8pt] {P_r(d_{k3})} \end{array}}\!\! \right) \!\!= \!\!\left(\!\! {\begin{array}{*{20}{c}} {P_r(d_0) \!-\! 10a\lg (\displaystyle\frac{{d_{k1}}}{{d_0}}) \!+\! v}\\[8pt] {P_r(d_0) \!-\! 10a\lg (\displaystyle\frac{{d_{k2}}}{{d_0}}) \!+\! v}\\[8pt] {P_r(d_0)\! -\! 10a\lg (\displaystyle\frac{{d_{k3}}}{{d_0}}) \!+\! v} \end{array}}\!\! \right)。} \end{array}} \right.$ | (10) |
式中:
$H_k = \frac{{\partial P_r(d_k)}}{{\partial (x_k,y_k)}} = \frac{{ - 10a}}{{\ln 10}}\left( {\begin{aligned} {\frac{{x_k - x_{n1}}}{{d_{k1}^2}}{\rm{ }}\frac{{y_k - y_{n1}}}{{d_{k1}^2}}}\\ {\frac{{x_k - x_{n2}}}{{d_{k2}^2}}{\rm{ }}\frac{{y_k - y_{n2}}}{{d_{k2}^2}}}\\ {\frac{{x_k - x_{n3}}}{{d_{k3}^2}}{\rm{ }}\frac{{y_k - y_{n3}}}{{d_{k3}^2}}} \end{aligned}} \right)。$ | (11) |
本文最后对传统的基于RSSI的无线传感网络节点定位与基于卡尔曼滤波的算法进行了仿真,误差公式为:
$error = \sqrt {(x - x_k)^2 + (y - y_k)^2}。 $ | (12) |
其中,
最后给出2种算法的平均误差结果与描点个数选择的关系,如表 1所示。
本文重点分析了以信号强度观测量的传感网络节点定位模型,并结合卡尔曼滤波器对定位结果进行迭代,有效提高了计算精度。
[1] | 王焱, 单欣欣, 姜伟. 无线传感网络中移动节点定位技术研究[J]. 传感技术学报, 2011 (9): 42–45. |
[2] | 赵青杉, 胡玉兰. 基于PSO的无线传感网络节点定位算法[J]. 舰船科学技术, 2012 (5): 21–24. |
[3] | JULIER S J. A new approach for filtering nonlinear system[C]//The Proceedings of the American Conference. Piscataway:IEEE Press, 1995:1628-1632. |
[4] | KIM K H, KIM D Y. Group storage methods at container port terminals[J]. MH-2. The Materials Handling Engineering Division, 75th Anniversary Commemorative Volume, 1994 : 15–20. |
[5] | RAPPAPORT T S. Wireless communications principles and practice[M].2nd ed. New Jersey: Prentice Hall, 1996. |