汪 鵬,何清波
(1.中國科學技術大學精密機械與精密儀器系,安徽 合肥 230026;2.上海交通大學機械與動力工程學院,上海 200240)
旋轉機械設備在工業中占有重要地位,而滾動軸承、齒輪失效是大部分機械設備故障的主要原因,因此針對旋轉機械設備的故障診斷十分重要[1]。盡管已有許多研究人員采用如時頻分析,小波分析[2],隨機共振[3]等傳統信號分析方法,然而很明顯這些方法需要十分專業的信號處理與機械故障診斷知識而且這些專業經驗無法直接應對不同場景,因而限制了其應用。隨著計算機,集成電路,傳感器,機器學習等技術的飛速發展,基于機器學習方法的旋轉機械故障診斷得到重視,然而在不同的實際情況下,機器學習方法面臨居多挑戰。
由于機械設備振動信號的多樣性和多變性,因此常見的智能故障診斷方式包括2大步驟:用信號處理方法進行特征提取;使用各種分類器包括支持向量機(SVM)和人工神經網絡(ANN)等實現故障識別[4-5]。隨著各種智能算法在其他領域取得非凡的成效,智能機械診斷方式也隨之發展。Wang等[6]提出了一種深度可分離卷積網絡(DSCN),用于機械的剩余壽命(RUL)預測。Chen等[7]提出了一種融合卷積神經網絡和極限學習機的故障診斷方法,在分類精度上優于其他方法。但是以上方法有3個明顯的缺陷:信號特征的提取很大程度上依賴于對信號處理技術以及故障診斷專業知識的了解;基于有監督學習方法需要大量有標簽數據集,然而機械設備振動信號的價值密度低,且不同設備需要不同的數據集,因此導致可以用于實際工程診斷的數據集匱乏;由特定數據集訓練出來的模型不能適應其他故障問題。
由于以上幾個問題,無監督特征學習方式得到重視。Thirukovalluru等[8]采用去噪自動編碼器從手動特征中提取高級特征,并使用2個分類器來識別機械故障。Lu等[9]研究證明了堆疊降噪自動編碼器(SDA)適用于某些包含環境噪聲和工作條件波動信號的旋轉機械健康狀態識別。Shao 等[10]采用最大熵設計自編碼器損失函數,增強了從振動信號進行特征學習的能力。Lei 等[11]結合稀疏濾波與softmax回歸方式實現無監督特征學習的機械大數據智能故障診斷方法,具有自適應能力,并且減少了人工需求。Zhang等[12]提出通用歸一化稀疏濾波(GNSF)的機械故障診斷方法,可以以較少的訓練樣本獲得更高的診斷效率和準確性,并且比以前的方法具有更好的魯棒性。
自編碼器是一種流行的無監督學習模型,已成功應用于各種場景。受稀疏濾波啟發,在此,提出了一種基于稀疏自編碼器的信號成分分析方法,該方法能夠清晰地觀察到信號組成成分,通過2個實驗來驗證該方法是否能夠準確判斷旋轉機械健康狀態。
傳統自編碼器是一種對稱的神經網絡結構,如圖1所示,它由編碼器和解碼器組成。

圖1 自編碼器結構

h=g(W(1)x+b(1))
(1)
(2)
g()為激活函數;W(1)為d×m維權重矩陣;W(2)為m×d維權重矩陣;b(1)為d維偏移向量;b(2)為m維偏移向量。自編碼的訓練過程旨在優化重構誤差,一般MSE被用作自編碼的損失函數,即自編碼的優化目標如下。
(3)
稀疏濾波是一種有效的無監督特征學習算法,并在機械故障診斷領域的應用有所成效。它可以學習數據集稀疏性分布而不是對數據分布的建模,該算法考慮特征分布滿足3個原則:種群稀疏性、生命周期稀疏性和高分散性[13]。種群稀疏意味著每個數據樣本僅由幾個特征表示,生命周期稀疏表示每個特征僅在少數樣本中具有活性,高分散性提高特征泛化能力。簡單來說,稀疏濾波是一個2層神經網絡,如圖2所示。

圖2 稀疏濾波結構
特征f=Wx,其中x為樣本輸入,W為權重矩陣。稀疏濾波的任務就是訓練網絡參數W,使輸出特征f能夠滿足上面提到的3個原則。要達到這個目的,需要對特征矩陣的每一行的2范數歸一化再對列進行2范數歸一化,最后優化其1范數。如式(4)~式(6)所示:
(4)
(5)
(6)
訓練神經網絡模型最小化式(6)的值,得到數據集稀疏性分布,此時權重矩陣為稀疏濾波學習到的特征基。
參數稀疏自編碼器在結構上與傳統自編碼器無異,但是懲罰函數不一樣。為使編碼更高效地表示樣本數據,找到能將輸入向量表示為較少基向量的線性組合模式,在傳統自編碼器的解碼層施加參數約束,使得數據集的編碼結果更加有規律可循。
(7)
其中第1項是最小化輸入與輸出的差異。第2項是參數范數懲罰,最小化解碼層參數的1范數,誘導參數稀疏性,目的是限制特征間的相似度。第3項是編碼稀疏項,使得:樣本特征間稀疏;樣本間特征稀疏;特征分布均勻。
下面以一個仿真信號的例子來說明改進型稀疏自編碼的作用。
生成仿真信號A和信號B,信號A的頻率峰值有11 Hz和49 Hz,信號B的頻率峰值有20 Hz和68 Hz,將信號A和信號B經過不同程度的線性疊加得到混合信號,顯而易見混合信號的頻率峰值有11 Hz、20 Hz、49 Hz和68 Hz,如圖3所示。

圖3 仿真混合信號
由單獨信號A、單獨信號B以及信號A和信號B經不同程度混合而成的信號各10段共30段組成數據集,作為參數稀疏自編碼器輸入進行訓練,經過參數稀疏自編碼器進行編碼,結果如圖4所示。其中數據序號1~10為信號A,序號11~20為信號B,序號21~30為信號A+B的混合信號。
由圖4可以看出,在所有數據的編碼結果上只有2個較大的非零編碼值,分別是編碼3和編碼5,信號A獨有非零編碼5,信號B獨有非零編碼3,信號A+B則同時具有非零編碼3和非零編碼5。分別提取這2個編碼值進行解碼得到解碼信號即為分離出的信號,結果如圖5所示。分離信號A和信號B及其頻譜,由圖5可知分離出的信號A和信號B很好地還原了原始信號,而且與原始信號相比在幅度上幾乎沒有失真。而使用ICA方法分離前述信號得到的結果則與原始信號差異較大而且有較大的幅度失真,如圖6所示。可見改進的稀疏自編碼器在混合信號特征提取與分離方面有巨大潛力。

圖4 編碼結果

圖5 稀疏編碼分離結果

圖6 ICA分離結果
利用參數稀疏自編碼器的編碼稀疏以及可以分離特征的特性,可以進行無監督信號分類。考慮到機械設備從健康到故障是一個漫長的過程,因此可以預見機械設備振動信號在健康狀態的編碼只有較少的幾個甚至只有1個較大的非零編碼值,隨著故障特征的出現,編碼結果上會出現與健康狀態不同的非零編碼值,以此為依據判斷機械設備的健康狀態,從而實現無監督學習的旋轉機械故障診斷。接下來通過幾個實驗驗證稀疏自編碼器的故障診斷能力。
采用美國Case Western Reserve University(凱斯西儲)電氣工程實驗室的滾動軸承故障模擬實驗數據集[14],其實驗裝置臺如圖7所示。包括1個2馬力的電動機,1個扭矩傳感器,1個功率測試計。待檢測的軸承支撐著電動機的轉軸,驅動端軸承型號為SKF6205,軸承參數如表1所示,其內圈故障頻率為5.415 2倍轉頻,外圈故障頻率為3.584 8倍轉頻。驅動端軸承故障采樣頻率為12 kHz 和48 kHz。功率和轉速是通過扭矩傳感器/譯碼器測得手動記錄得到。實驗時的轉速包括1 730 r/min,1 750 r/min,1 772 r/min及1 797 r/min。

圖7 凱西西儲滾動軸承故障模擬實驗臺

表1 軸承參數 mm
選取內圈故障、外圈故障、正常軸承信號以及將內圈故障外圈故障信號進行混合得到額外一組信號,切片處理并計算包絡譜得到共170組數據作為自編碼器輸入。使用自適應矩估計方法最小化懲罰函數訓練自編碼器模型,最后得到的編碼結果如圖8所示。

圖8 軸承信號編碼結果及對應解碼參數
由圖8可以看出,所有數據的編碼均在編碼8上有較大的非零值,這是因為所有信號都一定具有軸承轉頻等系統固有頻率特征。因而健康軸承信號在8維的編碼上表現為僅有一個較大的非零編碼值編碼8,而故障軸承信號在編碼上具有一個較大的與健康信號不同的非零編碼特征值,軸承內圈故障信號除了編碼8較大外還有一個較大的非零編碼2,軸承外圈故障信號獨有一個較大非零編碼3。由此可以認為編碼2代表軸承內圈故障特征,編碼3代表軸承外圈故障特征。可見通過較大的非零編碼值判斷軸承健康狀態是可行的。
采用東南大學動態模擬器收集的齒輪箱實驗數據集[15],其中包含軸承數據和齒輪數據,每組數據包含4類故障數據與1類健康數據。齒輪數據集包含以下5類健康狀態:齒缺口、齒缺失、根部裂紋、表面磨損和正常狀態。軸承數據集包含5類健康狀態:滾子故障、內圈故障、外圈故障、內外圈都故障和正常狀態。
對原始信號進行分割,每類健康狀態取20段信號共計100段信號,每段信號長度為600,計算其包絡譜作為改進稀疏編碼器的輸入。數據序號與對應健康狀態如表2所示。

表2 數據分布
編碼器結構和前面軸承實驗結構一致,編碼結果緯度為8。編碼結果分別如圖9和圖10所示。每種健康狀態都具有其獨特的編碼形式。通過編碼結果中的較大非零編碼分布即可輕易分辨出數據的健康狀態。
由圖9可知,對于實驗中軸承數據集的編碼,所有數據均有較大非零編碼6,健康軸承幾乎僅有唯一一個非零編碼6;對于滾子故障、內圈故障、外圈故障數據除了共有非零編碼6外,還各自獨有一個非零編碼分別是3、8、4;而對于內外圈都故障的數據則同時具有非零編碼4、8。由圖10可知,對于齒輪數據集的編碼,所有數據都有一個非零編碼5,除此之外不同健康狀態數據獨有一個額外非零編碼,齒缺口、健康、齒缺失、根部裂紋、表面磨損5類齒輪數據獨有非零編碼分別為4、2、3、8、6。由此可見對于不同健康狀態數據其編碼差異性十分明顯,因此所提出的方法可以區分出該實驗數據集的幾種不同故障狀態,并且由于編碼器本身可以學習信號特征成分,因此對于有混合故障的數據也有很好的識別性。

圖9 軸承數據編碼結果

圖10 齒輪數據編碼結果
提出的改進型稀疏自編碼器能夠在大量數據集中學習信號組成成分提取不同信號間的異同特征并通過編碼形式表現出來,通過實驗驗證表明:不同種類的故障信號會有不同的非零編碼,通過不同信號編碼結果的差異性來判斷旋轉機械健康狀態是可行的。在實際生產中,健康數據總是易獲取的,通過比對目標數據與健康數據編碼差異來判斷旋轉機械的健康狀態的方法具有較強的可用性。