王 振,白星振,馬夢白,張致境,高正中
(山東科技大學電氣與自動化工程學院,山東 青島 266590)
項目來源:中國博士后基金項目(2014M551934);山東省中青年科學家獎勵基金項目(BS2013DX012);山東省博士后基金項目(201303068)
2016-12-19修改日期2017-06-29
一種基于數據預處理和卡爾曼濾波的 溫室監測數據融合算法*
王 振,白星振*,馬夢白,張致境,高正中
(山東科技大學電氣與自動化工程學院,山東 青島 266590)
溫室具有空間大、無線傳感器節點易受到干擾等特點,節點采集的數據波動性較大且易出現丟失現象。為了提高溫室監測無線傳感網的可靠性和數據融合的精度,提出了一種基于數據預處理和卡爾曼濾波的無線傳感器網絡數據融合算法。經過對各傳感器數據進行預處理和卡爾曼濾波估計,再將數據發送到簇頭節點進行基于狀態補償策略的加權數據融合。通過對溫室濕度數據進行仿真,結果表明:數據預處理能明顯減小數據波動,大幅減少網絡數據傳輸量和能耗,提高抗干擾能力。另外,針對溫室無線傳感器網絡容易出現丟包的現象,基于狀態補償策略的加權數據融合算法可以明顯提高在數據丟包情況下的融合精度。
無線傳感器網絡;數據融合;數據預處理;卡爾曼濾波;狀態補償;濕度
多傳感器數據融合能對多個測量數據進行綜合分析,能夠有效提高其抗干擾能力,能更精確地估測被測參數。無線傳感器網絡,是一種新型的信息采集及處理技術,以其具有應用成本低、分部規模大和體積小等特點,已應用到溫室的環境監測中并發揮著越來越重要的作用[1-3]。溫室環境中各種參數分布不均,而且可能會受到各種因素干擾,所以多傳感器融合技術對無線傳感器網路在溫室中的應用起到了至關重要的作用[4-5]。
蔡振江等[6]采用的基于均值的分批估計法,融合精度較高,且只需測量數據無需先驗知識,但對傳感器分組依賴程度高,分組不當會導致融合差異較大。文獻[7]提出了算數平均加權融合,計算速度快,但抗干擾能力差,融合精度較低。Yager[8]提出了一種基于支持度函數的數據融合算法,無需其他概率統計知識,只需當前時刻傳感器數據來計算最優融合,并得到了廣泛應用[9-10]。熊迎軍[11]等人對支持度函數進行了改進,大大減少了算法的運行時間,而且首先對數據進行一致性檢測和三次指數平滑,明顯減少數據波動,但這種方法運算時占用儲存空間大。卡爾曼濾波[12-13]也是目前在數據融合方面應用較多的方法,但是其對狀態空間模型的精確性依賴較高,狀態空間模型不準確會使融合效果較差。仲崇權[14]劉建書[15]李雪蓮等[16]人對最小二乘法在多傳感器數據融合方面的應用進行了改進,對傳感器方差計算考慮更全面。
針對以上問題,本文提出了基于數據預處理卡爾曼濾波的溫室多傳感器加權融合算法,算法結構流程如圖1所示,首先對測量數據進行基于狄克遜準則的預處理,剔除異常數據提高抗干擾能力,卡爾曼濾波階段采用狀態修正法提高了其在溫室環境下應用的精確度,最后采用基于最小二原理的加權數據融合,結合丟包補償策略提高融合精度。
根據溫室傳感器的分布特點,本文在使用無線傳感器網絡監測環境時采取分簇融合的方式,將檢測的環境分成多個區域,每個區域有多個傳感器節點和一個簇頭節點,將區域內測量數據傳到簇頭節點進行數據融合。本文采用的無線傳感器網絡數據融合算法主要包括三部分:傳感器節點數據預理、局部卡爾曼濾波和基于最小二乘原理的加權數據融合。算法結構如圖1所示。

圖1 算法結構圖
1.1 溫室傳感器數據預處理
在溫室環境下,布置的無線傳感器節點數目多,數據采集量大,需要融合的數據量也相應較大。而且受溫室環境干擾、傳感器精度以及傳感器可能會出現的故障的影響,溫室無線傳感器網絡中采集的測量數據可能會出現異常誤差較大數據影響融合的可靠性,且這種影響無法忽略。為了剔除誤差較大的數據、減少較大環境干擾的影響,本文首先對傳感器采集數據進行數據預處理。
本文采取基于狄克遜準則[17]的預處理方法。在處理數據樣本量較少時,工程實踐中常用的判斷數據異常值的方法有格拉布斯準則和狄克遜準則。但是前者適用于剔除一個異常值,且計算量大,特別是需要剔除不止一個異常值時計算更加繁瑣,后者則計算過程簡單并且可以剔除多個異常值,所以在本文中采用狄克遜準則剔除數據異常值。

表1 樣本量不同極差比γ
狄克遜準則剔除異常數據采用的是極差比的方法,設有一組測量數據樣本為X1,X2,…,Xn,按照大小順序排列為X1≤X2≤…≤Xn,根據處理數據個數的不同極差比γ分別如表1所示。
選擇不同的顯著性水平α,根據處理數據個數n的不同,查表2得相應臨界值D(α,n)。若γ>γ′,γ>D(α,n)則判斷X1為異常值,剔除X1;若γ<γ′,γ′>D(α,n)則判斷Xn為異常值,剔除Xn。

表2 臨界值D(α,n)
在數據預處理階段,首先對測量數據進行分組預處理,處理完一組后再對下組數據進行預處理,然后將處理后數據取均值進行下一步的濾波運算。對傳感器節點采集數據的預處理不但可以剔除異常數據,減小數據波動,而且將處理后數據取均值進行后續運算,根據處理數據個數的不同,可以不同程度的減少傳感器節點的數據傳輸量,在無線傳感器網絡的節點中,無線收發模塊會消耗90%以上的能量,因此數據預處理算法也能在很大程度上降低網絡能耗,提高網絡生命周期。
1.2 局部卡爾曼濾波
盡管已經對溫室采集數據進行了預處理,剔除了誤差較大數據,但是由于無線傳感器本身特性以及在溫室環境下無線傳感采集數據無法避免的存在著大量測量誤差,為了能有效的去除噪聲影響,本文采用卡爾曼濾波,更大程度地跟蹤溫室參數數據真實值。
卡爾曼濾波算法是一種具有較強容錯能力,以最小均方誤差為準則的遞推無偏估計算法,主要是建立濾波過程的狀態空間模型,利用前一時刻的系統狀態估計值和當前時刻的系統狀態觀測值并根據系統的過程噪聲和觀測噪聲來更新系統狀態變量的估計值,使系統當前的狀態估計值能夠充分逼近真實值。其濾波主要過程如下:
系統狀態方程為:
X(k)=AX(k-1)+W(k)
(1)
式中:X(k),X(k-1)分別為k,k-1時刻的狀態值,A為狀態轉移矩陣,W(k)為過程噪聲,W(k)~N(0,Q)。
觀測方程為:
Z(k)=HX(k)+V(k)
(2)
式中:Z(k)表示k時刻測量值,H為測量矩陣,V(k)為觀測噪聲,V(k)~N(0,R)。觀測噪聲與過程噪聲相互獨立。
在溫室環境下,可以認為過程噪聲和觀測噪聲W(k)、V(k)為高斯白噪聲,根據式(1)進行狀態一步預測,利用k-1時刻的狀態X(k-1|k-1)對k時刻的預測值X(k|k-1)為:
X(k|k-1)=AX(k-1|k-1)+BU(k)
(3)
U(k)為現在狀態的控制量,如果沒有控制量,可以為0。對應于X(k|k-1)的協方差可以表示為:
P(k|k-1)=AP(k|k)AT+Q
(4)
式中:P(k|k-1)為X(k|k-1)對應的協方差,P(k-1|k-1)為X(k-1|k-1)對應的協方差,AT為A的轉置矩陣。
通過式(2)(3)可得到現在k時刻的系統狀態最優估計值X(k|k):
X(k|k)=X(k|k-1)+Kg(k)[Z(k)-HX(k|k-1)]
(5)
式中:Kg(k)為卡爾曼增益(Kalman Gain)
Kg(k)=P(k|k-1)HT[HP(k|k-1)HT+R]-1
(6)
為了使卡爾曼濾波算法可以不斷運行迭代下去,還需要在每次迭代過程中更新當前k時刻下X(k|k)的協方差:
P(k|k)=[I-Kg(k)H]P(k|k-1)
(7)
式中:I為單位陣。當系統進入下一時刻時,P(k|k)即為式(4)中的P(k-1|k-1),這樣卡爾曼濾波根據上述公式就可以不斷地自回歸迭代下去了。通過迭代公式可以看到,卡爾曼濾波是在時域下的濾波,計算相對簡單,在迭代過程中只需儲存前一時刻的計算參數,占用儲存空間少。
在溫室環境存在干擾較多的情況下,數據預處理后進行卡爾曼濾波算法可以有效去除采集數據中系統噪聲和傳感器測量噪聲的影響,跟蹤溫室被測參數的真實值。
1.3 多傳感器融合算法
本文中簇頭節點采用基于最小二乘原理的加權數據融合算法。設n個傳感器的觀測方程為:
Z=Hx+V
(8)

(9)
式中:zi為每個傳感器的測量值,wi為其對應的加權系數。定義估計誤差:
(10)
式中:測量噪聲V為高斯白噪聲,期望為0。對式(10)左右兩邊同時取期望,得:

(11)
由式(11)可知,基于加權最小二乘法的數據融合算法是一種無偏估計算法。根據式(11)求誤差的估計方差如式(12),文獻[14-15]給出詳細證明。

(12)
基于求得的估計誤差取最小值的原則,求式(12)對wi的偏導,令其等于零可得:

(13)
可以看到加權系數和測量方差有關。由于本文傳感器節點采用了卡爾曼濾波跟蹤狀態真實值,所以進行加權融合時,本文采用方差估計學習算法,算法流程如下:
設簇頭節點有n個數據需要進行數據融合,xi(k)為第i個傳感器k時刻的數據。


(14)


(15)

但是在溫室環境中,傳感器節點向簇頭節點傳輸信息時,可能會出現丟包現象,數據丟包將導致數據融合精度下降,并且當同一節點連續出現丟包或者同一時刻簇內多個節點出現數據丟包現象時,將嚴重影響傳感器工作可靠性,并使簇頭節點融合數據不能完全反映溫室環境,使網絡性能變差。
當某個傳感器節點向簇頭節點傳輸數據出現丟包時,有些文章采用使用傳感器歷史數據,代替丟包數據的方法,但當發生連續丟包問題時,算法性能就會變得很差。本文采用狀態補償策略,通過數據的變化趨勢和變化速率進行數據狀態預測,將狀態預測值作為當前時刻丟包節點的上傳數據。
假設,某個傳感器節點k有數據上傳,k+1時刻出現丟包現象,具體算法流程如下:
δ(k)=x(k)-x(k-1)
(16)
式中:x(k-1)為k-1時刻傳感器上傳數據,x(k)為k時刻傳感器上傳數據,δ(k)為在k時刻數據增量,反應測量數據變化速率。當k+1時刻出現丟包現象時,通過式(17)預測作為k+1時刻的狀態補償。
x(k+1)=x(k)+αδ(k)+β(δ(k)-δ(k-1))
(17)
式中:α為速率變化系數,β為趨勢變化系數。
對數據丟包采取狀態補償措施,可以有效減低丟包影響,提高融合精度,使無線傳感器網絡在溫室環境監測中應用更加可靠。
本文采用溫室采集的土壤濕度數據進行數據融合來驗證算法有效性,傳感器采集數據的間隔為2 min。
圖2為一個傳感器24 h土壤濕度的變化曲線,可以看到一些采集數據受到干擾較大,曲線有較多明顯差異較大的數據,出現異常的波動。
圖3為經過數據預處理的土壤濕度變化曲線,數據處理個數為5,可以算出節點數據傳輸量大約減少80%左右,大大降低了網絡能耗,同時根據圖2和圖3的比較可以看出經過預處理剔除了異常數據的濕度曲線更加平滑,數據波動性小,增強了網絡在運行過程中的抗干擾能力。

圖2 土壤濕度變化曲線

圖3 數據預處理土壤濕度變化曲線
在簇頭節點數據融合時,本文采用狀態補償措施來解決傳感器節點傳輸數據出現的數據丟包問題,降低丟包影響,提高融合精度。
圖4為數據在丟包率為20%和不丟包兩種情況下的土壤濕度融合曲線,可以看到當傳感器節點傳輸數據出現數據丟包問題時,數據融合結果會出現較大誤差。
丟包率20%和狀態補償下的數據融合值與不丟包情況下數據融合值的誤差如圖5所示。從圖5可以明顯看出在丟包情況下通過狀態補償策略能夠大大減少丟包影響,提高融合精度。

圖4 數據丟包和不丟包情況土壤濕度曲線

圖5 丟包及丟包補償融合誤差

圖7 連續丟包情況融合誤差
將本文提到的算法與1.3節提到歷史數據替代丟包數據的方法進行比較,采用融合數據與不丟包融合數據之間的誤差作為評價性能指標,對丟包率20%和連續丟包兩種情況進行仿真驗證,結果如圖6和圖7所示。從圖中可以看到本文提出的方法要優于歷史數據替代法,特別是在出現連續丟包的情況下,本文提出的方法的數據融合精度要高很多。

圖6 丟包率20%情況融合誤差
針對無線傳感器網絡在溫室環境下的多傳感器融合,會出現干擾導致的數據波動問題,并且傳感器傳輸數據過程可能出現丟包現象等問題,本文提出了基于數據預處理的卡爾曼濾波,并對多傳感器數據進行基于最小二乘原理的加權融合。通過理論分析及溫室濕度測量數據進行的仿真驗證,結果表明本文提出的方法具有良好抗干擾能力,同時能大幅減少數據傳輸量,減低網絡能耗;而且在傳感器傳輸數據丟包的情況下依然能達到較高的融合精度,效果良好。
[1] Jiang H,Hallstrom J O. Fast,Accurate Event Classification on Resource-Lean Embedded Sensors[J]. ACM Transactions on Autonomous and Adaptive Systems,2013,8(2):65-80.
[2] 刁智華,陳立平,吳剛,等. 設施環境無線監控系統的設計與實現[J]. 農業工程學報,2008,24(7):146-150.
[3] 李莉,李海霞,劉卉. 基于無線傳感器網絡的溫室環境監測系統[J]. 農業機械學報,2009,40(S1):228-231.
[4] Huang L,Xiao J. Application Research of Intelligent Greenhouse’s Control System Based on Multi-Sensor Data Fusion[C]//Second International Conference on Computer Modeling and Simulation,2010. ICCMS’10. IEEE,2010,4:211-214.
[5] Yinghui L,Genqing D. Study on Data Fusion of Wireless Monitoring System for Greenhouse[C]//2015 8th International Conference on Intelligent Computation Technology and Automation(ICICTA). IEEE,2015:864-866.
[6] 蔡振江,康健一,張青,等. 數據融合技術在溫室溫度檢測中的應用[J]. 農業機械學報,2006,37(10):101-103.
[7] Liao Y H,Chou J C. Weighted Data Fusion Use for Ruthenium Dioxide Thin Film pH Array Electrodes[J]. IEEE Sensors Journal,2009,9(7):842-848.
[8] Yager R R. The Power Average Operator[J]. IEEE Transactions on Systems,Man,and Cybernetics—Part A:Systems and Humans,2001,31(6):724-731.
[9] Wang X H,Xu L H,Wei R H. A New Fusion Structure Model on Greenhouse Environment Data and a New Fusion Algorithm of Sunlight[C]//2014 International Conference on Wireless Communication and Sensor Network(WCSN). IEEE,2014:418-424.
[10] 孫田川,劉潔瑜. 基于支持度和自適應加權的MEMS陀螺信息融合算法[J]. 傳感技術學報,2016,29(10):1548-1552.
[11] 熊迎軍,沈明霞,陸明洲,等. 溫室無線傳感器網絡系統實時數據融合算法[J]. 農業工程學報,2012,28(23):160-166.
[12] Kalman R E. A New Approach to Linear Filtering and Prediction Problems[J]. Journal of Basic Engineering,1960,82(1):35-45.
[13] 金長江,張兵,曹祥杰. 基于容積卡爾曼濾波的異類多傳感器一致性融合算法[J]. 傳感技術學報,2016,29(7):1006-1010.
[14] 仲崇權,張立勇,楊素英,等. 基于最小二乘原理的多傳感器加權融合算法[J]. 儀器儀表學報,2003,24(4):427-430.
[15] 劉建書,李人厚,常宏. 基于相關性函數和最小二乘的多傳感器數據融合[J]. 控制與決策,2006,21(6):714-716.
[16] 李雪蓮,孫堯,莫宏偉. 基于最小二乘法的冗余信息數據融合算法實現[J]. 計算機工程與應用,2009,45(15):34-38.
[17] Gu J,Fan D,Jiang N,et al. A Noise Detection Method for NDVI Time Series Data Based on Dixon test[C]//2012 First International Conference on Agro-Geoinformatics. IEEE,2012:1-5.
ADataFusionAlgorithmonDataPreprocessingandKalmanFilterforGreenhouseEnvironmentMonitor*
WANGZhen,BAIXingzhen*,MAMengbai,ZHANGZhijing,GAOZhengzhong
(College of Electrical Engineering and Automation,Shandong University of Science and Technology,Qingdao Shandong 266590,China)
The greenhouse has the larger space,and the wireless nodes are vulnerable to the interference from the environment. The data collected by nodes are more volatile and many interference factors easily lead to packet loss. In order to enhance the reliability of wireless sensor neworks for the greenhouse monitoring,and improve the precision of data fusion,a data fusion algorithm on data preprocessing and Kalman filter is proposed. Firstly,the data preprocessing method and Kalman filter is utilized to decrease the influence of abnormal data,then these data are sent to the cluster head and fused on the weighted data fusion algorithm with the state compensation strategy. The simulation is conducted on the greenhouse humidity,which shows that data preprocessing can significantly reduce data fluctuations,the amount of data transmission and the network energy consumption while improve the anti-interference ability of wirless networks. In addition,the weighted data fusion algorithm based on state compensation strategy can also significantly improve the fusion accuracy in the case of packet loss.
wireless sensor network;data fusion;data preprocessing;Kalman filter;state compensation;humidity
TP393
A
1004-1699(2017)10-1525-06
10.3969/j.issn.1004-1699.2017.10.012

王振(1991-),男,山東棗莊人,山東科技大學電氣與自動化工程學院碩士研究生,研究方向為無線傳感器網絡及應用,wzz4585@163.com;

白星振(1977-),男,山東濰坊人,博士,山東科技大學電氣與自動化工程學院副教授,研究方向為無線傳感器網絡,數據融合,濾波估計,xzbai@sdust.edu.cn。