当前位置:首页 期刊杂志

基于BP神经网络的LQI测距研究

时间:2024-08-31

赵 罡,盛 林,王 军

(中电海康集团有限公司,浙江 杭州,310012)

0 引言

无线传感网络(Wireless Senor Network,WSN)在很多领域得到迅速的应用和发展,例如环境监测、火灾预警以及其他环境和安全保护领域[1]。其中,接收数据节点的位置信息是检测活动的重要信息之一,确定事件发生的位置或获取消息的节点位置能够使无线传感网络的目的性更强,工作效率更高。

如今各种定位方法和实施方案层出不穷,归结起来可分为测距和非测距两大类。其中基于测距方法的精度较高,使得该方法具有较为广泛的应用。同时,测距精度会直接影响最终的定位结果,基于接收信号强度值 (Received Signal Strength Indicator,RSSI)的测距技术提供了最方便的测距策略,在无线传感器网络定位技术中较常采用。在一些基于IEEE 802.15.4标准的芯片中,还提供了在一定范围内较RSSI更有优势的参数指标:链路质量指示(Link Quality Indicator,LQI)[2]。

本文对LQI和距离之间的关系进行了研究,先对LQI进行预处理,再将处理后的LQI值输入BP神经网络得到估计的距离。最后使用CC2530 Zig-Bee模块搭建平台进行测距验证,取得了较好的测距精度。

1 链路质量指示LQI研究

1.1 LQI概述

LQI值表示接收数据帧的能量与质量,其大小基于信号强度以及检测到的信噪比(Signal Noise Ratio,SNR)。链路质量指示在物理层产生,由MAC层计算,为网络层或应用层提供数据帧接收时的信号强度和质量信息[3]。LQI值可直接在ZigBee收发模块的接收数据帧中获取,及时反映接收信号强度的变化和信道所受干扰的变化。LQI的动态范围为0~255,比RSSI的范围区间更大,可提供较高的分辨率,因此可以使用链路质量指示LQI值来计算收发节点间的距离。

1.2 LQI波动性研究

传感器节点在使用过程中,会受到环境中不同因素的干扰,也存在自身硬件的差异性影响,在不同环境下,干扰也不同[4]。这些可变的因素必然导致LQI值的波动性,本文随机选择若干CC2530 ZigBee模块进行实验,分析LQI值对相关因素变化的敏感度,共设置3组实验,分别为:固定距离节点、不同功率和不同节点的LQI值实验。

(1)固定距离节点的LQI值波动性实验

对于同一对节点,在不同固定距离处不同时刻多次测得的LQI值波动趋势并不一致。实验在室外空旷环境中随机选择一对ZigBee节点,分别在3m和6m处连续测量100个数据,发射功率5dBm,天线增益3dB,节点距地面1m左右,结果如图1所示。由图1可知,LQI值在固定位置上基本稳定在一个值,偶尔出现波动的情况。节点间距2m时,LQI值基本稳定在151左右,平均波动幅度为1.15;节点间距4m时,LQI值基本稳定在125左右,平均波动幅度为1.41。

(2)不同功率的LQI值实验

图1 相同节点相距2m和4m时LQI值波动情况

实验随机选择一对ZigBee节点,设置5dBm、8dBm和11dBm三种不同发射功率进行测试,天线增益3dB,节点距地面1m左右,盲节点和锚节点每隔0.5m测量一次,每个位置收集30组数据,取均值处理,最远测到10m处。结果如图2所示。由结果可知,设置的发射功率越大,LQI值也越大;同一个节点,在不同功率下的衰减曲线变化相近。

图2 相同节点在3种功率下的LQI值变化情况

(3)不同节点的LQI值实验

针对不同节点情况,实验随机设置4对节点测试,发射功率5dBm,天线增益3dB,节点距地面1m左右,盲节点和锚节点每隔0.25m测量一次,每个位置收集30组数据,取均值处理,最远测到10m处,结果如图3所示。由图3可知,LQI测量值与接收机的灵敏度有关,不同接收机的效果存在差异。这样的结果是由于无线传输单元间的材料、阻抗匹配、硬件物理电气特性不一致导致的,这些都会影响接收机的灵敏度。

图3 不同节点时LQI值变化情况

经过分析,LQI和收发节点之间的距离确实存在一定的变化关系,但LQI受到环境因素和节点自身的影响产生波动。另外,虽然LQI和信号传输距离呈现出较为明显的衰减变化趋势,但并非一条平滑的曲线,这也表明了利用LQI进行测距和定位,必然会存在一定程度的误差,因此需要对LQI值进行预处理才能用于测距和定位。

2 LQI值预处理和基于BP神经网络的距离计算方法

2.1 高斯滤波预处理模型

一个接收节点在静态测量时会采集到多个LQI值,其中必然存在着误差较大的数据。通过高斯滤波可以选取高概率发生区的LQI值,然后以算术平均值作为滤波输出[5]。这种做法减少了一些小概率的干扰事件对整体测量的影响,增强了测距的准确性。

具体处理方法如下:将节点在同一位置采集到的LQI值存入相应数组,再按式(1)和(2)求出均值和方差。

式中:N为采集到的LQI值个数,LQIi为第i个LQI值。则其高斯概率密度分布函数[6]为:

则区间(μ-σ≤LQIi≤μ+σ)概率为:

P(μ-σ≤LQIi≤μ+σ)=Φ(1)-Φ(-1)=0.6826

选择该区间即意味着选择了发生概率0.6826范围内的LQI值,将高斯滤波处理后的数据值代入式(5)得到的算术平均值即为优化的LQI值。

式中,K为高斯滤波筛选后的LQI个数,LQIiG为第i个筛选的LQI值。

高斯滤波解决了小概率的扰动和稳定性差等问题,但对于室内环境中存在的墙壁反射、障碍物遮挡等长时间干扰问题,处理效果有所下降。

2.2 基于BP神经网络的距离计算

BP神经网络是一种按误差逆向传播训练的前馈网络,具有多层感知器的神经网络结构。该结构不仅含有输入层节点和输出层节点,还有一个或者多个隐含层节点[7]。BP神经网络能学习和存储大量的输入和输出映射模式,无需事前描述这种映射的数学关系。它的学习规则是使用梯度下降法,通过反向传播来不断调整网络的权值和阈值,使网络的误差平方和最小。

BP神经网络算法使数据处理结果精度的提升会随着隐含层层数的增加而略有提高,但会使网络复杂化,从而增加网络的训练时间。精度的提高实际上也可以通过增加隐含层神经元的数目来获得,其效果更容易观察和掌握,所以应优先考虑[8]。为了使误差尽可能小,初始权重和偏置需要合理选择,如果太大就容易陷入饱和区,导致停顿。一般选择均匀分布的小数,介于(-1,1)之间。学习速率的选取同样重要,大了可能导致系统不稳定,小了会导致训练周期过长、收敛慢,达不到要求的误差。采用变化的学习速率方案,让学习速率随学习进展而逐步减小,可获得良好的效果。

结合本文测距需求,网络的输入为LQI值,定义BP神经网络用于训练求解距离,本文的BP神经网络结构模型如图4所示。

图4 BP神经网络结构

BP神经网络的训练过程如下:

(1)将经过高斯滤波所得符合条件的LQI值进行归一化处理;

(2)建立网络模型,初始化输入层、隐含层、输出层节点数;初始化权值;初始化输入和输出层阈值。

(3)输入LQI样本值和对应的期望输出值,计算各层输出值和各层学习误差。

(4)判断误差是否满足精度要求,若不满足,则误差反向传播,修正权值和阈值,直到满足学习要求为止。

图5 测距算法总流程

测距算法的最终流程如图5所示。

3 实验与分析

3.1 LQI数据处理

为验证高斯滤波的有效性,本文在Matlab 2012环境中进行仿真实验。设置发射功率5dBm,天线增益3dB,盲节点与锚节点每隔0.25m测量一次,每个位置接收50组LQI值,最远测到10m处。最终采用均值滤波[9]、中值滤波[9]、高斯滤波三种滤波方法优化,结果如图6所示。

图6 三种滤波方法结果对比

a)滤波后数据对比 b)LQI滤波绝对误差比较

由图6 a)的滤波后效果和图6b)LQI值滤波后的绝对误差对比可看出,对于LQI波动较大的情况,中值滤波方法和均值滤波效果较差,高斯滤波方法处理能将误差降到最小,因此可以用于后面测距实验筛选LQI数据。

3.2 BP神经网络测距实验

为了让BP神经网络训练结果达到最优,需要确定隐含层节点个数、传输函数和训练函数。传输函数选择常用的双极S型函数,该函数光滑性好,收敛速度块[10]。根据LQI与距离d之间一一对应的关系,输入和输出层只有一个神经元,隐含层为一确定训练函数,设置隐含层节点数为25,输入高斯滤波处理后的LQI数据,不同训练函数的测试结果如图7所示。

图7 不同训练函数的训练结果a)trainlm 函数 b)trainrp 函数c)trainscg 函数 d)trainoss函数

表1为不同函数训练测距误差的均方差,由表可知trainlm函数是较佳的训练函数,并且该算法在不增加算法复杂性的前提下,可以提高收敛速度。

表1 不同训练函数的测试误差均方差

确定隐含层节点最优的个数。设置训练函数为trainlm时,节点数分别为10、20、30和40四种情况,测试结果如图8所示。

图8 隐含层不同节点数的训练结果a)10 个节点 b)20 个节点c)30 个节点 d)40 个节点

测距误差的均方差值如表2所示。由结果可知隐含层为20个节点时,得到的结果较佳。最终确定BP神经网络模型隐含层为20个神经元节点,训练函数为trainlm函数。

表2 不同隐含层节点数时的误差均方差

为验证模型的有效性,将本文算法与文献[11]中提出的曲线拟合模型进行对比。该文献结合LQI和距离关系,建立经验模型,提出两种不同的函数模型进行拟合。本文使用基于CC2530的ZigBee平台所得出的实验数据对两种模型进行训练,得到公式如下所示:

(1)自由空间的无线电传播路径损耗模型:

(2)指数模型:

先用高斯滤波模型对一组LQI值进行滤波预处理,得到的结果分别输入BP神经网络和三种函数拟合模型进行训练,测距误差对比如图9所示。

图9 三种模型的测试情况a)测距误差 b)测距误差百分比

自由空间损耗模型的测距误差均方差为3.136,指数模型的测距误差均方差为0.722,而BP神经网络训练的测距误差均方差为0.629。由图中也可看出由BP神经网络得到的计算距离误差可控制在2m以内,并且大部分误差都在1m以内,表明基于BP神经网络的LQI测距精度得到提高。

4 结语

本文研究了无线传感网络中的LQI和距离之间的关系。通过分析固定距离、不同功率以及不同节点的LQI随距离变化关系,表明基于LQI值的无线测距是切实可行的,可以为基于LQI值的室内定位提供参考。为了提高测距精度,本文使用BP神经网络对LQI测距进行估计,并对比了传统的函数拟合模型。最后基于CC2530的ZigBee平台进行测距实验,结果表明基于BP神经网络的LQI测距在不增加定位硬件成本的基础上提高了测距精度和稳定性。

免责声明

我们致力于保护作者版权,注重分享,被刊用文章因无法核实真实出处,未能及时与作者取得联系,或有版权异议的,请联系管理员,我们会立即处理! 部分文章是来自各大过期杂志,内容仅供学习参考,不准确地方联系删除处理!