李翼飛,吳春平,涂 煊
(1.上海理工大學光電信息與計算機工程學院,上海 200093;2.上海工業(yè)自動化儀表研究院有限公司,200233)
在工業(yè)自動化生產(chǎn)中,隨著現(xiàn)代技術(shù)的發(fā)展,對安全生產(chǎn)的要求越來越高。因此,傳感器起著越來越重要的作用。傳感器是把被測的物理信號轉(zhuǎn)化成電信號的裝置,其優(yōu)劣對監(jiān)控系統(tǒng)的功能至關(guān)重要。傳感器可能存在各種故障,因此需要進行傳感器故障排查的研究。對于振動傳感器,故障診斷可應用主元分析法(principal component analysis,PCA)進行特征的提取。整個系統(tǒng)的數(shù)學模型不僅僅是傳感器的測量數(shù)據(jù)。 然而,傳統(tǒng)的PCA主要針對穩(wěn)態(tài)過程。振動傳感器工作狀態(tài)不僅具有穩(wěn)態(tài),而且具有瞬態(tài)過程。診斷難以及時確定故障[1]。結(jié)合最小二乘支持向量機(least squares support vector machine,LS_SVM),可以彌補兩種方法的不足,提高診斷的效率和準確率。
PCA是多元分析(multivariate analysis, MVA)的一種常用的數(shù)據(jù)分析法。PCA通過線性變換,將原始矩陣數(shù)據(jù)變換成一組線性無關(guān)的特征向量。該方法盡可能多地保留數(shù)據(jù)集中出現(xiàn)的特征提取,通過少量關(guān)鍵指標對系統(tǒng)運行狀態(tài)進行描述。主成分分析的統(tǒng)計概念構(gòu)造了一組新的變量,以基于原始數(shù)據(jù)空間表示原始數(shù)據(jù)空間。主要信息特征是從新的映射空間獲得的,以形成對原始數(shù)據(jù)空間特征的解釋。此外,新變量是原始變量的線性組合,新變量構(gòu)成的空間維數(shù)遠小于原始空間維數(shù)[2]。
假設(shè)一個m維的測量向量,已經(jīng)收集和記錄了N個測量數(shù)據(jù):
對樣本數(shù)據(jù)進行數(shù)據(jù)歸一化,并構(gòu)造變型矩陣:
(1)
(2)
在主元分析中進行閾值的設(shè)置,對式(2)進行奇異值分解(singular value decomposition,SVD):
(3)
確定主元的數(shù)目1,分解p、Λ,得式(4),并保存ppc、Λpc:
(4)
設(shè)置兩個閾值:
(5)
(6)
(7)
式中:Cα為一個高斯分布的(1-α)%的置信極限。
(8)
zres子空間的值較小,因此可以忽略。
根據(jù)式(1)歸一化測量:
(9)
計算均方預測誤差(squared prediction error, SPE):
(10)
LS_SVM是基于SVM的一種改進算法[3]。將傳統(tǒng)SVM中的不等式約束改為等式約束,采用最小二乘線性系統(tǒng)作為損失函數(shù)[4]。它取代了傳統(tǒng)SVM中采用的二次規(guī)劃方法,并使用誤差平方和損失函數(shù)作為訓練集的經(jīng)驗損失。這樣就把解二次規(guī)劃問題轉(zhuǎn)換為求解線性方程組問題,簡化了計算的復雜度,提高了求解問題的速度和收斂精度[5]。
假設(shè)樣本是n維度向量,區(qū)域樣本及其值表示為(x1,y1)。首先,使用非線性映射φ(x)把樣本從原空間Rn映射至要素空間:
φ(x)={[φ(x1),φ(x2),…,φ(x1)]}l=1,2,…,n
(11)
在這個高維特征空間中構(gòu)造最優(yōu)決策函數(shù):
y(x)=ω×φ(x1)+b
(12)
由此可得高維特征空間中的線性估計函數(shù)。然后,根據(jù)結(jié)構(gòu)風險最小原則,尋找ω、b最小值。
(13)
式中:‖ω‖2為控制模型的復雜度。
當Remp不同時,支持向量機的形式也不同。如果將函數(shù)Remp設(shè)置為誤差的二范數(shù),則該優(yōu)化目標函數(shù)變?yōu)槭?6)。此時的SVM稱為最小二乘支持向量機[6]。
(14)
式中:ξi為松弛變量;c為懲罰因子。
根據(jù)標準支持向量機最優(yōu)分類面的求解方法,采用Lagrange系數(shù)法對式(14)進行計算。引入Lagrange系數(shù)ai(i=1,2,…,l),得如下定義的Lagrange函數(shù):
(15)
定義核函數(shù)K(xi,yj)=φ(xi)×φ(xj)。K(xi,yi)是滿足Mercer條件的對稱函數(shù)。將優(yōu)化問題轉(zhuǎn)化為線性方程的求解:
(16)
最后,得到該最小二乘支持向量機的分類面非線性方程:
(17)
振動傳感器的運行狀態(tài)故障包括沖擊故障、漂移故障、偏差故障等。進行二值分類是SVM算法設(shè)計時的目標。它是將標準的SVM算法進行適當?shù)母倪M構(gòu)造成多類分類器,以應對傳感器運行故障這類多分類問題。因此,針對振動傳感器,對SVM算法進行了變形。將多分類的SVM大致分為兩類。第一類為直接法,是直接對目標函數(shù)進行修改,將要求解的多個分類問題組合在一起,一次性解決問題。一次性解決最優(yōu)問題來實現(xiàn)多分類,計算的復雜度比較高。 第二類為間接法,是將多個二值分類器連接起來構(gòu)造一個總的分類器組合。常用方式有一對多、一對一、有向無環(huán)圖多分類和二叉樹多分類等。此次振動傳感器的故障診斷方法主要采用間接方法進行故障分類。
由N(N≥0)個節(jié)點組合成一個有序的集合即為二叉樹。根節(jié)點加上互不相交的左右子樹組成抑或為空集。二叉樹算法將振動傳感器診斷出的故障逐次進行二分類,直至所有故障都被分離出來?;诙鏄涞亩喾诸愃惴ㄔ砣鐖D1所示。其中,A、B、C、D、E為5種類型的待分類狀態(tài)。
圖1 基于二叉樹的多分類算法原理圖
圖1中,支持向量機分類器確定位于每一個節(jié)點上。每通過一個節(jié)點,便可確定傳感器運行狀態(tài)及其故障類型。在分類過程中,二叉樹算法不需要對所有的支持向量機分器進行訓練,這必然會提高故障診斷的速度[7]。在進行二叉樹算法訓練中,每完成一次訓練,樣本數(shù)均會有所減少。全部檢測數(shù)據(jù),通過第一個支持向量機分離出一種故障,以此類推,直到所有的故障被診斷分離出為止。隨著故障分離出的個數(shù)增多,支持向量機的訓練速度越來越快,多分類模型的構(gòu)造也更加容易。
振動傳感器的運行狀態(tài)主要包括偏值運行、沖擊運行、漂移運行、周期運行和正常運行這5種。通過數(shù)據(jù)比例得模式發(fā)生概率大小進行排序,分別為正常運行、漂移故障、偏置故障、沖擊故障、周期故障。因此,測量得到振動傳感器在不同時刻、不同狀態(tài)的各類故障信號,并根據(jù)研究的方法進行特征的產(chǎn)生和提取,構(gòu)建二維樣本[8]。PCA與LS_SVM智能診斷流程如圖2所示。
圖2 PCA與LS_SVM智能診斷流程圖
漂移故障信號的小波包5層分解圖如圖3所示。
圖3 漂移故障信號的小波包5層分解圖
由于振動傳感器運行狀態(tài)的特征生成需要盡可能精細的信號頻率成分,因此采用小波分析。一簇基函數(shù)構(gòu)成了小波,對信號的時間和頻率域的局部特征進行描述[9]。小波分析信號的優(yōu)點體現(xiàn)在實施局部分析、隨機時間或空間域中分析上。盡管短時傅里葉變換也可對輸出信號頻帶劃分,但其方式為等間隔線性劃分,而且是二進制變化。因此,高頻帶中的頻率分辨率和低頻段的時間分辨率相對較差。
根據(jù)前文所述算法,對小波分析完的原始數(shù)據(jù)進行PCA特征提取,得到對應的特征向量。根據(jù)提取得到的樣本數(shù)據(jù),繪制二次特征模式分布圖,如圖4所示。
圖4 二次特征模式分布圖
正常運行狀態(tài)與各類故障運行狀態(tài)下的特征數(shù)據(jù),共計24組。此數(shù)據(jù)集有4組為測試組,故障數(shù)目分配如表1所示。
表1 故障數(shù)目分配表
將數(shù)據(jù)構(gòu)建成一個矩陣,每個數(shù)據(jù)點占據(jù)其中一行。為建立LS_SVM需要兩個額外的參數(shù),即正則化參數(shù)(gam)和平方帶寬(sig2)。gam決定了擬合誤差最小化和平滑度之間的權(quán)衡[10];sig2為帶寬。
根據(jù)圖4反映的運行狀態(tài)特征,設(shè)計如圖5所示的分類流程。
圖5 分類流程圖
第一級分類器:以漂移故障作為被分離故障與各類運行狀態(tài)進行分類,共100組。
第二級分類器:以偏差故障作為被分離對象與剩余運行狀態(tài)進行分類,共80組。
第三級分類器:以突變故障作為被分離故障與周期故障和正常運行狀態(tài)進行分類,共60組。
第四級分類器:以周期故障與正常運行狀態(tài)進行分類,共40組。
通過四級LS_SVM分類器后,獲得傳感器信號經(jīng)過小波包分解,PCA特征提取的數(shù)據(jù)中所隱含的特殊分類標準。
對傳感器的其他運行狀態(tài),共選取了4×5組測試樣本,進行分類器的推廣能力測試。首先進行學習過的樣本測試,觀察分類器的測試準確率,并對選取的測試樣本集測試。振動傳感器故障診斷分類器的測試步驟如下:①歸一化處理傳感器信號;②小波包分解為5×1 000的原始特征數(shù)據(jù)矩陣;③經(jīng)過PCA算法后,得到2維特征向量;④對該2維特征向量進行LS_SVM多分類,并得到診斷結(jié)果[11]。
原始數(shù)據(jù)加仿真數(shù)據(jù)共24組。對其進行結(jié)果診斷,診斷結(jié)果如表2所示。
表2 診斷結(jié)果
LS_SVM是適宜智能故障診斷的分類方法之一。應用LS_SVM的原理對振動傳感器的運行狀態(tài)進行診斷,較好地解決了小樣本、非線性和高維數(shù)據(jù)識別的實際問題。本文在采用小波包分解提取信號的特征基礎(chǔ)上,結(jié)合了PCA進行主特征二次提取,增強了振動傳感器各工作狀態(tài)的可分性,使得LS_SVM分類器能更加快速、簡便地分類。振動傳感器在直接原始特征上的分類,經(jīng)過PCA二次提取特征后的準確率得到提高,具有良好的泛化性能。