顏學(xué)龍,韓俊俊
(桂林電子科技大學(xué)電子工程與自動(dòng)化學(xué)院,廣西桂林541004)
基于IEEE1149.4標(biāo)準(zhǔn)的模擬電路故障診斷研究
顏學(xué)龍,韓俊俊
(桂林電子科技大學(xué)電子工程與自動(dòng)化學(xué)院,廣西桂林541004)
隨著電子系統(tǒng)的集成度越來(lái)越高,內(nèi)部結(jié)構(gòu)越來(lái)越復(fù)雜,傳統(tǒng)的物理探針已經(jīng)無(wú)法滿足測(cè)試要求。簡(jiǎn)要介紹了IEEE1149.4標(biāo)準(zhǔn)和支持向量機(jī)理論基礎(chǔ),提出了一種基于IEEE1149.4標(biāo)準(zhǔn)的模擬電路故障診斷方案。該方法利用SVM實(shí)現(xiàn)故障檢測(cè),結(jié)合電路分塊方法和IEEE1149.4標(biāo)準(zhǔn)中的開(kāi)關(guān)矩陣對(duì)電路分塊,實(shí)現(xiàn)故障定位。最后對(duì)此方法的可行性和準(zhǔn)確性進(jìn)行了仿真驗(yàn)證,結(jié)果表明此方法在準(zhǔn)確判斷電路是否存在故障的同時(shí),也能實(shí)現(xiàn)故障定位,達(dá)到誤判率為零的結(jié)果。
IEEE1149.4;支持向量機(jī);故障檢測(cè);故障定位
目前在一個(gè)完整的電子系統(tǒng)中,模擬電路還不能完全被數(shù)字電路取代,而在信號(hào)處理和控制中,模擬電路又占有多數(shù),并且大部分電子系統(tǒng)故障出現(xiàn)在模擬電路部分,所以對(duì)模擬電路的故障診斷至關(guān)重要[1]。參考文獻(xiàn)[2]提出了一種基于IEEE1149.4標(biāo)準(zhǔn)的混合電路故障診斷方法,實(shí)現(xiàn)了混合電路的互連測(cè)試和參數(shù)測(cè)試;參考文獻(xiàn)[3]提出的模擬電路故障診斷算法是基于特征和故障診斷器聯(lián)合優(yōu)化的一種算法,提取和選擇待測(cè)模擬電路中的故障特征,結(jié)合SVM參數(shù)優(yōu)化完成模擬電路故障診斷;參考文獻(xiàn)[4]提出的基于SVM的模擬測(cè)試生成算法,利用SVM分類特征將分類面中的信息轉(zhuǎn)化為模擬電路測(cè)試矢量,能有效地檢測(cè)出電路中有無(wú)故障。
但是以上算法都存在一定的誤判率,針對(duì)這一問(wèn)題,本文提出了基于IEEE1149.4標(biāo)準(zhǔn)的模擬電路的故障診斷。利用IEEE1149.4標(biāo)準(zhǔn)的開(kāi)關(guān)矩陣形成測(cè)試通道,再結(jié)合支持向量機(jī)實(shí)現(xiàn)故障的診斷,最后通過(guò)電路分塊的方法實(shí)現(xiàn)故障定位。
支持IEEE1149.4標(biāo)準(zhǔn)的器件主要由以下部分組成:數(shù)字測(cè)試訪問(wèn)端口TAP(Test Access Port)、模擬測(cè)試訪問(wèn)端口ATAP(Analog Test Access Port)、測(cè)試總線接口電路TBIC(Test Bus Interface Circuit)、模擬測(cè)試總線ABx(Analog Test Bus)、數(shù)字邊界掃描單元DBM(Digital Boundary Module)以及模擬邊界掃描單元ABM(Analog Boundary Module)等[5]。
測(cè)試總線接口電路TBIC的主要作用是通過(guò)控制模擬測(cè)試訪問(wèn)端口(ATAP)和內(nèi)部測(cè)試總線(ABx)的連接,為外部測(cè)試總線系統(tǒng)和器件的ABM單元提供通道,測(cè)試激勵(lì)的輸入和響應(yīng)的采集可由ATAP端口獲得[1,5]。邏輯控制電路和開(kāi)關(guān)矩陣共同組成了測(cè)試總線接口電路,圖1是TBIC開(kāi)關(guān)矩陣的結(jié)構(gòu)。

圖1 TBIC開(kāi)關(guān)結(jié)構(gòu)
模擬邊界掃描單元ABM是IEEE1149.4標(biāo)準(zhǔn)框架的心臟[5],具有至關(guān)重要的作用。如圖2所示為ABM的功能原理圖,其主要是6個(gè)開(kāi)關(guān)組成的開(kāi)關(guān)矩陣。

圖2 ABM開(kāi)關(guān)結(jié)構(gòu)
SVM(Support Vector Machine)即支持向量機(jī),由Vapnik最先提出,它是建立在統(tǒng)計(jì)學(xué)習(xí)理論基礎(chǔ)上的一種分類方法[4]。SVM的目的是找到一個(gè)滿足分類要求的分類超平面,使得該超平面不僅能保證分類精度,還能使超平面兩側(cè)的樣本與該平面的距離最大化[4]。
假設(shè)有訓(xùn)練集{(x1,y1),…,(xn,yn)},其中xi∈Rn,yi∈Y={1,-1},i=1,…,n,若存在w∈Rn,b∈R,則超平面表達(dá)式可表示為:
S={x|<w,x>+b=0}
SVM的關(guān)鍵是尋找最優(yōu)w和b使得離分類面最近的樣本與分類面距離最大。離分類面最近的樣本被稱為支持向量[6]。通過(guò)兩類支持向量的平面分別為{x|<w,x>+b=1}和{x|<w,x>+b=-1},并且都平行于超平面,與超平面的距離為1/|w|,所以尋找最優(yōu)w和b即是尋找最大間隔,于是分類問(wèn)題轉(zhuǎn)化為最優(yōu)化問(wèn)題:
s.t.yi(wTx+b)≥1,i=1,2,…,n
用拉格朗日乘子求解上式,再結(jié)合KKT互補(bǔ)條件,最終化簡(jiǎn)為:


上面討論了線性可分情況,為求解線性不可分情況,還需引入核函數(shù)K(·,·)將數(shù)據(jù)映射到高維,線性不可分問(wèn)題就被轉(zhuǎn)化為線性可分問(wèn)題[6],得到:



最終得到?jīng)Q策函數(shù):
故障診斷是指利用各種診斷和測(cè)試方法確定待測(cè)電路有無(wú)故障,通常分為故障檢測(cè)和故障定位兩部分。故障檢測(cè)指判斷出待測(cè)電路中有無(wú)故障,故障定位則指找出發(fā)生故障的確切位置。本文采用基于SVM的故障檢測(cè)方法來(lái)判斷電路是否存在故障,對(duì)于故障定位,采用結(jié)合IEEE1149.4標(biāo)準(zhǔn)的開(kāi)關(guān)矩陣和電路分塊方法實(shí)現(xiàn)。該診斷方法以單一故障為基礎(chǔ),暫時(shí)不涉及多故障并存的情況。
3.1 故障檢測(cè)
本文采用基于SVM模擬電路故障檢測(cè)方法,其主要思想是對(duì)采樣空間進(jìn)行分類,得到能區(qū)分電路正常狀態(tài)和故障狀態(tài)的分類面和決策函數(shù),最終判斷電路有無(wú)故障。
對(duì)待測(cè)電路(CUT)設(shè)置不同的狀態(tài)(正常狀態(tài)和故障狀態(tài))之后,以采樣頻率FS分別進(jìn)行采樣,得到大量n維的響應(yīng)向量,這些n維的響應(yīng)向量構(gòu)成了訓(xùn)練集或測(cè)試集[5]。利用SVM對(duì)采樣空間進(jìn)行分類,得到超平面和決策函數(shù),最后將待測(cè)響應(yīng)x代入到?jīng)Q策函數(shù)中,根據(jù)f(x)的值(1或-1)來(lái)判斷此電路是否有故障。
基于SVM故障檢測(cè)的主要步驟如下:
(1)采集訓(xùn)練集:將電路分為正常狀態(tài)和故障狀態(tài),分別提取電路特征作為訓(xùn)練數(shù)據(jù)xi,將電路正常特征標(biāo)記為y=+1,電路故障特征標(biāo)記為y=-1。
(2)訓(xùn)練分類器:結(jié)合采集的訓(xùn)練集來(lái)訓(xùn)練支持向量機(jī),獲得能將正常特征與故障特征分開(kāi)的超平面以及決策函數(shù):

(3)檢測(cè)故障:將待測(cè)的測(cè)試特征x代入到?jīng)Q策函數(shù)中,根據(jù)得到的結(jié)果判斷電路中有無(wú)故障:

3.2 故障定位
基于SVM的故障檢測(cè)只能判斷出待測(cè)電路有無(wú)故障,要確定故障發(fā)生位置,還需采取進(jìn)一步的方法來(lái)實(shí)現(xiàn)。本文結(jié)合電路分塊方法和IEEE1149.4標(biāo)準(zhǔn)來(lái)實(shí)現(xiàn)電路分塊,分別對(duì)分割后的子電路進(jìn)行故障判斷。采用IEEE1149.4標(biāo)準(zhǔn)中的開(kāi)關(guān)矩陣,在設(shè)計(jì)電路時(shí)將分塊點(diǎn)連接至IEEE1149.4器件的ABM單元,實(shí)現(xiàn)測(cè)試激勵(lì)的輸入和測(cè)試響應(yīng)的采集。本文采用參考文獻(xiàn)[7]中的基于Laplace矩陣的譜平分算法,該算法利用電路的鄰接矩陣模型對(duì)電路網(wǎng)絡(luò)進(jìn)行分塊處理,主要步驟參照參考文獻(xiàn)[7]。
3.3 基于IEEE1149.4的模擬故障診斷
因?yàn)橐獙⒎謮K點(diǎn)連接到IEEE1149.4器件的ABM單元上實(shí)現(xiàn)電路分塊,所以要在最開(kāi)始就對(duì)電路進(jìn)行分塊。文中用到的電路分塊算法每次只能將電路分成兩個(gè)子電路,所以先將電路分成2個(gè)一級(jí)子電路,再對(duì)一級(jí)子電路進(jìn)行分塊,得到4個(gè)二級(jí)子電路,依此類推,直至分到最小(可以為單一器件,也可以為簡(jiǎn)單網(wǎng)絡(luò))。
基于IEEE1149.4標(biāo)準(zhǔn)的故障診斷流程如圖3所示。對(duì)電路分塊后,將分塊點(diǎn)連接至IEEE1149.4器件的ABM單元上;然后斷開(kāi)或閉合相關(guān)ABM單元上的概念開(kāi)關(guān),采集整個(gè)待測(cè)電路的響應(yīng)空間,完成支持向量機(jī)的訓(xùn)練,測(cè)試電路是否存在故障;在有故障的情況下,重新選擇需要斷開(kāi)或閉合相關(guān)位置概念開(kāi)關(guān)實(shí)現(xiàn)電路分塊,對(duì)子電路塊進(jìn)行故障檢測(cè),重復(fù)這一步驟直至最后一級(jí)子電路故障檢測(cè)完成。

圖3 故障診斷流程圖
本文在軟件仿真環(huán)境下驗(yàn)證該診斷方法的可行性和準(zhǔn)確性,以圖4所示的三極點(diǎn)濾波器為例。器件U1和器件U2均為支持IEEE1149.4的器件。點(diǎn)B1是整體電路的分塊點(diǎn),將電路分為兩個(gè)一級(jí)子電路,左邊為子電路1,點(diǎn)B11是子電路1的分塊點(diǎn),點(diǎn)B21和點(diǎn)B22均能作為子電路2的分塊點(diǎn),所以點(diǎn)B21和點(diǎn)B22將子電路2分為三部分。將點(diǎn)B11連接至器件U1,將點(diǎn)B1、點(diǎn)B21和點(diǎn)B22都連接至器件U2上(為畫圖簡(jiǎn)便考慮,并未在圖中畫出)。

圖4 三極點(diǎn)濾波器
主要測(cè)試電阻和電容的故障,暫不涉及放大器的故障,假設(shè)運(yùn)算放大器是無(wú)故障的。在采集響應(yīng)空間時(shí),以元件參數(shù)容差[-5%,5%]的電路狀態(tài)為正常狀態(tài),以大于元件參數(shù)容差(5%,10%]的電路狀態(tài)為故障狀態(tài)。分別對(duì)整體電路和子電路進(jìn)行了故障檢測(cè),結(jié)果如表1表示。

表1 仿真結(jié)果
這里需要說(shuō)明一點(diǎn):基于SVM的故障檢測(cè)算法中的故障狀態(tài)只選取了大于元件參數(shù)容差(5%,10%]的電路狀態(tài),對(duì)于小于元件參數(shù)容差的電路故障狀態(tài)是無(wú)法檢測(cè)的。若要檢測(cè)小于元件參數(shù)容差的電路故障狀態(tài),需要重新選取故障狀態(tài)與正常狀態(tài)進(jìn)行支持向量機(jī)的訓(xùn)練。
由表1可以看出,無(wú)論是對(duì)整體電路還是子電路,基于SVM的故障檢測(cè)算法可以準(zhǔn)確無(wú)誤地判斷出電路中是否存在故障,與參考文獻(xiàn)[4]相比較,電路故障誤判率為零。同時(shí)還可以得出,經(jīng)電路分塊后,使用IEEE1149.4器件提供測(cè)試通道,可以實(shí)現(xiàn)故障的初步定位。要實(shí)現(xiàn)故障準(zhǔn)確定位,需要結(jié)合電路特點(diǎn),利用支持IEEE1149.4的器件對(duì)單一元件進(jìn)行故障診斷,如圖5所示。

圖5 基于IEEE1149.4的故障診斷
對(duì)于R1:連接A11引腳到AT1端口,A12引腳連接到VG(邏輯地),從AT1端口輸入電流測(cè)試激勵(lì)iT1,待測(cè)試激勵(lì)穩(wěn)定后將AT2端口連接至A11引腳測(cè)得電壓UR1,則R1=UR1/IT1,其中UR1和IT1為有效值。子電路2的R2和R3也可以用此方法測(cè)試。
對(duì)于C1:連接A11引腳至AT1端口,A12引腳至AT2端口,從AT1端口輸入電流測(cè)試激勵(lì)iT1,待測(cè)試激勵(lì)穩(wěn)定后從AT2端口測(cè)得電容兩端電壓UC1,然后斷開(kāi)A12與AT2端口的連接,連接A11至AT2端口測(cè)得A11處電壓UA11,考慮到C1上電壓滯后電流的特征,求得C1的值:

子電路2部分的C2和C3的測(cè)試也可用此方法。
由此可以看出,該方法不僅能判斷電路中有無(wú)故障,也能對(duì)故障準(zhǔn)確定位。與參考文獻(xiàn)[3]和參考文獻(xiàn)[8]相比,該方法已經(jīng)得出器件的真實(shí)值,不僅可以判斷出器件真實(shí)值大于還是小于標(biāo)稱值,同時(shí)還能實(shí)現(xiàn)無(wú)誤判。此外,本文采用IEEE1149.4標(biāo)準(zhǔn)提供測(cè)試通道,采用虛擬探針技術(shù),實(shí)現(xiàn)了物理探針不能實(shí)現(xiàn)的測(cè)試輸入和數(shù)據(jù)采集。
本文提出的基于IEEE1149.4標(biāo)準(zhǔn)的模擬電路故障診斷方案,是以IEEE1149.4器件提供測(cè)試通道為前提,解決了傳統(tǒng)物理探針無(wú)法實(shí)現(xiàn)測(cè)試輸入和數(shù)據(jù)采集的問(wèn)題;利用SVM實(shí)現(xiàn)模擬電路故障檢測(cè),并且對(duì)故障檢測(cè)實(shí)現(xiàn)了誤判率為零;利用分塊方法對(duì)待測(cè)電路進(jìn)行分塊,并且能準(zhǔn)確定位。本文暫時(shí)只對(duì)待測(cè)電路中單一故障的情況進(jìn)行了討論,下一步將研究對(duì)多故障并存的電路實(shí)現(xiàn)故障診斷。
[1]Li Yanping,Lei Jia.Design of analog test hardware platform based on IEEE 1149.4[C].The Ninth International Conference on Electronic Measurement&Instruments,2009:873-876.
[2]陳圣儉,張勝滿,周燕,等.基于IEEE 1149.4標(biāo)準(zhǔn)的混合電路測(cè)試系統(tǒng)設(shè)計(jì)[J].計(jì)算機(jī)測(cè)量與控制,2009,17(9):1673-1675.
[3]沈東.模擬電路故障診斷的仿真研究[J].計(jì)算機(jī)仿真,2012,29(10):248-251.
[4]龍婷,王厚軍,龍兵.基于SVM的模擬測(cè)試生成的改進(jìn)算法[J].系統(tǒng)工程與電子技術(shù),2011,36(6):1425-1428.
[5]IEEE Computer Society.IEEE.std 1149.4-2011:IEEE Standard for a Mixed Signal Test Bus[S].2011.
[6]鄧乃揚(yáng),田英杰.支持向量機(jī):理論、算法與拓展[M].北京:科學(xué)出版社,2009.
[7]梁因,馬齊爽,徐萍.基于圖論的潛通路分塊分析方法[J].北京航空航天大學(xué)學(xué)報(bào),2014,40(1):115-119.
[8]Guo Ke,Wang Sheling,Song Jiahong.Analog circuit fault diagnosis based on wavelet kernel support vector machine[C]. 2013 International Conference on Information Technology and Applications,2013:395-399.
Study on the fault diagnosis for analog circuits based on IEEE1149.4 standard
Yan Xuelong,Han Junjun
(Department of Electronic Engineering and Automation,Guilin University of Electronic Technology,Guilin 541004,China)
With the increasing integration of the electronic system and complexity of its internal structure,the traditional physical probes have been unable to meet the testing requirements.After introducing the IEEE1149.4 standard and the theoretical basis of support vector machines briefly,a fault diagnosis scheme for analog circuits based on IEEE1149.4 standard is proposed. Fault detection is achieved with the usage of SVM in this method,and fault location is realized by combining the circuit block with the switch matrix in IEEE1149.4 standard to divide the circuit under test.Finally,the feasibility and accuracy of the method is verified with simulation.And the results show that fault location could be achieved,when determining whether there is a fault in the circuit by adopting this method.The result that misjudgment rate is zero can be attained.
IEEE1149.4;support vector machine;fault detection;fault location
TP274
A
1674-7720(2015)13-0087-04
2015-02-03)
顏學(xué)龍(1962-),男,教授,碩士生導(dǎo)師,主要研究方向:可測(cè)性設(shè)計(jì)與故障診斷、測(cè)試信號(hào)處理等。