江志農,趙南洋,夏 敏,趙飛松,高佳麗,張進杰
(1.北京化工大學 高端機械裝備健康監控與自愈化北京市重點實驗室,北京100029;2.中石化重慶天然氣管道有限責任公司,重慶408000;3.北京化工大學 壓縮機技術國家重點實驗室壓縮機健康智能監控中心,北京100029)
柴油機作為一種典型的內燃機械,在石油鉆井、艦船動力、應急發電、工程機械等等工業領域應用十分廣泛。但由于柴油機機械結構復雜、易損件多、工作條件惡劣,實際運行中故障頻發,如失火、氣門磨損、拉缸、連桿斷裂等,易造成嚴重的經濟損失并影響安全穩定生產。因此,柴油機故障監測診斷技術一直以來都是研究熱點。在離線測試方面,可通過定期采集油品,進行光譜、鐵譜分析,對潤滑油內的各類元素含量進行測試[1-2]。應用振動分析方法、噪聲分析方法進行柴油機故障診斷已有一定的研究,梅檢民等提出了一種基于高階累積量的振動信號分析方法,采用高階累積量的AR雙譜,對連桿軸承故障加速振動信號進行分析[3],沈虹等提出了一種基于角域四階累積量切片譜的柴油機連桿軸承故障特征提取方法[4],程利軍等提出了一種基于階比跟蹤及共振解調的連桿軸承故障診斷方法[5]。
但是,由于柴油機工況復雜,如功率、轉速及其他工作環境的變化,導致機組監測信號多變,給故障監測診斷帶來了較大的難度。例如,柴油機故障監測系統的報警線設置,若按照單一報警線設置,在變負荷工況下將會產生較多的誤報、漏報;若根據機組運行狀態設置,則需要對柴油機運行狀態數據開展深入的分析研究,以機組運行狀態的自動識別為基礎。
因此,本文提出了一種基于流形學習和KNN算法的柴油機工況識別方法,可實現對柴油機運行狀態的自動分類。方法融合了機組的振動、溫度、壓力等多源信號特征構建特征向量;通過流形學習t-分布鄰域嵌入算法(t-SNE)實現特征向量的維數約簡和敏感特征提取,降低數據分析處理難度;最后通過K 最近鄰分類算法(KNN)構建了自動分類模型,完成柴油機運行負荷狀態的自動分類。
流形學習(Maniflod Learning)是一種非線性降維方法[6],首次由Bregler和Omohundro提出,假設數據是均勻采樣于一個高維歐氏空間,其采樣點的分布具有低維流形的結構特征,流形學習就是從高維的采樣數據中提取出低維流形結構,并求出相應的嵌入映射,從而實現數據特征維數的約簡及數據可視化[7]。
目前,其算法包括t-分布鄰域嵌入(t-distributed Stochastic Neighbor Embedding,t-SNE)[8]、等距映射(Isometric Feature Mapping,Isomap)[9-10]、局部線性嵌入(Local Linear Embedding,LLE)[11]、隨機鄰域嵌入(Stochastic Neighbor Embedding,SNE)[12]等。其中t-SNE 算法是一種利用概率形式的降維算法,來緩解在低維空間中映射數據點之間擁擠問題。t-SNE 算法用KL散度(Kullback-Leibler divergence)來度量兩個分布之間的相似性,使數據在低維空間上有聚類的效果,且不同類別的數據簇之間存在一定的距離,這對使用分類算法來實現柴油機運行工況識別提供了良好條件,因此本文選用t-SNE 算法來對柴油機運行工況特征向量進行降維及可視化處理。
t-SNE算法的步驟如下:
(1)原始數據,記為:X={x1,x2,···,xn};
(2)設置迭代次數T,學習速率η,動量α(t);
(3)計算成本函數參數(perplexity Perp)

上式中σi是數據點xi的高斯方差;
(5)計算低維相似度qij

(6)計算KL散度(Kullback-Leibler divergence)

上式中KL散度是Q和P之間的相似度的度量;
(7)計算梯度最小化KL散度

(8)更新

(9)循環迭代步驟(5)-步驟(8),迭代T次;
(10)最終得到低維數據

K最近鄰分類算法(KNN)被廣泛應用于數據挖掘和數據分類。如果待分類樣本的樣本數據點在空間中有K個距離最近樣本數據點,其中某一類別的數據點占絕大多數,則KNN算法判定該樣本數據點屬于這個類別。
KNN 算法在待識別數據點與樣本數據點之間的距離度量主要有歐式距離,曼哈頓距離和閔科夫斯基距離,其中閔科夫斯基距離定義如下

其中:d為維數,p為范數。當p=1時為曼哈頓距離;當p=2時為歐式距離。
本文選用歐氏距離作為KNN 算法待識別數據點與樣本數據點之間的空間距離的度量。歐式距離定義如下

本方法的處理流程圖如圖1所示。
首先根據柴油機監測信號進行多信號工況敏感特征參數提取,形成數據樣本、測試樣本和待識別工況數據,一起進行流行學習t-SNE算法降維。設定K值區間,使用降維后的樣本數據和測試數據對KNN工況識別模型進行K值優化,確定識別率最高的K值的KNN模型進行工況識別結果輸出。
(1)實驗臺機組介紹
實驗臺柴油機為TBD234V12柴油機,機組如圖2所示,其主要技術參數如表1所示。

圖1 方法處理流程圖

表1 TBD234V12缸柴油機主要技術參數

圖2 實驗臺TBD234V12型柴油機
該機組已自帶部分溫度、壓力傳感器,可實現對總排氣溫度、冷卻水溫度、潤滑油壓力等參數的在線監測。同時,在該機組上新增了振動、瞬時轉速、活塞上止點信號傳感器,對缸蓋振動、曲軸箱振動、齒輪箱振動、渦輪增壓器振動、瞬時轉速、活塞上止點信號進行在線監測。從上述測點信號中,構建了如表2所示的信號特征集。
(2)正常狀態下工況分類
對機組正常狀態下不同負荷、不同轉速狀態的數據進行測試應用,共計12種工況。

表2 多源信號監測參數特征集
? 轉速1 500 r/min,扭矩700 Nm,1 000 Nm,1 300 Nm。
? 轉速1 800 r/min,扭矩700 Nm,1 000 Nm,1 300 Nm,1 600 Nm。
? 轉速2 100 r/min,扭矩700 Nm,1 000 Nm,1 300 Nm,1 600 Nm,2 200 Nm。
分類結果如下圖4-圖6所示。

圖4 t-SNE算法二維映射降維結果

圖5 t-SNE算法三維映射降維結果

圖6 KNN算法識別結果
圖4和圖5分別為二維和三維映射下的12種工況數據的分布情況,3種轉速下的數據在空間3個地方集聚,同轉速不同負荷的數據在集聚區團聚分布。圖5為最優K值下的KNN算法二維和三維各工況識別率圖,由圖顯示,三維下的KNN識別率優于二維。
(3)故障狀態下工況分類
由于柴油機機械結構復雜,激勵眾多,常常發生故障。在柴油機發生故障的情況下,其運行工況的識別準確率必然受到影響。本文針對柴油機常見的氣門間隙故障,使用耦合了故障的監測數據來研究故障對柴機油運行工況識別結果的影響。
實驗工況共計6種:
? 轉速1 500 r/min,扭矩700Nm,1 300 Nm;
? 轉速1 800 r/min,扭矩700 Nm,1 300 Nm;
? 轉速2 100 r/min,扭矩700 Nm,1 300 Nm。
分類結果如下圖7-圖8所示。

圖7 t-SNE算法二維映射降維結果

圖8 t-SNE算法三維映射降維結果

表3 氣門磨損狀態下工況三維識別結果
圖7和圖8分別為二維和三維映射下的6 種工況故障耦合數據的分布情況,6種工況數據分別在空間集聚,部分故障數據點偏移數據集。由表3顯示為氣門磨損狀態下工況三維識別正確率略有降低。
實驗臺機組正常狀態下的12種運行工況數據,分別使用t-SNE 算法向二維和三維空間映射,采用KNN算法識別,二維和三維空間的工況數據均得到了較好的分類,且三維空間上KNN綜合識別率優于二維。
氣門磨損故障數據集的工況識別結果顯示,部分故障數據點偏移正常數據集,KNN識別率在工況轉速1 500 r/min,扭矩1 300 Nm 和工況轉速2 100 r/min,扭矩700 Nm降低,但整體識別準度仍較好。
以某20 缸大型柴油機監測數據為基礎,利用5種負荷狀態(0%,50%,85%,100%,110%)監測數據進行方法驗證,結果如下所示。

圖9 t-SNE算法二維映射降維結果

圖10 t-SNE算法三維映射降維結果
圖9和圖10分別為某20 缸柴油機五種負荷狀態的特征向量樣本和測試數據集經過流形學習t-SNE算法降維至二維和三維的結果,其中0%負荷的數據點離其他四種負荷數據點較遠。50 %,85%,100%,110%的數據點集之間的界限明顯。
之后使用KNN算法對測試數據點進行識別,將K值的區間設定為5~20,分別計算不同K值的KNN識別率。由表4和表5顯示,二維情況下,K值為6時,各工況平均識別率94.15%最高;三維情況下,K值為7 時,各工況平均識別率94.16%最高。因此,在二維時選擇K值為6 的KNN 進行識別;在三維時選擇K值為7的KNN進行識別。
為了進一步驗證本文方法的有效性,利用20缸大型柴油機監測數據,對比應用了主成分分析(PCA)方法、BP 神經網絡方法處理上述數據,結果如下所示。

表4 二維映射下不同K值KNN識別率/(%)

表5 三維映射下不同K值KNN識別率/(%)
圖10和圖11分別為某20 缸柴油機5 種負荷狀態的特征向量樣本和測試數據集經過PCA 算法降維至二維和三維的結果。數據經過PCA降維后,從數據分布看,數據混淆的程度比t-SNE嚴重。
圖13為二、三維的BP 和KNN 算法的5 種工況識別率比較圖。
從上述結果中,可看出:
(1)t-SNE 算法比PCA 方法在數據降維和聚類效果上具有優勢;

圖11 PCA算法二維映射降維結果

圖12 PCA算法三維映射降維結果

圖13 BP神經網絡與KNN算法分類結果比較
(2)針對本文20缸柴油機數據樣本,KNN算法對柴油機運行工況識別效果優于BP神經網絡;
(3)數據特征向量降維至三維的工況識別率優于二維,因此合理選擇降維維度對提高分類準確度有重要作用。
本文提出了一種基于流形學習和KNN 算法的柴油機工況識別方法,提取了對工況敏感的特征參數,組成特征向量,使用流形學習t-SNE算法對特征向量數據降維,最后進行KNN算法工況識別。利用不同機組數據驗證了方法的實用性;并針對氣門故障條件下的柴油機運行狀態識別開展了研究。
得到的結論如下:
(1)基于流行學習和KNN 算法的柴油機工況識別方法對正常狀態下的機組運行狀態具有較高的識別準確率;
(2)柴機油故障對工況的識別產生了不利影響,降低了識別準確性,但是總體仍達到了較好的識別準確率。后續將針對故障特征與負荷狀態特征進行深入研究,一方面提高柴油機工況識別準確度,另一方面為變負荷工況故障監測診斷奠定基礎。