錢子君,吳 波,于劍峰,王文瑞,王振明,袁曉兵
(1.中國科學院 上海高等研究院,上海 200120;2.中國科學院大學,北京 100089;3.中國科學院 上海微系統與信息技術研究所,上海 200233)
隨著工業的發展,旋轉機械設備逐漸向精密化、自動化、智能化方向發展[1]。旋轉機械設備通常包含軸承系統、變速系統、轉子、聯軸器,高度結構化使得其內部組件之間的聯系更加緊密,對設備運行可靠性的要求也更高。旋轉機械設備工作環境惡劣復雜,長期高強度工作增加了其故障頻發的可能性,重則會造成人員、財產的重大損失[2]。
滾動軸承作為重要的傳動和承托零件,是旋轉機械設備的重要組成部分。
軸承故障通常表現為內、外圈和滾動體的局部損傷,如表面出現裂紋、磨損或者剝落等,故障發生比例高達30%[3]。軸承一旦失效,旋轉機械設備工作狀況會逐漸惡化,直至無法工作。所以對軸承的狀態進行監測是保障復雜旋轉機械設備安全性與穩定性工作的關鍵之一。根據監測結果可以確定合理的檢修時間,制定適宜的維修方案,因此,對滾動軸承進行實時狀態監測和故障診斷具有極大的工程意義。
滾動軸承故障診斷主要步驟為:(1)信號采集;(2)故障特征提取;(3)故障監測分類。
在軸承故障診斷方法中,最早、最成熟的是振動分析法。比如,短時傅里葉變換[4]、經驗模態分解(empirical mode decomposition,EMD)[5]、小波變換法[6]等。短時傅里葉變換在提取信號的非線性特征時,由于窗函數固定,導致時頻分辨率無法改變;EMD可以將振動信號自適應分解,但可能出現端點效應、模態混淆等問題;小波變換法對小波基的選取敏感性大,時頻域精度有待改進。
隨著計算機技術的發展,由于人工智能算法具有強大的非線性信號特征提取能力,被廣泛應用到故障診斷中。常見的故障分類算法有:BP神經網絡[7]、支持向量機(support vector machine, SVM)[8]、K最鄰近算法(k-nearest neighbor, KNN)[9]130-131等。這些算法都存在一定的局限性。比如,BP神經網絡會出現過擬合、收斂困難等問題;SVM的故障分類效果受到數據樣本分布與參數選取兩方面影響[10];面對海量實時采集的軸承數據時,KNN算法的效率有待提升。
皮駿等人[11]用改進的遺傳算法優化了BP網絡的權值和閾值,對滾動軸承正常、內圈故障、外圈故障和鋼球故障4種工況進行了診斷。張弛等人[12]將軸承振動信號輸入二維卷積神經網絡,進行了自適應特征提取,再取全連接層結果作為支持向量機的輸入,實現了對軸承的故障分類。王嘉浩等人[9]129-133在KNN中引入了相似度量,并且結合小波包分解算法,對軸承故障進行了診斷。
當處理振動信號的分類問題時,單一的模型無法準確地識別軸承故障,這些分類算法需要結合其他降噪算法,并尋找最優參數,龐大的數據量會消耗大量計算資源,難以實現實時的故障診斷,且很少關注到信號采集存儲方面的問題。
壓縮感知理論是在信號稀疏分解和近似理論的基礎上發展起來的一種新的信號處理理論[13],它避免了傳統奈奎斯特定理的局限性,實現了邊采樣、邊壓縮,節省了振動信號的獲取時間與存儲傳輸成本,并被成功應用于圖像和故障診斷等許多領域。
郭俊鋒等人[14]提出了基于K-SVD字典學習算法,稀疏表示振動信號壓縮測量的重構方法,通過研究離散余弦(discrete cosine transform, DCT)字典的方式,用振動信號訓練得到了特定字典,發現了用振動信號訓練成的字典稀疏表示性能優于固定字典。鹿洪榮[15]提出了一種基于壓縮感知理論的機械故障信號檢測方法,用壓縮感知理論構造了測量矩陣,并用范數稀疏逼近法求稀疏解,其故障診斷準確率可達到96.16%。ZHANG Xin-peng等人[16]1253-1265提出了基于K-奇異值分解(k-singular value decomposition, K-SVD)與正交匹配追蹤算法(orthogonal matching pursuit, OMP)的低維信號故障診斷方法,并研究了觀測值對其性能的影響。
上述文獻中,K-SVD算法的稀疏編碼算法均采用OMP算法,而OMP算法需要信號稀疏度作先驗知識,對測量矩陣也有一定的要求。
作為常見的信號重構算法,貪婪算法包含OMP[17]、子空間追蹤算法(subspace pursuit, SP)[18]、稀疏度自適應匹配追蹤算法(sparsity adaptive matching pursuit, SAMP)[19]、分段弱正交匹配追蹤算法(stagewise weak orthogonal matching pursuit, SWOMP)[20]等。OMP算法在每次迭代過程中均需求解目標函數的最小二乘解,其重建的復雜度較高。SP算法引入回溯思想,可以獲得更好的重建質量和較低的重建復雜度,但需要將稀疏度作為先驗知識,因此,難以將其應用到未知的復雜振動信號特征提取問題上。SAMP算法的重建精度仍有上升空間,其重建效率低的特點使它很難實現故障的實時監測。SWOMP算法不需要將稀疏度作為先驗條件,減少了對測量矩陣的要求,在重建信號時,SWOMP算法采用內積準則,從傳感矩陣中挑出與殘差信號較為匹配的原子;在迭代過程中,使用固定的閾值參數極易導致高估或低估的結果;并且由于在迭代過程中尋求的不是最優解,導致了SWOMP算法重建精度較低。
近些年來,也有很多關于改進貪婪算法的研究。張瑞等人[21]提出了一種改進的OMP算法,用共軛梯度法對OMP算法中的直接矩陣求逆步驟進行了改進,降低了算法的復雜度。賀紹琪等人[22]在測量矩陣方面對SWOMP算法進行了改進,用部分哈達瑪矩陣替代了傳統的高斯矩陣,顯著降低了測量矩陣的互相關性,提高了其重建精度。劉建生等人[23]利用廣義Jaccard系數相似性的匹配準則代替了內積匹配準則,解決了以內積準則求向量相似度造成原子丟失的問題,優化了原子篩選過程。
針對SWOMP算法的不足,筆者提出一種S形二次分段弱正交匹配追蹤算法(s-shaped quadratic stagewise weak orthogonal matching pursuit, SQSWOMP)。
首先,筆者基于S形函數有初始階段快速接近、最終階段緩慢接近的變步長特點,在SWOMP算法中引入S形變換函數,使得每次迭代得到的門限參數根據重構誤差有所調整,以解決SWOMP算法對門限參數的選取依賴性大的問題,提高算法的自適應性;并且在SWOMP算法的原子選擇過程中,根據回溯思想,加入原子的二次篩選過程,剔除無效原子,提高算法的重構精度;將SQSWOMP算法應用到K-SVD算法的稀疏編碼階段中,以期提高故障特征信息的提取能力,有效識別出軸承信號的狀態。
壓縮感知理論表明,如果信號具有稀疏性,那么可以通過與變換不相干的觀測矩陣,將原高維信號投影至低維空間,再經過重構算法,就可以實現用低維信號精準地恢復原始高維信號。
但信號通常在時域上是不稀疏的,需要做相應的變換以實現信號的近似稀疏。例如,某些時域不稀疏的信號在頻域是稀疏的,通過傅里葉變換將原信號轉換為頻域信號,這一步即代表信號的稀疏表示,繼而通過重建方法在稀疏域復原出原信號。
壓縮感知理論的3個核心問題是信號觀測、稀疏表示與信號重構,如圖1所示。
機械設備是由不同組件構成的高結構化整體,需要的設備監測點較多,長時間、持續的監測會生成海量數據,這給數據存儲、傳輸帶來了巨大壓力。旋轉機械設備工作環境復雜惡劣,采集到的原始數據中包含的并不都是有用信息,如果直接存儲、傳輸原始數據,會導致資源的浪費。壓縮感知理論只需較少采樣值,就可以不失真地重構原始高維信號,這大大減少了對軸承數據采集時間與硬件資源的浪費,減輕了數據的存儲、傳輸壓力。
由于機械設備工作環境惡劣、復雜,軸承信號具有數據量大、噪聲強、高維度的特點,單一人工智能模型無法準確地識別軸承故障,這些分類算法需要結合其他降噪算法,并且尋找最優參數,龐大的模型參數量會消耗大量計算資源,難以實現實時故障診斷。壓縮感知理論的稀疏性假設符合高維振動信號的分布特點,所以壓縮感知理論在處理軸承振動信號問題方面具有巨大優勢。當軸承振動信號在一定的變換后具有近似稀疏性,壓縮感知理論可以利用較少的采樣值,通過壓縮匹配追蹤算法,重構采樣數據,檢測稀疏觀測值中表征軸承故障特征的成分,直接實現故障診斷,為滾動軸承的實時狀態監測與故障診斷提供了便利性。
總而言之,壓縮感知理論可以為海量數據的存儲、傳輸難題提供解決思路,并且在滾動軸承信號的欠采樣、故障特征提取和故障識別分類等多方面提供技術支持,對于機械設備的在線狀態監測有重要的價值[24]。
圖1中,給定原始高維信號x∈RN,該信號可在觀測矩陣Φ∈RM×N的作用下映射到低維空間,得到長度為M的低維觀測信號y∈RM。顯然,觀測矩陣的行維度M需要小于列維度N。
并且,這是一種線性映射,即:
y=Φx
(1)
當Φ是隨機測量矩陣時,原始高維信號x與線性映射后的低維信號y具有如下關系:
(1-ε)‖x-y‖2≤‖Φ(x-y)‖2≤(1+ε)‖x-y‖2
(2)
式中:ε—常數且ε∈(0,1)。
式(2)說明:通過式(1)線性變換可使變換前后信號在歐幾里得空間的距離有近似保存,即原始高維信號的有效信息在這種壓縮變換中得到了有效保留,這為特征提取提供了理論依據。
從低維觀測信號y中恢復原始信號x時,由于M小于N,式(1)構成了欠定方程組,該方程組具有無窮多組解,無法唯一地從觀測值中獲得原始信號。但是,當原始信號具有稀疏性,意味著x中存在大量的0元素,僅有少量的非0元素。此時,增加了從y中成功恢復x的可能性。
原始信號x一般不是稀疏信號,此時可將原始信號進行稀疏表示。
將x在正交基矩陣Ψ上展開,有:
(3)
式中:Ψ—稀疏字典矩陣,Ψ=[Ψ1,Ψ2,Ψ3,…,ΨN],Ψ∈RN×N;θ—N個元素構成的稀疏系數向量,θ=[θ1,θ2,θ3,…,θN]∈RN。
式(3)也可表示成矩陣形式:
x=Ψθ
(4)
當θ是K稀疏時,即向量中有K個非零元素值并且K小于N,可將向量θ視為原信號x在字典矩陣Ψ上的稀疏表示系數。
結合式(1)與式(4),標注A=ΦΨ,得到壓縮感知的矩陣形式:
y=Φx=ΦΨθ=Aθ
(5)
當Ψ是固定字典時,如DCT字典、小波字典等,這些固定字典的稀疏表示方式不能靈活地表示振動信號的復雜性,且不具有自適應性,影響測量重構精度。基于振動信號特征學習而來的字典,可以充分表征信號的故障特征,使得振動信號在該字典的稀疏表示方式下足夠稀疏,需要的壓縮測量值少,且更易獲得高精度的重構信號。
字典學習方法如K-SVD算法,可以很好地對振動信號進行稀疏表示。
K-SVD算法的核心步驟包含3步:
(1)初始化字典。為了更好地稀疏表示信號,在軸承歷史數據中選取k列作為初始字典;
(2)稀疏編碼階段。根據初始字典Ψ,利用貪婪算法得到x在字典Ψ上的稀疏系數矩陣θ,此步驟的重建算法是OMP算法,鑒于OMP算法重構效率低,該研究用SQSWOMP算法代替OMP算法,有助于實現實時故障診斷;
(3)固定θ,更新Ψ,當重構誤差達到可接受范圍時,停止更新。
K-SVD算法可以根據振動信號的特點,構造出具有自適應性的過完備字典。
當信號x經過稀疏變換后,并且測量矩陣Φ與字典Ψ不相干,此時可通過匹配追蹤算法成功恢復原始信號。重構問題由下式所示:
(6)
式中:T0—目標稀疏度值。
在匹配追蹤算法中,SWOMP算法的優點是不需要將稀疏性作為先驗條件,減少了對測量矩陣的要求,適用于滾動軸承信號的重構問題;但SWOMP算法的重構精度有待提升,這也是該研究著重解決的問題。
根據壓縮感知理論,筆者提出了基于改進SWOMP算法的實時滾動軸承故障診斷方法。該方法主要包括振動信號采集壓縮、壓縮后的信號傳輸與數據處理等3部分,整體的流程如圖2所示。
圖2中:實時信號采集系統用隨機觀測矩陣Φ對傳感器采集到的原始高維振動信號進行了欠采樣,得到測量值y。當托普利茨矩陣作為觀測矩陣時,可以得到很好的重構效果,并且可以明顯地加快運算速度,減少其存儲空間[25],故該研究中的隨機觀測矩陣采用托普利茨矩陣。
信號傳輸系統負責將低維觀測值傳輸至遠程監控中心,在監控中心完成數據處理。數據處理過程主要包括用改進的K-SVD算法訓練n+1種歷史振動信號,生成n+1種過完備字典,并用SQSWOMP算法重構低維觀測信號,得到稀疏表示系數。根據稀疏系數進行數據分析,即可得到信號狀態。
數據分析的具體過程如圖3所示。
數據分析過程的原理在于不同的字典稀疏表示信號的能力不同。具有相同故障特征信息的字典可以很好地稀疏表示同種信號,得到的稀疏表示誤差小,用其他屬性信號訓練得到的字典稀疏表示誤差較大。這是由于學習字典具有自適應能力強、描述特征能力強的特點,所提取的字典原子與信號本身是線性關系,可以很好地模擬信號特征信息。
將實時信號通過若干種訓練好的字典,稀疏表示誤差最小的字典包含著與實時信號相同的故障特征信息,即可將實時信號判定為與該字典相同的狀態。
基于SQSWOMP算法的滾動軸承故障診斷方法具體步驟如下:
(1)采集滾動軸承歷史振動信號,設定有n+1種工況信號:正常工況、故障狀態1、故障狀態2、故障狀態3、…、故障狀態n;
(2)用SQSWOMP算法代替傳統K-SVD算法稀疏編碼階段的貪婪算法,得到改進的K-SVD算法。結合n+1種軸承工況數據,訓練得到n+1種字典,分別為Ψ0(正常工況信號訓練得到的字典)、Ψi(故障狀態(i=1,2,3,…,n)訓練得到的字典),將過完備字典作為先驗知識;
(3)選用托普利茨矩陣作為隨機觀測矩陣,對實時采集系統采集到的信號x進行壓縮采樣,得到低維觀測值y=Φx;

(7)
(6)根據式(7)可以得到n+1個表示誤差,選取最小的表示誤差對應的字典狀態即判定為軸承故障狀態,理論上最小的表示誤差應接近0。例如,在上述n+1個表示誤差中,若σ0=min{σ0,σ1,σ2,…,σn},即判定軸承沒有發生任何故障,處于正常狀態;若σp=min{σ0,σ1,σ2,…,σn},則判定軸承處于狀態p。
解決軸承故障診斷問題時,常見的重建算法是貪婪算法。由于故障信號的稀疏度是未知的,像OMP、SP算法需要預估稀疏度,SWOMP的優勢是不需要預知信號的稀疏度信息,很適合于處理未知故障信號的重構問題。
SWOMP算法的主要思想是采用內積準則從傳感矩陣中挑出與殘差信號較為匹配的原子集。其具體步驟如下:
(1)已知傳感矩陣A=ΦΨM×N,觀測向量y∈RM,設置迭代終止條件,門限閾值α,α∈(0,1);
(2)初始殘差ro=y,原子支撐集Λ0=?,A0=?,迭代次數t=0;
(3)求矩陣A與殘差rt-1的內積絕對值u=abs[ATrt-1],選取內積絕對值大于等于α*max(u)對應的原子序號,組成預選原子支撐集J0=find(u≥α*max(u));
(4)合并預選集J0與原支撐集Λt-1,得到支撐集Λt=Λt-1∪J0,Λt記錄每次迭代過程中選擇的原子的列序號;合并At=At-1∪aj,j∈J0,At記錄每次迭代過程中傳感矩陣A中在原子支持集中包含的列。當At=At-1,則停止迭代;

(6)更新殘差rt=y-Atθt,當殘差在一定范圍內,停止迭代進入步驟8;
(7)t=t+1,當迭代次數超過允許范圍內,停止迭代進入步驟(8),否則進入步驟(3)繼續迭代;
由上述分析可知:門限閾值參數α決定SWOMP算法篩選的原子集,這導致SWOMP算法重建性能依賴于α。SWOMP算法不同于OMP算法,OMP算法在每次迭代更新字典原子的過程中要尋找最優解,而SWOMP算法則是選取部分原子,雖然其提升了重建速率,但導致算法的重建精度低。
基于SWOMP算法對門限閾值的選取敏感性較大與重建精度低等缺點,筆者提出SQSWOMP算法,具體的改進之處見下文。
2.2.1 改進SWOMP算法依賴門限閾值的問題
門限閾值α對重建精度有很大影響,在迭代過程中,使用固定閾值容易導致低估或高估的結果。針對SWOMP算法在每次迭代中都選擇固定閾值參數的缺點,筆者提出了改進算法,基于S形函數具有初始階段快速接近、最終階段逐漸接近的特點,用S形函數值代替每次迭代中的固定閾值。這使得在迭代前階段通過大步長快速接近理想的門限閾值,后階段緩慢接近門限閾值,實現自適應地重構信號,提高了信號重構效率。
門限參數α∈(0,1),將5種經典的S形函數縮放至(0,1)之間。5種S形函數如圖4所示。
圖4中,5種函數均呈現先快后慢,最后趨于穩定的趨勢。
f1為反正切函數:
f1=0.78arctan(3.5x)
(8)
f2為雙曲正切函數:
(9)
f3是誤差函數:
(10)
f4、f5是代數函數:
(11)
(12)
SQSWOMP算法的S形函數采用f3函數,具體原因將在實驗部分進行討論。
2.2.2 改進SWOMP算法原子支撐集選擇問題
SWOMP算法在重建信號時,選取的是與原信號較為相關的若干個原子,而不是與原信號最相關的原子,這會導致不可靠的原子被選擇,是影響重建精度的關鍵問題。針對該問題,SQSWOMP在SWOMP算法的一次弱選擇原子的基礎上,增加了回溯過程,進行原子的二次選擇,刪除不可靠的原子以獲得最終的原子集。
二次選擇原子的原則是:
(13)

式(13)表明:在第二次選擇原子的過程中,首先求得系數向量的每一項元素的絕對值,選取絕對值小于平均值的那些元素,其對應在Λt中的原子序列號Λtpos,即組成了Jdel。二次選擇過程的目的是剔除原子支撐集中錯誤、貢獻小的原子序列。
綜上所述,改進的SQSWOMP算法的步驟如算法1所示。
算法1:SQSWOMP算法
輸入:
傳感矩陣A=ΦΨM×N
觀測向量y∈RM
迭代次數S,默認為20
初始參數x0,x0∈(0,1)
步長b=0.1
初始化:
殘差ro=y,Λ0=?,A0=?,t=0,x0=0.5
Whilet≤Sdo
1t=t+1
2u=abs[ATrt-1]
-----------------------------------------------------
-----------------------------------------------------
3α=f(x0),f(x)是S形函數
4J0=find(u≥α*max(u))
5x0=x0+b
6Λt=Λt-1∪J0
7At=At-1∪aj,j∈J0
10Λt=ΛtJdel
11At=AtAJdel
13rt=y-Atθt
14If‖rt‖≤1e-4:
Break
Endif
-----------------------------------------------------
-----------------------------------------------------
Endwhile

不同于SWOMP算法的迭代步驟,SQSWOMP算法不采用固定的門限參數α,在每次迭代過程中,通過S形函數值f(x0)自適應調整門限閾值,減少了迭代次數,在算法1的步驟4有所體現。
此外,在SWOMP算法原子支撐集選擇過程的基礎上,筆者增加了一次原子支撐集的刪除過程,如果選中的原子對恢復信號的貢獻小,則刪除之前選擇的錯誤原子,提高了重構效率與精度,在算法1的步驟9有所體現。
SQSWOMP算法流程圖如圖5所示。
滾動軸承振動信號是由:沖擊成分、轉頻及其倍頻等諧波成分和噪聲組成的信號。因此,構造仿真信號數學模型為y(t)=h(t)+s(t)+n(t)。
其中,h(t)為沖擊成分,s(t)為諧波成分,n(t)為高斯白噪聲,具體如下:
(14)
式中:α—衰減系數,α=700;f0—故障頻率,f0=120 Hz;T—故障周期,T=1/120 s;f1—固有頻率,f1=4 000 Hz;f2—轉頻,f2=30 Hz;fs—采樣頻率,fs=16 000 Hz。
采樣點數為4 000,觀測值是1 024,采用托普利茨觀測矩陣,添加的高斯白噪聲SNR是10 dB。
仿真信號y(t)的時頻域波形圖如圖6所示。
筆者用SQSWOMP、SWOMP、SP、OMP、SAMP算法分別對仿真信號進行了重構,并討論了這5種算法的重構效果、重構精度和運算時間。
對于5種重構算法,重構信號的時域波形如圖7所示。
圖7是用5種重構算法重構仿真信號得到的時域波形圖。為了展示波形細節,筆者取5 ms的波形進行觀察,其中,實線代表原始信號波形圖,虛線代表重構信號波形圖,兩條線的重合程度越高,代表重構效果越好。由此可以看出:SQSWOMP算法重構效果最好,兩條線十分吻合;SP算法的重構效果僅次于SQSWOMP算法,優于OMP算法,SAMP算法存在一定的誤差,SWOMP算法的重構效果最差,兩條線的差距比較大。
對于5種重構算法,重構信號的頻域波形如圖8所示。
圖8表明:SQSWOMP算法重構信號在頻域也與原信號頻域波形十分吻合,很好地凸顯了載頻30 Hz、故障頻率120 Hz及其倍頻;SP算法、OMP算法可以檢測出載頻、故障頻率及其倍頻,但是載頻的振幅有一定程度的衰減,說明排除噪聲的影響能力不如SQSWOMP算法;SAMP算法可以檢測出載頻、故障頻率,但振幅也有所衰減,并且無法準確檢測到故障頻率的倍頻;SWOMP算法的重構效果最差,載頻振幅的衰減程度較大,并且無法檢測到故障頻率的倍頻。
因此,SQSWOMP算法重構波形的效果最優。
5種重構算法重構信號的平均誤差與運行時間,如表1所示。

表1 不同算法重構信號的均方誤差與運行時間
表1說明:SQSWOMP算法的重構精度和運算時間均優于SP、OMP、SAMP、SWOMP算法。
仿真信號實驗結果表明:SQSWOMP算法可以解決稀疏度未知的振動信號的重構問題,在重構效果、精度和運算時間上均優于傳統的重構算法。
實驗采用采樣頻率為12 kHz的美國凱斯西儲大學6205-2RS JEK SKF深溝球軸承振動信號數據,以驗證該文提出的故障診斷方法的有效性。軸承數據是一維振動信號,利用移動滑窗法,每512個數據點取一列,將一維信號分割成矩陣,得到訓練集、測試集樣本,訓練集樣本用于字典訓練,測試集樣本用來驗證算法的重建效率和故障診斷成功率[26,27]。
對于遠程監控中心而言,訓練集是軸承歷史數據,測試集為實時監測得到的數據。軸承故障可能發生在內圈、外圈或滾動體部位。因此,將訓練集、測試樣本均分為4類:正常工況、內圈故障、外圈故障、滾動體故障樣本。訓練集每種類型的樣本包含3 000個信號,測試集每種包含800個信號,如表2所示。

表2 樣本集
筆者研究的第一個改進點就是用S形函數值自適應調整門限閾值參數值。筆者分別用5種典型的S形函數優化SWOMP算法,討論它們對4種工況信號的重建能力。
重建精度用指標RSNR衡量,重構信號的RSNR定義如下:
(15)

RSNR越大,表示重建效果越好。
筆者設觀測值為110,迭代次數為20次,初始化參數x0取0.5,分別用5種優化后的算法對4類測試信號做500次實驗,取其平均的RSNR,結果如表3所示。

表3 5種S形函數優化后的算法的PSNR對比
由表3可以看出:5種S形函數優化的SWOMP算法對4種測試信號的重建效果相差不大,但比傳統的SWOMP算法精度要高,并且f3函數優化的SWOMP算法精度最高,故SQSWOMP算法中的S形函數采用f3函數。
為了驗證SQSWOMP算法重構信號的能力,筆者用SQSWOMP算法重構原始一維的4種工況信號,采樣點數為4 096,測量數目為1 024,測量矩陣采用托普利茨矩陣,結果如圖9所示。
圖9中,重構信號與原信號的波形十分吻合,用SQSWOMP算法重構信號,時域與頻域恢復效果具有良好的魯棒性,可提取出軸承信號的有效成分。
在驗證了SQSWOMP算法的性能后,筆者提出基于SQSWOMP算法的實時軸承故障診斷方法,用SQSWOMP算法代替傳統的K-SVD算法稀疏編碼階段的重構算法,如之前圖2所示。
該方法的重點在于軸承故障字典的建立、快速準確地實現重構目的以及數據分析過程。
為了更好地凸顯軸承故障特征信息,用改進的K-SVD算法訓練得到能體現出軸承故障信息的學習字典。
K-SVD算法的參數設置如下:原子數量設為1 024,迭代次數為20,觀測矩陣采用托普利茨矩陣,觀測值選取110;利用改進的K-SVD字典學習算法,分別訓練這4種訓練信號構成的過完備字典,得到Dnormal、Dinner、Dout、Droll。
為了測試這4種字典的稀疏表現性能,筆者分別在4種字典上,依次將4種工況的測試樣本進行稀疏表示,用余弦相似度來衡量樣本與重構后的樣本的相似程度,余弦相似度衡量了兩個向量的夾角(在[-1,1]中取值,值越靠近1,表明原樣本與重構后的樣本的相似程度更高,稀疏表示效果更好),結果如圖10所示。
圖10中,橫坐標是800個測試樣本序列,縱坐標是重構信號與原信號的余弦相似度。
圖10(a)表明:將正常工況信號在4種字典上稀疏表示,正常字典Dnormal的稀疏表示重構誤差最小;
圖10(b)表明:將內圈測試信號在4種字典上稀疏表示,內圈字典Dinner的稀疏表示重構誤差最小;
圖10(c)表明:將外圈測試信號在4種字典上稀疏表示,外圈字典Dout的稀疏表示重構誤差最小;
圖10(d)表明:將滾動體測試信號在4種字典上稀疏表示,滾動體字典Droll的稀疏表示重構誤差最小,并且重構效果遠遠優于其他3種字典的稀疏表示效果。
圖10驗證了振動信號在由其同種特征信號訓練得到的字典上稀疏表示性能更好,在異種特征信號組成的字典上稀疏表示性能較差,意味著可以通過經過訓練的故障字典去稀疏表示實時信號,使得稀疏表示誤差最小的字典和實時信號的故障特征信息最為接近。
該結果驗證了筆者提出的故障診斷方法的可行性。
為了驗證用SQSWOMP算法取代傳統K-SVD稀疏編碼階段的OMP算法的有效性,以及研究觀測數目M與故障診斷性能的關系,筆者將4組測試信號通過該方法進行分類,并增加4組對照實驗(4組對照實驗的不同在于K-SVD稀疏編碼階段的重構算法,以及稀疏表示階段的重構算法分別用SWOMP、OMP、SP、SAMP算法),結果如圖11所示。
圖11中,橫坐標代表觀測值M,縱坐標是故障診斷成功率。
由圖11可以看出:隨著壓縮觀測量M的增加,4種軸承信號的故障識別率呈現逐漸提高的趨勢,觀測值在達到一定值時,識別率將趨于穩定;
圖11(a)是該方法在正常工況測試信號上的表現,基于SQSWOMP算法的故障診斷方法在M到達70時,達到接近百分之百的故障診斷成功率,并且優于其他重構算法性能;
圖11(b)體現了該方法在內圈工況信號上的表現,M在70左右可以達到接近百分之百的故障診斷成功率;
圖11(c)表明了該方法在外圈故障信號上的分類性能,在觀測值70左右,可達到百分之百的識別率;
圖11(d)為該方法在滾動體故障信號上的分類性能,在M為110時,可以達到接近百分之百的故障分類成功率。
ZHANG Xin-peng等人[16]1258-1259的研究表明,用傳統K-SVD算法訓練字典進行故障診斷時,當M為80時,正常、內圈、外圈、滾動體工況信號的故障識別率分別是97.88%、81%、85.25%、80.25%。
用SQSWOP算法代替傳統K-SVD算法稀疏編碼的重構算法,在相同的觀測值下,可以將故障診斷成功率分別提升2.17%、23.46%、17.30%、18.38%。
可見,改進的K-SVD算法可以用更少的觀測值得到較高的診斷成功率,訓練得到的字典可以很好地模仿軸承故障特征信息,有效實現滾動軸承實時故障診斷。
為了進一步證明方法的有效性,筆者將該方法與其他軸承故障診斷模型進行對比。其中,SVM的核函數采用徑向基核函數(Radial Basic Function, RBF),初始值c1=0.8,c2=0.8;BP神經網絡的輸入節點為4,隱含層節點為25,輸出節點為3;KNN算法k為4,采用k-d樹算法。
筆者對4種工況下的3 200個樣本隨機進行測試,平均故障診斷成功率如圖12所示。
由圖12可以發現:基于KNN、BP、SVM故障診斷方法準確率有待提升,原因是軸承振動信號中含有大量干擾噪聲,并且處于故障狀態的信號本身就具有非平穩、非線性等特點,導致這些分類模型無法直接應用于提取非線性含噪信號,需要進行參數尋優或是在提取故障信息后再輸入分類模型;
該方法的診斷準確率很高,在觀測值設置合理的情況下,可達到接近百分之百的平均診斷準確率。這是由于構造的過完備字典是根據訓練信號學習而來,具有自適應性,可以充分體現故障特征信息,并且改進貪婪算法,使得其在保證高效率的情況下,提高了重建精度;
另外,該方法可以不需要存儲傳輸原始高維信號,當重建精度一定時,可以使用更少的觀測值高精度地壓縮信號,只需要存儲、傳輸壓縮后的低維信號,用低維信號進行故障診斷,大大減輕了數據存儲與傳輸方面的負擔,為實時故障診斷提供可能。
采用香農定理的傳統滾動軸承故障診斷方法,會在持續的狀態監測過程中產生海量數據,原始數據往往含有較多與故障無關的信息,使得振動信號的傳輸、存儲有很大的壓力,并且造成硬件資源的浪費。為此,筆者提出了一種基于改進SWOMP算法的軸承故障診斷方法,用改進的K-SVD算法提取非線性振動信號的特征,然后生成故障特征字典,利用稀疏表示誤差最小化原則,對實時軸承信號進行了預測分類,在減輕存儲、傳輸壓力,同時實現了對滾動軸承的故障診斷。
筆者的主要貢獻有以下幾點:
(1)重構算法方面的改進。針對SWOMP算法對門限閾值參數依賴性大和重建精度低等問題,在SWOMP算法中引入S形函數并增加了原子支撐集的二次選擇過程,進行了改進,提高了重建算法的精度與效率,使得重構信號更加稀疏并且迭代更快;當重建精度一定時,可以用更少的觀測值實現重構信號。實驗結果表明,SQSWOMP算法有效地解決了SWOMP算法重構精度低的問題,并且提高了信號重建速率,在重構效率、精度方面均優于常見的貪婪算法;
(2)故障診斷準確率的提升。將改進的SQSWOMP算法應用于K-SVD算法中,取代K-SVD算法稀疏編碼階段的重構算法,驗證了改進的K-SVD算法的有效性,應用到軸承故障診斷問題上,可以準確地提取故障特征。在相同的觀測值下,可以將4種工況的故障診斷成功率分別提升2.17%、23.46%、17.30%、18.38%,解決了內圈、外圈、滾動體工況故障診斷準確率低的問題,并且由于字典是由振動信號訓練而來,所以故障診斷方法具有自適應性,可以解決不同振動信號的故障診斷問題;
與其他方法相比,該方法在4種工況信號的故障診斷準確率均高于其他機器學習算法。該方法只需利用壓縮后的數據直接進行故障診斷,解決了長期狀態監測海量數據存儲與傳輸方面的問題,并為實時故障診斷提供了便利。
該研究的研究對象是滾動軸承的單一類型故障。在后續的工作中,筆者將研究該方法在多故障融合情況下的適用性。此外,由于數據樣本有限,筆者未獲取數據庫以外的軸承振動信號,在之后的工作中,筆者將獲取更多的數據樣本,以驗證該方法的有效性。