楊文忠,王東麗,李 環(huán),丁立波,張 合
(1.中國運(yùn)載火箭技術(shù)研究院, 北京 100076; 2.南京理工大學(xué) 智能彈藥技術(shù)國防重點(diǎn)學(xué)科實(shí)驗(yàn)室, 南京 210094)
隨著科技的發(fā)展,現(xiàn)代戰(zhàn)爭(zhēng)對(duì)武器系統(tǒng)的可靠性提出了越來越高的要求,其中武器系統(tǒng)的維護(hù)與檢修尤為重要。對(duì)于引信電路,特別是小口徑空炸引信電路由于其技術(shù)復(fù)雜、電路器件密集度高,很難利用常規(guī)設(shè)備進(jìn)行人工檢修。因此,分析引信電路故障產(chǎn)生機(jī)理,掌握故障規(guī)律,建立配套的智能故障診斷系統(tǒng)是十分必要的。
模擬電路故障診斷技術(shù)自20世紀(jì)60年代開始研究以來,取得了不少成就,也提出了很多方法[1]。在眾多的方法中,如果使用參數(shù)識(shí)別方法,常規(guī)解決方案需要大量的計(jì)算;如果使用故障字典方法,需要大量的故障模擬條件[2-3]。雖然多年來提出的診斷方法較多,但付諸實(shí)踐的方法還較少,未取得突破性的進(jìn)展,模擬電路故障診斷之所以難以取得突破性的進(jìn)展,是由于其輸入輸出都是連續(xù)量、難以作簡(jiǎn)單的量化、故障模型復(fù)雜、元件的參數(shù)具有很大的離散型、以及廣泛存在的非線性及反饋回路等原因,使得模擬電路難以像數(shù)字電路一樣提出系統(tǒng)而有效的診斷方法,這剛好給神經(jīng)網(wǎng)絡(luò)在該領(lǐng)域的發(fā)展提供了鍥機(jī)[4]。人工神經(jīng)網(wǎng)絡(luò)技術(shù)代表了一種新的方法體系,它以強(qiáng)有力的學(xué)習(xí)和并行處理能力為故障診斷提供了全新的理論方法和實(shí)現(xiàn)手段[5]。并且以非線性并行分布處理為主流的神經(jīng)網(wǎng)絡(luò)理論的發(fā)展,為專家系統(tǒng)的研究開辟了嶄新的途徑,即解決了專家系統(tǒng)存在的各種問題,還可以利用神經(jīng)網(wǎng)絡(luò)系統(tǒng)的學(xué)習(xí)功能、聯(lián)想記憶功能、分布式并行信息處理功能解決專家系統(tǒng)中的知識(shí)表示、獲取和并行推理等問題[6]。因此,將神經(jīng)網(wǎng)絡(luò)與專家系統(tǒng)相結(jié)合,發(fā)揮各自的優(yōu)點(diǎn)進(jìn)行引信電路的故障診斷是一種新的途徑,且能有效提升生產(chǎn)和試驗(yàn)中批量引信電路的檢測(cè)效率及檢測(cè)可靠性。
本故障診斷系統(tǒng)的對(duì)象是小口徑計(jì)轉(zhuǎn)數(shù)空炸引信,計(jì)轉(zhuǎn)數(shù)空炸引信是近幾年發(fā)展起來的一種以彈丸的自轉(zhuǎn)周期為計(jì)數(shù)脈沖的新型可編程智能電子引信,相比傳統(tǒng)的定時(shí)空炸引信,計(jì)轉(zhuǎn)數(shù)空炸引信只需使用計(jì)轉(zhuǎn)數(shù)傳感器就能實(shí)現(xiàn)彈丸速度的精確測(cè)量,而無需在炮口安裝測(cè)速裝置,這使得基于計(jì)轉(zhuǎn)數(shù)的空炸引信結(jié)構(gòu)簡(jiǎn)單,性能可靠;目前國內(nèi)外計(jì)轉(zhuǎn)數(shù)技術(shù)研究主要以實(shí)現(xiàn)“精確定距起爆”為目標(biāo),其精確的炸點(diǎn)控制能力使空炸彈藥在殺傷隱蔽有生力量和城市巷戰(zhàn)等場(chǎng)合的作戰(zhàn)效能成倍提高[7-8]。本小口徑計(jì)轉(zhuǎn)數(shù)空炸引信工作原理框圖如圖1。

圖1 小口徑計(jì)轉(zhuǎn)數(shù)空炸引信工作原理框圖
根據(jù)上述引信工作原理結(jié)合原理框圖,本引信電路主要由引信電源模塊、地磁測(cè)試模塊、無線裝定模塊、控制器模塊及發(fā)火電路模塊組成。經(jīng)大量引信電路測(cè)試,發(fā)現(xiàn)本引信電路故障出現(xiàn)位置集中在以上幾個(gè)主要模塊當(dāng)中,且類型較為確定。在電源模塊中的故障主要有儲(chǔ)能電容電壓和穩(wěn)壓系統(tǒng)輸出端電壓異常;地磁測(cè)速模塊中的故障主要有地磁傳感器輸出參數(shù)、運(yùn)算放大器初級(jí)輸出參數(shù)及次級(jí)輸出參數(shù)異常;發(fā)火模塊中主要是單片機(jī)輸出發(fā)火信號(hào)異常、發(fā)火儲(chǔ)能電容充電電壓不足及發(fā)火脈沖幅值異常。
本文故障診斷系統(tǒng)的故障樣本數(shù)據(jù)采集條件是:① 引信電路工作正常;② 穩(wěn)壓模塊輸出故障;③ 地磁傳感器故障;④ 運(yùn)算放大器故障;⑤ 發(fā)火電路故障。在各狀態(tài)下采集5組數(shù)據(jù),并取5組數(shù)據(jù)平均值作為原始樣本數(shù)據(jù),如表1所示。表1中樣本號(hào)1表示引信電路正常工作時(shí)的參數(shù),樣本號(hào)2表示穩(wěn)壓模塊輸出故障時(shí)的電路參數(shù),樣本號(hào)3表示地磁傳感器故障時(shí)的電路參數(shù),樣本號(hào)4表示運(yùn)算放大器故障時(shí)的電路參數(shù),樣本號(hào)5表示發(fā)火電路故障時(shí)的電路參數(shù)。

表1 各狀態(tài)實(shí)驗(yàn)數(shù)據(jù)取平均值后的數(shù)據(jù)
在訓(xùn)練神經(jīng)網(wǎng)絡(luò)前一般需要對(duì)數(shù)據(jù)進(jìn)行預(yù)處理,廣泛采用的預(yù)處理方法是歸一化處理,數(shù)據(jù)歸一化,就是將數(shù)據(jù)映射到[0,1]或[-1,1]區(qū)間或更小的區(qū)間,數(shù)據(jù)歸一化處理的原因一般有以下幾個(gè)方面:
1)輸入數(shù)據(jù)的單位不一樣,有些數(shù)據(jù)的范圍可能特別大,導(dǎo)致的結(jié)果是神經(jīng)網(wǎng)絡(luò)收斂慢,訓(xùn)練時(shí)間長(zhǎng)。
2)數(shù)據(jù)范圍大的輸入在模式分類中的作用可能會(huì)偏大,而數(shù)據(jù)范圍小的輸入作用就可能會(huì)偏小。
3) 由于神經(jīng)網(wǎng)絡(luò)輸出層的激活函數(shù)的值域是有限制的,因此需要將網(wǎng)絡(luò)訓(xùn)練的目標(biāo)數(shù)據(jù)映射到激活函數(shù)的值域。
本文采用一種簡(jiǎn)單而快速的歸一化算法即線性轉(zhuǎn)換算法,在[0,1]區(qū)間內(nèi)線性轉(zhuǎn)換的算法為
Y=(X-Min)/(Max-Min)
(1)
其中: Min為X的最小值;Max為X的最大值;輸入向量為X;歸一化后的輸出向量為Y。上式將數(shù)據(jù)歸一化到[0,1]區(qū)間。
因此,對(duì)表1中的原始樣本數(shù)據(jù)進(jìn)行歸一化處理,處理后的結(jié)果如表2所示。

表2 數(shù)據(jù)歸一化后的故障樣本
BP網(wǎng)絡(luò)是一個(gè)前向多層網(wǎng)絡(luò),它利用誤差反向傳播算法對(duì)網(wǎng)絡(luò)進(jìn)行訓(xùn)練,是一種從輸出到輸入具有反饋連接的神經(jīng)網(wǎng)絡(luò);反向傳播網(wǎng)絡(luò)具有很強(qiáng)的學(xué)習(xí)能力,結(jié)構(gòu)簡(jiǎn)單、可塑性強(qiáng)、且數(shù)學(xué)意義明確、學(xué)習(xí)算法步驟分明,因此在函數(shù)逼近、模式識(shí)別等方面得到了廣泛的應(yīng)用。本文故障診斷系統(tǒng)選用典型三層BP神經(jīng)網(wǎng)絡(luò),其網(wǎng)絡(luò)模型如圖2。

圖2 三層BP網(wǎng)絡(luò)模型
綜合以上采集的數(shù)據(jù),該BP網(wǎng)絡(luò)有10個(gè)輸入層神經(jīng)元,5個(gè)輸出神經(jīng)元即診斷系統(tǒng)有5個(gè)故障模式;對(duì)于隱含層的選擇較為復(fù)雜,隱含層神經(jīng)元過少,網(wǎng)絡(luò)不能識(shí)別之前未學(xué)習(xí)的樣本,魯棒性差;隱含層神經(jīng)元過多學(xué)習(xí)時(shí)間長(zhǎng),診斷誤差很難達(dá)到最小,因此,需要選擇較為合適的隱含層神經(jīng)元數(shù)。按照文獻(xiàn) 介紹,隱含層神經(jīng)元數(shù)目的選擇可按照式(2)計(jì)算:
(2)
式中:n1為輸入層神經(jīng)元數(shù);n2為隱含層神經(jīng)元數(shù);n3為輸出層神經(jīng)元數(shù);將n1=10,n3=5代入式(2)中,可計(jì)算出隱含層神經(jīng)元數(shù)n2=13。
BP網(wǎng)絡(luò)的學(xué)習(xí)過程包括正向傳播和反向傳播。當(dāng)正向傳播時(shí),輸入的樣本信息從輸入層經(jīng)過隱含層單元一層一層進(jìn)行處理,通過所有的隱含層之后,則傳向輸出層,在逐層處理的過程中,每一層神經(jīng)元的狀態(tài)只影響下一層神經(jīng)元的狀態(tài),在輸出層把現(xiàn)行輸出和期望輸出進(jìn)行比較,如果在輸出層的誤差大于期望誤差,則信號(hào)進(jìn)行反向傳播,將誤差信號(hào)按原來正向傳播的通路反向傳回,并對(duì)每個(gè)隱含層的各個(gè)神經(jīng)元的權(quán)系數(shù)進(jìn)行修改,這種過程不斷迭代,最后使得信號(hào)誤差達(dá)到允許的誤差范圍之內(nèi)。因此BP算法的實(shí)質(zhì)是求取誤差函數(shù)的最小值問題,這種算法采用非線性規(guī)劃中的最速下降方法,按誤差函數(shù)的負(fù)梯度方向修改權(quán)系數(shù)。
結(jié)合本空炸引信電路故障模式,其故障診斷過程分為以下幾個(gè)步驟:
1)采集所需樣本數(shù)據(jù),將訓(xùn)練樣本做歸一化處理;
2)以儲(chǔ)能電容電壓、穩(wěn)壓模塊輸出、地磁信號(hào)幅值、地磁信號(hào)周期、運(yùn)放一級(jí)輸出、運(yùn)放二級(jí)輸出、發(fā)火信號(hào)電平、碰炸發(fā)火信號(hào)負(fù)脈沖幅值、空炸發(fā)火信號(hào)負(fù)脈沖幅值、發(fā)火電容電壓這十個(gè)歸一化處理后的參數(shù)作為樣本輸入,以診斷結(jié)果二進(jìn)制編碼作為樣本輸出;
3)通過對(duì)樣本的學(xué)習(xí)建立診斷模型;
4)反復(fù)訓(xùn)練網(wǎng)絡(luò)得到期望的誤差;
5)對(duì)未知故障數(shù)據(jù)進(jìn)行診斷。
利用Matlab神經(jīng)網(wǎng)絡(luò)工具箱進(jìn)行神經(jīng)網(wǎng)絡(luò)的訓(xùn)練及性能驗(yàn)證,神經(jīng)網(wǎng)絡(luò)的輸入就是特征量的提取,因此采用上面采集的經(jīng)過歸一化處理的數(shù)據(jù),網(wǎng)絡(luò)的輸入向量范圍為[0,1],以矩陣形式保存后輸入;神經(jīng)網(wǎng)絡(luò)的輸出即為本引信電路的6種故障模式,采用如下二進(jìn)制形式來表示輸出:
引信電路正常:(1,0,0,0,0)
地磁傳感器故障:(0,1,0,0,0)
運(yùn)算放大器故障:(0,0,1,0,0)
穩(wěn)壓模塊故障:(0,0,0,1,0)
發(fā)火電路故障:(0,0,0,0,1)
隱含層神經(jīng)元數(shù)目的選擇在上面已經(jīng)介紹了;傳遞函數(shù)是BP網(wǎng)絡(luò)的重要組成部分,傳遞函數(shù)必須是連續(xù)可微的,因此,隱含層神經(jīng)元的傳輸函數(shù)采用S型雙曲正切函數(shù)tansig,輸出層神經(jīng)元傳遞函數(shù)采用S型對(duì)數(shù)函數(shù)logsig,因?yàn)閘ogsig函數(shù)返回值位于區(qū)[0,1]中,正好滿足網(wǎng)絡(luò)的輸出要求。
網(wǎng)絡(luò)訓(xùn)練函數(shù)采用traingdx函數(shù),該函數(shù)是自適應(yīng)調(diào)整學(xué)習(xí)速率附加動(dòng)量因子梯度下降反向傳播算法訓(xùn)練函數(shù),網(wǎng)絡(luò)訓(xùn)練過程是一個(gè)不斷修改權(quán)值和閾值的過程,通過調(diào)整,使網(wǎng)絡(luò)的輸出誤差達(dá)到最小[9-10]。
其他相關(guān)網(wǎng)絡(luò)配置參數(shù)如表3所示。

表3 網(wǎng)絡(luò)配置參數(shù)
綜合以上數(shù)據(jù),神經(jīng)網(wǎng)絡(luò)的樣本輸入P和目標(biāo)輸出T分別為:
P1=[1.001.000.990.991.000.99
0.950.960.980.98];
P2=[1.000.990.001.000.680.54
0.960.970.970.99];
P3=[1.000.990.980.970.850.01
1.000.920.970.99];
P4=[1.000.000.990.000.000.00
0.971.001.001.00];
P5=[1.001.001.000.990.991.00
0.000.000.000.00];
T1=[10000]; T2=[01000];
T3=[00100]; T4=[00010];
T5=[00001];
P=[P1;P2;P3;P4;P5];
T=[T1;T2;T3;T4;T5];
創(chuàng)建BP神經(jīng)網(wǎng)絡(luò):
BPnet=newff(minmax(P),[13,5],{′logsig′,′logsig′},′traingdx′,′learngdm′);
net.trainParam.epochs=2000;
net.trainParam.goal=0.001;
net.trainParam.show=10;
net.trainParam.lr=0.05;
BPnet=train(BPnet,P,T);
經(jīng)過網(wǎng)絡(luò)循環(huán)訓(xùn)練279次后,網(wǎng)絡(luò)性能達(dá)到要求,其誤差曲線如圖3所示。

圖3 BP網(wǎng)絡(luò)訓(xùn)練誤差曲線
網(wǎng)絡(luò)訓(xùn)練成功后,專家系統(tǒng)就完成了知識(shí)獲取的過程,利用學(xué)習(xí)樣本對(duì)神經(jīng)網(wǎng)絡(luò)的訓(xùn)練結(jié)果進(jìn)行驗(yàn)證,選取穩(wěn)壓模塊故障樣本、地磁傳感器故障樣本及運(yùn)算放大器故障樣本進(jìn)行驗(yàn)證,其樣本數(shù)據(jù)(1號(hào)為穩(wěn)壓模塊故障、2號(hào)為地磁傳感器故障、3號(hào)為運(yùn)算放大器故障)和歸一化數(shù)據(jù)結(jié)果分別如表4和表5所示。

表4 樣本數(shù)據(jù)

表5 歸一化數(shù)據(jù)
1) 用1號(hào)樣本驗(yàn)證網(wǎng)絡(luò):
Pnew1=[1.0 0.0 0.95 0.00 0.00 0.00 0.98 0.70 1.00 0.99];
Anewn1=sim(bpnet,Pnew1);
display(Anewn1);
驗(yàn)證結(jié)果:
Anewn1=[0.0003 0.0012 0.0561 0.7798 0.1937];
2) 用2號(hào)樣本驗(yàn)證網(wǎng)絡(luò):
Pnew2=[1.0 1.0 0.00 0.99 0.62 0.60 0.94 1.00 0.62 0.99];
Anewn2=sim(bpnet,Pnew2);
display(Anewn2);
驗(yàn)證結(jié)果:
Anewn2=[0.010 5 0.996 2 0.000 4 0.000 4 0.000 0];
3) 用3號(hào)樣本驗(yàn)證網(wǎng)絡(luò):
Pnew3=[0.0 1.0 1.00 0.99 1.000.00 1.00 0.97 0.92 0.99];
Anewn3=sim(bpnet,Pnew1);
display(Anewn3);
驗(yàn)證結(jié)果:
Anewn3=[0.063 7 0.000 0 0.798 3 0.005 0 0.039 4];
對(duì)以上3個(gè)輸入樣本結(jié)果進(jìn)行整理后結(jié)果如表6所示,其對(duì)應(yīng)的神經(jīng)網(wǎng)絡(luò)期望輸出如表7所示。按照歐式范數(shù)理論,3個(gè)樣本的診斷誤差分別為0.220 2、0.003 8、0.201 7,誤差都很小,將驗(yàn)證結(jié)果與神經(jīng)網(wǎng)絡(luò)期望輸出進(jìn)行對(duì)比,該神經(jīng)網(wǎng)絡(luò)的故障判斷率為100%;因此,該神經(jīng)網(wǎng)絡(luò)可以滿足本引信電路的故障診斷要求。

表6 驗(yàn)證結(jié)果

表7 神經(jīng)網(wǎng)絡(luò)期望輸出
該神經(jīng)網(wǎng)絡(luò)的輸出結(jié)果是二進(jìn)制的數(shù)值形式,但測(cè)試人員通過測(cè)試系統(tǒng)人機(jī)交互界面看到的結(jié)果并不是二進(jìn)制數(shù)值形式;該神經(jīng)網(wǎng)絡(luò)輸出結(jié)果的數(shù)值轉(zhuǎn)化成知識(shí)的規(guī)則是:輸出結(jié)果10000表示無故障即引信電路正常;輸出結(jié)果是01000表示地磁傳感器出現(xiàn)故障;輸出結(jié)果是00100表示運(yùn)算放大器出現(xiàn)故障;輸出結(jié)果是00010表示穩(wěn)壓模塊出現(xiàn)故障;輸出結(jié)果是00001表示發(fā)火電路出現(xiàn)故障。
利用神經(jīng)網(wǎng)絡(luò)專家系統(tǒng)實(shí)現(xiàn)了引信電路的故障診斷,顯著提高了批量引信電路的測(cè)試效率及故障診斷可靠性。該方法通過建立三層神經(jīng)網(wǎng)絡(luò)診斷模型,結(jié)合了神經(jīng)網(wǎng)絡(luò)和專家系統(tǒng)各自的優(yōu)點(diǎn),利用Matlab選擇合適參數(shù)進(jìn)行網(wǎng)絡(luò)訓(xùn)練,驗(yàn)證結(jié)果表明診斷結(jié)果可靠有效。該方法配合自動(dòng)測(cè)試系統(tǒng)應(yīng)用時(shí),能達(dá)到更好的效果。