郝俊壽 丁艷會
摘 要:以現代測試技術、信號處理、信息融合等理論為基礎,以神經網絡在模擬電路故障診斷中的應用為主線,詳細討論BP神經網絡在模擬電路故障診斷中的應用和故障特征提取方法。采用多頻組合法建立了故障樣本集。對選定的待測電路在元件存在容差的條件下,仿真驗證了BP神經網絡應用于模擬電路故障診斷的可行性。
關鍵詞:故障診斷;模擬電路;BP神經網絡;故障特征提取
中圖分類號:TP183文獻標識碼:A
文章編號:1004 373X(2009)02 142 03
Research of Analog Circuit Fault Diagnosis Based on BP Neural Network
HAO Junshou,DING Yanhui
(Inner Mongolia Electronic Information Vocational Technology College,Huhhot,010011,China)
Abstract:Based on the application of BP neural network in analog circuit fault diagnosis and the fault features extraction are discussed in detail.The fault sample set is established by using the multi-frequency combination method.Academic foundation is modern test technology,signal processing,information fusion and testability analysis,etc.The analog circuit soft fault diagnosis is realized to select test electric circuit by using BP neural network under the components existence tolerance condition.
Keywords:fault diagnosis;analog circuit;BP neural network;fault features extraction
0 引 言
隨著電子工業的發展,電子設備越來越復雜,其中的模擬器件和電路不可缺少。理論分析和實際應用表明,這些設備中的模擬電路比數字電路更容易發生故障。對這種設備的維護和保養十分復雜,需耗費大量的精力和財力。另外,隨著超大規模模擬電路的發展和電子器件復雜性的提高,傳統的人工故障診斷方法已經無法滿足要求,這就迫使科技人員進一步探索新的測試理論和方法,研制新的測試設備以適應社會的需求。
1 BP網絡簡介
1.1 BP網絡模型
圖1為一個三層前饋網絡模型,由輸入層、輸出層和隱層3部分組成。根據需要,可以有多個隱層。每一層的每個神經元(結點)的輸出經連接權值加權求和作為下一層每個神經元的輸入,層與層之間沒有反饋。
1.2 BP網絡用于故障診斷的基本思想
BP網絡用于模擬電路故障診斷的基本思想為:確定了電路的待測狀態集后,求電路處于其中一種狀態時的響應(通常是測試點的電壓)必要的預處理,作為對應狀態類的一個特征。對狀態集中的每一類狀態,都按上述方法獲取大量特征,并從中篩選出具有代表性的特征構造訓練樣本集。然后,用這些樣本訓練與所求問題相對應規模的BP網絡。BP網絡的輸入節點數應與特征向量的維數相同。輸出節點的維數等于待測故障狀態的類別數。在訓練時,把狀態特征輸入到BP網絡的輸入節點,要求網絡的輸出能正確指出電路狀態所屬類別。在做實際電路診斷時,對被測電路施加與產生樣本時相同的激勵和工作條件,取得相應特征,將此特征輸入到已訓練好的BP網絡。由BP網絡的輸出判斷電路中是否有故障;如有,則定位故障。
圖1 BP網絡結構
為了從最大程度上隔離和識別故障,采用多頻測試的方法。這時,從哪些頻率點提取故障特征成為首要問題,測試頻率選擇的好壞直接影響到對故障的分辨能力和診斷效果及樣本選擇。
1.3 BP故障特征提取
提取故障特征是模擬電路故障診斷的關鍵,也是構造樣本集的基礎。
基于神經網絡的模擬電路故障診斷系統,主要包括兩個過程:學習(訓練)過程,診斷(測試)過程。其中每個過程都包括數據預處理和特征提取2部分。整個故障診斷系統的過程如圖2所示。
圖2 故障診斷過程原理圖
如何有效提取優質的模擬電路故障特征,是進行電路故障診斷和測試的難點所在。在設計模擬電路故障診斷系統時,能夠快速、有效地提取反映電路的故障信息的特征是進行故障診斷的關鍵所在。
通常,從待測模擬電路響應的波形曲線獲得原始數據。通過對原始數據進行采樣,可將原始數據映射成樣本空間的點。模擬電路故障診斷的過程是把癥狀空間的向量映射到故障空間,即實現故障特征空間X到分類(識別)空間Y的映射F,F:X→Y。一般,首先要對映射到樣本空間的輸入數據進行預處理,通過刪除數據中的無用信息得到一類故障模式,即由樣本空間映射到數據空間。
在數據空間的基礎上,通過特定的變換處理,提取數據中的不變特征,形成不變故障模式空間。在提取了故障模式的不變特征之后,根據診斷的需要和問題的特性,往往還需要對所選擇的模式特征矢量進行量化壓縮變換,在盡可能保持信息量基本不丟失的前提下,在降維空間內選擇有用的特征,以利于高效實現模擬電路的故障診斷。并且由所獲得的降維空間,提取原始樣本集的特征信息以形成特征空間。一般的特征提取過程可用圖3表示。
圖3 特征提取示意圖
1.4 BP網絡的輸入層、隱層和輸出層節點個數的確定
這里設所選的測試節點數為m,測試頻率數為l,則:
(1) BP網絡的輸入節點數為n1=ml;
(2) 確定最佳隱節點數的一個常用方法被稱為“試湊法”,可先設置較少的隱節點訓練網絡,然后逐步增加隱節點數,用同一樣本集進行訓練,從中確定網絡誤差最小時對應的隱節點數;
(3) 將故障狀態進行二進制編碼,二進制碼值最大的那個數據的位數m就是輸出層神經元節點的個數。
1.5 多頻組合法
多頻測試是用不同頻率(測試頻率點集)的正弦信號激勵待測電路,通過觀測預先選定測試節點的輸出信號幅值,亦即故障電路與正常電路、不同故障電路之間的輸出幅值差異,實現模擬電路的故障診斷。多頻測試矢量即為測試頻率點的集合。
對給定的可及點,測試頻率的選取原理仍按電路的對數幅頻特性來劃分特征空間。
頻率選取原則:如果某些幅頻特性曲線在一個頻率點上密集,落入同一模糊集,則應在這些特性曲線較為分散的頻率上選擇其他測試頻率。
1.6 仿真實例
1.6.1 待測電路
待測電路如圖4所示。
圖4 待測電路
1.6.2 故障類別假定
以圖4中容差為±5%的電阻R1=10 kΩ為例,闡明故障診斷的思路。
(1) 當電阻在R1∈[9.5,10.5]時,電阻是正常的容差變化范圍;
(2) 當電阻R1<9.5 kΩ時,發生軟故障,用員硎菊庵旨跣∏榭觶其極限情況為R1=0此時轉化為硬故障,即短路故障。
(3) 當電阻R1>10.5 kΩ時,發生軟故障,用馴硎菊庵衷齟笄榭觶極限情況為R1=∞,此時轉化為硬故障,即開路故障。
由此可見軟故障是一個連續變化的值,要實現其故障診斷非常復雜,目前,國際上對軟故障診斷比較熱衷,但通常都是對某一定點的軟故障進行診斷,如鄖榭觶琑1=5 kΩ,或者亞榭觶琑1=15 kΩ。
1.6.3 故障特征提取
考慮到當電路發生故障時,各測試點電壓會有所變化,這種變化表征了此故障的特征。基于這一想法,利用各元件故障時在各測試點上施加不同頻率的正弦信號產生的電壓作為原始數據。
對圖4電路,在電路輸入端施加3 V的正弦激勵,測試頻率分別取10 kHz,16 kHz,20 kHz,32 kHz,取V璫為測試點。從測試點提取輸出波形的電壓值,作為故障特征信息。將一個測試點4個頻率的故障信息進行融合,形成對應故障模式的4維故障特征向量:X=[x1,x2,…,x4]T其中x璱為第i個測試頻率下獲得的測量值。
1.6.4 樣本集構造
為了驗證測試向量對故障元件的實際診斷效果,在電路輸入端施加3 V 的正弦激勵,測試頻率分別取10kHz,16 kHz,20 kHz,32 kHz(被測電路截止頻率是15.9 kHz,四種頻率優選是應用Multisim2001進行靈敏度分析得到的),取V璫為測試點,各待測元件的故障值:R璱(i=1,2,…,6)為±50%;C璲(j=1,2)為±50%。將故障分為兩類:R璱,R璱裕籆璲眩珻璲裕共計有19種故障模式(設定實驗電路存在故障)。故障模式用二進制編碼法來表征,如:00001表示R1怨收,00010表示R1壓收稀@用PSpice 4.02程序對電路在標稱值及各元件在故障情況下進行仿真。所得數據見表1(這里只列出1組部分代表性數據)。
為了加快神經網絡的收斂速度,需要對數據進行尺度變化,這里采用均方根方法對數據預處理。
從圖4可以看到,電路中共有9個元件,所以其軟故障加正常狀態共有19種。使用蒙特卡羅分析,電阻在5%的容差下和電容在10%的容差下,對每一個故障模式進行100次Monte-Carlo分析,其中70次為訓練樣本,構成訓練樣本集;30次為測試樣本,構成測試樣本集。對其進行預處理,所得數據見表1,這里僅列出其中1組部分數據。
2 診斷結果
應用BP神經網絡對實驗電路進行故障診斷,整個設計與訓練過程在Matlab 6.5仿真環境下進行。
將訓練樣本集序列輸入神經網絡,均方誤差設定為0.02,經多次調整網絡結構選為4-11-5,學習速度為0.3,動量因子0.3,網絡經過179 163次訓練調整后達到期望的均方誤差。誤差變化曲線圖如圖5所示。
為檢驗經過訓練的神經網絡的故障診斷能力,分別使用訓練樣本集和測試樣本集對網絡進行訓練和測試,對應測試樣本的神經網絡的輸出如表1所示。
對被測電路采用蒙特卡羅分析得到100組數據,其中70組數據作為訓練樣本集,30組數據作為測試樣本集。從表1可知,其測試結果正確率達100%。故障診斷正確率較高。證明所選擇的測試矢量對電路故障診斷是行之有效。
表1 測試樣本的神經網絡的診斷結果
故障類別神經網絡輸出近似后的二進制碼
正常0.002 70.003 30.000 00.000 00.000 000000
R1偏小0.000 00.006 40.000 00.018 30.999 900001
R1偏大0.008 20.000 10.000 00.985 10.011 800010
R2偏小0.000 10.012 70.023 60.985 20.987 000011
R2偏大0.012 10.000 00.991 90.001 10.000 300100
R3偏小0.009 00.014 80.993 40.000 01.000 000101
R3偏大0.036 80.000 90.950 80.967 60.008 300110
R4偏小0.000 50.000 00.983 40.999 81.000 000111
R4偏大0.012 10.979 40.000 00.013 00.000 001000
R5偏小0.000 01.000 00.010 30.012 50.985 401001
R5偏大0.000 00.999 90.006 00.987 70.000 101010
R6偏小0.005 90.997 50.023 40.999 90.964 301011
R6偏大0.000 01.000 00.981 80.002 00.025 001100
R7偏小0.000 01.000 01.000 00.000 60.979 501101
R7偏大0.000 01.000 00.981 21.000 00.032 001110
C1偏小0.000 00.984 11.000 00.990 31.000 001111
C1偏大0.961 70.000 10.048 20.031 00.003 010000
C2偏小0.986 10.000 00.007 00.013 00.997 310001
C2偏大0.984 20.017 40.000 00.998 30.015 210010
圖5 誤差變化曲線圖
3 結 語
討論了BP神經網絡在模擬電路故障診斷中的應用和故障特征提取方法;采用多頻組合法建立了故障樣本集;并且在Matlab下仿真驗證了結果的可行性。
參考文獻
[1]何怡剛,梁戈超.模擬電路故障診斷的BP神經網絡方法[J].湖南大學學報:自然科學版,2003,30(5):35-39.
[2]尉乃紅,楊士元,童詩白.基于BP網絡的線性電路故障診斷[J].計算機學報,1997,20(4):360-366.
[3]張聚偉.基于BP算法的模擬電路故障診斷系統的DSP實現[D].呼和浩特:內蒙古工業大學,2005.
[4]劉玉萍,趙健.神經網絡在模擬系統故障定位中的應用[J].南昌航空工業學院學報,2000,14(2):19-21.
[5]和曉鋒,劉橋.采用BP網絡建立模擬電路故障診斷交流字典方法[J].貴州大學學報,2003,20(3):287-290.
[6]朱大奇,于盛林.電子電路故障診斷的神經網絡數據融合算法[J].東南大學學報:自然科學版,2001,31(6):87-90.
[7]袁慧梅,李錦萍.模擬電路故障診斷新方法[J].航空精密制造技術,2002,38(2):20-23.
[8]馬野,李楠.模擬電路的一種故障智能診斷方法與仿真[J].自動化技術與應用,2001,3(2):12-15.
[9]李潤梅,李春明.基于可測性分析容差網絡測試點選擇[J].電子測量技術,2002(2):25-26.
[10]崔莼,羅先覺.模擬電路單一故障的模糊神經網絡診斷方法[J].系統工程與電子技術,1997,3(6):50-55.
作者簡介 郝俊壽 男,1975年出生,山西太原人,講師。研究方向為模擬電路的故障診斷。