陳香松, 陶建峰, 劉成良
(上海交通大學 機械與動力工程學院, 上海 200240)
柱塞泵在工程機械、航空航天等領域中有著廣泛的應用[1],但由于柱塞泵結(jié)構(gòu)相對復雜,容易因載荷、污染物、油溫及不當使用而發(fā)生故障,進而嚴重影響主機正常運行,甚至造成災難性的后果。因此,研究柱塞泵異常監(jiān)測的方法對提高泵本身及其主機系統(tǒng)可靠性有重要的價值。
關于液壓柱塞泵的異常檢測及故障診斷,前人有許多的研究。柱塞泵的振動信號攜帶著柱塞泵工作時的大量信息[2],因此可以通過振動信號來判斷柱塞泵的運行狀態(tài)。 DU等[3]使用基于相關向量機和粒子群優(yōu)化算法提出了柱塞泵故障診斷的方法PSO-RVM,方法適合低復雜度的應用。程珩等[4]針對早期微弱故障信號易受噪聲干擾、難以提取和識別的問題,提出基于變分模態(tài)分解多尺度散布熵和極限學習機的柱塞泵微弱故障診斷方法。趙立紅等[5]提出局部均值分解樣本熵和支持向量機結(jié)合的柱塞泵故障診斷方法。杜振東等[6]提出了SA-EMD-PNN柱塞泵故障診斷方法,方法可以縮短診斷時間,故障診斷效率較高。盡管基于振動信號的柱塞泵診斷方法研究取得了較好的進展,但存在故障與振動信號之間的映射關系復雜導致算法可解釋性差,以及安裝振動傳感器導致的成本問題。
作為液壓系統(tǒng)最為常見的工作參數(shù),壓力信號被廣泛應用于系統(tǒng)狀態(tài)的監(jiān)測,是多數(shù)液壓系統(tǒng)的標準配置。由于較低的獲取成本以及比較明確的物理含義,以壓力信號作為異常檢測及故障診斷信號源近年來得到了研究人員的關注。 LU Chuanqi等[7]提出了一種基于波形匹配和極值鏡像擴展兩步經(jīng)驗模態(tài)分解方法相結(jié)合的故障診斷方法,能有效識別泵的故障。TANG Hongbin等[8]將壓力信號與振動信號特征進行融合,通過SVM進行故障識別,取得了一定的效果。目前,負載對泵出口壓力信號的擾動是影響基于壓力信號的液壓泵故障診斷面臨的主要因素。
在具體的算法方面,卷積神經(jīng)網(wǎng)絡是泵故障診斷領域廣泛應用的方法。ZHU等[9]將小波分析與改進的卷積神經(jīng)網(wǎng)絡相結(jié)合,通過修改網(wǎng)絡結(jié)構(gòu)減少了參數(shù)數(shù)量和計算復雜度。魏曉良等[10]結(jié)合長短時記憶和一維卷積神經(jīng)網(wǎng)絡提出了一種柱塞泵空化故障診斷方法。TANG Shengnan等[11]通過連續(xù)小波變換獲取壓力信號的時頻特征,使用貝葉斯優(yōu)化實現(xiàn)了主要超參數(shù)的學習。HASAN M J等[12]結(jié)合信號到時頻成像技術和自適應深度卷積神經(jīng)網(wǎng)絡模型(Adaptive Deep Convolution Neural Network,ADCNN),提出了一種泵自動健康狀態(tài)診斷框架。然而上述方法需要的卷積神經(jīng)網(wǎng)絡內(nèi)核權值需要模型在數(shù)據(jù)集上進行學習,方法的計算復雜度相對較高,SAXE A M等[13]證明了即使使用未經(jīng)訓練的隨機權重、某些特征學習架構(gòu)也可以為對象識別任務產(chǎn)生有用的特征。DEMPSTER A等[14]使用隨機卷積核訓練了簡單線性分類器,以現(xiàn)有方法的一小部分計算成本實現(xiàn)了最高的精度,使用這種方法,可以在不到2 h的時間內(nèi)在UCR數(shù)據(jù)集中的所有85個數(shù)據(jù)集上完成分類器的訓練和測試,并且可以在1 h內(nèi)在大約一百萬個時間序列的大型數(shù)據(jù)集上完成分類器的訓練。
本研究基于柱塞泵出口壓力上的脈動信號為高頻分量,蘊含豐富的泵的狀態(tài)信息,且對低頻負載擾動不敏感的事實,提出了一種柱塞泵異常檢測方法。該方法為了充分利用柱塞泵壓力信號本身所攜帶的信息,采用DTW算法對波形數(shù)據(jù)進行分割,盡可能地保留壓力脈動信號信息,基于一維隨機卷積核提取特征,之后對分割的波形使用孤立森林算法進行異常檢測,并訓練線性分類器,對存在異常的數(shù)據(jù)段確定具體異常類型。
DTW算法用于比較兩段時間序列的相似性,傳統(tǒng)的歐幾里得距離無法比較不同序列長度的信號的相似性,也無法有效地比較僅有時間軸位移差異的兩段數(shù)據(jù)的相似度。DTW通過把歐式距離的“一對一”對齊方式改為“一對多”對齊方式,克服了歐式距離缺點,兩者的對齊方式如圖1所示。
圖1 一對一對齊與一對多對齊方式
DTW算法使用了動態(tài)規(guī)劃的思想,對于序列a={a1,a2,a3,…,ar},b={b1,b2,b3,…bn},定義描述序列a和序列b間的對齊路徑λ表達式為:
(1)
2個特定點i,j之間的距離定義為:
Dist(i,j)=(ai-bj)2
(2)
使用遞歸方式計算確定最短對齊路徑,將序列最短對齊路徑分解為子序列最短對齊路徑問題進行求解:
Dpath=min[D(i-1,j),D(i,j-1),D(i-1,j-1)]
D(i,j)=Dpath+Dist(i,j)
(3)
DTW算法具體的算法流程如圖2所示。
圖2 Algorithm 1 DTW 算法流程
獲取柱塞泵壓力傳感器所采集的如圖3所示的原始信號后,需要對信號進行處理,形成數(shù)據(jù)集。
圖3 原始壓力脈動信號
結(jié)合原始壓力脈動信號存在近似周期性的特點,按照周期波形近似分割數(shù)據(jù)可最大限度地保存信息。簡單地按照固定長度進行壓力脈動數(shù)據(jù)分割無法克服誤差累積的問題,為使所劃分的壓力脈動數(shù)據(jù)間相似度較大,基于DTW使用滑動窗口的方法進行數(shù)據(jù)劃分。
手動選取一個壓力脈動數(shù)據(jù)段作為匹配模板,使用此模板輪流對整體壓力脈動數(shù)據(jù)進行分割,生成數(shù)據(jù)集。數(shù)據(jù)集生成的流程算法如圖4所示。
圖4 Algorithm 2 產(chǎn)生數(shù)據(jù)集
卷積神經(jīng)網(wǎng)絡的特征提取能力非常強大,廣泛應用于圖像處理與一維時序數(shù)據(jù),典型的卷積神經(jīng)網(wǎng)絡擁有多個卷積核對數(shù)據(jù)進行特征提取,通過滑動點積的方式與輸入的數(shù)據(jù)進行卷積,進而提取波形數(shù)據(jù)的一系列特征。基于卷積神經(jīng)網(wǎng)絡的上述特征,算法抽取卷積神經(jīng)網(wǎng)絡的卷積核作為壓力脈動信號的特征提取工具。受到前人研究的啟發(fā),大量參數(shù)隨機生成的卷積核提取時序特征的表現(xiàn)較好,且卷積核的權重不參與網(wǎng)絡訓練過程,其參數(shù)在卷積核生成時產(chǎn)生并固定。隨機卷積核生成時其關鍵參數(shù)長度l、權重w、偏置b、核膨脹D與填充Pa均按照一定的規(guī)律生成以達到特征提取的效果。
算法按照如下步驟生成卷積核,用于提取壓力數(shù)據(jù)特征:
(1) 一維卷積核長度l從{7,9,11}中以相同概率隨機抽取,卷積核的長度應當適中,長度過大的卷積核可能會丟失原始數(shù)據(jù)的部分信息。
(2) 卷積核權重w從標準正態(tài)分布中隨機采樣,即:
(4)
由標準正態(tài)分布采樣得到的權重w系數(shù)保證了大多數(shù)權重系數(shù)都比較小,同時也允許較大權重系數(shù)的產(chǎn)生。
(3) 偏差b從均勻分布中采樣,即:
(5)
偏差b使2個權重w系數(shù)近似的卷積核仍然能夠產(chǎn)生不同的特征圖,提取到不同的特征。
(4) 核膨脹D使2個權重w系數(shù)近似的卷積核能夠以不同大小的感受野產(chǎn)生特征圖,核膨脹D擴張率d遵循如下分布:
(6)
在生成隨機卷積核時隨機決定是否使用填充Pa,填充Pa影響卷積核生成的特征圖的尺寸。
算法的卷積層擁有1000個一維卷積核,卷積核按照一定的步長滑動遍歷整個數(shù)據(jù)段,進而提取不同的特征,一維卷積的公式為:
(7)
池化為卷積神經(jīng)網(wǎng)絡中常見的操作,通常位于卷積層后。池化的作用是減少特征維度,并且保持原有特征圖的精度,突出不同特征間的差異。方法使用最大池化,最大池化公式為:
(8)
除了通過最大值池化提取特征圖中的特征,算法使用了特征圖參數(shù)的另外一個特征,正值比例Ppositive,正值比例Ppositive刻畫了卷積核特征提取結(jié)果的宏觀表現(xiàn),有助于分類器通過衡量正值比例Ppositive參數(shù)進行類別劃分。正值比例Ppositive的公式為:
(9)
經(jīng)過最大池化與特征提取層后,每個卷積核生成的特征圖得到2個特征量f(k)與Ppositive,1000個卷積核共計產(chǎn)生2000個特征量,生成的數(shù)據(jù)集單個數(shù)據(jù)長度在670~690之間。
孤立森林算法是一種集成算法,異常檢測準確度較高,所用時間較短,非常適合用于對隨機卷積核提取到的特征進行分析與異常判斷。
孤立森林算法在進行計算的過程中需要生成多顆二叉樹,綜合所有生成二叉樹的結(jié)果得到異常點。生成單顆二叉樹的算法步驟如下:
(1) 從數(shù)據(jù)集中隨機選取λ個數(shù)據(jù)作為當前樣本,置于根節(jié)點;
(2) 隨機選取樣本的一個維度上的數(shù)據(jù),隨機確定分割點P,根據(jù)數(shù)據(jù)在此維度上與P的大小關系分別置于左節(jié)點與右節(jié)點;
(3) 重復步驟(1)與步驟(2),直到每個節(jié)點僅有一個數(shù)據(jù)或者樣本二叉樹的高度大于設定高度。
按照步驟(1)~步驟(3),獲取t棵子樹,對于輸入的數(shù)據(jù)樣本,綜合t棵子樹,得到最終結(jié)果:
(10)
其中,h(x)為數(shù)據(jù)樣本在單個二叉樹上的高度,c(n) 為每棵二叉樹的平均高度:
(11)
c(n)的作用為歸一化E(h(x))。數(shù)據(jù)樣本為異常樣本的幾率與score(x,n)正相關。
本研究所提方法的算法流程如圖5所示,首先基于DTW算法分割原始數(shù)據(jù),生成數(shù)據(jù)集;其次,使用約1000個一維卷積核對生成的數(shù)據(jù)集進行特征提取,通過1D池化層進行特征降維與特征強化,對提取到的特征,使用孤立森林的方式進行數(shù)據(jù)異常檢測;在異常檢測階段,方法的顯著特征為舍棄了常規(guī)1D-CNN深度方向的延伸,轉(zhuǎn)為廣度方向的拓展,網(wǎng)絡卷積層中包含1000個隨機卷積核,卷積核的參數(shù)均為隨機生成,且一旦生成就始終固定,不參與參數(shù)的更新過程;卷積層提取的特征通過池化層進行特征參數(shù)壓縮和特征強化,得到提取的特征。
圖5 算法整體流程圖
為證明方法有效性,本研究使用在正常工況、缸體磨損工況、松靴工況3種工況下通過壓力傳感器采集到的壓力脈動數(shù)據(jù)進行算法驗證,壓力傳感器的安裝位置如圖6所示,數(shù)據(jù)由采樣頻率為51200 Hz的壓力傳感器采集,共采集了3類數(shù)據(jù):正常工況下加載壓力為5 MPa,轉(zhuǎn)速為500 r/min,長度為512000的壓力脈動序列;松靴工況下加載壓力為5 MPa,轉(zhuǎn)速為500 r/min,長度為512000的壓力脈動序列;缸體磨損工況下加載壓力為5 MPa,轉(zhuǎn)速為500 r/min,長度為512000的壓力脈動序列。松靴工況的數(shù)據(jù)在1個柱塞存在松靴狀態(tài)下的柱塞泵上采集,缸體磨損工況的數(shù)據(jù)在9個柱塞均存在磨損的狀態(tài)的柱塞泵上采集。
圖6 壓力傳感器安裝位置
為驗證基于DTW的數(shù)據(jù)劃分方法的合理性,分別按照DTW方法與定長數(shù)據(jù)段劃分數(shù)據(jù)集,按照相同的方法生成數(shù)據(jù)集與訓練集,使用OCSVM(One-Class SVM)算法對兩者生成的數(shù)據(jù)進行異常檢測,比較所得結(jié)果,以驗證基于DTW方法分割數(shù)據(jù)的優(yōu)勢。
1) DTW計算劃分方法
選取一個波形作為匹配模板,按照1.2節(jié)所述方法依次對原始壓力脈動數(shù)據(jù)進行數(shù)據(jù)集劃分,得到壓力脈動數(shù)據(jù)劃分結(jié)果如下:經(jīng)過劃分后的單個壓力脈動數(shù)據(jù)段長度不固定,為后續(xù)處理方便,取生成的壓力脈動數(shù)據(jù)段長度的中位數(shù)670作為數(shù)據(jù)段標準長度,長度低于670的數(shù)據(jù)段終止點向后延拓至670,長度高于670的數(shù)據(jù)段終止點向前裁剪至670。
對正常工況下的數(shù)據(jù)按照3∶1的比例劃分訓練集與測試集,為了測試集樣本均衡,分別從磨損工況、松靴工況下隨機抽取160個樣本作為測試集,基于構(gòu)建的訓練集提取特征并訓練分類器,基于構(gòu)建的測試集測試方法效果。最終數(shù)據(jù)集劃分如表1所示。
表1 數(shù)據(jù)集劃分
2) 定長數(shù)據(jù)段劃分方法
同樣按照表1進行數(shù)據(jù)集劃分,劃分方法如圖7所示,按照670的固定長度以固定的步長500分別從正常數(shù)據(jù)中抽取738個數(shù)據(jù)段,按照3∶1方法劃分訓練集與測試集,從磨損工況、松靴工況下隨機抽取160個樣本作為測試集。
圖7 定長數(shù)據(jù)段劃分方法
對劃分完成的數(shù)據(jù)集使用OCSVM方法進行異常檢測,得到如表2的結(jié)果,對比方法表現(xiàn),OCSVM在使用DTW方法對數(shù)據(jù)劃分生成的數(shù)據(jù)集上表現(xiàn)更好,DTW方法在對數(shù)據(jù)進行劃分時盡可能地找到與模板波形最為相似的子數(shù)據(jù)段,將其作為數(shù)據(jù)集能夠保存原始數(shù)據(jù)集中較多的信息,從而更有利于算法的識別,提升算法識別效果。
表2 不同數(shù)據(jù)劃分方法對結(jié)果影響
按照查準率、召回率、F1 均值3個方面對方法效果進行評估,將隨機卷積核+孤立森林方法與孤立森林方法、OCSVM方法、5層BP神經(jīng)網(wǎng)絡(網(wǎng)絡結(jié)構(gòu)為1024-512-128-32-2,激活函數(shù)tanh,使用ADAM作為優(yōu)化器,迭代5000輪,學習率0.0001)進行比較,得到表3與圖8的結(jié)果。通過比較不同方法的結(jié)果,能夠得到如下結(jié)論:
圖8 不同方法的平均指標
表3 不同方法的表現(xiàn)
(1) 隨機卷積核+孤立森林方法在判斷正常工況數(shù)據(jù)段上的召回率與F1均值為91.9%和95.7%,相較于孤立森林方法,在相同數(shù)據(jù)上的召回率與F1均值分別提高了12.5%與7.2%,且隨機卷積核+孤立森林方法在松靴與缸體磨損數(shù)據(jù)上的表現(xiàn)均優(yōu)于單一孤立森林算法。這表明,隨機卷積核+孤立森林方法相較于單一孤立森林方法,識別正常數(shù)據(jù)的能力更強,有利于該方法在判別更復雜種類的異常數(shù)據(jù)時具有更高的識別準確度;
(2) 對隨機卷積核+孤立森林方法所得結(jié)果進一步分析,該方法在存在異常的數(shù)據(jù)集上召回率達到100%,而在正常數(shù)據(jù)集上的160個樣本中僅有13個被誤判為異常。被誤判的樣本基本每隔一個周期出現(xiàn)一次,分析原因可能是誤檢的正常數(shù)據(jù)樣本與其余數(shù)據(jù)樣本存在特征數(shù)據(jù)上的細微差異,存在故障前兆,這也從另一方面說明了該方法對于異常數(shù)據(jù)的敏感性;
(3) 隨機卷積核+孤立森林方法與BP神經(jīng)網(wǎng)絡相比較,BP神經(jīng)網(wǎng)絡對正常數(shù)據(jù)與缸體磨損數(shù)據(jù)辨識能力較強, 但對松靴數(shù)據(jù)辨識能力較差,主要原因可能是松靴數(shù)據(jù)與正常數(shù)據(jù)波形非常類似。相比之下隨機卷積核+孤立森林方法對于正常數(shù)據(jù)、松靴數(shù)據(jù)與缸體磨損數(shù)據(jù)辨識能力都比較強,驗證了方法的優(yōu)勢。
綜合比較所得結(jié)果可以得到,隨機卷積核+孤立森林方法相較于其他方法有著較為明顯的優(yōu)勢,在查準率、召回率以及F1均值等指標上,該方法效果均優(yōu)于其他方法,尤其相對于單一孤立森林方法效果提升明顯,驗證了隨機卷積核層對于數(shù)據(jù)特征提取的強大能力;在檢測時間等指標上,隨機卷積核+孤立森林方法所用檢測時間處于所有方法的中間位置,且與其他方法耗費時間差距比較小,驗證了方法的實時性比較好。
提出了一種基于隨機卷積核與孤立森林的柱塞泵異常檢測方法,通過研究并實驗對比,得到如下結(jié)論:
(1) 隨機卷積核的權重等參數(shù)無需通過訓練來學習,比較適合柱塞泵實時異常檢測場景,且算法不需要人為對原始數(shù)據(jù)做太多處理,對異常數(shù)據(jù)敏感,適應性較強。
(2) 提出的基于隨機卷積核的異常檢測方法,只需正常工況下的壓力脈動數(shù)據(jù)就可具備異常檢測的能力,異常檢測準確度在95%以上。