樓劍陽,南國防,宋傳沖
上海理工大學 能源與動力工程學院,上海 200093
隨著工業(yè)互聯(lián)網(wǎng)的快速發(fā)展,從各種機器收集大量傳感器數(shù)據(jù)已成為現(xiàn)實.在實際工業(yè)生產(chǎn)中,利用這些數(shù)據(jù)進行工業(yè)狀態(tài)監(jiān)測和故障診斷的需求和要求越來越高[1].作為旋轉(zhuǎn)機械的關鍵部件,滾動軸承因工作環(huán)境惡劣而易于損壞,其故障數(shù)量占旋轉(zhuǎn)部件故障數(shù)量的30%[2].因此,監(jiān)測滾動軸承工作狀態(tài)對事故預警具有重要意義.通過分析振動信號實時監(jiān)測機器的健康狀況是一種常用的故障診斷方法[3].近年來,深度學習在圖像處理、機器視覺和語音識別等領域均得到了廣泛的應用[4].作為一種完全自動化的端到端識別過程,深度學習可以省去基于人類知識的特征提取步驟,因此被運用到機械智能故障診斷中.
時頻分析可以揭示非平穩(wěn)振動信號的動態(tài)特性,常應用于軸承故障分析.時頻分析方法包括短時傅里葉變換[5]、經(jīng)驗模態(tài)分解[6]和小波變換[7]等多種振動故障分析方法,但這些方法存在明顯缺點:短時傅里葉變換在不同頻域內(nèi)只有固定的分辨率;經(jīng)驗模態(tài)分解缺乏理論證明;小波變換只會提取低頻信息,而高頻細節(jié)信息在解析過程中易被丟失.與上述時頻域分析方法不同的是:小波包分解(Wavelet Packet Decomposition)方法不僅可以通過頻率高低動態(tài)調(diào)整時間分辨率大小,還可以在提取低頻信號的同時獲取高頻信號.小波包分解可以對振動信號進行時頻分析,處理得到的小波系數(shù)[8-9]矩陣結(jié)果可以作為深度學習方法的輸入,但選用哪一個小波基進行故障診斷在學術(shù)界還沒有定論.X.Ding等[10]采用db8獲得的小波能量矩陣作為深度學習模型的輸入,驗證了所提特征挖掘方法在多分類主軸軸承故障診斷上的適用性;張建宇等[11]采用GHM多小波和db2小波對故障信息進行降噪處理,更易于提取滾動軸承的早期故障信息;趙元喜等[12]利用諧波小波包和BP神經(jīng)網(wǎng)絡對故障信號進行處理,預測準確率達到92.5%;F.Jia等[13]使用深度自編碼器預訓練深度神經(jīng)網(wǎng)絡,相比于BP網(wǎng)絡這類淺層網(wǎng)絡能獲得更高的準確率,但自編碼器對隱含層的特征映射要求較為苛刻,且輸入和輸出值必須保持一致,算法不夠靈活.雖然學者們使用多種方法對故障診斷進行了探索,但目前滾動軸承故障診斷領域還存在故障特征目標信息不清晰、故障類型預測準確率不高等問題.
卷積神經(jīng)網(wǎng)絡(Convolutional Neural Network,CNN)可以指定輸出的label值,輸入與輸出之間可以有多層卷積層,并且卷積層之間能夠通過權(quán)值共享的方法有效減少權(quán)值數(shù)量.鑒于此,本文擬在時頻域分析和深度學習的基礎上,提出一種基于小波包分解和CNN的滾動軸承故障診斷方法(WPDEC-CNN),以滿足工業(yè)生產(chǎn)中故障設備實時監(jiān)測的需求,降低設備故障診斷成本,保障工程人員的生命安全.
小波包分解是一種經(jīng)典的多時間分辨率分析算法,它將信號分解成從低頻帶得到的近似系數(shù)和從高頻帶獲得的細節(jié)系數(shù)兩組小波系數(shù)[14].通過不同db小波基獲得的小波系數(shù)矩陣如圖1所示,小波包分解對近似系數(shù)和細節(jié)系數(shù)進行重復遞歸運算,得到各個頻段的信息.
圖1 通過不同db小波基獲得的小波系數(shù)矩陣
在數(shù)學公式的表達上,小波包分解是用相應層級的一對低通和高通濾波器對信號進行卷積運算,高通濾波器和低通濾波器可以表示為
其中,φ(t)表示尺度函數(shù),?(t)表示小波變換函數(shù),<·,·>表示內(nèi)積運算,t和k是變量.一維離散信號在各頻帶和分解層的小波系數(shù)可以通過以下公式迭代計算:
基于小波包分解的故障診斷應用依賴小波基函數(shù)的選擇,針對這個問題,直接的解決方法是用不同的小波基函數(shù)對離散信號進行分解,本文采用不同消失距的db小波進行試驗.
CNN是一種特殊的深度前饋神經(jīng)網(wǎng)絡,它避免了層與層之間全連接造成的參數(shù)冗余,使得網(wǎng)絡模型的訓練依賴于大量的數(shù)據(jù).CNN的連接方式是局部連接,這符合生物神經(jīng)元的稀疏響應特性,在減少網(wǎng)絡模型參數(shù)尺寸的同時也減少了對訓練數(shù)據(jù)的依賴.CNN主要由三部分組成:卷積層、池化層、全連接,與依賴于先驗知識[15]的方法不同,CNN僅依賴于特征學習,從而減少了人工參與的程度.
卷積層利用卷積核對輸入信號的局部區(qū)域進行卷積運算,得到相應的特征.權(quán)值共享[16]是卷積層最重要的特征,這意味著當每個卷積窗口遍歷整個特征圖像時,卷積窗口的參數(shù)是固定的,這避免了參數(shù)爆炸引起的過擬合現(xiàn)象,減少了系統(tǒng)訓練網(wǎng)絡所需的內(nèi)存.特征圖中的所有單元共享相同的權(quán)重集和偏差,因此它們在輸入的所有位置上能夠保持相同的特征處理操作.卷積操作可以表達為
池化層通常添加在卷積層后面,也稱下采樣層,主要用來減少神經(jīng)網(wǎng)絡的參數(shù).本文選擇了最大池化操作.池化變換可以表示為
其中,al(i,t)代表第l池化層中第i個結(jié)構(gòu)的第t個神經(jīng)元的激活值,W代表池化層的寬度.
全連接層的本質(zhì)是卷積核為1×1的卷積層.與卷積層和池化層將原始數(shù)據(jù)映射到隱層特征空間的特性相反,全連接層將學習到的“分布式特征表示”映射到樣本標記空間.全連接操作可以表示為
yj=wijxi+bj
其中,wij表示權(quán)值,bj表示偏置.
小學生還是比較好動的,體育課間活動只進行跑步、廣播體操是遠遠不夠的。教師可以優(yōu)化活動設計,積極將跳繩活動引起來,調(diào)動學生的積極性。跳繩運動在我國很久之前就有了,并且跳繩運動是一項有氧呼吸運動,可以幫助學生將廢氣排出體外,還可以加強心肺復蘇,對學生的身體健康也有著很重要的作用。小學教師就是需要結(jié)合豐富的、多樣性的課間活動來調(diào)動學生的積極性,讓學生明白體育活動的重要性。
圖2所示為通過小波包分解方法把原始信號轉(zhuǎn)化為網(wǎng)絡二維輸入的過程.首先,原始信號被分成多個樣本片段,每個樣本片段的數(shù)據(jù)段對應圖1中的W0,0,共256個數(shù)據(jù);然后,樣本片段通過小波包分解獲得相同長度的一維小波系數(shù)矩陣;最后,將其轉(zhuǎn)換為長度和寬度相等的二維數(shù)組,并將該二維數(shù)組作為一個二維輸入樣本,使用不同小波獲得的不同頻帶的小波系數(shù)可以組成一個二維矩陣.因為小波包的分解層數(shù)為8層,試驗中原始信號的長度為256,因此可以獲得第8層的256個小波系數(shù),由此可得本文使用的二維小波包系數(shù)矩陣的維度為16×16.至此,基于WPDEC的特征提取過程全部完成.
圖2 原始信號轉(zhuǎn)化為網(wǎng)絡二維輸入的過程
圖3所示為用于識別二維特征的CNN網(wǎng)絡結(jié)構(gòu).本文采取的CNN結(jié)構(gòu)包括2個交替的卷積層和最大池化層,1個帶有Relu激活函數(shù)的全連接層和1個帶有Softmax激活函數(shù)的全連接層.CNN的每個環(huán)節(jié)相當于進行一次運算,而輸入的二維特征數(shù)組的維度和各個位置的值在運算后都會改變,CNN各層的具體參數(shù)如表1所示,其中Conv(3×3×64)表示一個通道數(shù)為64、卷積核尺寸為3×3的卷積層;Maxpool(2×2)表示一個過濾器尺寸為2×2的最大池化層;Dense(1024)(Relu)表示的輸出維度為1024的全連接層,并且用激活函數(shù)Relu激活全連接層輸出故障特征,因為故障的種類為6種,故將最后一個全連接層的維度設為6,Softmax 常用在卷積神經(jīng)網(wǎng)絡最后一層實現(xiàn)分類.
圖3 識別二維特征的CNN網(wǎng)絡結(jié)構(gòu)
表1 CNN各層的參數(shù)
本文試驗數(shù)據(jù)選自美國凱斯西儲大學軸承數(shù)據(jù)中心公布的深溝球軸承故障數(shù)據(jù)[17],數(shù)據(jù)提取自電機驅(qū)動端,采樣頻率為48 kHz.試驗平臺由1.5 kW的電動機、譯碼器、功率測試計和電子控制器組成,待檢測的軸承支撐著電動機的轉(zhuǎn)軸.在電機驅(qū)動端外圈的3點鐘、6點鐘和12點鐘布置故障,將正常軸承、內(nèi)圈故障、滾動體故障及外圈3個不同方向的故障數(shù)據(jù)用于故障診斷分析.
本文提出的WPDEC-CNN方法通過Google發(fā)布的開源機器學習框架Tensorflow 2.0.0實現(xiàn),開發(fā)環(huán)境為Python3.6,操作系統(tǒng)為Window10,CPU采用i7-10870H.軸承內(nèi)圈、滾動體和外圈的單點故障直徑均為0.021 mm,轉(zhuǎn)子的轉(zhuǎn)速為1730 r/min.每個故障都取460 800個加速度值,設置1800個樣本,每個樣本含有256個數(shù)據(jù)值.對獲得的樣本進行小波包分解以獲得相同長度的小波包系數(shù),為了獲得二維的CNN[18-19],需要先將256個數(shù)據(jù)值轉(zhuǎn)換成16×16的數(shù)據(jù)結(jié)構(gòu).最后通過處理每個故障樣本片段可以得到1800×16×16個小波特征值,選擇其中的1400個數(shù)據(jù)作為訓練集,400個數(shù)據(jù)作為測試集.
為驗證本文方法在訓練和測試精度上的優(yōu)勢,將軸承故障數(shù)據(jù)輸入使用CNN和WPDEC-CNN 處理的網(wǎng)絡中進行計算,結(jié)果如圖4和圖5所示,其中,td_tr表示CNN的訓練值,td_te表示CNN的測試值,db1_tr表示db1小波函數(shù)處理后得到的小波系數(shù)矩陣的訓練集,db1_te表示db1小波函數(shù)處理后得到的小波系數(shù)矩陣的測試集,其他圖例參照此命名.
圖4 CNN和WPDEC-CNN(基于db1~db4小波)的損失率和準確率
圖5 CNN和WPDEC-CNN(基于db5~db8小波)的損失率和準確率
由圖4可知,經(jīng)過20次迭代,CNN、db1和db2的訓練損失率下降速度明顯快于其他小波函數(shù);當?shù)螖?shù)在1~5次時,db1和db2的損失率下降速度稍快于CNN;當?shù)螖?shù)在5~12次或15~20次時,三者基本持平;當?shù)螖?shù)在12~15次時,CNN的性能較優(yōu)于db1和db2.但CNN的測試損失率曲線和測試準確率曲線均出現(xiàn)了較大波動,最終的測試損失率(0.180 2)大于db2的測試損失率(0.124 4)和db1的測試損失率(0.108 9),最終的測試準確率(0.959 2)小于db2的測試準確率(0.969 6)和db1的測試準確率(0.972 5).由圖5可知,CNN的測試損失率為0.181 2,測試準確率為0.959 2,相較于使用db5~db8小波函數(shù),不使用小波包分解的CNN模型性能更優(yōu);當使用db5~db8小波函數(shù)時,db5小波函數(shù)的性能最優(yōu),其測試損失率和準確率分別為 0.234 8 和 0.948 8.結(jié)合上述CNN和基于db1~db8的 WPDEC-CNN 損失率和準確率結(jié)果圖,使用基于db1的WPDEC-CNN方法獲得的故障識別準確率為97.3%,明顯高于使用CNN方法的準確率(95.9%).這是因為故障時域信號存在其他信號的干擾,會加重卷積神經(jīng)網(wǎng)絡的過擬合,而小波系數(shù)表示小波函數(shù)與時域信號的相似性,相似度越高,小波系數(shù)越小,相當于對原始時域信號起到了過濾作用,相應地可以提高卷積神經(jīng)網(wǎng)絡的識別性能.
t-分布隨機近鄰嵌入(t-sne)[20]方法是深度學習中一種將高維數(shù)據(jù)向低維映射的可視化方法,為了解WPDEC-CNN的特征學習能力,采用t-sne方法對不同的4個網(wǎng)絡層進行二維可視化分析,結(jié)果如圖6所示.由圖6可知,未經(jīng)CNN處理的數(shù)據(jù)雜亂無章,經(jīng)過第一個最大池化層處理后能夠很好地區(qū)分正常工況和故障工況,經(jīng)過第一個全連接層處理后故障基本已經(jīng)區(qū)分開,個別滾動體故障錯分在內(nèi)圈故障中,個別內(nèi)圈故障錯分在外圈12點鐘故障中,當輸出層經(jīng)softmax處理后,6種故障都得到了很好的區(qū)分.
圖6 CNN中(基于db1小波)不同4個層的t-sne特征可視化
為了進一步驗證本文WPDEC-CNN方法的優(yōu)越性,將BP神經(jīng)網(wǎng)絡和CNN的預測結(jié)果與其進行比較,基于上述3種分類方法的分類混淆矩陣如圖7所示.由圖7可知, BP網(wǎng)絡的診斷準確率為72.3%,而采用CNN進行預測的準確率為95.9%,均小于WPDEC-CNN故障分類準確率(97.3%),說明采用WPDEC-CNN方法能夠有效提高對故障類別的識別準確率.
圖7 基于不同分類方法的分類混淆矩陣
本文通過小波包分解方法對振動時域信號進行處理,獲得表征信號相似的小波系數(shù),再將其進行預處理后輸入CNN進行分類識別,將小波包分解的特征提取能力與CNN的特征學習能力相結(jié)合,提出了滾動軸承故障診斷方法WPDEC-CNN.試驗結(jié)果表明,應用db1小波函數(shù)可以有效提高CNN的診斷性能,相較于BP神經(jīng)網(wǎng)絡和CNN,WPDEC-CNN的損失率為0.108 9,故障分類準確率達到 97.3%,驗證了所提故障診斷方法的有效性,對工業(yè)生產(chǎn)中的軸承健康狀態(tài)監(jiān)測有重要意義.下一步將考慮采用遷移學習將實驗室故障訓練權(quán)值遷移到實際生產(chǎn)環(huán)境的軸承數(shù)據(jù)集中,進一步研究WPDEC-CNN在旋轉(zhuǎn)機械變工況中的診斷性能.