无线传感器网络中基于卡尔曼滤波的数据融合方法

文档序号:7902296阅读:246来源:国知局
专利名称:无线传感器网络中基于卡尔曼滤波的数据融合方法
技术领域
本发明涉及一种无线传感器网络的数据融合方法,特别是涉及一种无线传感器网络中基于卡尔曼滤波的数据融合方法。
背景技术
无线传感器网络(WSNs)是一种新型的测控网络,它综合了传感器技术、计算机网络和无线通信等技术,具有广阔的应用前景,被认为是21世纪最重要的技术之一。由于传感器节点存在电池能量、通信带宽、存储和处理能力上的局限,如果在采集信息的过程中采用各个节点采集的数据单独传送到汇聚节点的方法是不合适的。有研究发现节点进行数据存储和计算所消耗的能量与数据传送相比要小的多,所以传感器网络在采集数据的过程中使用数据融合技术,将数据进行中间处理,组合出更有效、更符合用户需求的数据,可以有效节省通信带宽和能量,提高信息收集的效率,对无线传感器网络的发展具有推进性意义。无线传感器网络由部署在监测区域内的大量传感器节点组成,传感器节点之间通过无线通信的方式形成一个多跳的自组织网络系统。节点通过各类集成化的微型传感器实时地感知并采集被检测对象的相关信息,最终这些信息通过多跳路由以无线传输的方式返回用户终端。数据融合的基本思想就是去除传感器节点的冗余信息,减少网络中的数据传输量,从而达到节省能量,延长网络寿命的目的。无线传感网络中,用户对采样数据的精确性要求不高时,时域数据融合方法是一种比较有效的数据融合技术。时域数据融合方法对应每一个采样节点都存在两个完全相同的预测器,一个安置在传感器网络中的采样节点上,另一个安置在基站,预测器通过分析历史数据序列预测当前的数据。当节点的预测数据与节点感知的数据差值不超过预先设定的阈值时,采样节点就不会将感知的数据传送到基站,因为基站有一个完全相同的预测器,基站的预测值和采样节点的预测值是一样的,这样基站就可以采用预测值作为感知数据显示给用户。反之,如果节点的预测数据与节点感知的数据差值超过阈值,采样节点就将感知的数据传给基站。时域数据融合模型通过成功的预测减少了数据的传输,通常用户的容忍限度越大,时域数据融合模型的省能效果越好。时域数据融合模型中,在传感器节点处,包括如下步骤
1)、在一个时间周期内,传感器节点首先根据时间序列模型以及本节点所缓存的前N 个周期的历史数据,计算出本周期的预测数据;N的数值由所采用时间序列模型决定;
2)、然后计算该传感器节点本周期的实测数据与预测数据的差值,将该差值作为预测误差;
3)、当预测误差不大于所述阈值时,所述传感器节点不向服务器传输数据,当预测误差大于所述阈值时,所述传感器节点向服务器发送本周期的实测数据。在基站处,包括如下步骤
4)、在与所述步骤1相应的一个时间周期内,服务器判断是否收到传感器节点发送的实测数据;如果判断为是,则将该实测数据发送给用户端,如果判断为否,则进入步骤5。
5)、服务器根据步骤1中的所述时间序列模型以及本地所缓存的相应传感器的前 N个周期的历史数据计算出该传感器本周期的预测数据,并将所述预测数据发送给用户端。 所述的阈值由用户设定,并根据用户需求可调。在无线传感网络中,数据融合效果的好坏直接影响到传感器节点中电池的更换周期,进而影响了整个传感器网络的使用寿命。采取一种有效的数据融合方法是一个非常有意义的问题,现有的技术主要通过如下方法
1)神经网络。神经网络具有大规模并行处理能力、自学习能力和自适应能力,但是神经网络的学习速度很慢,需要大量的数据进行知识获取的训练,并且有可能经过长时间的训练还是无法得到一个稳定收敛的状态。如果训练集没选好不能覆盖整个数据集最后得到的神经网络模型还可能产生错误的结果。2)时域模型。时域模型可以大大减少网络中的数据传输量,但是时域模型没有考虑外在的不稳定因素带来的误差和数据抖动。如果采用较小的误差阈值,数据抖动就会造成采样数据的连续传输,从而降低了数据融合的有效性。

发明内容
为了克服上述现有技术存在的缺陷,本发明提供一种无线传感器网络中基于卡尔曼滤波的数据融合方法,该方法既能保证数据精度,又能有效降低网络中的能量消耗,并且方便易行,从而切实保证无线传感器网络的生存期和用户对精确数据的需求。为实现上述目的,本发明提供一种无线传感器网络中基于卡尔曼滤波的数据融合方法,具体为在采样节点采集数据之后到传输数据之前加入一个数据过滤过程,节点采集到数据后,由于传感器本身的不稳定因素和环境的干扰,该数据是含有噪声的,将该数据通过卡尔曼滤波器可以有效去除噪声,去除噪声后的数据再通过数据融合模型进行处理,这样新的数据融合模型可以更加准确的预测数据。在无线传感器网络中,由于环境干扰或者传感器节点本身的问题,可能会产生异常的数据。上述的时域模型无法去除异常数据的干扰,本发明使用卡尔曼滤波器就可以获得更加精准的数据。卡尔曼滤波器是一种随机的递归的数据过滤算法,通过对过去数据的递归计算,对当前采样数据得到一个预测值,将预测值与采样数据综合考虑计算,得到一个平滑变化的数值。这个过程的关键点是所采样的数据是平滑变化的,这样使用卡尔曼滤波器就去除了不稳定因素带来的数据抖动。本发明使用上述数据融合方法,用户可以得到比较精准的采样数据,并且能有效降低网络中的能量消耗,从而延长无线传感器网络的生存期。本发明上述方法具体步骤为
首先,在传感器节点端和基站端选择相同的时间序列预测模型和误差阈值,以便基站可以预测传感器端采集的数据从而减少数据传输。然后,在传感器节点端和基站端的工作分别为 所述传感器节点端工作包括如下步骤
步骤1、为了使用卡尔曼滤波器对传感器采集数据进行处理,需要设定过程噪声和测量噪声的协方差,分别用Q和R表示。步骤2、用设定的Q和R构造出卡尔曼滤波器模型的递归公式。
步骤3、在一个时间周期内,将传感器采集的实测数据通过卡尔曼滤波器得到剔除噪声的实际数据。并且根据时间序列模型以及本节点所缓存的前N个周期的历史数据,计算出本周期的预测数据;N的数值由所采用时间序列模型决定。步骤4、计算该传感器节点本周期的实际数据与预测数据的差值,将该差值作为预测误差。步骤5、当预测误差不大于预先设定的误差阈值时,所述传感器节点不向服务器传输数据,当预测误差大于误差阈值时,所述传感器节点向服务器发送本周期的实际数据。所述基站端工作包括如下步骤
步骤6、在与所述步骤3相应的一个时间周期内,服务器判断是否收到传感器节点发送的实际数据;如果判断为是,则将该实际数据发送给用户端,如果判断为否,则进入下一步。步骤7、服务器根据时间序列模型以及本地所缓存的相应传感器的前N个周期的历史数据计算出该传感器本周期的预测数据,并将所述预测数据发送给用户端。本发明的有益效果用户可以得到比较精准的采样数据,并且能有效降低网络中的能量消耗,从而延长无线传感器网络的生存期;不受传感器本身质量和环境影响,不论传感器的精度如何都能在低耗能的情况下准确的获得采样数据。


图1为本发明实施例中采用的无线传感器网络系统的体系结构图。图2为本发明实施例中采用的系统原理简化图。图3为本发明实施例使用融合算法后节点的发包数量比较图。图4为本发明实施例应用于朴素时域融合算法的有效性比较图。图5为本发明实施例应用于朴素时域融合算法中噪声处理后的数据比较图。图6为本发明实施例应用于自回归预测时域融合算法的有效性比较图。图7为本发明实施例应用于自回归预测时域融合算法中噪声处理后的数据比较图。图8为本发明实施例应用于移动平均时域融合算法的有效性比较图。图9为本发明实施例应用于移动平均时域融合算法中噪声处理后的数据比较图。
具体实施例方式
为了使本发明的技术手段、创作特征与达成目的易于明白理解,以下结合具体实施例进一步阐述本发明。以TinyOS系统作为平台,Telosb节点作为采样节点所进行一系列的实验表明,该数据融合模型的确可以有效的对传感器网络的采样数据进行融合,提高了网络的生存期。图1为本发明采用的无线传感器网络系统的体系结构。无线传感器网络系统由三个层次组成无线传感器网络、服务器以及客户端。无线传感器网络负责信息获取,网络中的节点周期性地采集数据,通过网关将数据传输到服务器。服务器存储无线传感器网络获取的相关信息,向本地用户以及远程用户提供相应的服务。本地用户可以通过hternet访问服务器。本实施例采用的是当前最流行TinyOS系统。TinyOS是一个开源的嵌入式操作系统,它是由加州大学的伯利克分校开发出来的,主要应用于无线传感器网络方面。它是基于一种组件(Component — Based)的架构方式,使得能够快速实现各种应用。TinyOS的程序采用的是模块化设计,所以它的程序核心往往都很小(一般来说核心代码和数据大概在400 Bytes左右),能够突破传感器存储资源少的限制,这能够让TinyOS很有效的运行在无线传感器网络上并去执行相应的管理工作等。TinyOS本身提供了一系列的组件,可以很简单方便的编制程序,用来获取和处理传感器的数据并通过无线电来传输信息。本实施例采用了六个Telosb节点,其中一个作为基站接收端与电脑相连,另外五个节点作为采样节点均勻分布于房间。整个传感器网络采用树形结构,五个采样节点将采集到的数据经过数据融合后传到基站节点,用户通过基站对整个房间的温度和湿度进行监控。图2为本实施例中采用的系统原理简化图,最初采样节点采集的数据是带噪声的数据,每个节点将收集到的数据经过一个卡尔曼滤波器F处理,得到平滑的无噪数据,每个节点通过预测模型得到预测数据,如果采样数据与预测数据的差小于阈值,则该节点不传输数据,基站直接把预测数据显示给用户,反之则将经过卡尔曼滤波器处理的平滑数据传
给基站。下面主要介绍一下卡尔曼滤波器
简单来说,卡尔曼滤波器是一个最优化自回归数据处理算法(optimal recursive data processing algorithm)。对于解决很大部分的问题,它是最优,效率最高甚至是最有用的。它的广泛应用已经超过30年,包括机器人导航,控制,传感器数据融合甚至在军事方面的雷达系统以及导弹追踪等等。近年来更被应用于计算机图像处理,例如头脸识别,图像分割,图像边缘检测等等。首先,先要引入一个离散控制过程的系统。该系统可用一个线性随机微分方程 (Linear Stochastic Difference equation)来描述
X (k) =A X(k-1)+B U(k)+ff(k) 再加上系统的测量值 Z (k) =H X(k)+V(k)
上两式子中,X(k)是k时刻的系统状态,U(k)是k时刻对系统的控制量。A和B是系统参数,对于多模型系统,它们为矩阵。Z(k)是k时刻的测量值,H是测量系统的参数,对于多测量系统,H为矩阵。W(k)和V(k)分别表示过程和测量的噪声。它们被假设成高斯白噪声(White Gaussian Noise),它们的协方差分别是Q,R (这里假设它们不随系统状态变化而变化)。对于满足上面的条件(线性随机微分系统,过程和测量都是高斯白噪声),卡尔曼滤波器是最优的信息处理器。下面用它们结合它们的协方差来估算系统的最优化输出。首先要利用系统的过程模型,来预测下一状态的系统。假设现在的系统状态是k, 根据系统的模型,可以基于系统的上一状态而预测出现在状态
X (k |k-l) =A X(k-l|k"l)+B U(k) .........·· (1)
式(1)中,x(k|k-l)是利用上一状态预测的结果,x(k-l lk-1)是上一状态最优的结果, U(k)为现在状态的控制量,如果没有控制量,它可以为0。到现在为止,系统结果已经更新了,可是,对应于X(k|k-1)的协方差还没更新。用 P表示协方差P (k |k-l) =A P(k-l|k-l) A,+Q ......... (2)
式(2)中,P(k|k-1)是X(k|k-1)对应的协方差,P(k-l|k-l)是X(k-l|k-l)对应的协方差,A’表示A的转置矩阵,Q是系统过程的协方差。式子1,2就是卡尔曼滤波器5个公式当中的前两个,也就是对系统的预测。现在有了现在状态的预测结果,然后再收集现在状态的测量值。结合预测值和测量值,可以得到现在状态(k)的最优化估算值X (k |k)
X(k|k)= X(klk-1)+Kg(k) (Z(k)-H X(kIk-I)) ......... (3)
其中Kg为卡尔曼增益(Kalman Gain)
Kg (k)= P (k |k-l) H,/ (H P (k |k-l) H,+ R) ......... (4)
到现在为止,已经得到了 k状态下最优的估算值X(k|k)。但是为了要另卡尔曼滤波器不断的运行下去直到系统过程结束,还要更新k状态下X(k|k)的协方差 P (k I k) = (I-Kg(k) H) P (k |k-l) ......... (5)
其中I为1的矩阵,对于单模型单测量,1=1。当系统进入k+Ι状态时,P (k Ik)就是式子O)的P(k-I|k-1)。这样,算法就可以自回归的运算下去。本发明通过实验平台监测M小时的湿度变化,加入卡尔曼滤波的时域模型与纯时域模型数据融合方法比较结果如下
如图3、图4、图5所示,图中的虚线是不使用任何数据融合算法M小时累计发包的数量,点化线是使用朴素时域融合算法后累计发包的数量,实线是将时域模型和卡尔曼滤波器综合使用后的累计发包数量。由图3可见,使用融合算法后节点的发包数量会大大减少。图4是两种数据融合算法有效性的比较,24小时中使用时域融合算法总共发了近 1200个数据包,而经过卡尔曼滤波算法处理后只发送了近600个数据包,可见经过卡尔曼滤波处理可以大规模降低发包数量。图5是进行了噪声处理后的数据,假设每个包有1 % 的概率发生[-10,10]的偏差,使用时域融合算法后要发大约1300个数据包,而经过卡尔曼滤波处理后只发送800个数据包。可见经过卡尔曼滤波器处理后的数据发送量得到有效减少,提高了数据融合的有效性,确实降低了网络中的能量消耗。本发明还使用了其他数据序列预测方法构造时域模型,加入卡尔曼滤波器处理后同样得到了理想的结果,下面分别是使用一阶自回归预测方法和移动平均预测方法得到的结果。图6、图7是使用自回归预测方法的时域融合模型和卡尔曼滤波器综合使用的效果图。由图6可以看出在自回归预测的时域融合模型中加入卡尔曼滤波处理可以减少近1 半的发包数量;由图7可以发现在有噪声干扰的情况下加入卡尔曼滤波器也可以得到很好的效果,发包数量由1500降到了 1000左右。图8、图9是使用移动平均预测方法的时域融合模型和卡尔曼滤波器综合使用的效果图。也取得了很好的效果,可见不管选择怎样的预测模型,加入卡尔曼滤波进行预处理后都可以明显降低数据的发送。本发明用卡尔曼滤波器处理湿度数据只是用来例证,卡尔曼滤波数据融合的有效性,但并不拘泥于湿度数据。本行业的技术人员应该了解,本发明不受上述实施例的限制, 上述实施例和说明书中描述的只是说明本发明的原理,在不脱离本发明精神和范围的前提下本发明还会有各种变化和改进,这些变化和改进都落入要求保护的本发明范围内。本发明要求保护范围由所附的权利要求书及其等同物界定。
权利要求
1.一种无线传感器网络中基于卡尔曼滤波的数据融合方法,其特征在于该方法在采样节点采集数据之后到传输数据之前增加一个数据过滤过程,节点采集到数据后,该数据是含有噪声的,将该数据通过卡尔曼滤波器去除噪声,去除噪声后的数据再通过数据融合模型进行处理。
2.根据权利要求1所述的无线传感器网络中基于卡尔曼滤波的数据融合方法,其特征在于包括如下步骤首先,在传感器节点端和基站端选择相同的时间序列预测模型和误差阈值,以便基站能预测传感器端采集的数据;然后,在传感器节点端和基站端分别工作;其中 所述传感器节点端工作包括如下步骤步骤1、设定过程噪声和测量噪声的协方差,分别用Q和R表示,用于使用卡尔曼滤波器对传感器采集数据进行处理;步骤2、用设定的Q和R构造出卡尔曼滤波器模型的递归公式; 步骤3、在一个时间周期内,将传感器采集的实测数据通过卡尔曼滤波器得到剔除噪声的实际数据,并且根据时间序列模型以及本节点所缓存的前N个周期的历史数据,计算出本周期的预测数据;N的数值由所采用时间序列模型决定;步骤4、计算该传感器节点本周期的实际数据与预测数据的差值,将该差值作为预测误差;步骤5、当预测误差小于或等于预先设定的误差阈值时,所述传感器节点不向服务器传输数据,当预测误差大于误差阈值时,所述传感器节点向服务器发送本周期的实际数据; 所述基站端工作包括如下步骤步骤6、在与所述步骤3相应的一个时间周期内,服务器判断是否收到传感器节点发送的实际数据;如果判断为是,则将该实际数据发送给用户端,如果判断为否,则进入下一步;步骤7、服务器根据时间序列模型以及本地所缓存的相应传感器的前N个周期的历史数据计算出该传感器本周期的预测数据,并将所述预测数据发送给用户端。
全文摘要
本发明公开了一种无线传感器网络中基于卡尔曼滤波的数据融合方法,在采样节点采集数据之后到传输数据之前加入一个数据过滤过程,节点采集到数据后,将该数据通过卡尔曼滤波器可以有效去除噪声,去除噪声后的数据再通过数据融合模型进行处理,这样新的数据融合模型可以更加准确的预测数据;该方法的具体步骤是首先,在传感器节点端和基站端选择相同的时间序列预测模型和误差阈值;然后,在传感器和基站端工作,所述工作的方式为在传感器节点端工作与在基站处工作。本发明用户可以得到比较精准的采样数据,并且能有效降低网络中的能量消耗,从而延长无线传感器网络的生存期。
文档编号H04W24/02GK102316496SQ201110263608
公开日2012年1月11日 申请日期2011年9月7日 优先权日2011年9月7日
发明者修志鑫, 孔令和, 薛广涛 申请人:上海交通大学
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1