姚立,孫見君,馬晨波
(南京林業大學 機械電子工程學院,南京 210037)
滾動軸承是旋轉機械的重要組成部分,其健康狀況直接影響設備的服役性能。據統計,約有40%的旋轉機械故障源于滾動軸承損傷,因此,開展軸承故障診斷研究對于保障設備安全,穩定生產具有重要意義[1-3]。
軸承振動信號中包含豐富的狀態信息,是分析軸承故障狀態的重要手段。從機械設備上采集得到的軸承振動信號往往具有非線性、非平穩性的特點,而且,隨著機械設備監測點的增多,傳感器采樣頻率的提高,監測時長的增加,使得監測數據呈現出“大數據”的特征,這些因素都增加了準確識別軸承故障類型的難度。
針對軸承故障類型識別困難的問題,以深度學習為主的模式識別方法憑借強大的數據處理能力和學習能力[4-6],越來越多地應用于機械故障診斷領域。文獻[7]從齒輪箱振動信號中提取了時、頻域特征,輸入到構建好的卷積神經網絡(CNN)中實現了故障識別。文獻[8]分析了不同故障類型下的軌跡圖像,結合CNN實現了軸承故障的準確識別。文獻[9]將軸承振動信號轉換為灰度圖,利用改進LeNet-5模型實現故障診斷。文獻[10]提出了一種基于希爾伯特-黃變換和CNN的診斷方法,并成功應用于滾動軸承的故障診斷。文獻[11]建立了基于長短期記憶網絡(LSTM)的診斷模型,對含有混合故障以及強噪聲的航空發動機振動信號進行了故障識別。文獻[12]利用MCKD-Teager能量算子提取軸承振動信號的特征,并用LSTM實現了軸承的故障分類。
盡管上述診斷方法已經實現了故障診斷的功能,但仍然存在以下問題:1)在對原始信號進行預處理時缺乏完善的重構,破壞了數據點的相關性,從而造成信息的丟失;2)CNN模型用于靜態輸出,其當前輸出只與當前輸入有關,而軸承振動信號具有明顯的時間特性,當前輸出還與過去一段時間的輸出有關,CNN很難處理這類包含時間信息的數據;3)LSTM等循環神經網絡(RNN)可用于時間上的連續狀態輸出,具有短期記憶能力且能夠有選擇地將累積的信息進行遺忘,但其本身不具備特征提取能力,依賴于人工提取的時頻域等特征。
基于以上分析,本文首先采用格拉姆角場(Gramian Angular Fields,GAF)對軸承振動信號進行重構,然后再利用CNN和RNN相融合的模型進行故障識別,兼具了CNN在時空上的平移不變性和RNN的記憶能力,可以完整地表現原始振動信號中的相關性,從而提高軸承故障診斷的精度。

(1)
(2)

根據編碼過程中所采用的三角函數,GAF編碼方法可以將時間序列轉化為2種特征圖像,即基于正弦函數的格拉姆角差場(GADF)圖和基于余弦函數的格拉姆角和場(GASF)圖,其定義為
GGADF=
(3)
GGASF=
(4)

軸承振動信號進行GAF編碼的過程如圖1所示,原始時域信號中2個較為明顯的波峰對應著GAF圖像中相應位置不同顏色的點、線所組成的交叉特征,且峰值較大部分顏色較深,特征也愈發明顯(見圖1標注處)。此外,原始波形中的其余振蕩幅度較小的部分也在GAF圖像中得到了很好地體現(表現為圖像中顏色較淺的特征),因此GAF編碼完成了對原始信號的完整映射,避免了信息的丟失。

圖1 軸承振動信號GAF圖像編碼過程
受生物學感受野機制啟發而提出的卷積神經網絡一般由卷積層、池化層和全連接層交叉堆疊而成,通常用于圖片和視頻的分析任務,在結構上具有局部連接、權值共享和匯聚的特征,具有一定的平移、縮放以及旋轉不變性,效果優于其他神經網絡模型。在本文中,卷積神經網絡的輸入對象為GAF圖像,經過一系列堆疊的卷積池化操作后,輸出故障類型的標簽。
2.1.1 卷積層
卷積層利用多個卷積核對輸入圖像進行卷積,通過一個非線性激活函數輸出一系列特征圖[14],整個計算過程可定義為
(7)

非線性激活函數通常選用線性修正單元 ReLU,其定義為
(8)

2.2.2 池化層
池化層位于卷積層之后,目的是降低特征圖的維數,進一步減少可訓練的參數,并在一定程度上保持特征的尺度不變性,其定義為
(9)

2.2.3 全連接層
輸入圖像在經過多個堆疊的卷積池化操作后,將得到的特征圖展開為一維特征向量并輸入到全連接層中,建立特征與故障類別的映射關系,可表示為
yk=f(ωkxk-1+bk),
(10)
式中:k為網絡的層數;yk為全連接層的輸出;xk-1為全連接層的輸入;ωk為權重;bk為網絡偏置。
門控循環單元網絡(GRU)是傳統循環神經網絡基于門控機制的變體,有效改善了RNN中的長程依賴問題,其包括更新門zt和重置門rt,數學表達式為
zt=σ(Wzxt+Uzht-1+bz),
(12)
rt=σ(Wrxt+Urht-1+br),
(13)
式中:σ(·)為Logistic函數,輸出區間為(0,1);xt為當前時間步輸入;ht-1為上一時刻的外部狀態。
(14)

(15)
基于CNN-RNN的故障診斷方法集特征提取和故障模式識別于一體,通過引入GRU網絡使該方法具有一定的特征記憶能力,從而實現軸承端到端的智能故障診斷。具體診斷流程如圖2所示:將采集的振動信號按一定長度截取為一系列樣本段;通過格拉姆角場將樣本編碼為224×224×3的GADF和GASF圖像并劃分為訓練集、驗證集和測試集;將訓練集和驗證集輸入到網絡模型進行訓練和學習,不斷更新網絡參數;將測試集應用于訓練好的模型中實現故障分類。

圖2 基于CNN-RNN的故障診斷流程圖
為驗證所建立模型在軸承故障診斷中的有效性和實用性,采用XJTU-SY滾動軸承加速壽命試驗數據集[15]和美國凱斯西儲大學(CWRU)軸承數據集[16]進行分析。
選取XJTU-SY滾動軸承數據集中的Bearing1進行分析,試驗軸承型號為LDK UER204,電動機轉速為2 100 r/min,采集頻率為25.6 kHz。分別選取327 680個數據點用于樣本制作,每類狀態包含326個樣本,建立了一個具有1 630個樣本的數據集,見表1。每種故障狀態均采用“獨熱碼(one-hot)”進行編碼,用一個除了某一維為1其他各維均為0的向量表示類別,向量的維數與故障類別數相同。

表1 XJTU-SY試驗樣本類別描述
選取CWRU數據集中48 kHz采樣頻率下驅動端SKF6205深溝球軸承的振動信號,包含正常運行狀態總計10種故障模式,每類故障類別包含480個樣本,建立了一個具有4 800個樣本的數據集,見表2。

表2 CWRU試驗樣本類別描述
每種狀態下軸承振動信號的長度是固定的,為在有限的數據集中獲得盡可能多的樣本,采用滑窗取樣的方式截取信號段。如圖3所示,將滑動窗口的長度作為截取樣本的長度,移動步長(通常小于滑動窗口的長度)為滑窗一次移動的距離,使相鄰2個樣本之間部分重疊。令樣本長度為2 000,移動步長為1 000,即以50%的重疊率進行樣本分割,使樣本數量增加1倍[17-18],同時減輕了信號因直接截斷而導致特征信息丟失的現象。

圖3 滑窗采樣
將XJTU-SY軸承數據的每類故障狀態信號通過滑窗采樣劃分為326組,再對劃分好的信號進行GAF變換,得到326張振動信號時序圖像;同樣對CWRU軸承數據進行劃分和GAF變換,得到每種故障狀態下的480張時序圖像。2個數據集中所有狀態的GAF圖像分別按照6∶2∶2的比例分為訓練樣本、驗證樣本和測試樣本。上述2個軸承數據集中不同故障狀態下的GAF圖像分別如圖4和圖5所示。

圖4 基于XJTU-SY軸承數據集的5種GAF圖像

圖5 基于CWRU數據集的10種GAF圖像
卷積核的大小、數目、移動步長、是否補零,池化層的大小以及全連接層中的神經元個數等參數均會對卷積神經網絡的識別效果造成影響。CNN選用在圖像識別領域表現較好的VGG網絡[19]并在預訓練VGG16網絡的基礎上進行參數調整。VGG網絡通過不斷堆疊較小卷積核的網絡層獲得相同的感受區域,在減少模型參數的同時增加了其非線性的特點。
本文所建立的CNN-RNN模型是在VGG16網絡的最后一個池化層后加上一個GRU網絡用于訓練,最后將特征圖展開為一維向量輸入全連接層中,并建立特征向量與故障類別的映射,具體結構如圖6所示,模型擁有12個卷積層,5個池化層,1個GRU網絡層,1個全連接層和1個激活函數為softmax的輸出層。卷積層采用3×3的卷積核提取特征,并通過ReLU函數激活輸出。池化層采用2×2的卷積核降低輸入數據的維度,dropout層的比率設置為0.3。經過多次堆疊的卷積池化操作后,輸出特征圖的尺寸大小從(224,224,3)變為(7,7,512)。通過Reshape方法將輸出特征圖的大小重構為(49,512)并輸入到GRU網絡中提取相應的時間信息。分析完時間特征后利用全連接層對GAF圖像進行排序,判斷其隸屬類別。CNN-RNN模型的總體結構和參數見表3,試驗平臺為Python+Tensorflow2.0,硬件為Intel(R) Xeon(R) E5-2680 v4+Nvidia 2070。

表3 CNN-RNN網絡結構參數

圖6 CNN-RNN的網絡結構
將所構造的訓練樣本和驗證樣本輸入所建立的CNN-RNN模型中訓練,利用測試樣本對模型性能進行檢驗。模型的參數設置如下:批處理圖片數(batchsize)為32,迭代步數(Epoch)預設為500,選擇Adam算法作為優化器,交叉熵作為損失函數;學習率設置在10-4~10-5之間動態可調,即訓練過程中準確率不再上升時,學習率每次減少10%;引入Early-Stopping機制以防止模型出現過擬合現象,即模型的損失函數值在迭代一定次數不再顯著變化時,停止訓練。
采用XJTU-SY和CWRU軸承數據集進行故障診斷模擬試驗的結果如圖7所示:訓練集上的識別率高于驗證集,并且在2種訓練集上均達到了100%;XJTU-SY軸承數據集中,GADF和GASF圖在測試集的識別率分別為99.08%和96.47%;CWRU軸承數據集中,GADF和GASF圖在測試集上識別率分別為98.15%和96.94%。以上結果表明本文的CNN-RNN模型具有較強的特征學習能力和故障診斷能力,能夠準確識別軸承狀態。

圖7 軸承故障識別結果
為驗證CNN-RNN模型在軸承故障診斷中的優勢,將其與標準VGG16模型和標準GRU模型進行對比,使用相同的數據集分別在VGG16和GRU模型上進行訓練,參數設置與CNN-RNN模型中相應部分相同。
3種模型的診斷結果見表4:GRU模型在訓練集上均達到了100%的識別率,但在測試集上的識別率僅為79.69%和85.00%;相對于GRU模型,VGG16模型在測試集上的識別率均有較大的提升,但仍低于CNN-RNN模型,說明CNN與RNN融合后要優于單獨使用CNN模型或RNN模型;同一模型中,GADF圖像的識別率均比GASF圖像高,說明GADF編碼方式的特征表達能力更強。以上分析證明了CNN-RNN模型能夠有效解決卷積神經網絡難以處理時間序列數據和循環卷積網絡無法提取繁雜數據深層特征的問題。

表4 不同模型的診斷結果
為更好地驗證GAF編碼方法在軸承故障診斷領域的性能,基于希爾伯特-黃變換(HHT)將原始一維信號轉換為時頻圖,同樣按6∶2∶2的比例劃分訓練集、驗證集和測試集,并將訓練集和測試集輸入CNN-RNN模型進行特征提取和故障分類,結果如圖8所示:GADF圖像的識別率均高于HHT圖像,HHT圖像的識別率則高于GASF圖像,GASF圖像的像素較為單一且數據樣本量不足等因素共同作用導致其識別率較低。因此,在實際使用時,可優先考慮用GADF圖像進行數據處理。

圖8 不同編碼方法對軸承故障信號時頻圖的識別結果
采用GAF編碼方法將軸承的一維振動信號轉換為二維圖片,對原始信號進行重構并保留了其中的相關性。在VGG16模型的基礎上,提出了一種用于滾動軸承狀態識別的CNN-RNN模型。XJTU-SY和CWRU軸承數據集上的試驗結果表明CNN-RNN模型能達到98.15%以上的識別率,相對于標準VGG16模型和標準GRU模型,CNN-RNN模型的識別效果更好;相對于HHT和GASF編碼方法,GADF編碼方法對原始信號故障特征的表達能力更強,與CNN-RNN模型相結合時具有更高的識別率。