朱曉琨
摘 要:電氣設備的故障診斷對于提高生產效率具有十分重要的意義。然而,隨著設備內部復雜度的不斷提高,故障診斷也成為一項越來越難的工作。在分析神經網絡結構及其學習算法的基礎上,提出一種基于3層BP神經網絡的電氣故障診斷方法,并以發動機故障檢測為實例,分析特征向量提取、神經網絡訓練等問題。通過輸入樣本訓練及神經網絡測試表明,神經網絡在故障檢測診斷問題中具有很高的實用價值。
關鍵詞:電氣設備;故障診斷;神經網絡;學習算法
中圖分類號:TP183
近年來,隨著電氣設備復雜度的增加,其發生故障的概率也逐漸上升。即使是熟練工程師,面對日趨復雜的設備內部電氣結構,也難以迅速分析及判別其故障原因。與此同時,涌現出的各種智能算法、專家系統等,為設備診斷問題提供了可行的方案。其中,神經網絡以其特有優勢在電氣設備故障診斷中發揮了重要作用。神經網絡理論是人工智能、認知學、腦神經學、信息學等諸多學科融合發展的結果,它是由大量簡單的處理單元(稱為神經元),通過廣泛的互相連接而形成的復雜網絡系統。神經網絡具有學習能力,可以根據電氣設備的正常歷史數據訓練,將訓練結果信息與當前測量數據進行比較,以確定故障。同時它具有濾除噪聲的能力,這使其能在噪聲環境中有效地在線監測及診斷。其具有的分辯故障原因及類型的能力,為未來實現故障智能診斷奠定了基礎。本文介紹神經網絡結構及其學習算法,提出一種基于BP網絡的電氣設備故障診斷方法,通過網絡訓練及結果測試表明,該方法具有良好的故障診斷能力。[JP]
1 BP神經網絡模型
神經網絡有很多模型,例如BP網絡、Kohonen,Hopfield及ART等。其中,反向傳播網絡(Back[CD*2]Propagation Network)在神經網絡的實際應用中有著十分重要的影響,工程應用中的絕大多數網絡模型都采用BP模型或其變形,可以說BP模型體現了神經網絡中的精華。
1.1 BP神經網絡模型
以三層前向BP網絡為例,對神經網絡結構進行分析,其組成包括輸入層、隱含層和輸出層。如圖1所示,圖中圓圈表示神經元,W﹊r表示輸入層第i個神經元與隱含層第r個神經元的連接權值;V﹔j表示隱含層第r個神經元與輸出層第j個神經元的連接權值;其間的連線表示神經元之間的相互作用強度。И
從圖1的結構中可以得到,隱含層節點的輸出函數和輸出層節點的輸出函數分別為:
式中:T璻和θ璻分別為隱含層和輸出層的單元閾值。在本文設計的獴P神經網絡結構中,式(1)中的f(?)采用玸igmoid函數,即f(x)=(1+e-x)-1。И
1.2 BP學習算法
BP模型的成功得益于BP算法的應用,即誤差反向傳播算法。BP算法屬于梯度下降算法,是一種監督式的學習算法。用網絡的實際輸出與目標矢量之間的誤差來修正網絡權值,使輸出與期望盡可能接近(網絡輸出層的誤差平方和達到最小);通過反復在誤差函數梯度下降方向上調整網絡權值的變化,逐漸逼近目標。每次權值和偏差的變化都與網絡輸出誤差的影響成正比,并以反向傳播的方式傳遞到每一層。BP網絡是由兩部分組成:信息的正向傳遞和誤差的反向傳播。
設神經元的輸入矢量為[WTHX]X[WTBX]=[x1,x2,…,x璶],其中n是輸入層的神經元數。對應于輸入[WTHX]X的輸出矢量是℡[WTBX]=[y1,y2,…,y璵],其中m 是輸出層的神經元數。如果要求網絡的期望輸出是[WTHX]T[WTBX]=[t1,t2,…,t璵],г蛭蟛詈數可以定義為:
BP算法采用梯度下降法來調整網絡的權值,以使上述誤差函數減小,即:
Иw(n+1)=w(n)-η(礒/祑)[JY](3)И
式中:常數Е鞘僑ㄖ檔髡速率,通常取值0.01≤η≤1。權值WУ牡髡方法采用以下公式:
式中:ИΔ玾﹑q表示某層第p個節點到下一層第q個節點的權值修正量;x璸表示節點p的輸出;δ璹表示節點qУ畝說愕燃畚蟛,由輸出層的等效誤差反傳而來:
式中:對應BP模型網絡結構(見圖1);節點玵位于輸出層;節點h位于隱層。
2 電氣設備故障檢測實例
在電氣設備中發動機是故障率比較高的設備之一,其在故障診斷中比較具有代表性。在此,以發動機為例,分析BP神經網絡在電氣設備故障診斷過程中的一般模式及步驟。
2.1 網絡樣本選取及參數選擇
分析發動機的常見故障模式,首先選擇具有代表性的故障作為特征向量,取[WTHX]X[WTBX]=[x1,x2,x3,x4]作為神經網絡的輸入。其中:x1代表功率不足故障;x2代表聲音異常故障;x3代表排氣溫度高故障;x4代表消耗量過大故障。通過分析故障原因,取[WTHX]Y[WTBX]=[y1,y2,y3,y4,y5]作為目標輸出向量。其中:y1代表點火不正確;y2代表高壓線圈損壞;y3代表出現燃爆現象;y4代表進氣排氣管故障;y5代表增壓積炭過多故障。表1給出了輸入故障現象[WTHX]X和輸出原因分析Y[WTBX]е間的對應關系。
由此可知,在設計基于三層BP神經網絡的發動機故障診斷系統中,輸入層神經元節點數N=4,輸出層神經元節點數M=5。由公式h=(N+M)+σ可得隱含層神經元節點數h取3~6之間的數。И
2.2 訓練及測試
通過輸入樣本組對所設計的網絡進行訓練,選擇訓練誤差為10-6。例如,輸入樣本玔WTHX]X[WTBX]=[0,0,1,0],調整網絡狀態,使其輸出接近目標[WTHX]Y[WTBX]=[1,0,0,1,0],即當發生排氣溫度過高故障時,可能原因是點火不正確以及進氣排氣管問題。訓練網絡的過程,實際上就是調整網絡參數的過程,具體來說,最主要的就是確定各個網絡權值。最終訓練好的網絡在測試過程中,能較為準確地診斷出故障問題的原因。在工程使用過程中,選擇故障檢測過程中各種儀器測量出來、有代表意義的測量數據,根據先驗知識及專家分析,組成輸入樣本和目標向量組,對設計的網絡結構訓練。在訓練過程中,可增加輸入樣本的數量。因為通過大量樣本訓練,神經網絡能具有更好的適應性和魯棒性,其故障診斷的準確性有所提高。采用C++猙uilder及Matlab混合編程,前者負責做界面系統的開發,后者集中在神經網絡算法的設計上,據此進一步提高本工作的實際應用能力。
3 結 語
電氣設備故障診斷對科研及生產過程有很大作用,快速準確地尋找故障原因,能極大地提高工作生產效率。與此同時,各種智能算法、仿生算法正迅速發展,并逐漸從實驗室研究走向工程應用。神經網絡以其學習能力、記憶性能及容錯能力等優勢,在各種智能算法中脫穎而出。本文分析了神經網絡的結構及其學習算法,提出一種基于三層BP神經網絡的電氣故障診斷方法,并以發動機故障檢測實例分析了特征向量的提取、神經網絡訓練等問題,編程實現了工程應用演示程序。輸入樣本訓練及網絡測試表明,神經網絡在故障檢測診斷問題中具備容錯、推測、記憶、自適應等特點,具有很高的實用價值。