余阿東
(信陽職業技術學院 汽車與機電工程學院,河南 信陽 464000)
滾動軸承經常在復雜環境中運行,易受各種外界干擾從而發生故障。在滾動軸承發生故障后,如何快速、準確地識別出故障類型及故障程度,對于提高故障定位精度和縮短整機恢復運行時間具有重要意義[1]。
目前,對滾動軸承故障進行診斷一般是基于振動信號進行[2],而實際采集到的振動信號常表現出非線性和非平穩性,導致傳統的基于信號處理的故障識別方法受到較大限制[3]。
而基于深度學習的軸承故障識別方法無須構建復雜的滾動軸承物理模型。
丁家滿等人[4]在對滾動軸承故障進行診斷時,采用重采樣技術,提取了軸承振動信號的時域和頻域特征,進而構建了深度森林模型,使滾動軸承故障的識別率達到了95%。王登峰等人[5]將深度Q網絡引入了軸承的故障識別領域,建立了“博弈”診斷模型,建立了故障信號與不同故障程度之間的映射關系。
深度學習模型為一般黑箱模型。CHEN K等人[6]為解釋故障機理,將軸承故障特征轉換為灰度圖;但是灰度圖的物理含義不明確。
稀疏表示以字典原子的線性組合來重建信號,因此其所提取的字典原子與信號本身是線性關系,具有較重要的實際意義。
因此,筆者基于稀疏表示理論,借鑒深度學習“逐層提取特征”的思想,提出一種可用于滾動軸承故障識別的深度字典學習(DDL)模型;首先利用稀疏性約束逐層學習故障數據中的典型結構特征,然后構成深度故障字典,根據故障樣本的重建誤差確定故障類別,最后以滾動軸承試驗臺為對象測試DDL模型的有效性。
稀疏表示是利用少量基本信號的線性組合來表示目標信號,其表達式如下:
y=Dx+v
(1)
式中:y—目標信號;D—字典;x—稀疏表示系數;v—誤差。
字典D的每一列為一個原子,其單位化處理式如下:
(2)
由學習方法構造的字典是根據樣本數據的特點自適應學習得到的,學習到的原子形態更豐富。因此,筆者使用學習方法來構造故障字典。
在字典學習模型中,D和x為待求量,因此求解目標信號的稀疏表示可轉換為:

(3)
式中:Y—樣本矩陣;X—稀疏系數矩陣;s—稀疏指標;‖·‖F—F—范數;‖·‖0—向量非零元個數。
筆者采用交替迭代法來求解式(3),其具體步驟是:
首先,固定D求解X;然后,固定X對D進行更新,重復上述操作,直到誤差滿足要求。
由字典D求解X是編碼問題,此處筆者采用正交匹配追蹤法(OMP)[7]進行求解。
此外,筆者采用SGK算法[8-10]進行字典D的更新,即:
(4)
(5)

由于將學習到的字典應用于軸承故障識別時,不需要構建分類器,目標樣本會由同屬一類的字典原子稀疏表示出來,通過非零項系數的分布及重建誤差,可將測試樣本分配給對應類別。
設樣本數為M,樣本維度為N。
滾動軸承故障類型如下:正常狀態、內圈故障(輕微損傷尺寸0.18 mm,中度損傷尺寸0.36 mm,重度損傷尺寸0.54 mm)、外圈故障(輕微損傷尺寸0.18 mm,中度損傷尺寸0.36 mm,重度損傷尺寸0.54 mm)、滾動體故障(輕微損傷尺寸0.18 mm,中度損傷尺寸0.36 mm,重度損傷尺寸0.54 mm),共計10種工況類型。
其中,測試軸承的損傷尺寸由電火花刻蝕技術加工獲得。
樣本矩陣表示如下:
(6)
式中:Y∈N×M;Yi—第i(i=1,2,…,10)類樣本的樣本子集,Yi∈N×Mi;Mi—第i類的樣本總數。
筆者借鑒深度學習模型“逐層特征提取”算法,構建深層故障字典。每層字典的稀疏性指標設置為1,利用信號表示殘差逐層驅動字典學習,其數學模型如下:
(7)

第j層字典Dj、系數矩陣Xj和殘差矩陣Δj也按類別進行劃分。殘差矩陣Δj定義如下:
(8)
式(7)所示的約束優化問題可簡化為無約束優化問題,即:
(9)

重復上述操作,直到字典層數等于設定的總層數n,所學習到的深度字典即可以用于故障識別。
DDL模型求解流程圖如圖1所示。

圖1 DDL模型流程圖

(10)
式(10)中,J越小誤差越小,模型性能越好。
由于不同字典初值會影響迭代過程的收斂,從而最終會對模型性能造成影響。
K均值初始化、直接初始化和隨機初始化3種不同初始化方法對模型的影響,如圖2所示。

圖2 不同初始化方法對模型性能的影響
由圖2可知:K均值初始化方法效果最好,其內在結構上保證了初始化的字典中不會有特別相近的原子。因此,筆者選擇K均值進行初始化。
字典的原子總數以及字典層數也是影響模型性能的重要因素。在理論上,增加字典規模和層數可使模型更精確,但同時也會增加字典學習過程中所需的時間和硬件資源。因此,此處應綜合考慮模型性能和求解代價,選擇合理的字典規模和層數,在保證模型性能的前提下,盡可能地縮短模型訓練時間,并減少其對硬件資源的占用。
筆者對字典中原子總數占總樣本總數的比例從0.1至0.5,字典層數從1層到8層的情況下,進行了迭代求解。
不同組合下,模型最終的代價函數取值如圖3所示。

圖3 字典規模及層數對模型性能的影響
由圖3可以看出:當字典規模和層數增加到一定程度時,模型性能趨于穩定。此時,再增加字典規模和層數對模型性能的提升作用不大。
因此,筆者最終選定字典層數為5層,字典中原子總數占樣本總數的比例為30%。
分類學習至各層字典后,筆者將同屬一層的各類字典組成總子層字典,即:
(11)
對待識別的軸承故障樣本y,在各子層字典Dj(j=1,2,…,n)上逐層求解稀疏表示系數,且各層的稀疏性指標均為1。由于此時字典Dj是已知的,只需利用OMP算法求解系數向量xj,然后利用殘差更新公式逐層更新殘差,最后進行信號重構。重構誤差最小的類就是該樣本所屬故障類別。
具體判別方法如下:
(12)

樣本的深度稀疏表示如圖4所示。

圖4 樣本的深度稀疏表示
為驗證深度字典學習DDL模型的有效性,筆者搭建了滾動軸承試驗臺,對故障軸承進行了測試。
滾動軸承試驗臺如圖5所示。

圖5 滾動軸承實驗臺
圖5中的試驗臺由電機、轉矩測量軸、滾動軸承測試模塊、飛輪和負載電機等組成。
加速度傳感器安裝在試驗臺驅動端,軸承型號為6205-2RS JEM SKF;采樣頻率設置為12 000 Hz,轉速為1 800 r/min;
此處,筆者設置4種工況狀態:內圈故障工況、外圈故障工況、滾動體故障工況以及正常工況。
每種故障損失尺寸分別為0.18 mm、0.36 mm和0.54 mm。測試軸承的損傷尺寸是由電火花刻蝕技術加工得到的。
最后,實驗所得數據集的每種工況包括3 000個訓練樣本、800個驗證樣本和1 000個測試樣本。測試樣本用于評估模型,每個樣本包括1 024個采樣點。
實驗工況的設置如表1所示。

表1 實驗工況設置
在10種工況下,滾動軸承的時域波形如圖6所示。

圖6 時域波形圖
10種工況下,滾動軸承相應的的包絡譜如圖7所示。

圖7 包絡譜圖
由圖(6,7)可知:滾動軸承的信號時域波形與包絡譜圖受噪聲干擾嚴重,難以直接識別滾動軸承故障。
在Winpython5.2.0環境下的Spyder編譯器使用Python 3.8進行程序編寫,深度學習框架為PyTorch 1.5。
其硬件以及軟件環境如表2所示。

表2 程序運行環境
筆者將樣本采用2.1節中的樣本矩陣生成方法進行處理,得到樣本矩陣;再利用深度字典學習模型求解方法迭代求解出深度故障字典D。其中模型關鍵參數的選擇與2.3節中一致。后續故障樣本的分類均基于該深度故障字典D實現,分類實現如2.4節所述。
為了測試深度字典學習DDL模型的性能,在相同數據集上,筆者使用文獻[11]提出的CNN-LSTM深度神經網絡(CNN-LSTM)、文獻[12]提出的深度自編碼網絡(DSCN)、文獻[13]提出的卷積神經網絡和門控循環單元(C-GRU)進行對比分析。
在測試集上,不同模型的實驗結果準確率取10次試驗結果的平均值,如表3所示。

表3 不同模型的實驗結果
由表3可知:
(1)采用DDL模型的滾動軸承故障識別準確率達到了99.28%,高于其他3種模型,且訓練時間低于其他模型,這是因為數據驅動的字典學習方法能充分利用滾動軸承自身的海量故障數據提取故障特征;且訓練算法非反向傳播算法,梯度消失缺陷得以避免;
(2)在CNN-LSTM模型中,由于LSTM的梯度消失現象嚴重,識別準確率僅為94.67%,且LSTM的時間跨度較大,運算相對耗時;
(3)DSCN模型為全連接網絡模型,所需要訓練的參數眾多,導致訓練時間最長;
(4)C-GRU將CNN和GRU模型結合,GRU相對LSTM少一個門函數,因此,參數量少于LSTM,訓練速度快于LSTM;但其識別準確率略低于LSTM。
基于DDL的診斷方法的第1次訓練與測試過程Loss曲線,如圖8所示。

圖8 Loss函數變化曲線
接下來,筆者進一步分析DDL模型的特征學習與故障識別能力。
基于DDL的診斷方法的第1次測試結果多分類混淆矩陣,如圖9所示。

圖9 第1次測試結果的多分類混淆矩陣
由圖9可知:10種工況下,滾動軸承的故障識別準確率均達到了99%以上(工況f和g的識別準確率最高,達到了100%);正常工況下的識別率為99.17%,低于其他工況。
考慮到實際運行環境中存在噪聲,筆者對所提算法的抗噪性能進行驗證,對采集到的故障樣本添加高斯白噪聲。
在不同噪聲強度下,故障識別準確率和重建誤差(樣本實際所屬類別字典的重建誤差)的均值,如表4所示。

表4 抗噪性能驗證
由表4可知:在不同噪聲強度下,筆者所提出的DDL模型均可獲得較高的故障識別準確率,且對樣本的重建誤差受噪聲強度的影響較小。該結果證明了DDL模型具有較好的抗噪性能。
由于深度學習等基于數據驅動的特征學習算法的可解釋性差,筆者構建了一個基于數據的特征學習模型,且所學習到的特征具有較好的物理含義。
外圈故障振動信號基于深度故障字典的稀疏表示結果,如圖10所示。

圖10 稀疏表示字典原子
由圖10可知:低層字典原子主要反映了故障樣本的概貌特征,高層字典原子主要揭示了故障的細節特征(沖擊特征),且隨著字典層數的增加,突變量等細節信息更為凸顯。
由此可見,這種從由概貌到細節的層次化特征提取方式,符合人們的認知過程,具有較好的物理意義[14,15]。
為了解決軸承故障識別算法存在的特征提取與選擇困難的問題,筆者提出了一種基于DDL方法的滾動軸承故障識別方法,即利用字典學習的稀疏性約束逐層學習軸承故障數據中的典型結構特征,再根據故障樣本結構構造了深度故障字典,根據樣本的重建誤差確定了其故障類別;實驗結果表明,基于DDL的故障識別方法具有較好的識別效果。
主要研究結論如下:
(1)深度字典學習模型逐層自動提取故障特征,所提取的故障特征具有較好的物理含義;其中,低層字典包含了故障的總體特征,高層字典揭示了故障的細節特征,在一定程度上解決了故障特征的可解釋性問題;
(2)基于數據驅動的字典學習方法,能充分利用滾動軸承自身的海量故障數據提取故障特征,用于解決如軸承系統復雜故障識別等物理建模過程過于復雜的問題。
筆者所設置的軸承故障缺陷是參考大多數文獻所使用的電火花刻蝕技術得到的,與實際軸承缺陷的表現特征存在一定差別。因此,在后續的研究工作中,筆者擬將DDL模型方法應用于軸承全壽命周期故障信號,并進一步對DDL模型進行優化。