本發(fā)明涉及模擬電路技術(shù)領(lǐng)域,特別是一種基于lmd(localmeandecomposition,局部均值分解)近似熵和svm(supportvectormachine,支持向量機(jī))的模擬電路故障診斷方法。
背景技術(shù):
隨著全球信息時(shí)代的來臨,電子設(shè)備廣泛應(yīng)用于國防科研、工業(yè)生產(chǎn)和日常生活等各個(gè)領(lǐng)域。由于電子設(shè)備的運(yùn)行環(huán)境復(fù)雜多樣,為了保證系統(tǒng)的正常運(yùn)行,對(duì)其可靠性指標(biāo)有嚴(yán)格的要求,特別在航空航天、軍事領(lǐng)域和醫(yī)療部門,對(duì)電子設(shè)備可靠性指標(biāo)的要求更全面、更苛刻。為了進(jìn)一步提高電子設(shè)備的可靠性,減少維修所耗費(fèi)的精力和財(cái)力,促使人們研究新的技術(shù)和方法,通過測(cè)試手段來對(duì)設(shè)備的故障進(jìn)行診斷和辨識(shí),以便在故障發(fā)生后,可及時(shí)地對(duì)故障部件進(jìn)行檢修和更換,減少損失。由于電子工業(yè)的迅速發(fā)展使電子設(shè)備的復(fù)雜性越來越高,數(shù)字電路占電路系統(tǒng)的絕大部分,但在一個(gè)完整的系統(tǒng)中,模擬器件和電路不可缺少。據(jù)統(tǒng)計(jì),盡管在電子設(shè)備中超過80%為數(shù)字電路,但80%以上的故障都來自模擬電路,因此模擬電路的可靠性對(duì)整個(gè)電子設(shè)備的可靠性至關(guān)重要。研究模擬電路故障診斷方法和技術(shù),在電路運(yùn)行中如果發(fā)生故障時(shí)能夠準(zhǔn)確而及時(shí)地找出故障的原因或位置,對(duì)實(shí)現(xiàn)電子系統(tǒng)的自動(dòng)診斷和提高電子設(shè)備的可靠性有重要的意義和價(jià)值。
技術(shù)實(shí)現(xiàn)要素:
針對(duì)上述缺陷,本發(fā)明提出一種基于lmd近似熵和svm的模擬電路故障診斷方法,以更快更準(zhǔn)確的識(shí)別模擬電路的故障。
基于lmd近似熵和svm的模擬電路故障診斷方法,包括以下步驟:
a1、用軟件模擬診斷對(duì)象的故障;
a2、對(duì)每種故障利用蒙特卡洛分析法進(jìn)行分析,把電路故障信號(hào)分解為一系列pf分量,選取前三個(gè)pf分量,求它們的近似熵,作為故障特征向量;
a3、在對(duì)故障進(jìn)行分類時(shí)選用svm,尋找最優(yōu)的svm參數(shù),前半部分特征向量用于訓(xùn)練,后半部分特征向量用于驗(yàn)證分類的正確性;
a4、將在a2中所述故障特征向量放在a3中得到的用于訓(xùn)練的特征向量進(jìn)行驗(yàn)證,得出分類的正確率以及分類的時(shí)間。
a1中的所述軟件是orcad或pspice。
a2中利用lmd算法得到pf分量,具體包括以下步驟:
a1-1、計(jì)算信號(hào)的局部極值點(diǎn)集合,再計(jì)算任意2個(gè)相鄰極值點(diǎn)的平均值;
a1-2、根據(jù)局部極值點(diǎn)集合確定包絡(luò)估計(jì)值集合;
a1-3、利用計(jì)算所得的局部均值點(diǎn)集合和包絡(luò)估計(jì)值集合將集合中所有相鄰的2個(gè)極值,分別用折線相連,進(jìn)行平滑處理,得到局部均值函數(shù)和包絡(luò)估計(jì)函數(shù);
a1-4、將局部均值函數(shù)從原始信號(hào)中分離出去;分離后的信號(hào)進(jìn)行解調(diào)得到純調(diào)頻信號(hào);
a1-5、把a(bǔ)1-1~a1-4迭代過程中產(chǎn)生的包絡(luò)估計(jì)函數(shù)相乘得到包絡(luò)信號(hào);
a1-6、將包絡(luò)信號(hào)和純調(diào)頻信號(hào)相乘,得到原始信號(hào)的首個(gè)pf分量;
a1-7、從信號(hào)中分離出來的pf,對(duì)應(yīng)得到一個(gè)新的信號(hào),將新信號(hào)作為原始信號(hào)重復(fù)a1-1~a1-6,直到誤差△=0.001或殘余信號(hào)為單調(diào)函數(shù),停止迭代。
a2中所述選取前三個(gè)pf分量,求它們的近似熵,作為故障的特征向量的具體過程為:
a2-1、設(shè)給定長(zhǎng)度為n的一維時(shí)間序列{u(i),i=1,2...n},按式xi={u(i),u(i+1)...u(i+m-1)}重構(gòu)m維向量xi,i=1,2,....n,n=n+m-1;
a2-2、計(jì)算向量xi與其他向量xj(j=1,2,...n,n=n+m-1)之間的距離
d=max|u(i+j)-u(j+k)|k=0,1,2....,m-1;
a2-3、給定一個(gè)閥值r,對(duì)每個(gè)向量xi統(tǒng)計(jì)d≤r的數(shù)目以及此數(shù)目與距離總數(shù)(n-m)的比值,記為
a2-4、對(duì)
a2-5、將m加1,重復(fù)a2-1~a2-4,求得
a2-6、由φm和φm+1得近似熵
a3中訓(xùn)練svm,尋找最優(yōu)的svm參數(shù)采用混沌粒子群算法,具體如下:
a3-1、cpso參數(shù)設(shè)置:設(shè)置粒子群的規(guī)模、適應(yīng)度誤差限、允許最大迭代次數(shù)、慣性權(quán)重以及學(xué)習(xí)因子c1,c2等參數(shù);
a3-2、混沌粒子位置和速度,隨機(jī)產(chǎn)生各粒子的初始速度vi=(v1,v2,.....,vm);
a3-3、將每個(gè)粒子的個(gè)體極值位置設(shè)置為當(dāng)前位置,計(jì)算出每個(gè)粒子的適應(yīng)度,采用均方誤差作為粒子適應(yīng)值的評(píng)價(jià)函數(shù),取適應(yīng)度最好的粒子所對(duì)應(yīng)的個(gè)體極值作為最初的全局極值;
a3-4、按下式進(jìn)行迭代計(jì)算,更新粒子的位置,速度,
vid=wwid+c1r(pid-xid)+c2r(gd-xid)
xid=xid+αvid
其中vid表示粒子的速度,r,r表示均勻分布在(0,1)區(qū)間的隨機(jī)數(shù),α為控制速權(quán)重的約束因子,ω表示慣性權(quán)重,c1,c2表示學(xué)習(xí)因子,iter為當(dāng)前迭代次數(shù),itermax為總的迭代次數(shù),vmax表示粒子的最大速度,wmax,wmin分別為最大、最小權(quán)重因子;
a3-5、對(duì)所有最優(yōu)位置進(jìn)行混沌優(yōu)化,將pgi,i=1,2,...,d映射到logistic方程的定義域內(nèi),然后通過logistic方程的迭代,產(chǎn)生混沌變量序列
a3-6、用p*取代當(dāng)前群體中任意一個(gè)粒子的位置;
a3-7、當(dāng)達(dá)到最大迭代次數(shù)或解不再變化時(shí)停止搜索,否則返回到a3-3。
本發(fā)明的有益效果在于:①lmd算法在估計(jì)包絡(luò)函數(shù)時(shí)使用使用滑動(dòng)平均,避免了虛假分量的產(chǎn)生;近似熵可以作為時(shí)間序列復(fù)雜性的一種度量,信號(hào)經(jīng)lmd分解后的pf分量為依次從高頻到低頻的時(shí)間序列,故用近似熵對(duì)pf分量進(jìn)行量化,可實(shí)現(xiàn)以pf分量的復(fù)雜性作為目標(biāo)的有用信息提取。求近似熵相對(duì)而言比較簡(jiǎn)單,快速。②用混沌粒子群算法優(yōu)化支持向量機(jī)可以避免尋參時(shí)陷入局部最優(yōu),以達(dá)到更好的分類效果。
附圖說明
圖1為本發(fā)明實(shí)施例所選取的診斷對(duì)象帶通濾波器電路圖;
圖2為圖1中實(shí)施例基于lmd近似熵和svm的模擬電路故障診斷流程圖;
圖3為圖2流程中r1↑故障信號(hào)經(jīng)lmd分解得到前三個(gè)pf分量圖;
圖4為圖2流程中部分lmd近似熵特征值;
圖5為圖2流程中混沌粒子群算法優(yōu)化svm的流程圖。
具體實(shí)施方式
為了使本發(fā)明的目的、技術(shù)方案及優(yōu)點(diǎn)更加清楚明白,以下結(jié)合附圖及實(shí)施例,對(duì)本發(fā)明進(jìn)行進(jìn)一步詳細(xì)說明。應(yīng)當(dāng)理解,此處所描述的具體實(shí)施例僅僅用以解釋本發(fā)明,并不用于限定本發(fā)明。
選取帶通濾波器作為診斷對(duì)象,電路圖如附圖1,在orcad/pspice軟件中畫出電路,元件具有容差,設(shè)立電阻容差為標(biāo)稱值的5%,電感為10%。設(shè)立故障模式分別為c1↑,c1↓,c2↑,c2↓,,r1↑,r1↓,r2↑,r2↓,r3↑,r3↓,其中↑表示該值為大于標(biāo)稱值50%的故障值,↓為小于標(biāo)稱值50%的故障值。這樣就有10種故障,再加上正常值,總共11種狀態(tài),用蒙特卡洛分析法對(duì)每種故障進(jìn)行200次分析,在matlab軟件中利用lmd算法把電路故障信號(hào)分解為一系列pf分量,再選取前三個(gè)pf分量,求它們的近似熵,作為故障的特征向量。在對(duì)故障進(jìn)行分類時(shí),還是在matlab軟件中進(jìn)行,選用svm,并利用混沌粒子群算法尋找最優(yōu)的svm參數(shù)。前100次的特征向量用于訓(xùn)練,后一百次的特征向量用于驗(yàn)證分類的正確性。整個(gè)流程如附圖2所示。
基于lmd近似熵和svm的模擬電路故障診斷分析方法如下:
(1)在orcad/pspice設(shè)置好電路的容差,進(jìn)行蒙特卡洛分析,得到故障電路的信號(hào)。
(2)利用lmd算法得到電路的一系列pf分量。r1↑故障信號(hào)經(jīng)lmd分解得到前三個(gè)pf分量圖如圖3。算法包含以下步驟:
①計(jì)算信號(hào)的局部極值點(diǎn)集合,再計(jì)算任意2個(gè)相鄰極值點(diǎn)的平均值;
②利用①所得的局部極值點(diǎn)集合,確定包絡(luò)估計(jì)值集合;
③利用計(jì)算所得的局部均值點(diǎn)集合和包絡(luò)估計(jì)值集合將集合中所有相鄰的2個(gè)值,分別用折線相連,然后進(jìn)行平滑處理,得到局部極值函數(shù)和包絡(luò)估計(jì)函數(shù);
④將局部均值函數(shù)從原始信號(hào)中分離出去;
⑤將分離后的信號(hào)進(jìn)行解調(diào),理想情況下就得到了純調(diào)頻信號(hào);
⑥把迭代過程中產(chǎn)生的包絡(luò)估計(jì)函數(shù)相乘就得到了包絡(luò)信號(hào);
⑦將包絡(luò)信號(hào)和純調(diào)頻信號(hào)相乘,得到原始信號(hào)的首個(gè)pf分量;
⑧從信號(hào)中分離出來的pf,對(duì)應(yīng)得到一個(gè)新的信號(hào),將新信號(hào)作為原始信號(hào)重復(fù)①一⑦步聚,直到殘余信號(hào)是單調(diào)函數(shù),停止迭代;
(3)選取前三個(gè)pf分量,分別求它們的近似熵作為故障的一組特征向量,部分lmd近似熵特征值如附圖3,算法步驟如下:
1)設(shè)給定長(zhǎng)度為n的一維時(shí)間序列{u(i),i=1,2...n},按式
xi={u(i),u(i+1)...u(i+m-1)}
重構(gòu)m維向量xi,i=1,2,....n,n=n+m-1。
2)計(jì)算向量xi與其他向量xj(j=1,2,...n,n=n+m-1)之間的距離:
d=max|u(i+j)-u(j+k)|k=0,1,2....,m-1
3)給定一個(gè)閥值r,對(duì)每個(gè)向量xi統(tǒng)計(jì)d≤r的數(shù)目以及此數(shù)目與距離總數(shù)(n-m)的比值,記為
4)對(duì)
5)將m加1,重復(fù)前面1)一4)的步驟,求得
6)由φm和φm+1得近似熵:
(4)選取一部分特征向量作為訓(xùn)練樣本,訓(xùn)練svm,并用混沌粒子群算(cpso)尋找最優(yōu)的參數(shù),主要是尋找最優(yōu)的懲罰參數(shù)c和核參數(shù)以達(dá)α到最優(yōu)的分類效果,算法流程圖如圖附圖4所示,算法步驟如下:
a、cpso參數(shù)設(shè)置。設(shè)置粒子群的規(guī)模、適應(yīng)度誤差限、允許最大迭代次數(shù)、慣性權(quán)重以及學(xué)習(xí)因子c1,c2等參數(shù);
b、混沌粒子位置和速度,隨機(jī)產(chǎn)生各粒子的初始速度vi=(v1,v2,.....,vm);
c、將每個(gè)粒子的個(gè)體極值位置設(shè)置為當(dāng)前位置,計(jì)算出每個(gè)粒子的適應(yīng)度,采用均方誤差作為粒子適應(yīng)值的評(píng)價(jià)函數(shù),取適應(yīng)度最好的粒子所對(duì)應(yīng)的個(gè)體極值作為最初的全局極值;
d、按照下面公式進(jìn)行迭代計(jì)算,然后更新粒子的位置,速度;
vid=wwid+c1r(pid-xid)+c2r(gd-xid)
xid=xid+αvid
其中vid表示粒子的速度,r,r表示均勻分布在(0,1)區(qū)間的隨機(jī)數(shù),α控制速權(quán)重的約束因子,ω表示慣性權(quán)重,c1,c2表示學(xué)習(xí)因子,iter為當(dāng)前迭代次數(shù),itermax為總的迭代次數(shù),vmax表示粒子的最大速度,wmax,wmin分別為最大、最小權(quán)重因子。
e、對(duì)所有最優(yōu)位置進(jìn)行混沌優(yōu)化,將pgi,i=1,2,...,d映射到logistic方程的定義域內(nèi),然后通過logistic方程的迭代,產(chǎn)生混沌變量序列
f、用p*取代當(dāng)前群體中任意一個(gè)粒子的位置;
g、當(dāng)達(dá)到最大迭代次數(shù)或解不再變化時(shí)停止搜索,否則返回到步驟c。
(5)用剩余的特征向量進(jìn)行分類識(shí)別,得出分類的正確率。