无线传感器网络中基于RSSI的节点的距离预测

来源:华强电子网 作者:—— 时间:2012-11-23 11:25

 

2.2 RSSI值滤波处理

       实验获取的RSSI值与距离的关系曲线还不够平滑,为了使样本的质量更高、训练效果更好,先对RSSI值进行滤波处理,分别进行限幅滤波处理、递推平均滤波处理和限幅平均滤波处理。图4为3种滤波方式的比较。

d.jpg


       由图4可以得出,限幅平均滤波的效果最好,因此以限幅滤波后的数据作为训练样本。

3 BP网络模型的建立

       以限幅滤波后的数据作为训练样本。以RSSI作为输入,以距离作为输出,一般的预测问题通过单隐层的BP网络实现,这里也是单隐层。

       (1)数据归一化处理

       为了在Matlab中计算方便,需要对数据进行归一化处理。这里根据现有的数据情况,分别对输入和输出量进行归一化处理。归一化的代码如下:
       [pn,minp,maxp,tn,mint,maxt]=premnmx(p,t),其中p为输入变量,t为输出变量。

        (2)BP网络训练

       网络中间层的神经元传递函数采用S型的正切函数logsig,输出层神经元传递函数采用线性函数purelin,采用traingdx函数进行训练,当训练141次后达到0.01的误差要求。

4 模型预测结果及与经验公式值的比较

       为了验证测试结果的可靠性,根据网络训练的结果,把测试结果与真实值进行对比。为了突出该方法的优越性,与经验公式计算出来的距离值进行比较。表1为模型预测值、经验公式值与真实值的比较。

e.jpg


       由表1可以得出,由BP神经网络模型预测的距离值与经验公式计算出来的距离值相比,整体误差较小。经验公式计算的距离误差最大为2.7351m,最小误差为0.5338m,而由模型预测的距离误差最大为0.7976m,最小误差为0.0232m,测距的精度明显提高了很多。

5 结论

       BP神经网络具有很强的自学习、自组织及自适应能力,具有高度非线性函数映射功能,通过对样本的预处理,可以提高训练结果的精度。因此,样本的好坏直接影响训练结果。节点RSSI值的随机性较大,会随着环境及其他干扰的影响发生突变。因此先对RSSI值进行滤波处理,滤掉突变的数据再进行网络的训练,预测结果就能达到较理想的水平。这适用于不同的场合,提高了测距精度,从而进行精确定位。

资讯排行榜

  • 每日排行
  • 每周排行
  • 每月排行

华强资讯微信号

关注方法:
· 使用微信扫一扫二维码
· 搜索微信号:华强微电子