楊健健, 唐至威, 王曉林, 王子瑞, 吳 淼
(中國礦業大學(北京)機電與信息工程學院 北京,100083)
在實際的工業生產過程中,針對昂貴、關鍵的重型裝備開展故障診斷異常檢測研究具有重要的經濟和社會效益。其中,掘進機是煤礦井下巷道掘進的關鍵裝備,在煤礦安全高效生產中發揮著關鍵作用。由于煤礦井下作業空間狹窄、空氣潮濕、煤巖性質復雜,惡劣的工作環境使得無人化掘進對掘進機的智能控制要求越來要高,因此對掘進機故障診斷異常檢測技術的研究具有實際的工程應用價值。針對上述現狀,當前關鍵問題主要體現在故障數據的缺失和整體系統狀態數據的異常識別兩個方面[1-2]。生產實踐經驗表明,機械設備的振動與其運行狀態之間有密切關系,相關部件運行過程突發故障或衍生故障等都會通過振動信號體現出來[3]。
缺少故障振動數據是目前大型機械整體部件故障診斷研究中的一大難點。支持向量數據描述算法是一種典型的單分類方法,只需對健康數據進行訓練,便可對部件的健康狀態與非健康狀態進行分類。目前,SVDD已在電力系統[4-5]、發動機[6]及壓縮機[7]等故障診斷中應用。僅對設備的健康與非健康狀態進行分類無法得知部件的故障程度,具有模糊性,對設備使用與維修的指導意義不大,因此需要對設備的故障程度進行劃分。BP神經網絡是一種有效解決數據分類問題的工具,其算法存在收斂速度慢以及容易陷入局部極小值的問題。國內外研究人員嘗試使用不同算法優化BP神經網絡,其中粒子群優化算法(particle swarm optimization,簡稱PSO)的應用較為廣泛且效果較好[8]。為了進一步提升PSO算法的全局搜索能力與局部搜索能力,研究人員提出了多種PSO優化方法[9-11]。改進型PSO算法性能各異,適用于不同工程研究領域,為使PSO算法能夠更加適合掘進機故障診斷,需對PSO算法進行改進。
為解決掘進機回轉臺故障診斷研究中缺少故障數據以及需要對故障程度進行劃分的問題,筆者提出了一種基于單分類健康數據的VSAPSO-BP網絡掘進機回轉臺故障診斷方法。以EBZ160型掘進機的回轉臺(整體部件)為例,使用SVDD對健康樣本集進行訓練,根據現場經驗構造非健康數據集,利用SVDD對非健康數據集的識別率,把非健康數據分為故障臨界數據與故障數據兩類。綜合建立健康、故障臨界及故障3類數據樣本集,使用新型改進PSO對BP神經網絡的權值參數進行優化,提出了一種變異自適應粒子群優化算法替代了BP神經網絡原有的梯度下降算法,使VSAPSO-BP神經網絡應用于掘進機回轉臺故障診斷異常檢測具有更快的收斂速度和更高的識別精度。
通過對EBZ160型掘進機回轉臺振動特征的分析,選擇回轉臺水平測點振動加速度的有效值、方差和峭度作為特征向量。如何針對現實狀況中只有健康穩定狀態的單類數據特征進行有效的異常檢測是解決掘進機故障診斷方法的關鍵問題。
令掘進機回轉臺振動加速度信號特征向量為X=[x1,x2,…,xn],振動加速度信號特征向量的故障閾值為Y=[y1,y2,…,yn],筆者將掘進機回轉臺的運行狀態分為3類數據集合,其定義如下。
定義1表征設備的健康狀態數據集合H={x∈X|xi 定義2機器出現的故障短時間內不影響機器運行,為了不影響生產效率,仍可繼續運行等待檢修,表征設備處于故障臨界狀態數據集合C={x∈X|yi-xi/yi≤σ;i=1,2,…,N},其中:σ為常數,通常取0.3。 定義3表征機器出現故障影響正常運行并危及人員的安全,需立刻停止運行并檢修嚴重故障狀態數據集合C={x∈X|yi-xi/yi>σ;i=1,2,…,N},其中:σ為常數,通常取0.3。 SVDD算法[10]可將已知的單一健康狀態運行樣本數據壓縮在一個高維特征空間,構造一個能夠描述健康數據范圍的封閉緊湊的最小超球體,如圖1所示。該方法能夠對健康狀態與非健康狀態進行區分。 圖1 SVDD單分類示意圖Fig.1 SVDD single classification diagram 圖2 數據分類示意圖Fig.2 Data classification diagram 根據經驗,數據的準確率與數據類型的關系為 (1) 其中:Z(A)為指示函數;A為識別準確率;1代表該數據為健康數據;0代表該數據為故障臨界數據;-1代表該數據為嚴重故障數據。 根據上述原則,筆者選取一組在非訓練樣本數據集中可被SVDD完全識別的健康數據作為測試樣本,根據SVDD分類算法識別率分別確定健康狀態、故障臨界狀態與嚴重故障狀態的取值范圍,將該線性權值作為故障樣本的取值依據,建立健康狀態、輕微故障狀態與嚴重故障狀態的樣本數據集。 為克服傳統BP網絡算法收斂速度慢且容易陷入局部極小值的缺陷,本研究提出VSAPSO算法代替優化BP網絡原有的梯度下降算法來調整BP網絡參數中的權值和閾值。 標準粒子群優化算法公式如式(2)~(5)所示。 其中:vid為當前粒子i的速度;xid為當前粒子i的位置;c1,c2為學習因子;r1, r2為[0,1]之間的隨機數;pid為粒子i發現的個體最優位置;pgd為粒子i發現的全局最優位置;vmax為最大速度;wmax為最大慣性權重,wmin為最小慣性權重,t為迭代次數,Tmax為最大迭代次數。 該方法雖然原理簡單、受控參數少和收斂速度快,但也有易于收斂到局部最優和搜索精度不高的缺點[8]。 APSO算法[13]采用自適應調整慣性權重的方式提高了標準PSO算法的全局和局部搜索能力,但是該方法w調整范圍較小,導致算法的搜索能力稍顯不足,且容易使搜索陷入局部極小值。因此,筆者提出了一種VSAPSO算法。 首先,VSAPSO算法修改了APSO算法的慣性權重公式,即 (6) 其中:wmax,wmin分別為慣性權重的最大值和最小值;F(i)為每代第i個粒子的適應值;fmax為每代粒子的最大適應值;fmin為每代粒子的最小適應值。 該方法可以根據當前粒子適應值的好壞自動調整慣性權重w的參數。當適應度值較大時,w值變大,可以提高粒子的搜索速度及全局搜索能力。當適應度值較小時,w值變小,可以降低粒子的搜索速度,提高粒子的局部搜索能力。修改后的慣性權重w具有更大的調整范圍,提高了算法的搜索能力。 其次,筆者使用遺傳算法中變異方式讓粒子按一定幾率將位置隨機重置,使其跳出原位置重新搜索,降低了粒子群陷入局部極小值的幾率,變異方式為 (7) 其中:p為變異概率;xmax為位置所允許的最大值;R(1, D)為D個0~1之間的隨機數。 筆者分別使用Griewank測試函數、Rosenbrock測試函數和Ackley函數將標準PSO算法、自適應粒子群優化算法(adaptive particle swarm optimization,簡稱APSO)與VSAPSO算法進行測試,驗證該方法提高了算法尋優能力。其適應度值變化如圖3~5所示。可見,筆者提出的VSAPSO算法收斂速度相對較優。 圖3 Griewank函數下適應度值變化對比Fig.3 Comparison of fitness values under Griewank function 圖4 Rosenbrock函數下適應度值變化對比Fig.4 Comparison of fitness values under Rosenbrock function 圖5 Ackley函數下適應度值變化對比Fig.5 Comparison of fitness values under Ackley function 當達到最大迭代次數時,3種算法的最小適應度如表1所示。由表1可知,VSAPSO算法的最小適應度值最小,尋優能力高于其他兩種PSO算法。 表1 3種測試函數下最小適應度 Tab.1 Minimum fitness under three test functions 測試函數PSOAPSOVSAPSOGriewank0.012 60.009 90Rosenbrock0.079 50.004 71.849 6×10-14Ackley0.056 30.008 76.921 9×10-9 筆者提出的VSAPSO-BP神經網絡算法流程主要步驟如下。 1) 對BP網絡的拓撲結構和神經元數目進行初始化。 2) 根據BP網絡的拓撲結構和神經元數目,對PSO算法的種群規模、最大迭代次數、慣性權重、學習因子、最大迭代次數、適應度函數、粒子位置和速度初始化,根據式(8)確定每個粒子的維數。 D=(S1+1)S2+(S2+1)S3 (8) 其中:S1為輸入層神經元數;S2為隱含層神經元數;S3為輸出層神經元數。 3) 利用提出的自適應調整慣性權重和變異算子相結合的方式對粒子的速度與位置進行更新。 4) 對每個粒子位置對應的適應度值進行計算,得到粒子的個體適應度值與群體適應度值,并將個體最佳適應度值作為群體適應度值。 5) 達到最大迭代次數后,使用群體最優位置對BP神經網絡的權值閾值進行賦值,使用該網絡對樣本進行訓練,得到輸出值。 筆者使用的數據為中國礦業大學(北京)研制的大容量數據記錄儀在煤礦井下采集的EBZ160型掘進機回轉臺振動加速度數據,其采樣頻率為10 kHz,原始波形如圖6所示。 圖6 回轉臺振動數據原始波形圖Fig.6 Original waveform of rotary table vibration data 使用Matlab對振動加速度信號進行分析,得到如圖7所示的振動加速度有效值、方差和峭度的歸一化波形圖。由于回轉臺的健康狀態可由回轉時的振動加速度信號體現,且為了排除截割時的較大擾動,選取掘進機在非截割狀態下掘進機回轉臺正常工作時振動加速度的特征值作為訓練樣本。在目標數據中選取250組數據作為樣本,其中200組為訓練樣本,50組為測試樣本,部分樣本數據如表2所示。 圖7 特征值歸一化波形圖Fig.7 Eigenvalue normalized waveform 表2 部分樣本數據 Tab.2 Part of the sample data 有效值/(10m·s-2)方差/(10m·s-2)峭度0.040 10.076 83.243 70.047 70.109 33.397 10.042 80.087 83.160 20.033 90.054 94.184 70.035 90.061 93.835 30.035 50.060 53.737 80.038 90.072 23.677 70.037 80.068 63.412 50.036 50.064 13.873 30.037 80.068 43.751 5 得到樣本數據后,使用SVDD方法對訓練樣本進行訓練,使用測試樣本對訓練好的SVDD進行測試,結果如圖8所示。由圖8可知,建立的SVDD網絡可以對非截割狀態下回轉臺回轉時健康數據進行識別,準確率為100%。 圖8 SVDD測試結果Fig.8 SVDD test results 根據提出的原則對測試樣本進行處理,得到線性權值與識別準確率關系如表3所示。 表3 線性權值與識別準確率關系 Tab.3 The relationship between linear weights andrecognition accuracy 線性權值準確率/%線性權值準確率/%1.1倍1001.5倍701.2倍1001.6倍301.3倍1001.7倍01.4倍1001.8倍0 由表3可知,當分類準確率大于70%時,線性權值在1~1.5之間,可將該線性權值區間內的數據歸類為健康數據。當分類準確率為30%~70%時,線性權值在1.5~1.6之間,可將該線性權值區間內的數據歸類為故障臨界數據。當分類準確率小于30%時,線性權值大于1.6,由于發生故障時特征向量的值可能會達到健康時特征值的8倍以上,因此筆者將線性權值的上限暫設為8,線性權值取值為1.6~8,可將該線性權值區間內的數據歸類為故障數據。該線性權值與分類準確率的關系即為非健康數據構造的依據。各類數據的線性權值取值范圍及數據構造公式如表4所示。表4中:S1i為第i個健康數據;S2i為第i個故障臨界數據;S3i為第i個故障數據;si為第i個原始健康數據;R1為1~1.5之間的隨機數;R2為1.5~1.6之間的隨機數;R3為1.6~8之間的隨機數,i=1, 2, …, 250。 筆者使用200組訓練樣本和50組測試樣本,共250組樣本按照表4的數據構造公式進行數據構造,共構造健康、故障臨界與故障3組數據,每組數據各250個樣本。圖9為目標數據特征值在二維空間的SVDD分類。 表4各類數據線性權值取值范圍及數據構造公式 Tab.4Thelinearweightsrangeanddataconstructionformulaofvarioustypesofdata 數據類型線性權值數據構造公式健康數據1~1.5S1i=siR1i故障臨界數據1.5~1.6S2i=siR2i故障數據1.6~8S3i=siR3i 圖9 基于SVDD的目標數據劃分Fig.9 Target data division based on SVDD 將該三維向量作為BP網絡的輸入向量,因此BP網絡的輸入層神經元個數為3個。由于筆者將數據分為健康、故障臨界與故障3類,數據標簽分別為[1],[0],[-1],因此BP網絡輸出層神經元個數為3個。由于1個隱含層即可解決此類分類問題,因此使用1個隱含層,隱含層神經元數目為7個。經過數據歸一化,輸入向量在[0,1]之間,因此輸入層激活函數設定為logsig,輸出向量為[0,1],輸出層激活函數設定為tansig。 經測試,PSO算法的粒子群規模N=40為宜,最大迭代次數M=1 000,最大慣性權重wmax=0.9,最小慣性權重wmin=0.4,學習因子c1=c2=2.05,由于輸入向量取值在[0,1]之間,因此最大速度 vmax=1。適應度函數的選擇對BP網絡的訓練效果影響較大,選擇適應度函數為BP網絡目標輸出與實際輸出的均方差,適應度值的大小與誤差大小成正相關。適應度函數為 (9) 其中: n為樣本個數; Pi為第i個樣本的理想輸出值; Ti為第i個樣本的實際輸出值。 將構造的健康、故障臨界與嚴重故障訓練樣本帶入PSO-BP神經網絡、APSO-BP神經網絡和筆者構建的VSAPSO-BP網絡進行訓練。目標數據在BP神經網絡的適應度下降曲線如圖10所示。可見,相較于PSO-BP和APSO-BP神經網絡,VSAPSO-BP神經網絡的適應度值下降速度更快。 圖10 適應度下降曲線Fig.10 Fitness decline curve 將訓練完成的神經網絡用測試樣本進行測試,結果如表5所示。由于健康數據與故障數據的特征都比較明顯,因此識別率均較高。故障臨界數據的特征比較模糊,因此識別率相對較低。測試結果表明,筆者建立的VSAPSO-BP神經網絡對數據的識別準確率較高且平均誤差較小,分類性能優于PSO-BP神經網絡和APSO-BP神經網絡。 表5 測試結果 1) 針對大型裝備僅具有單類健康數據樣本的問題,提出了一種基于SVDD的非健康數據描述方法,定義了健康、故障臨界與嚴重故障數據的劃分依據,為單類數據的異常檢測提供了一種可行方法。 2) 提出了VSOPSO算法,使用自適應慣性權重與變異方法相結合的方法提高了PSO算法的局部搜索能力、全局搜索能力以及PSO算法的尋優精度與速度,降低了PSO算法尋優時陷入局部極小值的幾率。 3) 針對實際工況中掘進機回轉臺健康狀態診斷的問題,給出了詳細的實驗步驟與實驗數據。結果表明,該方法能夠準確有效地對掘進機回轉臺健康狀態進行診斷,在掘進機故障診斷方面應用價值較高,為解決并普及適用僅具有單類健康數據的大型機械故障診斷異常檢測問題提供了一種新的方法與思路。




2 VSAPSO-BP神經網絡
2.1 VSAPSO算法




2.2 VSAPSO-BP神經網絡算法流程
3 實例數據分析
3.1 樣本數據提取



3.2 非健康數據構造




3.3 目標數據狀態識別


4 結 論