文獻(xiàn)標(biāo)識(shí)碼: A
DOI:10.16157/j.issn.0258-7998.166527
中文引用格式: 陳明霞,鄒文斌,劉玉縣. 基于FPGA的LMS自適應(yīng)濾波器設(shè)計(jì)[J].電子技術(shù)應(yīng)用,2017,43(9):111-113,118.
英文引用格式: Chen Mingxia,Zou Wenbin,Liu Yuxian. Design of LMS adaptive filter based on FPGA[J].Application of Electronic Technique,2017,43(9):111-113,118.
0 引言
在實(shí)際的信號(hào)傳輸過(guò)程中,原始信號(hào)受噪聲的影響,噪聲源特性未能在不同的環(huán)境中提前預(yù)測(cè)。傳統(tǒng)的濾波器系數(shù)在設(shè)計(jì)的階段已被固定,不可再根據(jù)應(yīng)用調(diào)整。為了自動(dòng)消除非目標(biāo)帶系統(tǒng)的諧波,自適應(yīng)濾波器根據(jù)隨機(jī)信號(hào)的統(tǒng)計(jì)描述和模型來(lái)預(yù)測(cè)信號(hào)趨勢(shì)[1]。LMS算法基于閉環(huán)反饋系統(tǒng)來(lái)輸出捕獲系統(tǒng)的誤差和期望。該濾波器的特性跟隨噪聲信號(hào)而改變。本文提出的濾波器針對(duì)的是以低頻變化的類(lèi)直流信號(hào)。當(dāng)頻率小于5 kHz時(shí),該濾波器可在一定信噪比下還原直流幅度。該方法是基于最小均方誤差法調(diào)整標(biāo)準(zhǔn)基函數(shù)的系數(shù),使其接近目標(biāo)調(diào)解信號(hào)的幅度和相位。該方法曾在電力系統(tǒng)諧波檢測(cè)中被提出[2],解決的對(duì)象是相位和幅度基本不變化的穩(wěn)態(tài)正弦信號(hào)。為了將該方法適用于如超聲波測(cè)、工業(yè)溫度檢測(cè)等工程領(lǐng)域。本文選取FPGA作數(shù)字控制芯片[3],構(gòu)造正交低通濾波器,實(shí)現(xiàn)目標(biāo)信號(hào)的跟蹤和還原。
1 低通自適應(yīng)濾波算法原理
如圖1所示,正弦和余弦序列用作系統(tǒng)的標(biāo)準(zhǔn)基函數(shù)的輸入,系統(tǒng)選擇適當(dāng)?shù)臋?quán)重系數(shù)和初始頻率以調(diào)理[4]采樣信號(hào)。在該方法中,系統(tǒng)誤差函數(shù)基于最小均方差準(zhǔn)則沿函數(shù)的負(fù)梯度方向收斂。當(dāng)誤差函數(shù)收斂到最小值時(shí),重構(gòu)輸出信號(hào)的幅度接近采樣信號(hào)的幅度。
2 基于LMS算法的數(shù)學(xué)推導(dǎo)
通過(guò)輸入信號(hào)傅里葉展開(kāi)可知,所有形式的輸入信號(hào)可以表示為一系列諧波疊加。當(dāng)直流輸入信號(hào)D(t)混疊了高斯白噪聲源N(t)時(shí),輸入函數(shù)X(t)可以表示為:
由于LMS算法容易在各平臺(tái)上設(shè)計(jì)和實(shí)現(xiàn),魯棒性好,對(duì)信號(hào)的估計(jì)可滿足各種應(yīng)用場(chǎng)合,相對(duì)于RLS算法,降低了計(jì)算的復(fù)雜度,增加了計(jì)算的穩(wěn)定性。使得誤差函數(shù)保持在一個(gè)較低的穩(wěn)定裕度。
自適應(yīng)方程:
式中,X(i)為輸入,Y(i)為期望輸出,E(i)為參考信號(hào),W(i)為濾波器權(quán)系數(shù)矩陣,i為采樣變量。
自適應(yīng)算法包括兩個(gè)基本步驟[1]:調(diào)整過(guò)程和自適應(yīng)過(guò)程。通過(guò)這兩個(gè)過(guò)程形成反饋回路,根據(jù)在迭代過(guò)程中計(jì)算的權(quán)重誤差ΔW(i)來(lái)調(diào)整濾波器系數(shù)。當(dāng)平均方差函數(shù)達(dá)到其最小值時(shí),輸出信號(hào)Y(i)是期望信號(hào)D(i)的最佳估計(jì)函數(shù)。
3 自適應(yīng)低通濾波器的MATLAB實(shí)現(xiàn)
為了證明方法的可行性,在MATLAB搭建了該方法的數(shù)學(xué)模型。如圖2所示,構(gòu)建的基函數(shù)Bsin(w0t)、Ccos(w0t)經(jīng)過(guò)400次迭代后,實(shí)際輸出接近樣本函數(shù)的幅值及頻率。實(shí)驗(yàn)結(jié)果表明,基于LMS的低通正交濾波方法可以有效地去除較高次諧波,并將濾波后的信號(hào)保持在SNR=70.478 8 dB的范圍內(nèi)。
4 自適應(yīng)低通濾波器的FPGA實(shí)現(xiàn)
4.1 程序框圖
如圖3所示,噪聲輸入信號(hào)首先由18位ADC模塊采樣,產(chǎn)生離散噪聲序列。當(dāng)采樣結(jié)束時(shí),標(biāo)準(zhǔn)正弦序列由Cordic_Sin模塊輸出。CORDIC算法適用于不支持浮點(diǎn)運(yùn)算的處理器產(chǎn)生正弦波,該方法基于向量選擇法,使給定角度產(chǎn)生偏移。在該模塊和延遲模塊的作用下,正交三角函數(shù)系將用作正低通濾波方法的基函數(shù)。FPGA控制器根據(jù)自適應(yīng)算法調(diào)整重構(gòu)信號(hào)和調(diào)節(jié)信號(hào)的誤差。在給出權(quán)重矩陣之后,隨著迭代次數(shù)的增加,維納霍夫方程的最優(yōu)解將得到改進(jìn)。當(dāng)?shù)螖?shù)足夠時(shí),成本函數(shù)值最小,權(quán)重矩陣是最小均方方程的最優(yōu)解。根據(jù)式(6)、式(7),權(quán)重通過(guò)計(jì)算系數(shù)可以轉(zhuǎn)為采樣信號(hào)幅度和延遲相位。
4.2 ModelSim仿真結(jié)果
當(dāng)輸入以一定周期變化時(shí),濾波器可在200 μs內(nèi)實(shí)現(xiàn)信號(hào)幅度的跟蹤,如圖4。實(shí)驗(yàn)和數(shù)據(jù)表明,在10 dB高斯噪聲干擾下,濾波器輸出信號(hào)信噪比為33.550 5 dB。在這一點(diǎn)上,信噪比的主要影響因素是步長(zhǎng)因子μ。這是由于μ決定了誤差的收斂速度,當(dāng)收斂速度小于輸入信號(hào)變化的頻率時(shí),就會(huì)使輸出與輸入存在一定的遲滯性。
4.3 LMS濾波器影響因素分析
4.3.1 步長(zhǎng)因子
式中,γmax表示權(quán)系數(shù)矩陣W(i)的最大特征值。在實(shí)際的工程應(yīng)用中,由于權(quán)系數(shù)矩陣是時(shí)變的,無(wú)法在實(shí)際的數(shù)字濾波器中求其相關(guān)矩陣系數(shù)。因此,只可在一定范圍內(nèi)試探性地選擇其大小。如圖5、圖6,若μ非常小,雖然可以保證誤差收斂,但會(huì)影響輸出信號(hào)的跟蹤效果,當(dāng)輸入信號(hào)以較快頻率改變時(shí),無(wú)法及時(shí)輸出相應(yīng)的直流信號(hào)。反之,當(dāng)μ取得過(guò)大,雖然能提高收斂速度,但是卻是以噪聲和震蕩收斂為代價(jià),會(huì)相應(yīng)地減小輸出信號(hào)信噪比和平滑度。綜上所述,在該環(huán)境下,當(dāng)步長(zhǎng)因子μ∈[0,0.3]時(shí),對(duì)信噪比影響較小。當(dāng)其超過(guò)上述區(qū)間時(shí),SNR與μ取值呈負(fù)相關(guān)。
4.3.2 相位偏移
由于濾波器的固有相位失真[5],調(diào)制信號(hào)在被處理的過(guò)程中會(huì)發(fā)生相位偏移。如圖7所示,為了消除這種移相引起的誤差,增加濾波器的抽頭數(shù)可使得輸出信號(hào)跟蹤調(diào)制信號(hào)的相位,根據(jù)式(7)可實(shí)現(xiàn)相位的自糾正,提高重構(gòu)信號(hào)的信噪比。
5 結(jié)論
本文提出一種基于正三角基函數(shù)的低通濾波器,并應(yīng)用于FPGA控制器。區(qū)別于傳統(tǒng)自適應(yīng)的去噪方法,該方法則是基于最速下降法來(lái)調(diào)整正交序列的幅度以達(dá)到降噪效果。此方法解決了兩個(gè)問(wèn)題,首先其可以在較短的頻率[6]過(guò)渡帶內(nèi)去噪,第二其比基于LMS的FIR濾波器[7]有更簡(jiǎn)單的構(gòu)造。因此,該方法可被應(yīng)用于工程中的低頻信號(hào)檢測(cè),僅需按照實(shí)際需求調(diào)整濾波器抽頭數(shù)和迭代步長(zhǎng)即可獲得可觀的去噪效果。
參考文獻(xiàn)
[1] 張愛(ài)麗,李志勇,劉乃安.自適應(yīng)濾波器的收斂性研究[J].計(jì)算機(jī)與網(wǎng)絡(luò),2007,17(12):44-45.
[2] 趙彤,梁家碧,夏天翔,等.基于LMS自適應(yīng)濾波算法的電力變壓器有源降噪系統(tǒng)[J].高電壓技術(shù),2016(7):2299-2300.
[3] 袁小剛,黃國(guó)策,許彬.一種改進(jìn)的LMS/F組合算法及其在同址干擾抵消中的應(yīng)用[J].電子技術(shù)應(yīng)用,2009,35(1):121-124.
[4] 楊陽(yáng),李錦明,唐博.二頻機(jī)抖激光陀螺高精度低延時(shí)信號(hào)解調(diào)電路設(shè)計(jì)[J].計(jì)算機(jī)測(cè)量與控制,2015,8(3):2779-2781.
[5] 楊輝躍,涂亞慶,張海濤,等.一種基于LMS的振動(dòng)信號(hào)相位差自適應(yīng)無(wú)偏估計(jì)方法及應(yīng)用[J].振動(dòng)與沖擊,2016,10(7):55-59.
[6] 王雯婷,葛海波,王艷艷.變步長(zhǎng)LMS算法抑制窄帶干擾技術(shù)研究[J].電子技術(shù)應(yīng)用,2015,41(2):89-92.
[7] 楊躍忠,闕沛文,李亮.自適應(yīng)LMS濾波器在FPGA中的實(shí)現(xiàn)[J].微計(jì)算機(jī)信息,2006,36(11):158-160.
作者信息:
陳明霞1,鄒文斌1,劉玉縣2
(1.桂林理工大學(xué) 機(jī)械與控制工程學(xué)院,廣西 桂林541004;2.廣東順德創(chuàng)新設(shè)計(jì)研究院,廣東 佛山528300)