曹現(xiàn)剛,姜韋光,張國禎
(西安科技大學(xué) 機械工程學(xué)院,陜西 西安 710054)
隨著煤炭行業(yè)的智能化發(fā)展,煤炭企業(yè)的管理方式正在逐漸由粗放型轉(zhuǎn)變?yōu)榫毣芾?,中國大中型煤礦企業(yè)由設(shè)備產(chǎn)生的數(shù)據(jù)規(guī)模已經(jīng)達到了PB級別[1]。煤礦設(shè)備種類繁多,采煤機作為綜采三機之一,集成機電液為一體,實現(xiàn)了煤礦采集的機械化與自動化,其在工作過程中產(chǎn)生的設(shè)備運行狀態(tài)數(shù)據(jù)成為了監(jiān)測煤礦開采狀態(tài)的重要依據(jù)。然而采煤機的工作環(huán)境復(fù)雜且惡劣,其運行狀態(tài)數(shù)據(jù)的采集會受到諸多因素的影響,使得采集來的數(shù)據(jù)會出現(xiàn)大量的噪聲點與缺失值[2],從而導(dǎo)致數(shù)據(jù)的質(zhì)量不足以滿足后續(xù)的數(shù)據(jù)分析工作。因此對采煤機運行狀態(tài)數(shù)據(jù)的清洗工作必不可少[3]。
嚴(yán)英杰等[4]為提升輸變電設(shè)備運行狀態(tài)數(shù)據(jù)質(zhì)量,利用時間序列分析對數(shù)據(jù)進行了清洗建模并驗證了其有效性。韓福霞等[5]構(gòu)建電力信息系統(tǒng)工程監(jiān)理實時分析預(yù)測模型,為滿足其實時性,使用了Storm平臺與模型相結(jié)合的方案。吳克河等[6]提出基于Storm 平臺和ARIMA模型的預(yù)測平臺,分析不同類型電網(wǎng)時序數(shù)據(jù)的特點,預(yù)設(shè)模型參數(shù)以降低預(yù)測時間。馬宏偉等[7]搭建了一種基于MapReduce的煤礦綜采設(shè)備運行狀態(tài)大數(shù)據(jù)清洗模型,該模型的采用雙MapReduce協(xié)同工作,并將清洗結(jié)果按時間排序。綜上所述,當(dāng)下有關(guān)數(shù)據(jù)清洗的研究以及Storm的應(yīng)用多處于電網(wǎng)設(shè)備這一背景之下,即便與煤礦設(shè)備相關(guān),也偏重于研究非實時清洗技術(shù)。本文在上述研究成果的基礎(chǔ)之上,建立了基于Storm的采煤機運行狀態(tài)數(shù)據(jù)實時清洗平臺,該平臺旨在完成采煤機運行狀態(tài)數(shù)據(jù)的實時清洗工作,為后續(xù)的數(shù)據(jù)分析工作提供基礎(chǔ)。
采煤機截割部傳動系統(tǒng)可將電機的高轉(zhuǎn)速低扭矩轉(zhuǎn)換成能夠驅(qū)動截割滾筒的低轉(zhuǎn)速高扭矩,在這一過程中,會產(chǎn)生大量軸承以及齒輪的振動數(shù)據(jù)[8]。本文就以采煤機截割部傳動系統(tǒng)的振動數(shù)據(jù)為研究對象,進行數(shù)據(jù)清洗平臺搭建。采煤機常年在井下工作,環(huán)境復(fù)雜。為了達到測試目的,結(jié)合傳動系統(tǒng)結(jié)構(gòu)以及實際工況,本文以電機軸、惰輪軸以及滾筒軸的軸、徑向為測點采集振動信號,具體測點信息見表1。
表1 測點信息
分別在軸、徑向安裝傳感器是為了讓這兩者所采集的振動信號形成互補。如表1所示,電機軸、惰輪軸以及滾筒軸的軸、徑向分別都布置了測點,并且每個部位都有對應(yīng)的齒輪和軸承以及相關(guān)參數(shù)。
采煤機傳動系統(tǒng)某一時刻的振動數(shù)據(jù)是通過時間和數(shù)值的數(shù)組來描述的,多個振動數(shù)據(jù)組成時間序列。這些時間序列多屬于非平穩(wěn)序列。ARIMA適合處理平穩(wěn)序列,而非平穩(wěn)序列就需要通過ARIMA進行處理,該模型在處理前會對時間序列進行平穩(wěn)化處理。
滾筒在截割半煤巖與硬巖時發(fā)生的力學(xué)耦合作用,會導(dǎo)致采煤機的急劇振動[9]。這種劇烈振動就會使采煤機運行狀態(tài)數(shù)據(jù)中產(chǎn)生噪聲點。在工程領(lǐng)域,樣本標(biāo)準(zhǔn)差反應(yīng)了數(shù)據(jù)的波動程度,因此可以將樣本標(biāo)準(zhǔn)差作為噪聲點的衡量標(biāo)準(zhǔn)如式(1)所示:
式中,Xt為t時刻數(shù)據(jù);μt為Xt的對應(yīng)的樣本期望。根據(jù)正態(tài)分布性質(zhì),本文將|Xt-μt|>3σ的數(shù)據(jù)判定為噪聲點。
ARIMA即自回歸求和移動平均模型,采煤機設(shè)備運行狀態(tài)數(shù)據(jù)多是非平穩(wěn)序列[10],因此在進行擬合預(yù)測之前先選擇差分法作為平穩(wěn)性處理方法。樣本數(shù)據(jù)經(jīng)過d階差分后滿足ARIMA(p,d,q)條件,可用式(2)表示:
φ(B)dXt=θ(B)εi
(2)
φ(B)=1-φ1(B)-φ2(B)2-…-φp(B)p
(3)
θ(B)=1-θ1(B)-θ2(B)2-…-θq(B)q
(4)
式中,p與q為ARIMA(p,d,q)中參數(shù);φ與θ分別是自回歸與移動平均模型的系數(shù)。
圖1 ARIMA數(shù)據(jù)清洗步驟
拓撲(Topology)以應(yīng)用程序的形式實時運行在Storm中的。為了能夠?qū)崟r的源源不斷的各種煤礦設(shè)備狀態(tài)數(shù)據(jù)做出相應(yīng)的清洗工作,就需要一個具有數(shù)據(jù)清洗邏輯的拓撲。其功能主要包括讀取海量測點數(shù)據(jù)、數(shù)據(jù)實時預(yù)測、噪聲點實時判斷與剔除,空缺值實時恢復(fù)。Storm的處理邏輯被封裝在了Topology類中,其中包含了Spout類與Bolt類運行邏輯關(guān)系。
圖2 數(shù)據(jù)清洗Topology
上文對數(shù)據(jù)清洗拓撲中各組件的協(xié)作機制進行了總體的概述?,F(xiàn)對拓撲中Spout與Bolt類的設(shè)計進行描述。由于Storm在運行過程中,主要調(diào)用的是Spout類與Bolt類中的nextTuple與execute函數(shù),所以現(xiàn)對這兩類函數(shù)進行詳細描述。負責(zé)讀取數(shù)據(jù)以及封裝成元組Tuple的Spout中nextTuple函數(shù)見表2。
負責(zé)對數(shù)據(jù)進行預(yù)測以及數(shù)據(jù)清洗的ARIMA Bolt中的execute函數(shù),見表3。
表2 Spout類中nextTuple函數(shù)
表3 ARIMA Bolt類中execute函數(shù)
實驗數(shù)據(jù)來自與某礦業(yè)公司采煤機截割部傳動系統(tǒng)振動數(shù)據(jù)。實驗所用的Storm集群搭建在IBM公司規(guī)格型號為S822LC的服務(wù)器上搭建而成,服務(wù)器配置為NVIDIA Tesla K80 GPU、256G內(nèi)存、960G固態(tài)硬盤以及10T的磁盤存儲陣列。
樣本容量N如上文所述,即ARIMA Bolt某時刻處理的數(shù)據(jù)個數(shù),而前N-1個數(shù)據(jù)是作為訓(xùn)練集train,train的增加可以提高ARIMA預(yù)測的精確度,但也會增加計算機的處理時間。先對train與預(yù)測精度的關(guān)系進行實驗探究。精度定義為某一訓(xùn)練集下的預(yù)測值與原始數(shù)據(jù)的殘差絕對值期望,結(jié)果如圖3所示。
圖3 精度與訓(xùn)練集的關(guān)系
如圖3所示訓(xùn)練集在達到100的時候其預(yù)測精度將很難通過增加樣本容量而提高,因此本次實驗樣本容量取N=train+1=101。
本次模型驗證選取采煤機傳動系統(tǒng)電機軸軸承徑向振動加速度數(shù)據(jù)(即表1中測點1的數(shù)據(jù)),并在數(shù)據(jù)中加入噪聲點,將一個觀測點的數(shù)據(jù)剔除,造成數(shù)據(jù)的缺失。軸承振動加速度原始數(shù)據(jù)和含有異常值的數(shù)據(jù)如圖4所示,由圖4中虛線可見,將t=141處的數(shù)據(jù)剔除造成數(shù)據(jù)缺失,在t=155到t=157處加入噪聲點,在t=225處加入一個噪聲點,生成一個異常數(shù)據(jù)序列。
圖4 軸承振動加速度原始數(shù)據(jù)和含有異常值的數(shù)據(jù)
首先以異常數(shù)據(jù)的前101個數(shù)據(jù)即X1到X101作為樣本數(shù)據(jù),得出樣本期望μ101=0.000997,樣本標(biāo)準(zhǔn)差σ101=0.006681以及X101=-0.00478,由于|X101-μ101|=0.005777<3σ101,所以X101判定不為噪聲點,不需清洗。同理可以依次對X101到X300的數(shù)據(jù)進行擬合、預(yù)測、判定、去噪和恢復(fù)工作。
圖5 X102到X141數(shù)據(jù)清洗效果
圖6 BIC熱力圖
圖7 X142到X157數(shù)據(jù)清洗效果
X142到X157數(shù)據(jù)清洗效果如圖7所示,X142到X154時刻的數(shù)據(jù)皆判定不是異常數(shù)據(jù);而X155到X157時刻與其對應(yīng)的樣本標(biāo)準(zhǔn)差的對比情況見表4。
表4 異常值與預(yù)測值對比情況
如表4可知,|X155-157-μ155-157|皆大于其對應(yīng)的3倍標(biāo)準(zhǔn)差所以可將其盡數(shù)剔除,并使用預(yù)測數(shù)據(jù)進行恢復(fù)。
圖8 X158到X225數(shù)據(jù)清洗情況
X158到X225數(shù)據(jù)清洗情況如圖8所示,X158到X224時刻的數(shù)據(jù)皆判定不是噪聲點;而|X225-μ225|=0.039663>3σ225,因此可以將t=225處數(shù)據(jù)判定為噪聲點并用預(yù)測值恢復(fù)。
清洗結(jié)果與原始數(shù)據(jù)對比如圖9所示,X141時刻的缺失值以及X225時刻的噪聲點的清洗效果較為理想,殘差很小;但是在X155到X157時刻的噪聲點的清洗效果較不理想,殘差較大。這是因為ARIMA適合預(yù)測一種漸變的趨勢,比如在原始數(shù)據(jù)從X140=-0.00913到X141=-000659這一變化過程種,數(shù)值變化幅度較小,ARIMA能夠較準(zhǔn)確的進行預(yù)測;而原始數(shù)據(jù)X154=0008725到X155=-000797數(shù)值變化幅度較大,所以ARIMA在X155到X157時刻的預(yù)測效果受到影響,從而造成了較大的殘差。不過總體來講,ARIMA完成了所有噪聲點與缺失點的剔除與恢復(fù)。
圖9 清洗結(jié)果與原始數(shù)據(jù)對比圖
實時性可以理解為,數(shù)據(jù)清洗平臺單位時間內(nèi)清洗數(shù)據(jù)的數(shù)量,該數(shù)量可以通過Storm自帶的Storm UI進行觀察獲取,先對Storm UI界面的主要參數(shù)進行說明見表5。
表5 參數(shù)含義
本次實時性分析實驗Storm UI界面顯示的相關(guān)參數(shù)的詳細展示如圖10所示。
圖10 實時性檢驗結(jié)果
由圖10可知,本次實驗為ARIMA Bolt共分配了3個線程,任務(wù)數(shù)為3。execute函數(shù)的平均執(zhí)行時間即處理一個樣本花費時間(圖10中方框)為0.195ms,即該數(shù)據(jù)清洗平臺每秒鐘約能清洗5128個數(shù)據(jù),而本次實驗測點的數(shù)據(jù)采集頻率為5000Hz,所以可以證明該數(shù)據(jù)清洗平臺的可以滿足本次實驗測點數(shù)據(jù)的實時清洗要求。
本文針對采煤機運行狀態(tài)數(shù)據(jù)的特點建立了數(shù)據(jù)實時清洗平臺,經(jīng)實驗證明,該平臺可在保證一定數(shù)據(jù)恢復(fù)精度的情況下完成采煤機運行狀態(tài)數(shù)據(jù)的實時清洗,為后續(xù)的數(shù)據(jù)分析工作提供基礎(chǔ)。我們未來的工作將進一步研究煤礦各類設(shè)備的噪聲特點,并根據(jù)這些特點對數(shù)據(jù)清洗平臺做出相應(yīng)的調(diào)整。