谷玉海, 朱騰騰, 饒文軍, 黃艷庭
(北京信息科技大學現(xiàn)代測控技術教育部重點實驗室 北京,100192)
滾動軸承是一種應用非常廣泛的機械零件,同時也是機器中最容易出現(xiàn)故障的零件之一。如果能夠及時、準確地對滾動軸承故障狀態(tài)進行識別,對保持機器運轉(zhuǎn)的穩(wěn)定性和安全性具有重要意義。隨著故障診斷理論研究的不斷深入,學者們提出了各種故障診斷方法,例如:BP 神經(jīng)網(wǎng)絡[1]、PNN[2]、小波分析[3]、EMD[4]、集合經(jīng)驗模態(tài)分解(ensemble empirical mode decomposition,簡 稱EEMD)[5]和 奇 異值分解(singular value decomposition,簡稱SVD)[6]等。目前,基于機器學習的故障診斷方法主要有Logistic 回 歸[7]、支 持 向 量 機(support vector machine,簡稱SVM)[8],人工神經(jīng)網(wǎng)絡(artificial neural network,簡稱ANN)[9]和模糊推斷[10]。
隨著人工智能的快速發(fā)展,深度學習在圖像識別和語音識別等方面的應用日益廣泛,在故障診斷領域的應用也越來越成為研究的熱點[11]。文獻[12]采用隨機高斯矩陣的方法對軸承信號進行變換域壓縮采集,并將處理后的信號作為深度神經(jīng)網(wǎng)絡的輸入實現(xiàn)故障的智能診斷與識別。文獻[13]采用雙樹復小波(dual-tree complex wavelet transform,簡稱DTCWT)與深度信念網(wǎng)絡(deep belief network,簡稱DBN)結合的故障診斷方法對故障類型進行識別。
由于深度學習需要大量的訓練數(shù)據(jù),所以在沒有足夠數(shù)據(jù)的情況下難以取得令人滿意的結果。CNN 是一種廣泛應用于圖像識別領域的深度學習網(wǎng)絡方法并取得了優(yōu)異效果,其初衷是對二維圖片進行分類,不能直接用來識別一維振動數(shù)據(jù)。Peng等[14]提出了一種一維殘差塊,并在此基礎上提出了一種新的更深層次的一維卷積神經(jīng)網(wǎng)絡(deeper one-dimensional convolutional neural network,簡稱Der-1DCNN)。該框架包含了殘差學習的思想,能夠有效學習高層次和抽象的特征,同時緩解了訓練困難和更深層次網(wǎng)絡性能下降的問題。Levent 等[15]提出了一種基于原始時間序列傳感器數(shù)據(jù)的通用實時軸承故障診斷方法,該方法利用自適應Der-1DCNN分類器進行特征提取和模式識別。
如何將一維時域振動信號轉(zhuǎn)換為二維矩陣或圖像,是目前基于卷積神經(jīng)網(wǎng)絡的研究熱點。Wen等[16]提出了一種基于51 個卷積層的調(diào)整卷積神經(jīng)網(wǎng) 絡(tweaked convolutional neural networks,簡 稱TCNN)故障診斷方法。將TCNN 結合遷移學習,在數(shù)據(jù)集ImageNet 上訓練ResNet-50 作為特征提取器進行故障診斷。實驗表明,TCNN 優(yōu)于其他深度學習模型和傳統(tǒng)方法。Chang 等[17]針對局部弱特征信息,提出了一種基于變分模態(tài)分解(variational mode decomposition,簡 稱VMD),SVD 和CNN 的行星齒輪特征提取與故障診斷方法。實驗結果表明,該方法能夠有效提取局部弱特征信息,準確識別不 同 的 故 障。Sheng 等[18]提 出 了 一 種 利 用CNN 直接對連續(xù)小波變換(continuous wavelet transform,簡稱CWT)進行分類的診斷方法,利用該方法在轉(zhuǎn)子實驗平臺進行了一系列實驗。結果表明,該方法能較準確地診斷故障特征。
筆者提出了一種基于EMD 二值化圖像和CNN的故障診斷方法,將采集到的各類滾動軸承數(shù)據(jù)轉(zhuǎn)化為特征明顯的二值化圖像,采用CNN 進行分類訓練和識別。
滾動軸承數(shù)據(jù)是由軸承加速計獲得,可在短期內(nèi)快速獲得大量的振動數(shù)據(jù)。筆者將振動數(shù)據(jù)等距劃分為若干段,對每段振動數(shù)據(jù)進行EMD,對采用相關系數(shù)篩選得到的IMF 分量進行快速傅里葉變換(fast Fourier transform,簡稱FFT)獲取頻譜圖,并將頻譜圖數(shù)據(jù)壓縮成灰度圖像作為CNN 分類網(wǎng)絡訓練的輸入數(shù)據(jù)。
EMD 方法是一種自適應信號時頻分析方法[19],對于非線性和非平穩(wěn)信號的處理具有獨特優(yōu)勢,在海洋[20]、大氣[21]及故障診斷[4]等領域得到了廣泛應用。EMD 方法獲得的各IMF 分量包括了原始信號不同時間尺度的局部特征,前幾個IMF 分量體現(xiàn)了原始信號的主要特征。為保證構造的二值化圖像能夠有效保留原始信號的故障特征,同時避免噪聲等成分的的干擾,筆者采用相關系數(shù)法篩選分解后的各個IMF 分量,使用相關系數(shù)最大的IMF 分量作為生成二值化圖像的信號。相關系數(shù)的計算公式[22]為
其中:L為信號長度;ρ(i)為第i個IMF 分量與原始信號x(t)之間的相關系數(shù)。
EMD 二值化圖像構造流程如圖1 所示。為了滿足CNN 的訓練要求,需要生成具有一定特征的圖片作為訓練數(shù)據(jù)。首先,選取一段長度為M的振動信號進行EMD;其次,將獲取的一階IMF 分量進行FFT。假設FFT 后有2N個數(shù)據(jù)點,根據(jù)FFT 對稱性,選取前N個數(shù)據(jù)點作為構造灰度圖的一行。一共進行N次,得到N行數(shù)據(jù),將N行長度為N的數(shù)據(jù)點進行堆疊,即可生成一個尺寸為N×N的灰度圖矩陣。
為了避免圖像對比度不足而對后續(xù)處理帶來干擾,對生成的灰度圖矩陣的每行進行歸一化處理,并對整體進行二值化處理。歸一化處理的公式為
其中:x,y分別代表歸一化前、歸一化后的數(shù)值;Vmax,Vmin分別為原始灰度圖像的最大值和最小值。
圖1 EMD 二值化圖像構造流程Fig.1 EMD binarization image construction process
為了能夠有效識別軸承故障二值化圖像,需要設計合理的CNN。目前,CNN 主流的設計方式,如經(jīng)典的LeNet-5 網(wǎng)絡,其輸入的二維圖像先經(jīng)過2 次卷積層到池化層,再經(jīng)過全連接層,使用Softmax 分類作為輸出層。由于LeNet-5 的網(wǎng)絡結構設計和參數(shù)選擇不適合用于本研究軸承故障二值化圖像的識別,故對CNN 網(wǎng)絡結構進行簡要介紹。
輸入層是整個神經(jīng)網(wǎng)絡的第1 層,也是整個卷積神經(jīng)網(wǎng)絡獲取圖像的途徑,表示輸入的一張圖片的像素矩陣,在Lenet-5 原始模型框架中,輸入層的圖像像素為32×32。
卷積層是整個網(wǎng)絡最重要的組成部分,用來實現(xiàn)對輸入的圖像進行特征提取,從而獲得比原始圖像抽象程度更高的特征。在通過卷積層處理后,網(wǎng)絡的節(jié)點矩陣會明顯加深。卷積層特征的計算公式為
池化層通常出現(xiàn)在卷積層之后,二者相互交替出現(xiàn),且每個卷積層都與一個池化層一一對應。池化函數(shù)常用的池化方法有最大池化、平均池化和隨機池化等。池化層l中激活值的計算公式為
筆者采用最大池化,即選取輸入圖像中像素為Ml×Ml的非重疊滑動框內(nèi)所有像素的最大值。池化層的作用是對圖像進行降維處理,縮減圖像的像素,但會增加圖像的“厚度”,目的是把更多特征從圖像中提取出來。
損失函數(shù)是用來估量模型的預測值f(x)與真實值Y的不一致程度,它是一個非負實值函數(shù),通常用L(Y,f(x))來表示。損失函數(shù)值越小,說明模型的魯棒性越好。筆者采用的損失函數(shù)公式為
為使卷積神經(jīng)網(wǎng)絡損失函數(shù)L(y?,y)取得全局最小值,實質(zhì)上是不斷更新權值W和偏差向量b,使其取得最優(yōu)值。為防止神經(jīng)網(wǎng)絡過擬合,損失函數(shù)會增加二范數(shù)項。改進后的損失函數(shù)為
其中:λ為超參數(shù)項。
通過卷積和池化處理之后,圖像信息被抽象成更高級的圖像特征,在網(wǎng)絡的末尾由全連接層實現(xiàn)網(wǎng)絡的最終分類結果。
輸出層主要用來實現(xiàn)最終分類,通過輸出層得到輸入圖像屬于不同類別預測的概率值。
筆者采用控制變量的方式對網(wǎng)絡進行實驗,確定最終的網(wǎng)絡結構和參數(shù)。根據(jù)CNN 設計的研究[23]以及筆者所需要識別的圖像相對簡單,將卷積層在2~5 層之間進行選取,卷積核主要有3×3,5×5 和7×7 共3 種,典型的激活函數(shù)主要有Sigmoid,Tanh,ReLU 和Leaky ReLU 4 種[24-25]。為 了得到更加科學有效的網(wǎng)絡,筆者采用排列組合的方式對以上結構參數(shù)進行研究。實驗分組情況如表1所示。
表1 實驗分組情況Tab.1 Experimental grouping
圖2 為整體技術路線流程圖,數(shù)據(jù)處理步驟如下:
1)將采集到的各種類型的時間序列數(shù)據(jù)進行等間隔劃分,作為制作訓練及測試數(shù)據(jù)集的原始樣本數(shù)據(jù);
圖2 筆者整體技術路線流程圖Fig.2 This article overall technical route flow chart
2)采用EMD 對已經(jīng)劃分的各段數(shù)據(jù)進行分解,將獲取的IMF 采用相關系數(shù)進行篩選,篩選相關系數(shù)最大的IMF 分量,并將IMF 分量進行FFT;
3)將每次FFT 分析后的數(shù)據(jù)值作為矩陣的一行,不斷提取數(shù)據(jù)進行處理,累積構造矩陣;
4)將矩陣進行歸一化處理后得到灰度圖,并將灰度圖像轉(zhuǎn)化為二值化圖像,按照以上方式將各種軸承狀態(tài)的時間序列數(shù)據(jù)生成若干幅二值化圖像,作為CNN 訓練和測試的數(shù)據(jù)集;
5)采用生成的二值化圖像數(shù)據(jù)集訓練卷積神經(jīng)網(wǎng)絡,同時在訓練過程中根據(jù)訓練結果優(yōu)化、調(diào)整網(wǎng)絡結構和網(wǎng)絡參數(shù);
6)將訓練好的網(wǎng)絡對測試數(shù)據(jù)集進行測試,得出圖片分類結果,從而得到數(shù)據(jù)故障分類,輸出診斷結果并分析結論。
筆者使用的實驗數(shù)據(jù)來源于美國凱斯西儲大學軸承數(shù)據(jù)中心的軸承數(shù)據(jù)集[26]。實驗平臺包含功率為1492 W 的電機、轉(zhuǎn)矩傳感器、負載電機以及其他相關元件。采用電火花加工技術在軸承上布置了單點故障,損傷直徑為0.1778 mm,損傷深度為2.794 mm。為了驗證筆者所提出的方法可用于變工況下的故障診斷,在一定程度上可以克服轉(zhuǎn)速差異、故障程度大小的影響,選取了3 種轉(zhuǎn)速、4 種故障類型、2 種故障嚴重程度下的故障數(shù)據(jù),共12 種工況的數(shù)據(jù)混合生成4 種類型的二值化圖像數(shù)據(jù)集。軸承故障類型和實驗條件如表2 所示。
表2 軸承故障類型和實驗條件Tab.2 Bearing failure types and test conditions
由于采用不同長度的振動信號生成的二值化圖像像素不同,所體現(xiàn)出的特征效果也不同,所以需要經(jīng)過實驗確定圖像像素。筆者分別采用長度為32,64,128 和256 共4 種情況下的振動信號生成的二值化圖像進行對比,將特征效果最明顯的二值化圖像像素點數(shù)量作為網(wǎng)絡訓練和測試的最終像素點數(shù)目。根據(jù)二值化圖像構造方法,長度為32,64,128和256 的信號分別可以構造出像素為16×16,32×32,64×64 和128×128 的二值化圖像,分別使用正常狀態(tài)、外圈故障、內(nèi)圈故障和滾動體故障的數(shù)據(jù)進行實驗。16×16,32×32 這2 種像素的二值化圖像由于像素點太少,圖像特征非常不明顯,完全無法 區(qū) 分4 類 狀 態(tài)。像 素 為64×64,128×128 這2 種二值化圖像都能較好地區(qū)分4 種狀態(tài)。由于構造一張像素為16×16 的二值化圖像需要8192 個原始振動信號數(shù)據(jù)點,而構造一張像素為128×128 的二值化圖像則需要32768 個原始振動信號數(shù)據(jù)點,所以在相同長度振動信號的情況下,構造一張像素為128×128 的二值化圖像可以構造4 張像素為64×64 的二值化圖像。在相同數(shù)量原始信號的條件下,如果能構造出更多的二值化圖像數(shù)據(jù),則有利于CNN 的訓練和識別。 因此,雖然像素為128×128 的二值化圖像特征更加明顯,綜合考慮,筆者最終采用像素為64×64 的二值化圖像作為CNN 訓練和測試的圖像像素。
像素為64×64 的二值化圖像示例如圖3 所示??梢钥闯?,經(jīng)上述方法構造的4 種不同狀態(tài)的軸承數(shù)據(jù)的灰度圖像具有明顯特征。
圖3 像素為64×64 的二值化圖像示例Fig.3 Examples of binary images with 64×64 pixels
筆者進行的各項實驗均由Matlab 2015b 和Spyder 2 種軟件完成。使用Matlab 2015b 對信號進行EMD,篩選出相關系數(shù)最大的IMF 分量進行FFT,求得時頻數(shù)據(jù)并生成矩陣。導入TensorFlow 和OpenCV 的Spyder 軟件,將時頻數(shù)據(jù)矩陣歸一化并生成最終的二值化圖像,使用Spyder 對圖片進行訓練和測試,通過TensorBoard 可視化工具查看準確率、損失函數(shù)等曲線的變化。計算機硬件和軟件的配置參數(shù)如表3,4 所示。
表3 硬件配置環(huán)境參數(shù)Tab.3 Hardware configuration environment parameters
根據(jù)表2 所示的數(shù)據(jù),一共生成4 種狀態(tài)下的433 張二值化圖像。將圖像進行隨機分配,訓練集和測試集的分配數(shù)量如表5 所示。
表4 軟件配置環(huán)境參數(shù)Tab.4 Software configuration environment parameters
表5 訓練集和測試集分配數(shù)量Tab.5 Training set and test set allocation
通過使用表5 中分配的數(shù)據(jù)集對表1 中設計的各組網(wǎng)絡進行逐一訓練、測試對比,最終確定了輸入圖像的像素為64×64,卷積層為4 層,使用7×7卷積核。采用Leak ReLU 作為激活函數(shù)的CNN 模型,將全連接層之后的分類輸出結果調(diào)整為4 類。筆者設計的網(wǎng)絡模型如圖4 所示,網(wǎng)絡模型的訓練和測試曲線如圖5 所示。
在訓練中一個迭代次數(shù)是指所有的數(shù)據(jù)送入網(wǎng)絡中完成一次前向計算及反向傳播的過程。準確率反映了模型正確識別的圖像個數(shù)。損失率是用來估量模型的預測值與真實值的不一致程度。準確率越大、損失率越小,說明模型的識別能力和魯棒性越好。從圖5 可以看出,無論訓練還是測試,其準確率曲線的上升速度和損失曲線的下降速度都非常迅速,經(jīng)過100 輪迭代次數(shù)后,最終的訓練準確率、訓練損失率、驗證準確率和驗證損失率的值分別為97.56%,4.4736×10?3,96.69%和0.01021。
為了驗證筆者提出的方法比傳統(tǒng)故障診斷方法更能有效識別軸承的故障類別,將此方法與參考文獻[27]中采用BP 和概率神經(jīng)網(wǎng)絡(probabilistic neural network,簡稱PNN)方法的分類準確率進行對比,如表6 所示。
圖4 筆者設計的網(wǎng)絡模型Fig.4 The network model designed in this paper
圖5 網(wǎng)絡模型的訓練和測試曲線Fig.5 The training and testing curves of the network model are finally determined
表6 平均分類準確率對比Tab.6 Comparison table of average classification accuracy %
通過表6 可以看出,筆者提出的方法能夠?qū)崿F(xiàn)很高的準確率。在正常狀態(tài)下,圖片的正確分類準確率最高,為100%,這是由于正常狀態(tài)下的滾動軸承二值化圖像的特征非常明顯,容易被CNN 分類器識別。內(nèi)圈故障和滾動體故障狀態(tài)下的圖片相似度較高,在識別過程中混淆相對較多,準確率相對較低,但也達到了96%以上。故障分類平均準確率達到了97.61%,能夠有效檢測各類故障。筆者提出的方法識別效果都遠優(yōu)于傳統(tǒng)的BP 和PNN 方法的準確率,具有更好的泛化能力。
為了測試筆者所提出算法和模型的抗噪性,在4 種狀態(tài)下的軸承振動信號中加入6dB 的白噪聲。圖6 為原始信號和加入6dB 白噪聲后的信號對比??梢钥闯觯诩尤氚自肼暫蟮牟ㄐ纬霈F(xiàn)了一些毛刺,沒有原始信號顯得平滑。圖7 為加噪后的二值化圖像示例圖??梢钥闯觯顟B(tài)下的軸承信號加噪后生成的二值化圖像中出現(xiàn)了一些噪點,但左側的白色亮帶依然很明顯,未受到太大影響;其他3 種狀態(tài)下的軸承信號在加噪后幾乎沒有出現(xiàn)噪點。這也證明了筆者所提出的方法本身具有一定的抗噪能力。在抗噪性能測試中,分別在4 種狀態(tài)下的訓練集和測試集中各加入15 張加噪的圖像,圖8 為加噪前后準確率和損失曲線對比??梢?,2 種曲線的整體變化趨勢非常接近。加噪后最終識別的準確率略有降低,測試準確率達到了96.19%,略低于未加噪的測試準確率值97.61%,這說明加入的噪聲圖像對網(wǎng)絡產(chǎn)生影響非常小,證明了筆者所設計的CNN 網(wǎng)絡模型具有很強的魯棒性和抗噪能力。
圖6 原始信號和加入6db 白噪聲后的信號對比圖Fig.6 The original signal and the signal after adding 6db white noise
圖7 加噪后的二值化圖像示例圖Fig.7 A sample image of the denoised binary image
圖8 加噪前后準確率和損失曲線對比Fig.8 Comparison of accuracy and loss curves before and after noise addition
提出了一種基于EMD 二值化圖像和CNN 的智能故障診斷方法,將振動信號轉(zhuǎn)化為具有明顯特征的二值化圖像。在CNN 設計方法的基礎上,根據(jù)訓練要求設計了36 種CNN 網(wǎng)絡結構。通過實驗數(shù)據(jù)集測試,確定了一種最優(yōu)的CNN 網(wǎng)絡模型。筆者采用的基于EMD 二值化圖像和卷積神經(jīng)網(wǎng)絡的滾動軸承故障診斷方法整體上能夠達到97.61%的識別準確率,遠超過傳統(tǒng)的BP 方法的識別準確率73.75% 和概率神經(jīng)網(wǎng)絡方法的識別準確率93.75%,在抗噪能力測試中達到了96.19%的識別準確率,體現(xiàn)了優(yōu)異的抗噪能力和魯棒性,證明了筆者所提出方法的可行性,為采用CNN 進行故障診斷提供了新的思路,具有較好的技術應用前景。