陳立愛,俞宏艷,汪佳奇,陳松
安徽建筑大學機械與電氣工程學院,安徽 合肥 230601
齒輪作為轉速調節和動力傳遞的常用部件,其是否正常運行將影響機電設備的工作狀態[1-3]。齒輪在工作過程中發生故障的概率較高,因此對齒輪進行故障診斷尤為重要[4-5]。
齒輪故障診斷方法主要包括信號處理和機器學習兩大類,信號處理方法包括傅里葉變換、譜分析、小波變換、模態分解[6-9]等,機器學習方法包括人工神經網絡、支持向量機、深度學習[10-13]等。如有學者研究發現,通過對經驗小波方法進行改進,可有效提高滾動軸承和齒輪箱故障檢測效率[14-15]。徐甜甜等提出了結合變分模態分解與譜峭度法的齒輪故障診斷方法,并驗證了方法的有效性[16]。Lin et al. 提出了一種基于變分模態分解和布谷鳥搜索參數優化概率神經網絡(PNN)的齒輪箱故障模型,并利用東南大學齒輪箱數據集進行了驗證[17]。陳如清等將改進煙花算法與PNN 融合,確定PNN 的參數最優值,從而實現了齒輪箱的故障分類[18]。傳統的PNN 與其他神經網絡相比,模型網絡學習過程簡單,學習速度快,并且具有一定的分類準確性和抗噪聲能力[14],但是其關鍵參數選擇主要根據經驗確定,從而影響了模型對故障診斷的識別率。因此,如何優化PNN模型平滑因子,提高對齒輪故障的診斷效率,是PNN 應用的關鍵問題。
主成分分析(PCA)是一種常見的數據降維方法[19],韓璞、張洪波等分別應用該方法與貝葉斯網絡、PNN 網絡相結合,進行汽輪機、模擬電路的故障診斷[20-21]。
PCA 方法步驟如下:
(1)輸入樣本集D={ x1, x2,… , xm};
(3)計算協方差矩陣XXT及所對應的特征值和特征向量;
(4)按照累計貢獻率達到90%確定數據最佳維數d′;
(5)取最佳d′個特征值所對應的特征向量ω1,ω2,…,ωd′,輸 出 投 影 矩 陣W*=(ω1,ω2,…,ωd′)。
PNN 是一種以貝葉斯和Parzen 窗函數法為數學基礎的前饋神經網絡,其網絡拓撲結構包括輸入層、模式層、求和層和輸出層,如圖1所示。

圖1 PNN 網絡拓撲結構
設有d個網絡輸入向量,表示為X=[x1,x2,…,xd]T;n個輸出向量,表示為Y=[y1,y2,…,yn]T,訓練過程如下。
(1)輸入層完成訓練樣本特征向量X 的接收,并將數據向后傳遞。
(2)模式層采用徑向基非線性映射,計算各模式種類與輸入向量的匹配度,并將其輸出至求和層,該層中第i個類別與第k個神經元所對應的函數為:
式中:i= 1,2,…,d為訓練樣本特征值個數;ωik為連接模式層和求和層的權值向量;σ為平滑因子,其取值影響著PNN 分類的正確識別率。
(3)求和層把模式層中類別相同的隱含神經元輸出,依據Parzen 窗方法得到各類別的概率密度函數估計值,其輸出公式為:
式中:fi(x)為第i種標簽值的輸出;N為第i類神經元的數量。
(4)輸出層把從求和層得到的每一類概率密度函數通過競爭神經元做閾值辨別,在所有輸出種類中選取出匹配度最高的一個輸出,從而完成隸屬類別的判定。
麻雀搜索算法(SSA)提出于2020 年,主要模擬自然界麻雀尋找食物并躲避獵捕的行為[22]。SSA 把麻雀種群分成發現者、追隨者、警戒者三類。發現者的任務是覓食并為整個種群進化提供導向,其數量在整個種群中占比設置為10% ~ 20%。追隨者的任務是緊緊跟隨在發現者周圍進行覓食,發現者和追隨者在進化過程中滿足進化規則條件時可互換角色。其位置重新計算的公式[23]分別為:
為了種群安全,SSA 會在整個種群中隨機選取10% ~ 20%的麻雀作為警戒者,警戒者的任務是作為種群偵察兵,在種群受到外界捕食者威脅時及時提醒其他麻雀[22]。警戒者位置更新公式為:
式中:β為服從標準正態分布的隨機數,K∈[-1,1],η為最小常數,fm為當前適應度值,fg為最佳適應度值,fω為最差適應度值,Xbest為全局最優解。
維度過高的樣本數據會增加問題分析的復雜度,并且影響PNN 分類精度。同時,PNN 性能優劣與平滑因子σ選取密切相關,傳統做法是根據經驗選取,因缺乏理論依據,不能充分發揮PNN的作用,從而使得樣本維數較大時PNN 分類器識別率較低。我們的樣本數據維數較大,對訓練時間和精度影響較大。因此,我們提出采用PCA 方法對數據進行降維,然后利用SSA 對PNN 的平滑因子σ進行優化,形成自適應概率神經網絡,改善PNN 的性能以達到最佳的齒輪故障識別率,即PCA-SSA-PNN 故障診斷模型。具體實現流程如下:
(1)將齒輪故障數據導入系統;
(2)利用PCA 進行數據降維;
(3)設置SSA 算法參數,設置種群大小、意識到危險的麻雀數量、最大迭代次數等;
(4)通過公式(4)至(6)迭代計算麻雀種群中各角色位置,并計算在相應位置時的適應度值,以更新全局最優個體;
(5)迭代次數達到最大設定值時,輸出全局最優平滑因子σ,將樣本數據輸入至優化后的模型,并輸出齒輪故障診斷結果。
案例采用康涅狄格大學齒輪實驗平臺及其數據集,實驗系統及結構如圖2 所示[10]。齒輪振動信號由加速度計測量,采樣頻率為20 kHz。

圖2 齒輪實驗系統及結構
數據集包括兩部分:采用時間同步平均處理后的時域齒輪故障數據和角頻域同步分析后的頻域齒輪故障數據。齒輪故障包括正常(本文將“正常”也視為故障識別的一種結果)、斷齒、齒根開裂、剝落、削尖1(最嚴重)、削尖2、削尖3、削尖4、削尖5(最輕微)。對每種齒輪狀態使用實驗齒輪箱系統采集104 個信號,一共936 個樣本,其中每個樣本包含4 個齒輪振動信號的3 600 維角頻域數據和3 維時域數據,我們使用的所有數據均在網站https://doi.org/10.6084/m9.figshare.6127874.v1 上公開。
在每組樣本中隨機選取82 個(共計738 個)樣本作為訓練集,每組剩下的22 個(共計198個)樣本作為測試集。
構建PCA-SSA-PNN 故障診斷模型,對PCA 降維維度,設置不同的維數d'觀察主成分的累計貢獻率,以得到最佳維數,經測試,當d'=200時累計貢獻率為90.6%,因此本文設置d'=200,這樣既將數據降維,易于進行故障分類識別,又可減少程序運行時間。降維后數據歸一化到0~1 之間,以加快訓練網絡的收斂性。由于PNN 層數固定,輸入層神經元個數與數據維數一致,不需要設計網絡層數。我們的樣本數據特征原有3 603個,經過PCA 降維后為200 個,因此輸入層神經元個數為200。輸出層個數對應于齒輪故障狀態,故輸出層神經元個數定為9。SSA-PNN 網絡的其他參數設置如下:種群數量pop=20,下邊界lb=0.01,上邊界ub=5,適應度函數為為證明PCA-SSA-PNN 網絡的有效性,我們同時構建了PNN 模型和PCA-PNN 模型,網絡參數設定完成后,通過MATLAB 進行計算。本文所使用的訓練環境:CPU 為Intel Core i5_8265U CPU,內存4G。
由于SSA 算法最大迭代次數(M)對預測精度和運行時間影響較大,考慮到計算時間,同時為避免陷入局部最優,經測試后設置M為25,適應度尋優曲線如圖3 所示。

圖3 適應度尋優曲線
由圖3 可知,優化后的PCA-SSA-PNN 診斷模型診斷適應度下降很快。在SSA 優化初期,因個體適應度較低,迭代后網絡陷入短暫的局部最優,隨著種群迭代次數的不斷增加,與最優值的差距不斷縮小。一般在迭代5 次后網絡跳出局部最優,迅速收斂,快速找到PNN 模型的最佳σ。
PCA-SSA-PNN 模型訓練結束后,其訓練效果和誤差如圖4 所示,可見其分類訓練效果非常好,訓練誤差為0,說明建立的模型分類識別性能優越。

圖4 PCA-SSA-PNN 分類訓練結果
由于神經網絡運行時存在隨機性,因此每種模型均運行8 次進行對比,如表1 所示。

表1 各模型識別率
為加強對比,將表1 中的識別率以圖形形式對比(見圖5)。

圖5 齒輪故障分類識別率對比
由圖5 可知,在多次運行中,PCA-SSA-PNN模型的分類正確率均高于其余兩個模型。若對所采集的數據不進行任何處理,傳統PNN 模型進行故障診斷,其平均識別率僅為74.4%。對數據集基于PCA 方法進行特征提取后,PCA-PNN 模型的平均識別率提升到88.3%。經SSA 優化的PCA-SSAPNN 模型的平均識別率在PCA-PNN 的基礎上進一步提高到92.6%,說明了所提出模型的有效性。
每種模型運行時間不同,與標準的PNN 模型相比,優化的PCA-SSA-PNN 比較耗時,平均為93.4s,但在可接受的范圍內。若使用計算性能佳的計算機,可有效減少運行時間。
為與PCA-SSA-PNN 故障診斷模型對比,文中同時采用PCA-PNN、PCA-GRNN、PCARBF、PCA-KNN、PNN 模型,訓練網絡最優后統計8 次運行的平均值,如表2 所示。

表2 六種模型故障診斷識別率 單位:%
由表2 可知,PCA-SSA-PNN 齒輪故障診斷模型診斷結果最佳,優化后的齒輪故障診斷模型正確識別率為92.6%,與PCA-PNN 模型相比故障識別率提高4.3%,且明顯高于其他網絡模型的識別率。這是因為PCA 方法對數據集有一定的降噪效果,同時,經SSA 優化的PNN 模型能找到最佳的σ,因此故障識別率最佳。
圖6 列出了PNN、PCA-PNN、PCA-SSA-PNN模型8 次運行時最接近平均值的一次可視化診斷結果。

圖6 三種模型可視化診斷結果
圖6 中,縱坐標1~9 分別對應齒輪正常、斷齒、齒根開裂、剝落、削尖1(最嚴重)、削尖2、削尖3、削尖4、削尖5(最輕微)9 種狀態。由圖6 可知,PNN 模型錯誤識別樣本明顯多于其余兩種。PCA-PNN 模型的正確識別率明顯提高,即數據經PCA 降維后能有效提升識別率。PCA-SSAPNN 模型的故障診斷正確識別率最高,錯誤識別樣本僅有9 個,可見該模型用于齒輪故障診斷可行度較高。
由于傳統PNN 對齒輪故障診斷分類預測效果不佳,后續分析對比僅針對PCA-PNN 和PCASSA-PNN 模型。統計兩種模型對齒輪每種故障的識別率,如表3 所示。

表3 兩種模型對每種故障的識別率(9 種故障) 單位:%
由表3 可知,PCA-PNN 模型對齒輪各種故障狀態正確識別率差別較大,其中正常、斷齒、削尖1、削尖4 識別率為100%,齒根開裂和剝落識別率分別為77.2%、59.1%。PCA-SSA-PNN 模型對正常、削尖3、削尖5 的識別率為100%,識別率較低的為剝落和削尖4,分別為77.3%和86.4%。
刪除齒輪故障數據集中剝落和齒根開裂的故障樣本,以剩余7 種齒輪故障樣本基于PCA-PNN和PCA-SSA-PNN 模型按前述步驟重新進行齒輪故障診斷,結果如表4 所示。

表4 齒輪故障診斷識別率(7 種故障) 單位:%
由表4 可知,降低樣本集數量后,PCA-PNN模型中識別率較低的故障仍然存在,削尖2 故障識別率由之前的86.3%降為68.1%,削尖4 故障識別率由100%降為86.3%,但總體平均識別率有所提升,達到92.2%。PCA-SSA-PNN 模型的削尖3 故障識別率由100%降為86.3%,削尖5 由100%降為90.9%,總體平均識別率同樣提升,達到94.2%。即與之前相比,兩種模型診斷正確識別率均有所上升,分別增加了3.9%和1.6%。
抗噪能力對齒輪故障診斷模型的性能評價尤為重要,為了測試我們所建立的PCA-SSA-PNN模型的抗噪性能,在數據集中添加隨機分布噪聲,噪聲系數為原有特征的1%、3%、6%、10%。
每種情況運行5 次取平均值,兩種模型對齒輪故障分類的識別率如表5 所示。

表5 噪聲系數改變時故障診斷識別率
由表5 可知,齒輪振動數據集添加隨機噪聲干擾后,與無噪聲相比,兩種齒輪故障診斷模型的識別率均有所降低,但噪聲程度在10%以下時識別率仍都大于85%,說明均具有一定的抗噪聲能力。PCASSA-PNN 模型在噪聲系數小于等于3%時,正確識別率基本不變,而未經優化的PCA-PNN 模型,故障識別率下降了2.3%。噪聲系數為10%時,PCASSA-PNN 模型齒輪故障識別率為89%。同樣噪聲系數為10%時,未優化的PCA-PNN 模型齒輪故障識別率下降到85.2%,此時PCA-SSA-PNN 模型故障識別率比PCA-PNN 模型高3.8%。故本文建立的PCA-SSA-PNN 模型在噪聲干擾情況下仍具有較高的故障識別率。另外,兩種模型的運行時間與噪聲系數之間沒有明確關系,即有無噪聲影響,對程序的運行時間幾乎沒有影響。
我們基于齒輪箱振動信號,對齒輪9 種不同的損傷狀態,在根據經驗選擇PNN 模型平滑因子從而使模型識別率不高的情況下,融合主成分分析法、麻雀搜索算法和PNN 模型,提出一種PCASSA-PNN 模型,用于齒輪箱故障診斷,得出以下結論。
(1)基于PCA 進行數據集降維,引入SSA 優化PNN 模型的平滑因子,建立PCA-SSA-PNN 模型,能有效提升齒輪故障分類的正確識別率,針對齒輪的9 種損傷狀態,診斷正確識別率提升到92.6%。
(2)樣本數量影響模型正確識別率,文中減少兩種齒輪故障的樣本數量時PCA-SSA-PNN 模型識別率上升1.6%,達到94.2%。
(3)添加噪聲后,模型故障分類識別率有所降低,但在噪聲系數為10%時,識別率仍比PCAPNN 模型高3.8%。因此,PCA-SSA-PNN 模型具有較好的抗噪能力。