劉 穎,陶建峰,黃武濤,劉成良
(上海交通大學機械系統與振動國家重點實驗室,上海 200240)
隨著計算機技術,傳感器技術的快速發展,現代旋轉機械變得越來越高速化、集成化、智能化[1]。針對工業生產過程中可能出現的故障如何做到快速、準確的判斷越來越多地引起人們的關注。作為多種旋轉機械的關鍵子部件,滾動軸承的性能好壞直接影響著整個機械系統可靠性以及安全性[2]。因此有必要采取相應的健康監控手段以保證滾動軸承的健康與穩定。由于機械設備眾多且一般使用壽命較長,因此需要大量的數據作為支撐,故障診斷也進入了“大數據時代”[3]。
目前,已有眾多國內外專家學者針對滾動軸承故障診斷展開了相應的研究。主要方法包括傳統的信號分析加特征提取,以及基于機器學習的故障診斷算法。例如,文獻[4]采用小波包變換代替短時傅里葉變換,有效提高了提取滾動軸承微弱故障特征的準確性,文獻[5]提出了基于近似等距投影和支持向量機(SVM)的滾動軸承故障診斷方法,取得了較好的分類結果。
近年來隨著深度學習技術的快速發展,以及其在特征提取能力上的巨大優勢[6],越來越多的深度學習算法被應用于學術界和工業界。作為深度學習領域最重要的工具之一卷積神經網絡(CNN),在二維圖像識別以及一維信號分類領域取得了重大的突破。在2015年的ImageNet算法識別挑戰賽上,微軟公司提出了殘差卷積網絡ResNet將圖像識別準確率提高到了95.06%,超過了人眼識別的準確率94.9%[7]。2017年,斯坦福大學將卷積神經網絡應用于皮膚癌診斷上正確率達到了91%,超過了人類專家的水平[8]。在機械故障診斷領域,文獻[9]將一維的振動信號轉換成二維的時頻圖像信號,并將其作為卷積神經網絡的輸入,取得了良好的分類效果。文獻[10]在高噪聲以及變負載的條件下對卷積神經網絡的辨識能力進行了研究,通過多批次小規模的訓練,有效提高了卷積神經網絡對軸承故障的辨識能力。
研究發現,現有的基于卷積神經網絡的故障診斷的方法,大多直接將原始振動信號或者將原始信號轉換為時頻圖像后作為網絡的輸入。雖然依靠多個堆疊的卷積層和池化層,卷積神經網絡能夠有效的提取數據特征,但是,隨著輸入數據維度的增加以及數據量的增大,網絡模型將變得愈加復雜,從而加大陷入局部最優的風險,難以快速有效的訓練出最優的分類模型[11]。同時,極大增加了對計算設備的性能要求。在“大數據時代”背景下難以實現故障的實時快速診斷。因此,本文方法的優勢在于:能夠快速的從原始時域信號中提取出故障特征,降低網絡陷入局部最優的風險,加快網絡訓練速度,提高故障辨別的準確率;一定程度上擺脫對高性能計算設備的依賴,實現在大數據背景下設備故障的實時快速診斷。
信號分析是為了獲得時間和頻率之間的關系,通過傅里葉變換可以得到有關信號頻率的相關信息。與常規的傅里葉變換方法不同,通過小波變換可以同時得到信號的時域特性以及頻率特性[12]。
不同于小波變換,小波包變換能夠對小波變換沒有再分解的高頻分量繼續進行分解,實現在全頻帶范圍內對信號進行劃分,獲得更為精細的分析信號,如圖1所示。

圖1 小波包變換結構圖Fig.1 Structure Diagram of Wavelet Packet Transform
設原始信號的長度為N,則分解信號中離散信號的數據長度縮減為2^(-k)N,其能量可以表示為:

式中:k—分解次數,m=0,1,2,……,2k-1 表示分解頻帶的位置序號。
求取小波包分解后子帶信號的能量,并且對其進行歸一化。

式中:E(x(t)k,m)max—分解頻帶中能量信號的最大值;
E(x(t)k,m)min—分解頻帶中能量信號的最小值;
Em—歸一化處理后的能量值。
文獻[13]通過對貓的視覺系統進行研究發現,視覺信息是經過多層的感受野(receptive field)激發后傳遞到大腦中的[13]。卷積神經網絡正是受此啟發而誕生。
近年來,CNN不僅在圖像分類領域取得了不俗的成績[14],同時也越來越多的被人們應用于故障診斷。文獻[15]提出的經典LeNet-5卷積神經網絡CNN結構。
一維卷積神經網絡通過堆疊的卷積層和池化層將原始信號轉化成一系列特征信號,然后使用全連接神經網絡對特征進行分類,最后使用反向傳播算法對網絡進行有監督訓練,如圖2所示。

圖2 一維卷積神經網絡結構Fig.2 One Dimensional Convolutional Neural Network Structure
在使用卷積神經網絡CNN進行分類任務時,最重要的過程之一是使得訓練過程中的損失函數最小化,即通過反向傳播進行權值優化。常見的損失函數主要包括負對數似然函數,均方誤差函數以及交叉熵函數等[16]。這里選用交叉熵損失函數[17]。
設目標函數為E,樣本數為n;預測值為t;真實值為y。則有表達式:

采用梯度下降法更新權值,從而最小化損失函數。設w和b為現有權值,w′和b′為更新后的權值τ為學習率,則有表達式:

文獻[18]軸承數據集是目前世界上公認的最為準確反應軸承故障的數據集。截至目前,已有眾多國內外專家學者針對該數據集進行了故障診斷算法的研究。基于已經得到公共認可的第三方數據集,將新提出的方法與已有的診斷方法進行比較,從而證明本方法的優勢。
采用數據集中采樣頻率為12kHz的數據,對應軸承類型為深溝球軸承SKF6025。根據美國凱斯西儲大學數據說明,實驗數據分別在四種不同的載荷情況下采集得到,load0=0 馬力/1797RPM、load1=1馬力/1772RPM、load2=2馬力/1750RPM、load3=3馬力/1730RPM。軸承故障分別位于外圈滾道、內圈滾道、滾動體三個部位,加上無故障情況一共有四種類型。
實驗中使用包含1200個點的窗口對數據進行劃分,從而得到,第一類外圈滾道故障四種不同尺寸(0.18mm,0.36mm,0.54mm,1.03mm)共400條數據,第二類內圈滾道故障三種不同尺寸(0.18mm,0.36mm,0.54mm)共300條數據,第三類滾動體四種不同尺寸(0.18mm,0.36mm,0.54mm,1.03mm)共400條數據,第四類無故障情況共200條數據,總共1300條試驗數據。同時劃分出負載為load0、load1、load2、load3,四種不同的工況類型。測試時,選用一部分數據用作訓練,另外一部分數據用于測試。如圖3所示;load0為工況故障尺寸為0.18mm時,四種不同類型的軸承振動信號時域波形圖,每個狀態包括120000個數據點。

圖3 load0工況下軸承四種狀態時域波形Fig.3 Four Time-Domain Waveforms of Bearing Under Load0 Condition
從圖3可以看出,不同故障情況下的信號時域波形相近,難以直接區分軸承的狀態,因此,需要采用相應方法對軸承信號進行特征提取以及故障分類。
提出的小波能量與卷積神經網絡相結合的故障診斷方法,主要包括信號能量特征提取和CNN分類兩個部分,方法結構,如圖4所示。

圖4 本文故障診斷方法結構圖Fig.4 Structure Diagram of Fault Diagnosis Method in This Paper
首先將原始信號進行小波包能量特診提取,再將特征提取后的數據劃分為訓練集和測試集,分別進行模型訓練以及故障分類。
首先將訓練數據輸入CNN進行訓練得到分類模型,接著將測試數據輸入訓練好的模型,進行分類得到最終的分類結果。
通過小波包分解對原始信號進行四層小波分解,得到十六組子帶信號,接著計算各個子帶信號的能量并對其進行歸一化,得到一組十六維的輸入向量。
load0工況下,一組經過小波包能量特征提取后的數據,如圖5所示??梢钥闯?,經過小波包能量特診提取,不同故障的類型信號的區分度有所提高,但是區別仍然不明顯。

圖5 小波包能量特征圖Fig.5 Wavelet Packet Energy Characteristic Diagram
訓練樣本包含兩個部分,特征數據以及類別標簽。其中輸入層節點數根據樣本特征維數確定,輸出層節點數根據狀態類別數確定,文中將各類標簽分別設為[1 0 0 0],[0 1 0 0],[0 0 1 0],[0 0 0 1]。
選定不同比例的樣本進行訓練剩余樣本進行測試,得到不同負載以及不同訓練樣本情況下的故障識別精度。經過多種不同深度以及不同參數的試驗,決定采用的網絡結構進行小波包能量與CNN相結合的訓練,如表1所示。

表1 小波包CNN結構參數設置Tab.1 Wavelet Packet CNN Structure Parameter Setting
作為對比,采用常見的CNN方法進行實驗,經過多次訓練調優,決定選用如表2所示的CNN網絡結構。此外,本文還將經過特征提取后的數據輸入SVM進行分類。實驗時,采用Python基于TensorFlow框架分別搭建出小波包能量CNN和傳統CNN訓練流圖,所用計算機配置為Core i7-8700 CPU @3.20GHz,內存8GB。接著將訓練數據分別導入兩種訓練流圖,利用權值更新模塊自動更新權值,等到網絡訓練完畢后將測試數據集輸入到訓練好的模型中進行故障識別。

表2 常見CNN結構參數設置Tab.2 Common CNN Structure Parameter Settings
為了保證分類結果的準確性,針對不同工況以及訓練樣本,取十次測試結果的平均值作為最終的測試結果。如圖6所示;為不同訓練與測試樣本比例情況下,三種方法的分類精度變化情況??梢钥闯?,本文方法的分類準確率普遍高于CNN 和SVM,SVM 的分類準確率普遍高于CNN。結合不同工況的平均準確率,如表3所示。充分說明,本文所提方法能夠有效提高故障判別的準確率。

表3 不同工況平均準確率Tab.3 Average Accuracy of Different Working Conditions

圖6 不同工況測試精度變化Fig.6 Test Accuracy Changes in Different Working Conditions
不同工況下,分類精度的變化情況,如圖7所示??梢钥闯?,隨著訓練數據樣本數量的增加,本文方法的測試精度在load0,load2 以及load3 工況下都能穩步提升。load3 工況下,精度最高可以達到99.0%、99.2%、99.75%以及99.8%,證明了本文方法相對于CNN和SVM具有更好的穩定性。

圖7 不同工況準確率變化Fig.7 Accuracy Rate Changes in Different Working Conditions
由于小波包能量特征提取極大地縮減了輸入數據的維度,因此當數據量增大時,相較于常見CNN,模型訓練效率提高了數十倍。如表4所示(本文方法訓練時間包括小波包能量特征提取時間5s),極大地提高了模型訓練的效率。相較于SVM,在消耗了有限的訓練時間的情況下分類準確性得到了有效的提升。

表4 不同工況平均模型訓練時間Tab.4 Mean Training Time of Different Working Conditions
基于深度學習,提出了一種能夠有效提高滾動軸承故障分類準確率以及速度的方法,并與常見的卷積神經網絡(CNN)以及支持向量機(SVM)進行了比較。試驗結果表明,本文所提出方法具有以下優勢。
(1)對原始信號進行了特征提取,極大的縮減了數據的維度,簡化了卷積神經網絡設計的復雜度。相較于常見CNN分類算法,能夠有效提高故障分類的準確率,并且極大的縮短模型的訓練時間。
(2)在對數據進行特征提取后,SVM的分類準確率已經超過了常見CNN的分類準確率,證明了本文特征提取方法的有效性。同時,相較于傳統的機器學習算法SVM,本文方法在消耗有限的訓練時間的情況下,有效的提高了故障分類的準確性。