蔣建東, 楊鯤鵬, 耿莉莉
(1.鄭州大學(xué) 電氣工程學(xué)院 河南 鄭州 450001; 2.國(guó)網(wǎng)河南省電力公司嵩縣供電公司 河南 洛陽 471400)
隨著電力電子器件和沖擊性負(fù)荷在電力系統(tǒng)中的大量應(yīng)用,電網(wǎng)中間諧波的含量大量增加,引起了電壓閃變、繼電器誤動(dòng)作等多種危害[1].因此快速、準(zhǔn)確檢測(cè)出間諧波對(duì)改善電能質(zhì)量和電網(wǎng)運(yùn)行具有重要意義.
目前國(guó)內(nèi)外專家已提出的間諧波檢測(cè)方法主要有快速傅里葉變換(FFT)法、小波分析法、現(xiàn)代譜估計(jì)法、神經(jīng)網(wǎng)絡(luò)法[2-6]等.其中FFT算法最為經(jīng)典且應(yīng)用廣泛,但在非同步采樣時(shí),F(xiàn)FT算法存在頻譜泄露和柵欄效應(yīng)問題[7].為解決這一問題,Jain提出在時(shí)域加矩形窗及頻域插值來提高FFT算法精度[8].此后為能更好抑制頻譜泄露,Hanning窗、Blackman窗、Nuttall窗等相繼出現(xiàn),插值算法也由單譜線插值發(fā)展為多譜線插值,故FFT算法的檢測(cè)精度有了很大提高[8-11].但是,F(xiàn)FT算法在固定采樣時(shí)寬下頻率分辨率固定,當(dāng)諧波、間諧波之間的頻率差小于頻率分辨率時(shí),F(xiàn)FT算法無法準(zhǔn)確檢測(cè).近年來,Mallat和Zhang提出的原子分解算法[12]滿足信號(hào)多分辨率分析要求,在電能質(zhì)量分析中逐步得到應(yīng)用[13-17].文獻(xiàn)[15]應(yīng)用原子分解算法檢測(cè)間諧波,但該方法在搜索最佳匹配原子時(shí)需要進(jìn)行多次內(nèi)積運(yùn)算,計(jì)算量較高.文獻(xiàn)[16]用PSO算法對(duì)匹配追蹤算法進(jìn)行優(yōu)化,計(jì)算速度得到提高,但計(jì)算精度降低.
本文提出一種基于加窗插值FFT和原子分解的間諧波檢測(cè)算法.對(duì)待分析信號(hào)進(jìn)行FFT分析,求得峰值譜線值,并利用譜線干涉判據(jù)判斷峰值譜線是否存在譜線干涉.當(dāng)不存在譜線干涉時(shí),則使用加窗插值算法校正峰值譜線,求得諧波、間諧波參數(shù);否則使用原子分解算法在譜峰頻率鄰域內(nèi)搜索最佳匹配原子,獲取諧波、間諧波參數(shù).此算法能分析出頻率臨近信號(hào)且計(jì)算量小于原子分解算法.
設(shè)待分析的信號(hào)為v(t)=Acos(2πft+θ),式中:A為信號(hào)幅值;f為頻率;θ為相位.對(duì)分析信號(hào)進(jìn)行采樣,采樣頻率為fs,采樣點(diǎn)數(shù)為N,得到的離散信號(hào)為v(n)=Acos(2πnf/fs+θ).
為減少頻譜泄露,對(duì)信號(hào)v(n)進(jìn)行加窗,可得vd(n)=v(n)w(n),其中w(n)為窗函數(shù)的時(shí)域形式.窗函數(shù)選取標(biāo)準(zhǔn)為主瓣窄、旁瓣小且衰減速度快.但這兩個(gè)標(biāo)準(zhǔn)互相矛盾,實(shí)際中通常適當(dāng)增加主瓣寬度達(dá)到抑制旁瓣目的.Hanning窗具有如下特點(diǎn):1) 和其他余弦窗相比,有較小的主瓣;2) 第一旁瓣較低,且旁瓣衰減速度快;3) 基于Hanning 窗的雙譜線插值,公式簡(jiǎn)單,計(jì)算量較小且易于實(shí)現(xiàn).本文選取Hanning 窗截取信號(hào),其時(shí)域表達(dá)式為w(n)=0.5-0.5cos(2πn/(N-1)).
對(duì)vd(n)進(jìn)行DFT變換并忽略負(fù)頻點(diǎn),得到
設(shè)真實(shí)峰值譜線k0左右兩端的最大譜線和次大譜線為k1、k2,且k1≤k0≤k2=k1+1.它們的幅值為y1=|V(k1)|和y2=|V(k2)|.然后引入一個(gè)輔助參量,
α=k0-k1-0.5,α∈[-0.5,0.5],
當(dāng)采樣點(diǎn)數(shù)N比較大時(shí),利用多項(xiàng)式逼近,求得α=1.5β.所求信號(hào)頻率修正公式為f=(k1+α+0.5)Δf;相位修正公式為θ=arg[V(ki)]-π·(α-(-1)i·0.5),i=1,2;幅值修正公式為A=(y1+y2)(2.356+1.155α2+0.326α4+0.079α6)/N.
加窗插值提高了FFT算法的檢測(cè)精度,但在固定的采樣時(shí)寬下,頻率分辨率固定.由于頻譜泄露,信號(hào)間存在譜線干涉現(xiàn)象,當(dāng)兩信號(hào)頻率相差較遠(yuǎn),僅發(fā)生旁瓣干涉時(shí),時(shí)域加窗是減小旁瓣干涉的一種有效方法;當(dāng)諧波、間諧波頻率接近,發(fā)生較嚴(yán)重的旁瓣干涉或主瓣干涉時(shí),加窗插值FFT算法檢測(cè)精度大幅下降,尤其當(dāng)兩信號(hào)的頻率偏差小于頻率分辨率時(shí),該算法失去效用[3].
原子分解算法根據(jù)信號(hào)自身特征,從過完備的基函數(shù)集合中,自適應(yīng)選擇一組最佳基函數(shù)對(duì)被測(cè)信號(hào)進(jìn)行線性表示.這些基函數(shù)稱為原子,由冗余原子構(gòu)成的集合稱為原子庫.
在原子庫中尋找最佳匹配原子的常用方法是匹配追蹤算法(MP).該算法是一種貪婪自適應(yīng)分解方法,根據(jù)索引方式對(duì)庫中所有原子進(jìn)行掃描,找出與待分析信號(hào)或殘余信號(hào)最為匹配的原子(即該原子與信號(hào)內(nèi)積值最大),根據(jù)原子參數(shù)分析出相應(yīng)信號(hào)成分并除去,然后形成殘余信號(hào).以此步驟對(duì)信號(hào)進(jìn)行多次迭代,當(dāng)滿足迭代的終止條件時(shí)結(jié)束迭代,相應(yīng)的匹配追蹤過程也結(jié)束.
設(shè)H是維度有限的Hilbert空間,信號(hào)v∈H,D是H空間內(nèi)的過完備原子庫,首先從在原子庫D中選擇出一個(gè)原子gr(0),gr(0)與信號(hào)v最佳匹配,故滿足
過完備原子庫中原子本身有著固有特性,可能只對(duì)某些與原子特性相近的信號(hào)有著較好的分解效果.為使原子分解方法能更好適應(yīng)信號(hào)分解并減少計(jì)算量,針對(duì)某種信號(hào)特征生成的原子庫稱為相關(guān)原子庫.電網(wǎng)中的諧波和間諧波信號(hào)均為正弦波,且認(rèn)為在分析的時(shí)間窗內(nèi),信號(hào)是不變化的,故本文采用正弦量原子構(gòu)造過完備原子庫,其信號(hào)模型為gr(t)=krcos(ωt+φ),式中:r=[ω,φ]為參數(shù)組;ω為待分析信號(hào)分量的角頻率;φ為待分析信號(hào)分量的相位;kr是使‖gr(t)‖=1的系數(shù).
上述原子庫中原子參數(shù)具有連續(xù)性,使原子庫規(guī)模達(dá)到無窮,MP算法找尋最佳原子需尋遍原子庫,計(jì)算量巨大,不適用實(shí)際計(jì)算.因此需對(duì)原子庫中原子參數(shù)進(jìn)行離散化處理,離散后原子庫依然保持過完備性.正弦原子庫中原子參數(shù)離散為
利用原子分解算法分析信號(hào)時(shí),每次迭代信號(hào)都需要與原子庫中的每個(gè)原子進(jìn)行內(nèi)積計(jì)算,以尋找最佳匹配原子.對(duì)含有多個(gè)諧波、間諧波的信號(hào),需進(jìn)行多次迭代,計(jì)算量大,實(shí)用性受到限制.
加窗插值FFT算法在分析諧波、間諧波時(shí),有著計(jì)算速度快、分析精度高等優(yōu)點(diǎn),但是當(dāng)信號(hào)中含有頻率相近成分時(shí),受譜線干涉與頻率分辨率影響,加窗插值FFT算法檢測(cè)精度下降甚至失效.原子分解算法在檢測(cè)諧波、間諧波時(shí)不受譜線干涉影響且頻率分辨率高,但是運(yùn)算量大且分析精度不穩(wěn)定.對(duì)此,本文提出基于加窗插值FFT和原子分解的間諧波檢測(cè)算法.首先對(duì)信號(hào)頻譜進(jìn)行判定,在有譜線干涉情況下,使用原子分解算法,否則使用加窗插值算法.該算法避免了FFT算法的頻率分辨率低和原子分解算法計(jì)算量大的問題.
圖1 單頻率信號(hào)的理論頻譜Fig.1 Theoretic spectrum of single-frequency signal
峰值譜線是否存在譜線干涉可以用幅值判斷法[18]來判斷.假設(shè)窗函數(shù)的窗譜主瓣內(nèi)至少有三條譜線,用任意相鄰的兩條譜線都能求得校正頻率,因此取與峰頂比較靠近的三條譜線,如圖1中k-1、k、k+1所示,A、B、C為對(duì)應(yīng)譜線的幅值.用A與B、B與C分別使用比值校正法做頻率校正,如果校正結(jié)果一樣,則不存在干涉.
正弦量原子庫中含有N個(gè)頻率不同的原子,這些離散的原子頻率中可能不含實(shí)際諧波、間諧波頻率,提取到的最佳原子頻率會(huì)和實(shí)際頻率不匹配,產(chǎn)生較大誤差.為了更好提取信號(hào)參數(shù),對(duì)角頻率離散參數(shù)優(yōu)化為ω*=2πk/fs,則原子頻率為f=fsω*/2π=k,從式中看出原子頻率變化率為1 Hz.對(duì)于分析諧波、間諧波,1 Hz的頻率分辨率就能很好匹配諧波、間諧波頻率.
待分析信號(hào)進(jìn)行FFT后,可求得最大譜峰對(duì)應(yīng)頻率fl,為原子分解算法的頻率參數(shù)確定了大致的搜索范圍.由于Hanning窗的第三旁瓣峰值約為主瓣峰值的0.3%,當(dāng)相鄰的譜峰間隔大于等于5個(gè)譜線間隔時(shí),彼此之間影響較小,所以頻率搜索范圍定為k∈[fl-5Δf,fl+5Δf]∈Z.
由三角函數(shù)性質(zhì)cos(α+π)=-cosα,可對(duì)原子離散相位優(yōu)化:φ*=2πq/N,q∈[0,N/2-1]∈Z.然后根據(jù)最大內(nèi)積符號(hào),對(duì)相位φ進(jìn)行修正,即
對(duì)離散的原子角頻率和原子相位進(jìn)行優(yōu)化后,原子庫中原子數(shù)量從N2降低到10Δf·N/2,且只有在諧波、間諧波存在譜線干涉時(shí)才用原子分解算法進(jìn)行檢測(cè),運(yùn)算量顯著減少.
首先用Hanning窗截取信號(hào)并對(duì)信號(hào)進(jìn)行FFT分析,搜索峰值譜線值和它兩端的譜線值,使用幅值判斷法判斷是否有譜線干涉,根據(jù)判定結(jié)果選擇合適算法,算法步驟如下.
(1) 首先用Hanning窗截取信號(hào)并對(duì)截取的信號(hào)進(jìn)行FFT分析,求得信號(hào)頻譜.
(2) 搜索最大峰值譜線kl,峰值為V(kl).然后找到與最大峰值譜線相鄰的譜線kl-1和kl+1,計(jì)算出它們的幅值V(kl-1)、V(kl+1).
(3) 利用幅值判斷法判斷峰值譜線是否存在譜線干涉.
(4) 根據(jù)判斷的結(jié)果,使用不同算法進(jìn)行分析.若沒有譜線干涉,則直接使用加窗插值算法檢測(cè)參數(shù);若有譜線干涉,則選用原子分解算法對(duì)參數(shù)進(jìn)行估計(jì).
(5) 計(jì)算殘余信號(hào).重復(fù)步驟(1)~(5),分析出信號(hào)中所有的諧波和間諧波后,迭代終止.
為證明本文算法準(zhǔn)確性,假設(shè)含有多個(gè)諧波和間諧波信號(hào)模型為
式中:基波頻率為50 Hz;幅值為380 V;初相位為30°.其余諧波、間諧波參數(shù)如表1所示.Matlab仿真時(shí),設(shè)定采樣頻率為3 kHz,采樣點(diǎn)數(shù)為1 024.
(1) 采用加窗插值FFT算法對(duì)信號(hào)進(jìn)行分析,仿真結(jié)果如表1所示.
表1 參數(shù)估計(jì)結(jié)果
從表1可以看出只用加窗插值FFT算法檢測(cè)諧波、間諧波時(shí),若不存在頻率相近成分時(shí),檢測(cè)到的諧波、間諧波的幅值、相角和頻率參數(shù)精度非常高,基本接近理論值;而當(dāng)間諧波的頻率接近諧波時(shí),間諧波不僅檢測(cè)不出來,還影響了諧波的檢測(cè)精度.
(2) 采用本文算法對(duì)信號(hào)進(jìn)行分析,仿真結(jié)果如表2所示.
表2 參數(shù)估計(jì)結(jié)果
本文算法對(duì)信號(hào)參數(shù)的分析結(jié)果如表2所示.從表2可以看出,本文提出的混合算法能有效檢測(cè)出頻率相近的諧波、間諧波,彌補(bǔ)了加窗插值的不足,而且對(duì)頻率、幅值、相位的檢測(cè)精度很高,尤其對(duì)頻率來說,幾乎沒有誤差.
(3) 采用本文算法對(duì)含有噪聲的信號(hào)進(jìn)行分析,信噪比為70 dB,仿真結(jié)果如表3所示.分析表3結(jié)果可知,本文算法具有較好的抗噪性.
表3 參數(shù)估計(jì)結(jié)果
加窗插值和原子分解算法都是間諧波檢測(cè)的有效算法.加窗插值算法具有速度快、精度高的優(yōu)點(diǎn),但頻率分辨率有限,無法分解出頻率相近的諧波、間諧波信號(hào),而原子分解算法具有無限頻率分辨率的優(yōu)點(diǎn),但計(jì)算量大、速度慢,本文結(jié)合兩個(gè)算法的優(yōu)點(diǎn)提出了混合檢測(cè)算法.該算法通過判斷峰值譜線是否存在主瓣干涉來選擇不同的算法,既能分解出頻率相近成分,又減少了原子分解算法的計(jì)算量.算例分析表明,本文算法對(duì)諧波、間諧波進(jìn)行檢測(cè)可以取得較為滿意的結(jié)果.