李杰
(西安軌道交通公司,陜西西安 710016)
當前,以模擬電子為關(guān)鍵技術(shù)的電路已經(jīng)被應(yīng)用在越來越多的場景中。其中,電路故障診斷技術(shù)一直是保證電路安全、高質(zhì)量運轉(zhuǎn)的重要基礎(chǔ)。隨著應(yīng)用場景的復(fù)雜化,電路故障診斷技術(shù)不僅需要具有對復(fù)雜電路的分析能力,還要保證其在不同應(yīng)用場景下的通用性。機器學習是一種基于數(shù)據(jù)驅(qū)動的人工智能統(tǒng)計方法,可以在經(jīng)驗總結(jié)的基礎(chǔ)上對電路故障進行診斷分析。正是這種不依賴于系統(tǒng)、不依賴于模型的優(yōu)勢,使得機器學習方法有效地推動了電路故障診斷技術(shù)的進一步應(yīng)用與發(fā)展。
為了把握當前機器學習方法在電路故障診斷中的研究水平,本文首先介紹電路故障診斷技術(shù)的分類和原理;其次闡述四種機器學習方法——支持向量機、人工神經(jīng)網(wǎng)絡(luò)、模糊分類和隱馬爾科夫模型;最后對機器學習方法在常用模擬電路和電力設(shè)備中的故障診斷應(yīng)用實例進行評析。
據(jù)統(tǒng)計,電子設(shè)備中大部分電路由數(shù)字和模擬電路混合組成,但是約80%的故障發(fā)生在模擬部分。數(shù)字電路故障診斷比模擬電路更容易,因為數(shù)字電路的測試規(guī)程很明確,且故障種類很有限,不外乎是短路故障、開路故障和卡滯故障等。而在模擬電路中,由于元件的非線性和容限性、故障模型低效性和模糊性、節(jié)點的不可訪問性和測量的不確定性等特性的制約,使得故障診斷變得非常困難。因此,模擬電路對電路故障診斷技術(shù)提出了更高的要求。
通常,模擬電路故障診斷的難點有:1)模擬電路中的信息是以信號形式儲存的,信號中的小干擾嚴重影響模擬電路的性能;2)從物理角度來看,模擬電路中的元件在大多數(shù)工作條件下通常是非線性的。以上難點使得模擬電路故障診斷成為一個開放性的課題,或者涉及很廣泛的研究領(lǐng)域。
硬故障和軟故障是模擬電路中的主要故障類型。硬故障被稱為災(zāi)難性故障,而軟故障被視為參數(shù)性故障。相對而言,軟故障通常從參數(shù)性故障檢測入手,使其更難以檢測。硬故障很容易被定位、隔離并糾正。從這個角度來看,模擬電路故障診斷有兩種方法:一類是試驗前仿真,另一類是試驗后仿真[1-2],如圖1所示。
試驗前仿真方法分為兩類:故障字典技術(shù)和統(tǒng)計技術(shù)[3]。故障字典是一個查找表,由切割的無故障案例和故障案例組成。統(tǒng)計技術(shù)則進行大量的仿真,在連續(xù)模擬的基礎(chǔ)上,建立一個完整的統(tǒng)計數(shù)據(jù)庫。通過這個數(shù)據(jù)庫,可以檢測到電路中每個元件出現(xiàn)錯誤的概率。
圖1 模擬電路故障診斷方法分類
試驗后仿真方法是在獲得測試數(shù)據(jù)后對電路進行仿真的方法,其目的是將電路故障診斷問題抽象為一個非線性方程,根據(jù)獲得的測試數(shù)據(jù)推算非線性方程中的變量和組分參數(shù)。試驗后仿真方法分為三類:參數(shù)辨識法、故障驗證法和近似法。
對于復(fù)雜電路的故障診斷,考慮到其計算量大、復(fù)雜度高等原因,試驗后仿真方法將難以實現(xiàn),而試驗前仿真方法則可以有效降低計算量和復(fù)雜度,其中基于故障字典技術(shù)的機器學習方法被運用到許多復(fù)雜電路的故障診斷中。
如前所述,機器學習方法是一種基于試驗前仿真的電路故障診斷方法,其利用先前成功或失敗診斷的知識來提高電路故障診斷的性能?;跈C器學習方法的電路故障診斷方法如圖2所示。近些年機器學習方法的研究工作主要集中在支持向量機(Support Vector Machine,SVM)、人工神經(jīng)網(wǎng)絡(luò)(Artificial Neural Network,ANN)、模糊分類、隱馬爾科夫模型等。
圖2 基于機器學習方法的電路故障診斷方法
基于機器學習方法的電路故障診斷方法的主要優(yōu)點有:1)在線和離線測量計算最小化;2)能夠處理容差效應(yīng);3)可以將困難問題分解成簡單問題;4)魯棒性和適應(yīng)性較強。
支持向量機是一種按監(jiān)督學習方式對數(shù)據(jù)進行二元分類的廣義線性分類器,其決策邊界是對學習樣本求解的最大邊距超平面。對于線性可分樣本,超平面可以將實例分為兩類;對于線性不可分樣本,要利用非線性變換將原始空間中的實例映射到高維特征空間中。
如前所述,采用支持向量機對模擬電路進行故障診斷屬于故障字典技術(shù)的范疇。支持向量機分類器可以看作是一種特殊的神經(jīng)網(wǎng)絡(luò),它具有強大的學習、泛化和分類能力,可通過核函數(shù)將樣本映射到高維空間,使測量空間中的重疊類變得線性可分。Cui等[4]提出了一種利用改進的支持向量機分類器診斷模擬電路的方法,該方法在被測電路上施加輸入,然后收集輸出響應(yīng),最后利用預(yù)處理技術(shù)對這些響應(yīng)進行分析,得到特征樣本。實驗結(jié)果表明,該方法使得電路故障診斷性能改善明顯。
傳統(tǒng)人工神經(jīng)網(wǎng)絡(luò)具有較淺的結(jié)構(gòu),這限制了其在電路故障診斷問題中學習復(fù)雜非線性關(guān)系的能力[5]。針對傳統(tǒng)方法的局限性,一類基于深度學習技術(shù)的人工神經(jīng)網(wǎng)絡(luò)被提出,它在自適應(yīng)地從原始數(shù)據(jù)中提取特征和對非線性故障動力學現(xiàn)象進行描述方面具有優(yōu)異的性能,因此在電路故障診斷領(lǐng)域也受到了廣泛的關(guān)注[6]。深度置信網(wǎng)絡(luò)(D e e p B e l i e f Networks,DBN)作為第一個被提出的人工神經(jīng)網(wǎng)絡(luò),在飛機發(fā)動機、齒輪箱和往復(fù)式壓縮機閥門電路的故障診斷中迅速發(fā)展[7-8]。
深度置信網(wǎng)絡(luò)是一種概率生成模型,可以建立一個觀察數(shù)據(jù)和標簽之間的聯(lián)合分布,與傳統(tǒng)的判別模型神經(jīng)網(wǎng)絡(luò)相對。通過訓(xùn)練其神經(jīng)元間的權(quán)重值,可以讓整個神經(jīng)網(wǎng)絡(luò)按照最大概率生成訓(xùn)練數(shù)據(jù)。深度置信網(wǎng)絡(luò)由多層神經(jīng)元構(gòu)成,這些神經(jīng)元又分為顯性神經(jīng)元和隱性神經(jīng)元,前者用于接受輸入,后者用于提取特征。深度置信網(wǎng)絡(luò)不僅可以使用來識別特征、分類數(shù)據(jù),還可以生成數(shù)據(jù),是一種非常實用的電路故障診斷方法。
模糊分類是一種用來處理不明確項的故障分類智能算法。故障分類分為兩個基本步驟:第一步,識別故障,準備故障字典;第二步,通過模糊分類器對故障進行分類。
Kumar等[9]提出了一種基于模擬電路頻域分析的單、雙軟故障診斷新方法。該方法用模糊分類器進行故障分類,不僅適用于不同的單故障和雙故障,而且能準確地給出故障分量的估計值。此外,故障字典是利用預(yù)先定義的故障模型集生成的,模糊分類器則對不在原始故障模型集中的電路故障診斷模型進行插值和識別。
當電路初始故障發(fā)生時,電路性能開始從正常狀態(tài)下降,但是由于電路早期故障是一種弱軟故障,其故障特征變化微弱,因此不易檢測。在考慮非線性影響的情況下,一般利用分數(shù)階Volterra相關(guān)函數(shù)和分數(shù)階小波包變換,采用一種基于隱馬爾科夫模型(Hidden Markov Model,HMM)的電路早期故障診斷方法。
隱馬爾科夫模型是一種基于時間序列的統(tǒng)計分析模型,在語音識別、故障預(yù)測、故障診斷等領(lǐng)域有著廣泛的應(yīng)用[10-11]。此外,隱馬爾科夫模型已經(jīng)被證實能有效地檢測模擬電路的初始故障。例如,文獻[12]提出了一種利用隨機信號分析和高斯混合隱馬爾科夫模型對線性電路進行軟故障和早期故障診斷的新方法,并通過實驗驗證了方法的有效性。
文獻[1]對基準雙四路濾波器電路進行了故障診斷分析。假定電阻和電容的公差值分別為5%和10%。為了驗證電路故障診斷方法的正確性,采用Multisim軟件和Matlab軟件實現(xiàn)了電路故障診斷過程。用Multisim軟件對模擬電路進行了仿真,用Bode繪圖儀得到了被測電路的頻率響應(yīng)。
為每個部件模擬100個軟故障,共記錄101個頻率響應(yīng),其中100個用于識別故障等級,1個用于反映部件的標稱值。通過數(shù)據(jù)預(yù)處理,實現(xiàn)了電路故障診斷的特征提取,并編制了故障字典。對于被測電路元件的所有故障,采用多項式曲線擬合法,求出了基本多項式系數(shù)。
識別故障并編制故障字典是電路故障分類的第一步。電路的輸出響應(yīng)用9階多項式曲線擬合,故障分類采用10個多項式系數(shù)。利用這些系數(shù)進行故障分類,取得了較好的效果。第二步是為電路故障診斷設(shè)計合適的神經(jīng)網(wǎng)絡(luò)。利用Matlab軟件的神經(jīng)網(wǎng)絡(luò)工具箱設(shè)計了用于故障分類的神經(jīng)網(wǎng)絡(luò)結(jié)構(gòu),并對神經(jīng)網(wǎng)絡(luò)進行訓(xùn)練,得到了輸入層10個節(jié)點、輸出層1個節(jié)點的神經(jīng)網(wǎng)絡(luò)。每種神經(jīng)網(wǎng)絡(luò)結(jié)構(gòu)對應(yīng)一個電路部件的故障診斷過程,通過改變隱含層的節(jié)點數(shù)目,達到最佳的故障分類性能。
文獻[1 2]以0.25μm BiCMOS7RFST Microelectronics Technology的低噪聲放大器為案例,選擇4個散射參數(shù)作為初始診斷測量值。每一個散射參數(shù)以100 MHz的步長在1 000 MHz和5 000 MHz之間進行采樣,共41個頻率點。因此,總共有4×41=164個診斷測量值。
為了便于診斷,故障類型分為:1)短路和開路形式的硬故障;2)軟故障。在此基礎(chǔ)上,實現(xiàn)基于支持向量機的分類器和回歸函數(shù)。
分類器用于訓(xùn)練,并使用“過程變化”類進行驗證。文獻[13]對單一電路故障下診斷流程的通用性進行了評估。
現(xiàn)如今隨著科學技術(shù)的不斷發(fā)展,電力設(shè)備及電路的維護和監(jiān)控逐漸由人工方式向自動化轉(zhuǎn)變。但在自動化程度較高的電力設(shè)備中,由某個電力開關(guān)或是器件引起的故障并不易發(fā)現(xiàn),這就容易造成電力設(shè)備及電路的損壞,有時甚至造成不可估計的經(jīng)濟損失。當電壓波動發(fā)生,即電壓在一瞬間發(fā)生增大或減小時,電力設(shè)備及電路會受到?jīng)_擊,如果沒有事先降壓或提高電力性能,極有可能造成設(shè)備及電路損壞。對電力設(shè)備及電路的故障進行準確分析,可以將電壓波動及時反饋給設(shè)備及電路,提前做好防護。由于復(fù)雜的干擾因素過多,因此使用傳統(tǒng)方法不僅耗時,而且不夠準確,而機器學習方法則可以采集已有電力設(shè)備及電路的狀態(tài)數(shù)據(jù),并進行分析,從而實現(xiàn)故障類型的有效診斷[14-15]。
總之,通過以上三個應(yīng)用實例的評析,讀者可以更加準確理解機器學習方法在電路故障診斷中的應(yīng)用特點。同時,這三個應(yīng)用實例也說明了機器學習方法能夠與電路故障診斷相結(jié)合,有效地推動電路故障診斷的進一步發(fā)展,使電路,尤其是模擬電路的穩(wěn)定性和效率得到很大的提升[16-17]。
本文首先介紹了電路故障診斷技術(shù)的分類和原理,其次對支持向量機、人工神經(jīng)網(wǎng)絡(luò)、模糊分類和隱馬爾科夫模型這四種機器學習方法進行了闡述,最后評析了機器學習方法在常用模擬電路和電力設(shè)備中的三個故障診斷應(yīng)用實例。本文分析和研究表明:機器學習方法能夠有效地對電路,尤其是模擬電路進行故障診斷。本文為電路故障診斷研究明確了方向,對電路故障診斷的進一步應(yīng)用和發(fā)展具有重要啟示意義。