文 浩,侯保林
(南京理工大學 機械工程學院,南京 210094)
鏈式輸送機是坦克自動裝彈機的重要組成部分,是一種結構復雜,工作環境惡劣的機電系統,在使用過程中常出現零部件磨損變形和動力源變化等故障,導致自動裝彈機裝填性能下降。利用系統運行過程信息進行故障識別能夠及時發現此類故障,判斷故障發生部位,防止嚴重失效。
得益于計算機技術與機器學習算法的發展,數據驅動方法在故障識別中得到了廣泛應用,其中如何將原始信號轉換為敏感特征是一個關鍵問題。國內、外學者針對連續旋轉機械的非平滑振動信號,使用信號分析方法[1-3]進行了大量研究。坦克自動裝彈機機電系統不是連續工作的,一般會記錄運行過程中諸如位移、速度等時序數據。對于此類系統通常以離散數據的形式采用主成分分析[4]和自動編碼器[5]等方法進行特征提取,但忽略了時序數據的平滑特性,因此學者們將視角轉向函數型數據分析(Functional data analysis, FDA)。FDA是以函數視角分析時序數據的一種方法,能夠將平滑的時序數據視為具有統一結構的連續函數進行信息挖掘[6]。經典的函數型主成分分析(Functional principal component analysis, FPCA)是主成分分析在Hilbert空間的拓展,在故障診斷領域作為特征提取技術得到應用[7-8]。主微分分析(Principal differential analysis, PDA)是FDA中一種簡潔的泛函分析方法,通過微分方程反映數據的動態變化特征,主要用于對觀測數據的變化過程進行建模[9-10]。而Jang等[11]利用線性微分方程的解集是基礎解系張成的線性空間構成的這一原理,將PDA拓展為函數型數據維數約簡的另一種方法。但目前還未見PDA在故障診斷中的應用。
復雜機電系統的單一傳感器信號不能全面反映系統運行特性,其數據特征往往對部分故障不敏感。多傳感器數據特征融合是解決這一問題的有效方法。傳統的特征融合技術獨立于模式識別算法,通過特定的準則評估特征融合的效果[12-13]。隨著深度學習的發展,特征融合與模式識別算法形成一個整體,通過自動編碼器的無監督深層特征學習實現特征融合[14-15]。多層極限學習機是一種基于極限學習機自動編碼器的深度學習模型[16],保留了極限學習機快速學習的優勢,但仍具備極限學習機固有的隨機特性。因此Li等[17]提出了基于核極限學習機自動編碼器(Kernel extreme learning machine auto-encoder,KELM-AE)的多層核極限學習機(Multi-layer kernel extreme learning machine,ML-KELM),通過對高光譜數據集的分類表明多層核極限學習機具有優異的分類性能。
基于上述分析,本文回顧了基于FPCA的時序數據特征提取方法,同時將PDA引入了故障診斷領域作為特征提取技術。使用Relief-F算法從FPCA和PDA提取的多傳感器數據特征中選擇與分類強相關的特征,進而采用ML-KELM深度學習框架實現特征融合與分類識別。通過鏈式輸送機故障識別實驗初步驗證了所提方法的可行性。
使用FDA分析時序數據時首先要將離散數據擬合為函數。設第i(i=1,2,…,N)個觀測樣本為{(yij,tj)|j=1,2,…,n},可表示為yij=xi(tj)+eij,其中xi(tj)為tj時刻函數xi(t)的函數值,eij為相應的擬合誤差。使用基函數展開法將xi(t)表示為
(1)
式中:ci=[ci1,ci2,…,ciU]T為基函數的系數向量,φi=[φ1(t),φ2(t),…,φU(t)]T為U個基函數組成的函數型向量,本文選用適用于非周期數據的B樣條基函數,具有良好的可導性和局部性。
利用加權最小二乘準則最小化誤差平方和估計系數向量ci。求解時基函數個數越大,數據擬合度越好,但函數平滑性越差。為了兼顧數據擬合度和函數平滑性,引入a階粗糙度懲罰函數:
(2)

估計系數向量ci的加權最小二乘準則為
(3)
式中:yi為觀測樣本的向量形式,Φ為φu(tij)組成的n×U階矩陣,W為加權矩陣,λ為平滑參數。
系數向量ci的估計值為
(4)
進行FPCA時,為了便于表示,對N個樣本函數去均值后仍記為函數{xi(t),i=1,2,…,N}。樣本函數的第一主成分函數(Principal component function,PCF)是指使得樣本函數在其上的投影方差最大的L2范數為1的特征函數ξ1(t)。樣本函數在ξ1(t)上的投影叫做第一函數型主成分得分(Functional principal component score,FPCS):
(5)
求解ξ1(t)的問題可表示為
(6)
類似地,求解第m個特征函數ξm(t)就是在滿足ξm(t)與前面m-1個特征函數正交的情況下最大化第m階FPCS的均方。
特征函數ξ(t)滿足特征方程[6]:

(7)


AΓb=ρb
(8)
為了防止主成分函數粗糙度過大,求解系數向量b時最大化帶有粗糙度懲罰的樣本方差:
(9)
上式的基函數展開形式為
(10)
其廣義特征值問題為ΓAΓb=ρ(Γ+λJ)b,進行Cholesky分解Γ+λJ=SST,可轉化為對稱矩陣特征值分析問題:
(S-1ΓAΓ(S-1)T)(STb)=ρ(STb)
(11)
求解上式可得到PCF,并保留前M個,記為ξ(t)=[ξ1(t),ξ2(t),…,ξM(t)],ξ(t)為函數型數據內部生成的一組能夠表示原始數據的M維正交基函數。采用方差最大化旋轉法對ξ(t)進行旋轉:
(12)


應用PDA時,首要任務是估計線性微分算子:
L=β0(t)I+…+βK-1(t)DK-1+DK
(13)
式中:I為恒等算子,β0(t),β1(t),…,βK-1(t)為系數參數,可以是變化的函數,也可以是常系數。
樣本函數xi(t)遵循線性微分算子L:
Lxi(t)=β0(t)xi(t)+…+βK-1(t)DK-1xi(t)+DKxi(t)
(14)
首先考慮不存在強迫函數的情況,即L滿足齊次線性微分方程Lxi(t)=0,因此Lxi(t)可視為方程DKxi(t)=-β0(t)xi(t)-…-βK-1(t)DK-1xi(t)提供的擬合殘差。若存在與樣本函數xi(t)對應的強迫函數αi(t),則線性微分方程Lxi(t)=αi(t)為非齊次,利用最小二乘法定義擬合準則為
(15)
基于式(15)的擬合準則,采用逐點最小化方法對線性微分算子L的系數參數進行估計:

(16)
式中βK(t)≡1。其矩陣形式為
(17)
式中:τ(t)為元素τi(t)=DKxi(t)構成的N維列向量,β(t)=[β0(t),…,βK-1(t),βK(t)]T為K+1維系數向量,Z(t)為N×(K+1)維逐點估計設計矩陣,第i行元素為zi(t)=[-xi(t),…,-DK-1xi(t),αi(t)]。
系數向量解的存在依賴于ZT(t)Z(t)的行列式對于任意t非零。保持t不變,逐點最小化可得
(18)
對應的線性微分算子L的估計為
(19)
RSQ是常用的度量擬合優度的工具[6]:
(20)
式中dRSQ的取值范圍為[0,1],dRSQ越接近1表示線性微分算子L對樣本函數的擬合越好。
定理1[18]設Λ為Hilbert空間,Y是Λ的閉子空間,Y⊥是Y的正交補,任意屬于Λ的元素可唯一分解為屬于Y的分量和屬于Y⊥的分量之和。

將PDA作為數據降維工具時,考慮微分算子的系數為常數的情況,并假設不存在強迫函數。K階非退化線性微分方程的任意解都可以表示為K個線性無關的復指數函數的線性組合,因此有
(21)

(22)
將{ψk(t),k=1,2,…,K}作為微分特征函數,類似于FPCS,定義主微分得分為
(23)

FPCA和PDA都為樣本函數提供了一個降維子空間,區別是FPCA是以函數均值為中心,由函數協方差算子的前M個正交的實特征函數生成,是從幾何角度實現降維,而PDA是依靠微分算子對函數前K階導數線性組合的估計實現的。
坦克自動裝彈機機電系統結構復雜,單一傳感器信號無法全面反映系統運行特性。使用FPCA和PDA對多傳感器數據進行特征提取時,獲取的特征數量可能有幾十個甚至上百個,其中可能包含冗余和不相關的特征,并且有限的樣本數目下,大量的特征會導致分類識別模型泛化能力差。


(24)
(25)

設V為抽樣次數,則特征權重按照下式更新:
(26)
特征的權重越大,表示該特征對類別的敏感性越好。設置權重閾值,篩選多傳感器數據特征中權重高于閾值的特征構成新的強相關特征集。
圖1為基于FDA和Relief-F算法的機電系統多傳感器時序數據特征提取與選擇的過程。使用FPCA和PDA對機電系統運行過程中的多傳感器時序數據進行特征提取,所提取的特征構成初始特征集,然后使用Relief-F算法對初始特征進行權重計算與排序,選擇與分類問題強相關的特征構成選擇特征集,作為ML-KELM的輸入信息。

圖1 多傳感器數據特征提取與選擇
核極限學習機是基于極限學習機理論與核函數的機器學習算法。極限學習機是一種學習速率快、泛化性能高的單隱含層前饋神經網絡,只需設置隱含層節點個數,隨機生成隱含層輸入權值與偏置,不用進行迭代即可得到最優解[16]。
設訓練數據集為{(pi,qi)|i=1,2,…,N},其中pi為Hin維輸入向量,qi為Hout維輸出向量。極限學習機第h(h=1,2,…,Hh)個隱含層節點與輸入層、輸出層連接權值為ωh=[ωh1,ωh2,…,ωhHin]、γh=[γh1,γh2,…,γhHout],偏置為δh,其學習過程為
(27)
式中:μ為正則化系數,γ=[γ1,γ2,…,γHh]T為隱含層輸出權值,H=[g(p1),…,g(pN)]T為隱含層輸出矩陣,g(·)為激活函數,隱含層對樣本pi的映射為g(pi)=[g(ω1·pi+δ1),…,g(ωHh·pi+δHh)],Q=[q1,q2,…,qN]T為目標輸出矩陣。
根據Karush-Kuhn-Tucker條件求解上式可得
(28)
極限學習機隱含層隨機性會影響其穩定性。基于Mercer定理,引入核函數F(·)定義核矩陣:
Ω=HHT∶Ωiw=F(pi,pw)=g(pi)g(pw),i,w=(1,2,…,N)
(29)
則樣本pi對應的網絡輸出可表示為
(30)
式中:Ωi=[F(pi,p1),…,F(pi,pN)]為樣本pi的隱含層輸出,γK=(Ω+I/μ)-1Q為隱含層輸出權值。由此可避免隱含層隨機性對分類結果的影響。
ML-KELM是基于深度學習的思想,利用多個KELM-AE堆疊而成的。KELM-AE是輸出信息與輸入信息一致的KELM,具有自動編碼器特征表示的能力,其結構如圖2所示。

圖2 KELM-AE
ML-KELM的學習過程分為:1)多層堆疊網絡深度特征學習。將ML-KELM前一個隱含層的輸出作為后一個KELM-AE的輸入,同時KELM-AE的輸出權值作為下一個隱含層的輸入權值,逐層訓練學習到更抽象的融合特征;2)KELM分類識別。將經過多層網絡提取的特征作為頂層KELM的輸入訓練分類器。整個網絡的各個權值參數由KELM-AE和KELM單獨確定,無需進行微調。ML-KELM的網絡結構如圖3所示。

圖3 ML-KELM網絡結構
設ML-KELM有R+1個隱含層,前R個隱含層的激活函數為g(·),網絡需要學習的權值參數為(ω(1),ω(2),…,ω(R),ω(R+1))。ML-KELM第r-1層隱含層輸出為H(r-1),將其作為第r個KELM-AE的輸入與輸出(本文中第1個KELM-AE的輸入H(0)為多傳感器數據特征),根據KELM的推導:
(31)
(32)

(33)
得到ML-KELM第R個隱含層的輸出H(R)后,利用一個KELM模型得到樣本的網絡輸出:
(34)
(35)
訓練ML-KELM需要確定R個KELM-AE和頂層KELM的核函數參數與正則化系數,使用PSO算法以分類準確率為適應度函數進行尋優選取,自動獲取最優的融合特征與分類識別模型。
坦克自動裝彈機通過機電系統相互銜接的動作完成負載的裝填,并且每個動作都規定了相應的性能指標。但由于工作環境惡劣,常常出現機電系統故障導致系統性能指標偏離規定范圍的情況,對此本文提出的結合FDA和ML-KELM的機電系統故障識別模型如圖4所示。利用多傳感器采集不同故障類別下機電系統運行過程中的時序數據,使用FPCA和PDA將故障引起的時序數據變化特性表征為特征參數,通過Relief-F算法篩選強相關特征作為ML-KELM的輸入,相應的類別標簽作為輸出進行訓練,同時使用PSO算法對ML-KELM的參數進行優化選取,獲取故障識別模型。將待識別樣本數據特征輸入最優參數下的ML-KELM進行故障識別,判斷故障發生部位。

圖4 故障識別模型
為了驗證所提方法的可行性,搭建了與某鏈式輸送機原理一致的實驗裝置,如圖5所示。該裝置采用曲線軌道鏈結構,負載等間距固定在鏈條上,主動鏈輪每轉動πrad負載移動一個間距。固定負載的鏈節下端安裝帶滾輪的組合軸承以支撐負載的主要質量。在上位機中編寫控制程序,通過EPOS2控制器驅動Maxon EC45直流電機。主動軸角位移信號由HEDL5540光電編碼器測量并通過控制器反饋到上位機;從動軸角速度信號由中星測控CS-ARS-02B三軸角速度傳感器測量,其輸出信號由無線電壓節點采集并通過無線網關傳輸至上位機;驅動電機控制電流信號則從控制系統中獲取。

圖5 鏈式輸送機實驗裝置
鏈式輸送機的性能指標為在1.2 s的時間內輸送負載的定位誤差不超過±0.017 5 rad。定位精度超差是其最主要的故障現象之一,進行故障識別實驗時,根據經驗選取了3種常見的故障因素:①滾輪磨損變形;②鏈條滾子磨損變形;③電機供電電壓不足。將單一因素導致鏈式輸送機發生定位精度超差的情況定義為類別1、類別2和類別3,此外考慮兩種因素同時發生,將因素①和②、因素①和③以及因素②和③共同作用的情況定義為類別4、類別5和類別6。通過對1個滾輪進行人為磨損模擬故障因素①,對鏈條中2個滾子進行人為磨損和塑性變形模擬故障因素②,減小電源電壓模擬故障因素③,按照6種類別設置不同程度的故障進行負載輸送實驗,采集記錄運行過程中的主動軸角位移、從動軸角速度以及電機控制電流信號,每種類別進行了50次實驗,共獲取了300組樣本數據。圖6給出了每種類別的2組樣本數據,同一類別樣本數據具有相似的變化趨勢,不同類別樣本數據變化趨勢則有所差異,并且在系統運行過程的不同階段,這種差異程度也不同,表明不同故障因素對系統運行過程的影響方式和程度不同,FPCA和PDA就是通過挖掘時序數據的這種變化特性實現特征提取。

圖6 樣本數據



表1 不同階微分算子的系數參數與擬合優度

表2 特征根

圖8 樣本函數的微分特征函數
最終FPCA和PDA提取的主動軸角位移信號、從動軸角速度信號和控制電流信號的特征維數分別為23維、24維和24維,圖9為歸一化后的特征參數。將FPCA和PDA提取的多傳感器時序數據特征串聯得到71維的初始特征集Finitial。使用Relief-F算法計算特征的權重,設置權重閾值為0.8,選擇權重值大于0.8的特征形成40維的選擇特征集Fselection,如圖10所示。

圖9 歸一化后的特征參數
使用ML-KELM進行故障識別時,首先要確定ML-KELM的隱含層數目。設定隱含層數目為1~5層(1層即為一般的KELM)進行測試,分別將初始特征集Finitial和選擇特征集Fselection作為ML-KELM的原始輸入,輸出為樣本對應的類別標簽。ML-KELM中的核函數使用高斯核函數,PSO算法參數按照經驗值設定。從300個樣本中隨機選取240個作為訓練樣本,其余作為測試樣本,訓練樣本和測試樣本中各類別樣本數目是不均衡的,通過10次測試綜合評價ML-KELM在不同訓練樣本下的分類識別能力,結果見表3。

表3 不同隱含層數目ML-KELM的10次識別準確率
由表3可知,使用KELM和2層隱含層的ML-KELM時,基于Finitial的故障識別結果較好;當ML-KELM隱含層數目超過2層時,基于Fselection的故障識別結果較好,并且3層隱含層的ML-KELM識別結果最優,10次測試識別準確率的平均值為99.67%,標準差為0.67%,但隱含層數目繼續增加時ML-KELM性能開始下降。這是由于KELM-AE對信息進行重構時存在誤差,ML-KELM隱含層數目過多會導致特征信息損失增加,造成ML-KELM訓練誤差增大,分類識別準確率降低。因此選用3層隱含層的ML-KELM。
使用3層隱含層的ML-KELM,分別以FPCA和PDA提取的單一傳感器時序數據的單一特征、單一傳感器時序數據的多特征以及多傳感器時序數據的多特征經過Relief-F算法得到的選擇特征作為原始輸入,同樣地每次從300個樣本中隨機選取240個作為訓練樣本,其余作為測試樣本,進行了10次分類測試,測試結果見表4。對于單一傳感器時序數據,FPCA和PDA都能夠提供一個有限維的特征投影子空間,為ML-KELM提供有效的特征參數,其中對于主動軸角位移信號,基于PDS的識別準確率介于基于FPCS和旋轉FPCS的識別準確率之間;對于從動軸角速度信號和電機控制電流信號,基于FPCS和旋轉FPCS的識別準確率均高于基于PDS的識別準確率。FPCA和PDA提取的特征具有一定的互補性,基于單一傳感器時序數據的多特征能夠提高故障識別的準確率。并且不同傳感器時序數據特征對不同故障類別的敏感程度具有差異性,使用多傳感器時序數據的多特征能夠進一步實現特征互補,提高故障識別準確率,其中基于從動軸角速度信號和電機控制電流信號的多特征的故障識別準確率最高,10次測試準確率平均值和標準差分別為99.83%和0.50%。因此對于該鏈式輸送機實驗裝置,基于FPCA和PDA提取的從動軸角速度信號和電機控制電流信號特征中的強相關特征,使用3層隱含層的ML-KELM能夠實現較為準確的故障識別。

表4 基于不同特征的故障識別準確率
1)鏈式輸送機運行過程中諸如角位移、角速度等時序信號中包含由故障引起的特征信息,函數型數據分析方法能夠將這些具有平滑特性的時序數據表示為連續的函數,挖掘函數的變化特性。
2)FPCA和PDA都能夠為樣本函數提供一個有效的降維子空間,從不同角度實現樣本函數的特征提取,二者的本質決定了FPCA能夠獲取更豐富的特征參數,但基于函數型主成分得分的分類識別并不總是優于基于主微分得分的分類識別。
3)多傳感器數據特征具有互補性,Relief-F能夠從多傳感器數據特征中選取強相關的特征,并且使用3層隱含層的ML-KELM進行深度特征學習能夠得到最優的融合特征,具有較高的識別準確率。
4)鏈式輸送機實驗裝置的故障識別實驗初步驗證了所提方法的有效性,為坦克自動裝彈機中的機電系統故障識別研究提供了一種參考。