談恩民,阮濟民,黃順梅
(桂林電子科技大學(xué)電子工程與自動化學(xué)院,廣西 桂林 541004)
一般情況下,軟故障的診斷要比硬故障的診斷困難。由于故障定位和故障參數(shù)識別仍然具有挑戰(zhàn)性,成熟的模擬電路故障診斷技術(shù)尚未形成。到目前為止,在大部分測試中,模擬部分的混合信號電路容易出現(xiàn)問題,所以對模擬電路故障診斷的研究是非常重要的[1]。支持向量機(SVM)[2-3]是一種具有靈活學(xué)習策略的小樣本學(xué)習方法,但它需要更多的計算機內(nèi)存和時間。學(xué)者們不斷對模擬電路故障診斷進行深入研究,同時模擬電路故障診斷的故障模式也在不斷變化。由早期的模擬電路硬故障到現(xiàn)在的模擬電路軟故障診斷,由模擬電路單故障到多故障診斷。隨著時間的推進,在此領(lǐng)域有著不斷創(chuàng)新,模擬電路故障診斷的理論也在不斷的發(fā)展著,大量的方法不斷的被引入到模擬電路故障診斷中,從早期傳統(tǒng)的故障診斷方法,到現(xiàn)在的ELM法等各種不同的人工智能法[4-6]。故障字典方法[7]建立字典模型,通過映射關(guān)系診斷故障,然而,復(fù)雜的大規(guī)模電路建立故障字典是非常麻煩的。靈敏度分析是一種有效的故障診斷技術(shù),它改進了故障診斷中最合適測試點的選擇,并從信號中識別出最合適的輸入頻率,但該方法在處理公差特性方面存在一定缺陷。小波分析和SVM法[8]也存在需要大量的訓(xùn)練樣本和需要較長的診斷時間等局限,該方法通過非線性映射將原始數(shù)據(jù)嵌入到高維特征空間,然后進行線性分析和處理,為基于知識的數(shù)據(jù)分析帶來新的方法和模式。傳統(tǒng)方法無法解決故障特征數(shù)據(jù)維數(shù)高、在故障樣本交疊嚴重時多分類性能較差的問題,神經(jīng)網(wǎng)絡(luò)方法[9]可以在需要大量訓(xùn)練樣本的情況下實現(xiàn)快速故障檢測。LMD近似熵算法也是一種很好的模擬電路特征提取方法,K近鄰(KNN)是一種精度較高的惰性算法,但需要選擇合適的參數(shù)K,且診斷時間較長。小波變換和CFA-LSSVM[10]是一種提升小波變換和混沌螢火蟲算法(CFA),并且優(yōu)化LSSVM參數(shù)的模擬電路故障診斷方法。LMD近似熵算法和FCM聚類算法[11]以及一些云模型算法[12]等都在不斷的完善。
本文提出了一種矩陣特性分析的故障診斷方法。這種方法不需要深入討論電路的內(nèi)部特性,并且只需要測量電路的輸出響應(yīng)就可以進行故障診斷。通過比較無故障輸出響應(yīng)矩陣與故障輸出響應(yīng)矩陣之間的差異,可以診斷故障。通過計算矩陣譜半徑和擾動矩陣最大奇異值,可以識別故障。故障定位和故障參數(shù)識別可以通過二次曲線擬合法來完成,與人工智能算法不同的是,它完全不需要訓(xùn)練樣本,可以應(yīng)用于測試節(jié)點較少的更復(fù)雜電路中,這種電路支路較多,但節(jié)點較少且支路較為復(fù)雜,而人工智能算法無法采集大量訓(xùn)練樣本,體現(xiàn)出本文方法的優(yōu)勢性。
模擬電路的輸出記為Y(n),連續(xù)時間輸出Y(t)用Ts采樣間隔采樣。采樣輸出響應(yīng)Y(n)可以表示為:若Y(n)為被測電路的輸出電壓響應(yīng),以Ts為周期對的Y(n)采樣,獲得采樣序列Y(nTs) 中的n×n個元素可以表示成一個n階方陣,Y(t)為時間參數(shù)。故由下式可得到輸出響應(yīng)矩陣Y(N):
其中Y(N)為輸出響應(yīng)矩陣,故提出了一種基于矩陣特性分析的故障診斷方法。這種方法不需要深入討論電路的內(nèi)部特性,只需要測量電路的輸出響應(yīng)就可以進行故障診斷。通過比較無故障輸出響應(yīng)矩陣與故障輸出響應(yīng)矩陣之間的差異,可以診斷故障。Y(N)中的元素來自一組數(shù)的n2電壓值。假設(shè)采集1000個電路輸出電壓數(shù)據(jù),然后提取前16個數(shù)據(jù)形成4階的輸出響應(yīng)矩陣Y(N),本文后面有說明采取4階矩陣為最佳矩陣,也可以取更多的采樣點,但這不可避免地增加了矩陣運算的復(fù)雜性。顯然,模擬電路的輸出信息包含在Y(N)中,因此,通過分析Y(N)的性質(zhì)和變化,可以得到電路的運行狀態(tài)。
首先考慮矩陣的特征值來度量矩陣的性質(zhì),得到以下定理矩陣元素與特征值之間的關(guān)系。設(shè)A是n階矩陣,如果數(shù) λ和n維非零列向量x使關(guān)系式(2)的非平凡解x,則標量 λ稱為矩陣A的特征值。
如果 λ1是A+εB的特征值,則B是具有滿足以下關(guān)系的元素的矩陣,ε是任意小的正數(shù),A的特征值 λ使得不等式(3)表明A+εB的特征值在εB中是連續(xù)的。
這樣的x稱為對應(yīng)于λ的特征向量。對于矩陣A的譜半徑上下界的估計,最為著名的是Frobenius不等式[13]得到不等式:
根據(jù)矩陣理論,模最大的特征值對矩陣的性質(zhì)影響最大,因此利用其譜半徑來估計矩陣的性質(zhì)和擾動在某種意義上是可行的。由于譜半徑的不同,避免復(fù)雜的計算,提高了計算效率,但是不同的響應(yīng)矩陣Y(N)對應(yīng)著可能含有相同的譜半徑,這就出現(xiàn)了一對多的可能性如圖1所示,僅僅只根據(jù)譜半徑是無法判斷出模擬電路的故障診斷的,在診斷的過程中可能會出現(xiàn)錯誤的診斷。因此本文提出了另外一種奇異值的方法,可以通過奇異值加上譜半徑共同來判斷出模擬電路的故障以及電路故障的精準定位。
圖1 一對多的示意圖
為了能更好地進行模擬電路故障診斷,同時采用譜半徑R和最大奇異值S來進行模擬電路故障診斷并且精準定位,提高了模擬電路故障診斷的精度,同時也防止了多個電路對應(yīng)著一個譜半徑的情況發(fā)生,矩陣特性分析的模擬電路故障診斷及定位的圖見圖2和圖3所示。
圖3 電路故障定位圖
診斷電路是否發(fā)生故障的方法如下:
1)使電路正常工作,測量輸出信號Y(t)。將連續(xù)時間輸出Y(t)按Ts采樣間隔采樣到Y(jié)(n)。
2)將采樣信號Y(n)合并到輸出響應(yīng)標準矩陣中,并計算無故障的輸出響應(yīng)矩陣的譜半徑(測)和最大奇異值(測)。
3)測量實際電路的輸出響應(yīng)矩陣的真實值譜半徑(真)和最大奇異值(真)。
4)通過對比,若|譜半徑 (真)–譜半徑 (測)|≤5% 和|最大奇異值 (真)–最大奇異值 (測)|≤5%,則電路無故障,反之則存在故障。
5)如果電路存在故障,通過譜半徑和最大奇異值的二次曲線來對故障實行精準定位。
本文以Sallen_Key帶通濾波電路故障診斷模型為例,詳細說明了該方法如何實現(xiàn)故障診斷、故障定位和參數(shù)識別。在建立模型之后,還進行了其他實驗來驗證模型的正確性。仿真環(huán)境為OrCAD Pspice 16.0,數(shù)據(jù)導(dǎo)入Matlab2018a進行處理。該仿真在一臺采用 Intel(R) Core(TM) i5-4210M CPU 的個人計算機上運行。Sallen_Key帶通濾波電路是國際標準電路,在模擬電路故障診斷領(lǐng)域經(jīng)常用來驗證方法的正確性。中心頻率為31 kHz的Sallen_Key帶通濾波電路原理圖如圖4所示,仿真圖如圖5所示,這些組件量分別R1=1 kΩ、R2=2 kΩ、R3=2 kΩ、R4=4 kΩ、R5=4 kΩ、C1=5 nF、C2=5 nF,所有器件的容差和阻差均為±5%。電源電路的輸入測試刺激是幅值為1 V,頻率為31 kHz的正弦信號。
圖4 Sallen–Key電路圖
圖5 仿真的輸出矩陣元素圖
進行試驗仿真,以建立診斷模型。在OrCAD Pspice 中,執(zhí)行模擬。電路仿真處理步驟如下:
1)先測量當前電路的輸出響應(yīng)矩陣,通過輸出響應(yīng)矩陣在Matlab中計算出輸出響應(yīng)矩陣的譜半徑R1和最大奇異值S1。
2)通過先前測量的一系列的譜半徑R和一系列的最大奇異值S用最小二乘的方法構(gòu)建一個二次曲線。并且電路中各個器件進行歸一化處理。
3)用當前的譜半徑R1來在構(gòu)建的二次曲線中找到對應(yīng)的歸一化的器件的參數(shù),由于器件存在±5%的差值,若器件的參數(shù)在0.95~1.05之間則證明當前電路無故障,反之則有故障。
4)如果當前電路存在故障,且出現(xiàn)譜半徑一對多的情況,可以根據(jù)譜半徑和最大奇異值共同來對故障實施定位。
5)相同的譜半徑對應(yīng)著不同的器件參數(shù),在通過不同的器件參數(shù)在仿真中獲得的最大奇異值與測量的電路的最大奇異值對比,器件參數(shù)越接近測量的電路的最大奇異值,則證明該器件存在故障。
本文在數(shù)據(jù)處理過程中,由于不同參數(shù)的大小和單位的不同,對數(shù)據(jù)進行了歸一化處理。數(shù)據(jù)處理完成后,再進行逆歸一化處理,得到實際電路中的值,測量不同的R2、R3、C1、C2的真實值,在Matlab2018a中用最小二乘擬合出它們的譜半徑R和最大奇異值二次曲線,本文采用二次曲線擬合法,而并非更加高次的曲線擬合,雖然高次曲線擬合診斷率會提升,但隨著次數(shù)的增加所擬合的曲線消耗的時間也有所增加,綜合各種因素,采用二次曲線為最佳曲線,本文后面詳細介紹了具體的曲線次數(shù)對比情況,所以最終譜半徑才用R=ax2+bx+c的二次曲線擬合完成;最大奇異值則采用S=Ax2+Bx+C來完成二次曲線擬合R2和R3的譜半徑R和最大奇異值S如表1所示,C1和C2的譜半徑R和最大奇異值S如表2所示。
表1 R2和R3的譜半徑R與最大奇異值S的值
表2 C1和C2的譜半徑R與最大奇異值S的值
本文根據(jù)表1和表2的真實數(shù)據(jù),用最小二乘的方法擬合出的二次曲線如圖6和圖7所示。
圖6 譜半徑R的二次曲線擬合圖
圖7 最大奇異值S的二次曲線擬合圖
不同的器件對應(yīng)著不同的二次曲線的系數(shù)如表3所示。
表3 各個器件二次曲線的系數(shù)表
本文由二次曲線可知,首先對試驗驗證試驗是否發(fā)生故障,如果存在故障,則對故障進行定位?,F(xiàn)在舉出具體的例子進行模擬電路進行故障判定并且精準定位。
1)當真實值R2=1.22 kΩ 時,歸一化的R2=0.61 時,測量其譜半徑(測)=2.8833,最大奇異值(測)=3.4522。
2)將譜半徑R=2.8833帶入擬合的譜半徑二次曲線中求得各個器件的參數(shù),求得對應(yīng)歸一化的值為R2=0.6294 和C2=0.5333,出現(xiàn)了一對多的情況,說明器件R2或者C2出現(xiàn)了故障。
3)R2和C2出現(xiàn)故障則需要另外一個參數(shù)最大奇異值來判斷和故障定位,當R2=0.6294時,通過最大奇異值的二次曲線來計算出奇異值(R2)=3.4716,當C2=0.5333 時,算出對應(yīng)的最大奇異值(C2)=3.2593。
4)通過計算|最大奇異值(測)–最大奇異值(R2)|=0.0194,|最大奇異值(測)–最大奇異值(C2)|=0.1929,計算可以明顯看出|最大奇異值(測)–最大奇異值(R2)|<|最大奇異值(測)–最大奇異值(C2)|,通過實驗結(jié)果可以看出R2出現(xiàn)故障時,對應(yīng)的最大奇異值越接近測量的最大奇異值,證明R2出現(xiàn)故障。
5)在通過步驟3中計算出來歸一化的R2=0.6294,與真實的設(shè)定R2=0.61 通過對比,|R2(真)–R2(計)|≤5%,在允許的誤差范圍內(nèi),所以驗證了精確定位。
為了驗證所建立的診斷模型的正確性,本文對模型進行了交叉驗證。另外設(shè)置了40種不同的故障類型來驗證所構(gòu)建的模型是否正確。表4為R的交叉驗證結(jié)果,表5為C的交叉試驗。
表4 R的交叉驗證結(jié)
表5 C的交叉驗證結(jié)果
本文由表6得出如果繼續(xù)增加n,診斷的準確性是恒定的,但它花費了較長時間。在進行實際診斷時,需要根據(jù)被測電路的類型選擇合適的n階,以便更快更準確地完成故障診斷。在實際應(yīng)用中,就診斷準確性而言,以7階方陣診斷率達到了100%,測試時間 260 ms,在大多數(shù)情況下n= 4 階方陣都在可接受的診斷時間范圍內(nèi)。但為了提高診斷效率,本文采用了n= 4階方陣。
表6 輸出矩陣階數(shù)對診斷的影響
本文為了進一步減小誤差,做了大量的實驗,討論和研究了曲線擬合中多項式的階數(shù)。一般情況下,階數(shù)越大,擬合誤差越小,但計算量越大。多項式的階數(shù)對診斷性能的影響如表7所示。
表7 曲線擬合次數(shù)對診斷的影響
由表7可知,隨著多項式階數(shù)的增加,參數(shù)識別誤差有所減小。因此,考慮到誤差減少幅度小和消耗時間,仍采用二次函數(shù)擬合。擬合曲線的階數(shù)和方陣的n階數(shù)對診斷性能有相似的影響。為了提高診斷效率和便于計算,本文采用了二階多項式。
為了驗證本文方法的普遍適用性,本節(jié)采用另一個更為復(fù)雜的電路CTSV濾波電路為測試電路,進行測試。本實例選用電路原理圖如圖8的所示,選擇一個電壓幅值為1V和頻率為20kHz的正弦電壓源為電路的激勵源。電路中R1=R2=R3=R4=R5=10 kΩ 、R6=3 kΩ 、R7=7 kΩ 、C1=C2=20 nF,經(jīng)過敏度分析選擇R1、R5、C1、C2作為故障元件。元件容差設(shè)定與Sallen_Key電路一樣,CTSV的電路原理圖如圖8示。
圖8 CTSV電路原理圖
本文由表8可知,32種故障類型均能得到正確的診斷和參數(shù)識別,表明該方法具有普遍的適用性。由于所設(shè)定的故障參數(shù)遠遠大于器件±5%的容錯率,故障率達到了100%。當然,當電路的集成度有所增加時,建立診斷模型所需要更多的時間。但是,只要建立了模型,就能使檢測變得非常方便。本文為了排除不同的電源是否影響本方法的正確性,故而分別采用了兩種電源電壓,一種電壓幅值為1 V和頻率為20 kHz的正弦電壓源和另一種電壓幅值為10 V和頻率為20 kHz的正弦電壓源,驗證本方法的正確性,對比如表9所示。
表8 CTSV濾波電路的診斷結(jié)果
表9 不同電源故障識別對比
由表9可以看出該電路采用不同的激勵源,可以實現(xiàn)故障識別和定位,說明激勵源的選擇不影響本文所提方法的準確性。表10將所提方法與本文所提的方法進行對比。
表10 相同電路不同方法的單故障對比
從對比中可以看出其他的幾種方法都大大的改善了模擬電路故障診斷的診斷率,但是本文所采用的方法具有較大優(yōu)勢,具有較高的診斷率,且能100%精準定位,依然優(yōu)于其他的方法。
本文采用數(shù)學(xué)矩陣特征分析方法對模擬電路進行故障診斷。通過算法分析輸出響應(yīng)矩陣Y(n)的譜半徑和最大奇異值,且在Sallen_Key 電路和CTSV電路兩個電路中,故障診斷率達到了100%,成功地實現(xiàn)了故障識別、故障定位和故障參數(shù)識別。通過該方法取得了不錯的故障診斷效果,證明了該方法能對單故障能有更好的診斷效果,與人工智能算法不同,這種方法完全不需要訓(xùn)練樣本,可以應(yīng)用于測試節(jié)點較少且更復(fù)雜的電路診斷中,實驗證明了該方法的正確性和可行性。本文方法能更好適用于單故障模式,對多故障模式還需進一步研究。