宋玉倩,趙軍,郭天太,孔明,李林峰
(中國計量學院 計量測試工程學院, 杭州 310018)
軸承是旋轉機械中最常用、最易磨損的部件,由其引起的機械故障約占30%,因此對軸承故障進行檢測具有重要意義。
目前較成熟的故障信號提取方法有時域和頻域2種,新研究集中在將時、頻域方法相結合上,雖然精度有所提高,但損耗時間長,不能廣泛應用于工程實踐[1]??紤]到工程應用對實時性的要求,嘗試采用時域特征值提取方法對信號進行處理,采用虛擬儀器技術[2-4]并利用神經網絡實現對軸承故障的智能診斷[5]。
開發的神經網絡軸承故障檢測系統總體思路如下:通過LabVIEW軟件編程,實現信號時域特征值的提取及保存,然后結合神經網絡技術,調用神經網絡算法的MATLAB腳本公式[6],實現軸承的智能診斷功能。
試驗獲取的信號為文本格式的軸承工作臺振動信號。系統的總體框架如圖1所示。其中,數據分析模塊將得到的特征值保存后,即完成了神經網絡訓練樣本的建立,與之后的智能判斷模塊相互獨立。運行智能診斷子程序,將被測信號進行特征提取,送入訓練好的神經網絡,即可對軸承狀態進行檢測。

圖1 系統總體結構框圖
在神經網絡中,BP和RBF神經網絡應用較為廣泛[7-8],而BP網絡可滿足對故障進行快速、精確檢測的要求,因此采用3層BP神經網絡實現軸承故障診斷。

訓練網絡輸出神經元為(1,0)時對應軸承的正常狀態,故障狀態則通過被測樣本與目標輸出間的偏離程度判斷,用輸出誤差e表征為
e=(a-1)2+b2,
(1)
式中:(a,b)為被測樣本的輸出,實際輸出誤差e大于設定的閾值時,判斷有故障發生,其他網絡參數設置見表1。

表1 BP神經網絡的參數設置
主程序通過設置讀取信號個數控制訓練樣本的大小,文中用10個正常狀態的加速度振動信號作為樣本信號進行處理。主程序框圖如圖2所示,通過對訓練樣本路徑的自動引用,利用讀取的訓練樣本個數控制循環,實現對樣本文件的自動讀取。

圖2 軸承故障檢測系統主程序圖
數據分析子程序主要實現時域統計特征值的計算,將所求得的11個特征值進行捆綁,組成1個數組,該數組即為1個訓練樣本。選擇樣本數據的存儲位置,進行訓練樣本的保存,該子程序執行完畢,即完成對訓練樣本庫的建立,本試驗的樣本庫為10×11的矩陣,其對應程序圖如圖3所示。

圖3 數據分析子程序程序圖
數據分析子程序中,對正常軸承測量文件進行數據處理所保存的特征值即為神經網絡的訓練樣本,被測樣本為待診斷的信號,可以是正常信號,也可以是存在內、外圈或滾動體故障的信號。由于神經網絡的起始閾值是隨機的,所以在實際程序中,對神經網絡的訓練循環進行3次,通過(1)式求取3次輸出誤差的平均值,作為最終誤差,當誤差大于設定閾值時,判斷有故障發生,出現報警提示。智能診斷子函數對應的程序圖如圖4所示。

圖4 智能診斷子程序的程序圖
LabVIEW專門提供了與MATLAB進行通信的MATLAB Script方式。程序在運行MATLAB Script時會自動啟動MATLAB并在其中執行腳本內容,用戶可以直接在MATLAB節點中編輯程序(即在腳本節點中輸入函數);也可以載入已經存在的程序(通過鼠標右鍵單擊腳本節點,選擇Import將寫好的程序載入)。通過在MATLAB節點中添加輸入、輸出變量并指定變量名稱,進行LabVIEW和MATLAB間的參數傳遞,實現節點內MATLAB程序在LabVIEW環境下運行[9]。
如圖4所示。先將經調試可運行的MATLAB神經網絡程序載入節點,分別添加訓練樣本和測試樣本作為輸入參數,添加網絡訓練輸出和測試結果輸出作為輸出參數,并與腳本內程序變量的名稱進行匹配,即p為訓練樣本,pct為測試樣本,b1為網絡訓練輸出,a為測試結果輸出,節點內的程序就是根據MATLAB神經網絡工具包進行的網絡創建、訓練步數、學習率、目標精度等參數的設置,for循環是為了減小網絡初始化時起始閾值的隨機性帶來的誤差。
為驗證所設計系統的有效性,采用如圖5所示的QPZZ-II型旋轉機械模擬試驗臺進行軸承故障試驗。軸承型號為NU205EM,采用壓電式加速度傳感器采集電動機轉速1 500 r/min時的軸承振動信號。裂紋故障是采用工業線切割技術加工的寬度為0.6 mm的裂縫,磨損故障通過非均勻磨損加工。

圖5 滾動軸承故障試驗臺
試驗時測點固定在軸承座的上表面,每種軸承狀態分別測取15次,其中正常狀態下的10組數據作為訓練樣本,5組作為被檢測數據,其余狀態下的15組數據均作為被測數據。
對比訓練樣本的輸出與目標輸出,發現最大偏差約0.2,故將2個輸出的最大偏差均設為0.2,由(1)式計算誤差為0.08,將其設定為閾值,即當被測樣本的輸出誤差大于0.08時,認為有故障發生,彈出故障報警對話框,否則認為結果為可接受誤差范圍,歸屬于正常樣本。
一些軸承狀態的數據輸出結果見表2,診斷的正確率達100%。其中正常1,2是任意抽取的10個訓練樣本中的正常數據,從其誤差可以看出,遠遠小于設置的目標輸出0.01;正常3,4為10個訓練樣本外的正常數據,其平均誤差明顯比訓練樣本誤差大;其他故障狀態均為各種故障狀態下任取2個。結果表明,系統能正確判斷出軸承是否存在故障,而且在外圈裂紋2的故障中,雖然輸出誤差只有0.584 79,但系統仍能判斷出故障,既說明了BP初始閾值的隨機性,又驗證了系統所選取閾值的合理性。

表2 各種軸承狀態的智能診斷輸出結果
為了實現快速準確的在線故障檢測,通過虛擬儀器平臺,利用神經網絡的自組織自學習性質,完成了軸承故障檢測系統的設計。系統采用了最大值、有效值等11個特征值,通過增加輸入神經元的個數,減少神經網絡運行步數和時間,并且對神經網絡進行循環求取平均誤差,排除因隨機性造成的錯誤判斷,對在實驗室條件下所測試的樣本判斷正確率達100%,大大提高了系統診斷準確性。下一步的工作是對軸承不同故障狀態進行模式識別,從而進一步檢測出不同故障類型。