(1.上??茖W(xué)技術(shù)職業(yè)學(xué)院 機(jī)電工程系,上海 201800; 2.北京航空航天大學(xué) 可靠性與系統(tǒng)工程學(xué)院,北京 100191;3.防災(zāi)科技學(xué)院 后勤管理處,河北 廊坊 065201)
隨著現(xiàn)代電子產(chǎn)品集成化、小型化、多樣化的發(fā)展,其結(jié)構(gòu)越來越復(fù)雜,同時(shí)也帶來了故障測試與故障診斷等問題,故障診斷技術(shù)受到了廣泛的關(guān)注[1]。
故障診斷技術(shù)的主要目的是檢測影響系統(tǒng)安全性能的故障,并準(zhǔn)確隔離故障。目前電子設(shè)備故障診斷方法主要包括基于智能算法的故障診斷方法以及基于相關(guān)性矩陣推理的故障診斷方法。
在基于智能算法的故障診斷方法方面,張瑞[2]等人將BP神經(jīng)網(wǎng)絡(luò)模型應(yīng)用于某型地空導(dǎo)彈靜變電源的故障診斷中。為解決神經(jīng)網(wǎng)絡(luò)訓(xùn)練需要大量的樣本、易陷入局部最優(yōu)、收斂速度慢等缺點(diǎn),張松蘭[3]等人提出了改進(jìn)模糊聚類(IFC)和支持向量機(jī)(SVM)相結(jié)合的模擬電路故障診斷方法。針對(duì)現(xiàn)有地鐵車門故障診斷方法存在的診斷速度慢以及大量故障檢修數(shù)據(jù)未得到合理利用等問題,陳蘇雨[4]等人提出了一種基于信息增益率的隨機(jī)森林故障診斷方法。
基于D矩陣的故障診斷方法屬于測前仿真故障診斷方法,作為目前較為流行的故障診斷方法,其基本思想是根據(jù)預(yù)先的實(shí)際經(jīng)驗(yàn)或?qū)嶋H需求確定產(chǎn)品的潛在故障集合,然后通過計(jì)算機(jī)仿真或?qū)嵨锏墓收献⑷胧侄危笕‘a(chǎn)品在各個(gè)狀態(tài)下的響應(yīng)[1],用0/1值表示測試與故障之間的關(guān)系,構(gòu)建故障與測試的一階相關(guān)性矩陣,其中0表示測試未檢測到故障,1表示測試檢測到了故障。在診斷推理的過程中,通過BIT給出的0-1判定結(jié)果,結(jié)合預(yù)先構(gòu)建好的相關(guān)性矩陣進(jìn)行故障隔離推理,確定產(chǎn)品的狀態(tài)。
目前基于D矩陣的故障診斷方法已得到了廣泛的應(yīng)用。田恒[5]等人在D矩陣的基礎(chǔ)上提出了一種基于單故障化的多故障診斷與維修新策略。為了提高D矩陣故障診斷的效率,在繼承D矩陣傳統(tǒng)處理算法優(yōu)點(diǎn)的基礎(chǔ)上,引入局部信息熵算式,進(jìn)一步提出一種信息熵測試性D矩陣故障診斷新算法;林志文[6]等人利用D矩陣分別完成對(duì)艦船電子裝備的測試性分析評(píng)估、診斷測試序列生成,實(shí)現(xiàn)了某艦船電子裝備綜合診斷。
此外,為進(jìn)一步擴(kuò)展D矩陣的應(yīng)用,傳統(tǒng)D矩陣與智能算法的結(jié)合運(yùn)用在故障診斷上也取得了很好的效果。鄭博愷[7]等人將支持向量機(jī)與D矩陣結(jié)合,提出了一種基于故障測試相關(guān)矩陣與支持向量機(jī)的模擬電路軟故障診斷方法;石君友[8]等人結(jié)合D矩陣與模糊理論,通過構(gòu)建增強(qiáng)推理算子與模糊相關(guān)性矩陣實(shí)現(xiàn)故障診斷。
然而,由于傳統(tǒng)的D矩陣用邏輯0/1表示故障與測試的相關(guān)關(guān)系,表示方式簡單,簡化了故障推理,而從另外一個(gè)角度考慮,其簡單的0/1關(guān)系僅僅表示了故障與測試之間有無關(guān)聯(lián),而無法進(jìn)一步描述故障與測試之間關(guān)聯(lián)的程度,且無法充分利用和挖掘測試與故障間的相關(guān)性,因此基于傳統(tǒng)D矩陣的診斷推理方法在故障隔離能力將受到限制?;谝陨峡紤],本文借鑒測前仿真故障診斷方法的基本思想,為充分利用測試的信息,在D矩陣的基礎(chǔ)上提出了擴(kuò)展D矩陣的概念,并給出了構(gòu)建方法,將擴(kuò)展D矩陣與決策樹算法結(jié)合,建立了決策樹模型,實(shí)現(xiàn)了故障檢測與隔離,并以電源模塊為案例進(jìn)行了應(yīng)用,結(jié)果表明該方法相比于傳統(tǒng)D矩陣方法具有更高的故障隔離能力。
傳統(tǒng)的D矩陣的故障診斷思想是用0/1值表示測試與故障之間的關(guān)系,當(dāng)矩陣中元素為1時(shí),表示該測試可以檢測到該故障,0表示對(duì)應(yīng)的測試無法檢測到該故障,是對(duì)測試與故障關(guān)系的定性描述。傳統(tǒng)的基于D矩陣的故障診斷方法主要包括相關(guān)性模型的建立、測試性分析獲取D矩陣、診斷推理三個(gè)部分[9]。
在傳統(tǒng)的D矩陣中用簡單的0/1邏輯量表示測試與故障之間的關(guān)系,雖然減少了診斷推理時(shí)的計(jì)算量,但將其關(guān)系簡單的抽象為能否檢測,顯然無法充分利用測試中的信息量,這樣將導(dǎo)致診斷推理的結(jié)果不夠精確。如一個(gè)5 V的電壓測試,若監(jiān)測數(shù)據(jù)為2.5 V或0 V,在D矩陣中對(duì)應(yīng)的元素值都是1,表示該故障可被檢測到,這樣處理將無法反映監(jiān)測數(shù)據(jù)的具體變化,無法充分利用監(jiān)測數(shù)據(jù)的信息,從而導(dǎo)致基于該矩陣的診斷推理結(jié)果不夠精確。
考慮到傳統(tǒng)D矩陣的上述缺陷,本文提出了一種擴(kuò)展D矩陣的構(gòu)建方法。擴(kuò)展相關(guān)性矩陣不再是用簡單的0/1描述故障與測試的關(guān)系,而是用多值描述故障與測試之間的關(guān)系。測試與故障的擴(kuò)展D矩陣構(gòu)建流程主要包括故障集合的確定、測試集合確定、仿真/實(shí)物故障注入、數(shù)據(jù)的野值剔除、數(shù)據(jù)合并等。
(1) 故障集合的確定?;诠收夏J接绊懞臀:π苑治?FMECA)工作,梳理出產(chǎn)品的所有潛在故障集合,根據(jù)產(chǎn)品故障診斷的要求,確定產(chǎn)品所需診斷與隔離的層次,如按照航空產(chǎn)品劃分,在故障模式影響和危害性分析中,系統(tǒng)的結(jié)構(gòu)可以自上而下劃分為系統(tǒng)級(jí)、外場可更換單元(LRU)級(jí)、車間可更換單元(SRU)級(jí)、電路板級(jí)、功能子電路級(jí)和元器件級(jí),相應(yīng)的故障模式也存在系統(tǒng)級(jí)、LRU級(jí)、SRU級(jí)、電路板級(jí)、功能子電路級(jí)和元器件級(jí)。根據(jù)診斷的層次要求,對(duì)所有的故障集合進(jìn)行故障合并分析,從而獲得所需的潛在故障集合。
(2) 測試集合的確定。對(duì)產(chǎn)品的設(shè)計(jì)方案進(jìn)行分析,梳理出產(chǎn)品現(xiàn)有的測試情況,根據(jù)故障診斷需求確定需實(shí)現(xiàn)的最終測試集合。
(3) 仿真/實(shí)物故障注入。故障注入的方式有兩種,一種是仿真故障注入,另一種是基于實(shí)物的故障注入,前者是基于產(chǎn)品設(shè)計(jì)基礎(chǔ)上,通過仿真軟件構(gòu)建產(chǎn)品的仿真模型,模擬產(chǎn)品的各個(gè)故障狀態(tài),計(jì)算產(chǎn)品的響應(yīng);后者是基于產(chǎn)品設(shè)計(jì),制作具有故障注入接口的樣件產(chǎn)品,利用各種故障注入的技術(shù),借助故障注入設(shè)備實(shí)現(xiàn)對(duì)實(shí)物的故障注入。
(4) 野值剔除。獲取初始擴(kuò)展D矩陣,數(shù)據(jù)的野值剔除方法主要是基于萊特準(zhǔn)則判據(jù)實(shí)施的,分別針對(duì)每一個(gè)測試點(diǎn)每個(gè)狀態(tài)下獲取的測試數(shù)據(jù)按照下式求取均值和方差。
(1)
(2)
如果|xi-μ|>3σ,則判斷xi為奇異點(diǎn),剔除。具體流程如下:
① 通過計(jì)算機(jī)仿真或故障注入手段獲取第j個(gè)狀態(tài)在第i個(gè)測試下的數(shù)據(jù)集;
② 計(jì)算上述數(shù)據(jù)集的均值和方差;
③ 計(jì)算每一個(gè)數(shù)據(jù)的殘差,并與3倍的標(biāo)準(zhǔn)差進(jìn)行比較,利用萊特準(zhǔn)則進(jìn)行野值判別;
④ 若判定為野值,則用前一個(gè)樣本點(diǎn)替換該樣本;
⑤ 按照上述的判定準(zhǔn)則,循環(huán)多次,直到數(shù)據(jù)集中無野值點(diǎn)為止;
⑥ 計(jì)算無野值后數(shù)據(jù)的均值,將其作為該狀態(tài)與測試之間的關(guān)系值,放入初始擴(kuò)展相關(guān)性矩陣中;
⑦ 重復(fù)上述步驟,遍歷所有狀態(tài),得到初始擴(kuò)展相關(guān)性矩陣。
(5) 數(shù)據(jù)合并,獲取最終擴(kuò)展相關(guān)性矩陣。在初始擴(kuò)展相關(guān)性矩陣中,行表示狀態(tài),列表示測試,每一個(gè)狀態(tài)都有特定的測試值與之對(duì)應(yīng)。然而,在實(shí)際的初始擴(kuò)展相關(guān)性矩陣中很可能會(huì)出現(xiàn)下述情況:同一個(gè)測試點(diǎn)在兩個(gè)狀態(tài)下,其數(shù)值不相等,但數(shù)值相差極小,在實(shí)際情況下,由于其數(shù)值太接近,用該測試點(diǎn)是無法對(duì)這兩種狀態(tài)進(jìn)行區(qū)分的,而在用相關(guān)性矩陣進(jìn)行故障推理時(shí),會(huì)認(rèn)為上述兩種狀態(tài)是可以通過該測試點(diǎn)進(jìn)行隔離的。為避免上述情況發(fā)生,本文提出了一種數(shù)據(jù)合并的方法,借鑒目前模糊組劃分的方法[10],在電壓特征方法中,認(rèn)為當(dāng)兩個(gè)故障產(chǎn)生的電壓差的絕對(duì)值小于 0.7 V時(shí)就認(rèn)為這兩個(gè)故障屬于同一個(gè)模糊組[11]。經(jīng)過上一步野值剔除后,每一個(gè)狀態(tài)在不同的測試下都對(duì)應(yīng)了一個(gè)數(shù)值,第i個(gè)狀態(tài)第j個(gè)測試點(diǎn)的數(shù)值為dij,針對(duì)每一個(gè)測試點(diǎn),對(duì)各個(gè)狀態(tài)下的數(shù)據(jù)進(jìn)行合并,具體流程如下:
① 計(jì)算初始擴(kuò)展相關(guān)性矩陣中每一列的數(shù)值之間的差值,將差值小于0.7的數(shù)據(jù)劃分到同一組;
② 計(jì)算同一組內(nèi)數(shù)據(jù)的均值,作為組內(nèi)元素的最終取值;
③ 通過上述方法,遍歷所有測試,從而獲得最終的擴(kuò)展相關(guān)性矩陣。
這樣,對(duì)于同一個(gè)測試點(diǎn),它的取值不再是0和1。同一測試點(diǎn)可以有多種取值,每一組用一個(gè)數(shù)值進(jìn)行表示,有多少組就有多少種取值,值的大小用同一組內(nèi)數(shù)據(jù)的均值描述。
決策樹是一種基本的分類與回歸方法。它最終生成的是一個(gè)類似于樹的二分模型,它對(duì)不同的特征實(shí)例的有標(biāo)記數(shù)據(jù)進(jìn)行訓(xùn)練,構(gòu)建決策樹,最終實(shí)現(xiàn)對(duì)數(shù)據(jù)的分類過程,可以認(rèn)為是if-then規(guī)則,也可以認(rèn)為是特征向量與類別之間的一個(gè)條件概率分布。決策樹模型可讀性強(qiáng)、分類速度快。可以通過有標(biāo)記的數(shù)據(jù)進(jìn)行學(xué)習(xí),以損失函數(shù)最小化的原則構(gòu)建決策樹模型。預(yù)測時(shí),決策樹模型是根據(jù)對(duì)新數(shù)據(jù)的分類實(shí)現(xiàn)的。決策樹的學(xué)習(xí)主要包括下面3個(gè)步驟:對(duì)模型的特征選擇、生成決策樹、修剪。
決策樹模型是以樹形結(jié)構(gòu)實(shí)現(xiàn)對(duì)象的分類。多個(gè)節(jié)點(diǎn)和有向邊一塊構(gòu)建成決策樹,節(jié)點(diǎn)有內(nèi)部節(jié)點(diǎn)和葉節(jié)點(diǎn)兩種類型。內(nèi)部節(jié)點(diǎn)表示特征屬性,葉節(jié)點(diǎn)表示類標(biāo)簽。
決策樹的生成算法有多種,主要包括ID3算法和c4.5算法,二者最主要的差別是在對(duì)特征選取的原則上,ID3是選擇信息增益最大的特征作為結(jié)點(diǎn)的特征,c4.5是用信息增益比對(duì)特征進(jìn)行優(yōu)選。信息增益可用數(shù)據(jù)集合的信息熵與給定特征下數(shù)據(jù)集的條件熵表示,具體算法如下:假設(shè)D為訓(xùn)練數(shù)據(jù)集,|D|表示樣本個(gè)數(shù),有K個(gè)類Ck,|Ck|表示屬于Ck的樣本個(gè)數(shù),假設(shè)特征A有n個(gè)不同取值,特征A將數(shù)據(jù)集D劃分為n個(gè)子集D1,D2,…,Dn,|Di|為Di的樣本個(gè)數(shù),子集Di中屬于類Ck的樣本集合為Dik,|Dik|為Dik的樣本個(gè)數(shù)。
① 計(jì)算數(shù)據(jù)集的信息熵H(D)。
(3)
② 計(jì)算特征A對(duì)數(shù)據(jù)集的條件熵H(D|A)。
(4)
③ 計(jì)算信息增益。
g(D,A)=H(D)-H(D|A)
(5)
對(duì)于決策樹學(xué)習(xí),假設(shè)給定訓(xùn)練數(shù)據(jù)樣本集:
DATA={(x1,y1),(x2,y2),…,(xn,yn)}
(6)
決策樹學(xué)習(xí)是一個(gè)遞歸的選擇最優(yōu)特征的過程,根據(jù)這些特征對(duì)訓(xùn)練數(shù)據(jù)進(jìn)行分割,歸納出一組最好的分類規(guī)則,使得數(shù)據(jù)分類達(dá)到最好的效果。其基本步驟如下:
① 創(chuàng)建根節(jié)點(diǎn),將所有數(shù)據(jù)放在根節(jié)點(diǎn);
② 選擇最優(yōu)特征,將數(shù)據(jù)分割成子集;
③ 如果這些子集已經(jīng)能夠被基本正確分類,則將這些子集分到所對(duì)應(yīng)的節(jié)點(diǎn)上;
④ 如果還有子集不能被基本正確分類,則對(duì)這些子集選擇最優(yōu)的特征,繼續(xù)進(jìn)行分割;
⑤ 依照上述方法遞歸進(jìn)行,直到所有數(shù)據(jù)子集被基本正確分類為止。
傳統(tǒng)的基于D矩陣的故障診斷方法是將D矩陣的一行作為一條診斷知識(shí),將測試序列與D矩陣的行進(jìn)行比對(duì),找到與其匹配的行,該行所對(duì)應(yīng)的狀態(tài),即認(rèn)定為系統(tǒng)的當(dāng)前狀態(tài)。該方法中測試的比對(duì)是并行的。基于決策樹與擴(kuò)展D矩陣故障診斷方法,是在擴(kuò)展D矩陣的基礎(chǔ)上進(jìn)行構(gòu)建決策樹模型,通過決策樹特征優(yōu)選的方法先選出第一步需要進(jìn)行的測試,然后在剩余的測試中以同樣的方法進(jìn)行測試優(yōu)選,從而獲得一條最優(yōu)的診斷路徑,通過一步一步的測試,得到最終的診斷結(jié)果。其基本步驟如下:
① 計(jì)算擴(kuò)展D矩陣中數(shù)據(jù)集的經(jīng)驗(yàn)熵;
② 計(jì)算各個(gè)測試對(duì)數(shù)據(jù)集的信息增益;
③ 比較各個(gè)測試的信息增益值,取信息增益最大的測試作為故障診斷推理的第一步測試;
④ 根據(jù)上述方法選擇第②步測試,直到所有的故障數(shù)據(jù)被基本正確分類為止。
源模塊故障診斷方法應(yīng)用
案例應(yīng)用針對(duì)多路電壓輸出的電源模塊展開,電源模塊主要包括18 V、12 V、5 V、3.3 V、2.5 V、1.8 V和0.9 V等7個(gè)電壓處理子電路。電源模塊的開路故障的注入主要是依靠短路帽實(shí)現(xiàn),參數(shù)漂移故障通過探針式故障注入器實(shí)現(xiàn),共注入9個(gè)故障,設(shè)置了5個(gè)測試點(diǎn),在每個(gè)狀態(tài)下各采集了50個(gè)樣本數(shù)據(jù),共500個(gè)樣本數(shù)據(jù),根據(jù)野值剔除方法及矩陣構(gòu)建方法,可獲得初始擴(kuò)展相關(guān)性矩陣如表1所示,行表示狀態(tài),列表示測試。
根據(jù)上述擴(kuò)展相關(guān)性矩陣的構(gòu)建方法,對(duì)上述矩陣進(jìn)行數(shù)據(jù)合并獲得最終的擴(kuò)展相關(guān)性矩陣如表2所示。
表1 初始擴(kuò)展相關(guān)性矩陣
表2 擴(kuò)展相關(guān)性矩陣
按照傳統(tǒng)D矩陣方法,構(gòu)建的D矩陣如表3所示,可以看出LM2596-1第一管腳開路故障與C1-3參數(shù)漂移故障在傳統(tǒng)的D矩陣中具有相同的行(0,0,1,1,1),R1-1參數(shù)漂移故障與RJ1-1開路故障也具有相同的行(0,1,0,0,0),因此上述兩對(duì)故障無法通過傳統(tǒng)D矩陣的方法進(jìn)行隔離。
表3 傳統(tǒng)相關(guān)性矩陣
而在擴(kuò)展D矩陣中,LM2596-1第一管腳開路故障與C1-3參數(shù)漂移故障可用T3、T4、T5中的任意一個(gè)測試隔離開,R1-1參數(shù)漂移故障與RJ1-1開路故障可用T2進(jìn)行隔離。
按照第2節(jié)構(gòu)建決策樹的方法構(gòu)建決策樹如圖1所示。
圖1 電源模塊故障診斷決策樹模型
由圖1決策樹模型可看出,通過5個(gè)測試點(diǎn),可將上述9個(gè)故障模式準(zhǔn)確的隔離,故障隔離率達(dá)到了100%,而基于傳統(tǒng)的D矩陣方式,將會(huì)出現(xiàn)以下模糊組(LM2596-1第一管腳開路故障,C1-3參數(shù)漂移故障)/(CTS1-2參數(shù)漂移故障,LM7818第一管腳開路故障)。兩種故障隔離方法所得到的故障隔離率指標(biāo)對(duì)比如表4所示。
表4 指標(biāo)對(duì)比
相比傳統(tǒng)的D矩陣,本文提出的基于決策樹與擴(kuò)展D矩陣的故障隔離方法,不再用簡單的0/1表示故障與測試的相關(guān)性關(guān)系,而是利用離散值表示故障與測試的相關(guān)性關(guān)系,使得各個(gè)測試點(diǎn)的測試數(shù)據(jù)信息得到充分的利用,提高了故障隔離水平。