一、實(shí)驗(yàn)?zāi)康?/h1>
了解IIR濾波器的特點(diǎn),掌握Matlab輔助設(shè)計(jì)濾波器系數(shù)的方法,并實(shí)現(xiàn)IIR濾波器濾除高頻信號(hào),并在LCD上顯示結(jié)果。
二、實(shí)驗(yàn)原理
IIR濾波器
IIR無(wú)限沖激響應(yīng)數(shù)字濾波器(infinite impulse response digital filter)是對(duì)單位沖激的輸入信號(hào)的響應(yīng)為無(wú)限長(zhǎng)序列的數(shù)字濾波器。可分為一維、二維或多維無(wú)限沖激響應(yīng)數(shù)字濾波器。
它的輸出y(n)由當(dāng)前的和過(guò)去的輸入信號(hào)x(n)及過(guò)去的輸出信號(hào)共同決定。IIR的幅頻特性精度很高,不是線性相位的,可以應(yīng)用于對(duì)相位信息不敏感的音頻信號(hào)上。
對(duì)于IIR濾波器,沖激響應(yīng)理論上應(yīng)會(huì)無(wú)限持續(xù),其輸出不僅取決于當(dāng)前和過(guò)去的輸入信號(hào)值,也取決于過(guò)去的信號(hào)輸出值。其系統(tǒng)函數(shù)如下:
IIR濾波器的一種結(jié)構(gòu)和差分方程可見圖示,由IIR的系統(tǒng)函數(shù)出發(fā),可視作兩個(gè)系統(tǒng)的級(jí)聯(lián),并且合并了公共的延時(shí)支路。
IIR濾波器特性
無(wú)限沖激響應(yīng)數(shù)字濾波器具有以下特性:
(1)系統(tǒng)函數(shù)可以寫成封閉函數(shù)的形式。
(2)采用遞歸型結(jié)構(gòu),即結(jié)構(gòu)上帶有反饋環(huán)路。IIR濾波器運(yùn)算結(jié)構(gòu)通常由延時(shí)、乘以系數(shù)和相加等基本運(yùn)算組成,可以組合成直接型、正準(zhǔn)型、級(jí)聯(lián)型、并聯(lián)型四種結(jié)構(gòu)形式,都具有反饋回路。由于運(yùn)算中的舍入處理,使誤差不斷累積,有時(shí)會(huì)產(chǎn)生微弱的寄生振蕩。
(3)在設(shè)計(jì)上可以借助成熟的模擬濾波器的成果,如巴特沃斯、契比雪夫和橢圓濾波器等,有現(xiàn)成的設(shè)計(jì)數(shù)據(jù)或圖表可查,其設(shè)計(jì)工作量比較小,對(duì)計(jì)算工具的要求不高。
(4)相位特性不好控制,對(duì)相位要求較高時(shí),需加相位校準(zhǔn)網(wǎng)絡(luò)。
IIR濾波器的設(shè)計(jì)
設(shè)計(jì)IIR數(shù)字濾波器實(shí)質(zhì)上就是找到一個(gè)使其頻率響應(yīng)H(Z)滿足給定的通帶截止頻率、通帶衰減系數(shù)、阻帶截止頻率及阻帶衰減系數(shù)的可以在物理上實(shí)現(xiàn)的系統(tǒng)函數(shù)H(Z)。
根據(jù)所要設(shè)計(jì)濾波器的參數(shù)去確定一個(gè)模擬濾波器的傳輸函數(shù),然后再根據(jù)這個(gè)傳輸函數(shù),通過(guò)雙線性變換、或脈沖響應(yīng)不變法來(lái)進(jìn)行數(shù)字濾波器的設(shè)計(jì)。它的設(shè)計(jì)比較復(fù)雜,復(fù)雜在于它的模擬濾波器傳輸函數(shù)H(s)的確定。這一點(diǎn)可以讓軟件來(lái)實(shí)現(xiàn)。具體實(shí)現(xiàn)步驟:
(1)先確定需要一個(gè)什么樣的濾波器,巴特沃斯型,切比雪夫型,還是其它什么型的濾波器。
(2)當(dāng)選定一個(gè)型號(hào)后,就可以根據(jù)設(shè)計(jì)參數(shù)和這個(gè)濾波器的計(jì)算公式來(lái)確定其階數(shù)、傳輸函數(shù)的表達(dá)式。通常這個(gè)過(guò)程中還存在預(yù)扭曲的問(wèn)題(這只是雙線性變換法所需要注意的問(wèn)題,脈沖響應(yīng)不變法不存在這種問(wèn)題)。
(3)確定H(S)后,就可以通過(guò)雙線性變換得到其數(shù)字域的差分方程。
MATLAB FIR 濾波器輔助設(shè)計(jì),生成濾波器系數(shù)。
打開Matlab 軟件,并打開"Filter Designed&Analaysis Tool"工具,在彈出的界面中按照所需濾波器修改以下參數(shù):
(1)濾波器類型:低通Lowpass;
(2)濾波方式:巴特沃斯IIR(Butterworth);
(3)濾波器階數(shù):Specify order(4+1階);
(4)采樣頻率:1000Hz;
(5)通帶截止頻率:150Hz;
程序流程設(shè)計(jì)
設(shè)計(jì)中首先要進(jìn)行外設(shè)使能配置,然后進(jìn)行LCD管腳復(fù)用配置和LCD中斷配置,接著進(jìn)行LCD顯示和觸摸的初始化。最后產(chǎn)生帶有噪聲的原始信號(hào)并進(jìn)行IIR濾波和FFT運(yùn)算,將結(jié)果顯示在LCD屏幕上,在循環(huán)中進(jìn)行觸摸檢測(cè),根據(jù)標(biāo)志位判斷顯示時(shí)域或者頻域波形。
程序功能:使用MATLAB 輔助設(shè)計(jì)濾波器系數(shù)實(shí)現(xiàn)IIR濾波,并在LCD上顯示結(jié)果。
數(shù)字信號(hào)處理庫(kù)
DSPLIB 包含優(yōu)化的、C語(yǔ)言可調(diào)用的通用信號(hào)處理例程,用于計(jì)算密集型實(shí)時(shí)應(yīng)用程序。 調(diào)用這些例程的運(yùn)行速度比直接用C語(yǔ)言編寫的等效代碼快得多。使用DSPLIB可以縮短應(yīng)用程序開發(fā)時(shí)間。
DSPLIB 3_4_0_0包括適用于 C64x+ 或 C66x 或 C674x 處理器的 Windows 或 Linux 安裝可執(zhí)行文件。 每個(gè)可執(zhí)行文件安裝一個(gè)組件包存儲(chǔ)庫(kù)、一個(gè)文檔目錄、一個(gè) Eclipse 插件目錄和一個(gè)擴(kuò)展的組件目錄結(jié)構(gòu),其中包含組件庫(kù)、頭文件和測(cè)試示例。
TMS320C6748處理器使用的是dsplib_c674x_3_4_0_0。
函數(shù)源碼
程序使用DSPLIB 的庫(kù)來(lái)進(jìn)行IIR濾波,調(diào)用的程序源碼和使用說(shuō)明可以安裝DSPLIB后查看。調(diào)用的IIR濾波函數(shù)中,
第一個(gè)參數(shù)是延遲元素值。
第二個(gè)參數(shù)是指向輸入數(shù)組的指針。
第三個(gè)參數(shù)是指向輸出數(shù)組的指針。
第四個(gè)參數(shù)是自回歸濾波器系數(shù)。
第五個(gè)參數(shù)是動(dòng)態(tài)平均濾波器系數(shù)。
第六個(gè)參數(shù)是輸出樣本數(shù)。
程序使用DSPLIB 的庫(kù)來(lái)進(jìn)行FFT運(yùn)算,調(diào)用的程序源碼和使用說(shuō)明可以安裝DSPLIB后查看。調(diào)用的FFT函數(shù)中,
第一個(gè)參數(shù)是樣本中FFT 的長(zhǎng)度,
第二個(gè)參數(shù)是指向數(shù)據(jù)輸入的指針。
第三個(gè)參數(shù)是指向復(fù)雜旋轉(zhuǎn)因子的指針。
第四個(gè)參數(shù)是指向復(fù)雜輸出數(shù)據(jù)的指針。
第五個(gè)參數(shù)是指向包含64 個(gè)條目的位反轉(zhuǎn)表的指針。如果樣本的FFT長(zhǎng)度可以表示為 4 的冪,
第六個(gè)參數(shù)是4,否則第六個(gè)參數(shù)是2 。
第七個(gè)參數(shù)是從主FFT開始的樣本中的子 FFT偏移索引 。
第八個(gè)參數(shù)是樣本中主FFT的大小。
程序使用DSPLIB 的庫(kù)來(lái)進(jìn)行FFT逆變換,調(diào)用的程序源碼和使用說(shuō)明可以安裝DSPLIB后查看。調(diào)用的IFFT函數(shù)中,
第一個(gè)參數(shù)是樣本中FFT 的長(zhǎng)度。
第二個(gè)參數(shù)是指向數(shù)據(jù)輸入的指針。
第三個(gè)參數(shù)是指向復(fù)雜旋轉(zhuǎn)因子的指針。
第四個(gè)參數(shù)是指向復(fù)雜輸出數(shù)據(jù)的指針。
第五個(gè)參數(shù)是指向包含64 個(gè)條目的位反轉(zhuǎn)表的指針 。如果樣本的FFT長(zhǎng)度可以表示為 4 的冪,
第六個(gè)參數(shù)是4,否則第六個(gè)參數(shù)是 2 。
第七個(gè)參數(shù)是從主FFT開始的復(fù)雜樣本中的子FFT偏移索引 。
第八個(gè)參數(shù)是樣本中主FFT的大小。
三、操作現(xiàn)象
硬件連接
(2)將撥碼開關(guān)撥到DEBUG模式01111,連接實(shí)驗(yàn)箱電源,撥動(dòng)電源開關(guān)上電。
操作現(xiàn)象
導(dǎo)入工程,選擇Demo文件夾下的對(duì)應(yīng)工程
編譯工程,生成可執(zhí)行文件
將CCS連接實(shí)驗(yàn)箱并加載程序
程序加載完成后點(diǎn)擊運(yùn)行程序
運(yùn)行程序后,LCD會(huì)顯示IIR濾波前后的時(shí)域波形,上方為100Hz信號(hào)與450Hz噪聲組成的混合信號(hào),下方為濾波后得到的結(jié)果(保留100Hz信號(hào))。
點(diǎn)擊一下LCD屏幕,會(huì)切換頻域波形,上方顯示原始頻域信號(hào)+噪聲,下方顯示濾波后的頻域波形,輸入波形為一個(gè)低頻率的正弦波與一個(gè)高頻的正弦波疊加而成,通過(guò)觀察頻域圖可知輸入波形中的低頻波形通過(guò)了濾波器,而高頻部分被濾除。
實(shí)驗(yàn)結(jié)束后,先點(diǎn)擊黃色按鈕暫停程序運(yùn)行,再點(diǎn)擊紅色按鈕退出CCS與實(shí)驗(yàn)板的連接,最后實(shí)驗(yàn)箱斷電即可。
-
matlab
+關(guān)注
關(guān)注
189文章
3010瀏覽量
236958 -
信號(hào)處理
+關(guān)注
關(guān)注
49文章
1078瀏覽量
104699 -
FFT
+關(guān)注
關(guān)注
15文章
451瀏覽量
62318 -
LCD顯示
+關(guān)注
關(guān)注
0文章
133瀏覽量
19284 -
IIR濾波器
+關(guān)注
關(guān)注
0文章
33瀏覽量
11901
發(fā)布評(píng)論請(qǐng)先 登錄
IIR濾波器種類和設(shè)計(jì)
IIR濾波器和FIR濾波器的對(duì)比分析介紹
本次視頻講解的是有限沖激響應(yīng)濾波器算法實(shí)驗(yàn),MATLAB輔助,LCD顯示
4-6 無(wú)限沖激響應(yīng)濾波器(IIR)算法(MATLAB輔助,LCD顯示)
嵌入式操作教程:4-6 無(wú)限沖激響應(yīng)濾波器(IIR)算法(MATLAB 輔助,LCD顯示)
數(shù)字信號(hào)處理實(shí)驗(yàn)指導(dǎo) -無(wú)限長(zhǎng)單位脈沖響應(yīng)(IIR)濾波器的
有限長(zhǎng)單位沖激響應(yīng)FIR數(shù)字濾波器的設(shè)計(jì)方法
用MATLAB輔助設(shè)計(jì)IIR數(shù)字濾波器
有限沖激響應(yīng)數(shù)字濾波器設(shè)計(jì)
IIR與FIR濾波器的比較和區(qū)別
如何使用隨機(jī)結(jié)構(gòu)進(jìn)行無(wú)乘法無(wú)限沖激響應(yīng)的數(shù)字濾波器設(shè)計(jì)方法概述

如何使用隨機(jī)結(jié)構(gòu)進(jìn)行無(wú)乘法無(wú)限沖激響應(yīng)的數(shù)字濾波器設(shè)計(jì)方法概述

IIR濾波器和FIR濾波器詳細(xì)對(duì)比

評(píng)論