找回密碼
 立即注冊(cè)

QQ登錄

只需一步,快速開(kāi)始

搜索
查看: 4456|回復(fù): 0
打印 上一主題 下一主題
收起左側(cè)

《MATLAB及其實(shí)踐》課程設(shè)計(jì)報(bào)告

[復(fù)制鏈接]
跳轉(zhuǎn)到指定樓層
樓主
ID:249537 發(fā)表于 2017-11-15 09:13 | 只看該作者 回帖獎(jiǎng)勵(lì) |倒序?yàn)g覽 |閱讀模式

MATLAB及其實(shí)踐》課程設(shè)計(jì)報(bào)告




設(shè)計(jì)題號(hào):


姓   名:


學(xué)   院:


專(zhuān)   業(yè):


班   級(jí):


學(xué)   號(hào):


日   期
  2017年 10月23日——2017年11月10日

指導(dǎo)教師:



摘要

隨著信息時(shí)代和數(shù)字世界的到來(lái),數(shù)字信號(hào)處理已成為今一門(mén)極其重要的學(xué)科和技術(shù)領(lǐng)域。數(shù)字濾波器是數(shù)字信號(hào)處理的基礎(chǔ),用來(lái)對(duì)信號(hào)進(jìn)行過(guò)濾、檢測(cè)與參數(shù)估計(jì)等處理,在通信、圖像、語(yǔ)音、雷達(dá)等許多領(lǐng)域都有著十分廣泛的應(yīng)用。尤其在圖像處理、數(shù)據(jù)壓縮等方面取得了令人矚目的進(jìn)展和成就。鑒于此,數(shù)字濾波器的設(shè)計(jì)就顯得尤為重要。例如,在電力系統(tǒng)微機(jī)保護(hù)和二次控制中,很多信號(hào)的處理與分析都是基于對(duì)正弦基波和某些整次諧波的分析,而在系統(tǒng)電壓電流信號(hào)(尤其是故障舜變過(guò)程)中各種復(fù)雜成分,所以濾波器一直是電力系統(tǒng)二次裝置的關(guān)鍵部件。目前微機(jī)保護(hù)和二次信號(hào)處理軟件主要是采用的數(shù)字濾波器。

目前數(shù)字濾波器的設(shè)計(jì)有許多現(xiàn)成的高級(jí)語(yǔ)言設(shè)計(jì)程序,但他們都存在設(shè)計(jì)效率低,不具有可視圖形,不便于參數(shù)修改等缺點(diǎn),而MATLAB的FDATool工具為數(shù)字濾波器的研究和應(yīng)用提供了一個(gè)直觀、高效、便捷的利器。它以矩陣運(yùn)算為基礎(chǔ),把計(jì)算、可視化、仿真設(shè)計(jì)融合到一個(gè)交互式的工作環(huán)境中。尤其是MATLAB工具箱使各個(gè)領(lǐng)域的研究人員可以直觀方便地進(jìn)行科學(xué)研究和工程應(yīng)用。其中的信號(hào)處理、圖像處理等工具箱為數(shù)字濾波研究的蓬勃發(fā)展提供了有力的工具。本文介紹了一種基于MATLAB環(huán)境下對(duì)數(shù)字理濾波器進(jìn)行設(shè)計(jì)與仿真的方法。在基于MATLAB環(huán)境的數(shù)字濾波器的設(shè)計(jì)過(guò)程中,MATLAB工具箱提供了幾種模擬濾波的原型產(chǎn)生函數(shù)—貝塞爾低通模擬濾波器原型,巴特沃斯濾波器原型,切比雪夫(Ⅰ型、Ⅱ型)濾波器原型,橢圓濾波器原型等不同的模擬濾波器原型;模擬低通濾波器原型向低通、高通、帶通、帶阻的轉(zhuǎn)變函數(shù);從模擬濾波器向數(shù)字濾波器轉(zhuǎn)化的雙線性變換和沖激響應(yīng)不變法;模擬數(shù)字IIR濾波器階數(shù)選擇函數(shù)以及數(shù)字濾波器直接設(shè)計(jì)函數(shù)等。這一整套設(shè)計(jì)函數(shù)給在MATLAB中設(shè)計(jì)IIR數(shù)字帶來(lái)了極大的方便。                                

目錄

1.1數(shù)字濾波器概述……………………………………1

1.2 MATLAB概述………………………………………3

2.1 IIR濾波器設(shè)計(jì)的常用方法………………………5

2.2雙線性變換法設(shè)計(jì)IIR數(shù)字濾波器………………9

2.3 脈沖響應(yīng)不變法……………………………………14

2.4 完全濾波器的設(shè)計(jì)…………………………………18

數(shù)字濾波器及MATLAB語(yǔ)言概述

1.1數(shù)字濾波器概述

1.1.1數(shù)字濾波器的定義

數(shù)字濾波器是指完成信號(hào)濾波處理功能的,用有限精度算法實(shí)現(xiàn)的離散時(shí)間線性非時(shí)變系統(tǒng),其輸入是一組數(shù)字量,其輸出是經(jīng)過(guò)變換的另一組數(shù)字量。因此,數(shù)字濾波器本身既可以是用數(shù)字硬件裝配成的一臺(tái)完成給定運(yùn)算的專(zhuān)用的數(shù)字計(jì)算機(jī),也可以將所需要的運(yùn)算編成程序,讓通用計(jì)算機(jī)來(lái)執(zhí)行。數(shù)字濾波器,輸入輸出均為數(shù)字信號(hào),通過(guò)一定的運(yùn)算關(guān)系,改變輸入信號(hào)中所含頻率成分的相對(duì)比例,或則濾除某些頻率成分的器件。

對(duì)于數(shù)字濾波器而言,若系統(tǒng)函數(shù)為H(z),其脈沖響應(yīng)為h(n),輸入時(shí)間序列為x(n),則它們?cè)跁r(shí)域內(nèi)的關(guān)系式如下:

y(n)=h(n)﹡x(n)                       (1-1)

在Z域內(nèi),輸入和輸出存在如下關(guān)系:

Y(z)= H(z)X(z)                       (1-2)

式中,X(z)、Y(z)分別為x(n)和y(n)的Z變換。

在頻域內(nèi),輸入和輸出則存在如下關(guān)系:

Y(j)=H(j)X(j)                   (1-3)

式中,H(j)是數(shù)字濾波器的頻率特性;X(j)Y(j)分別為x(n)和y(n)的頻譜,而為數(shù)字角頻率。

1.1.2數(shù)字濾波器的分類(lèi)

數(shù)字濾波器可以有很多種分類(lèi)方法,但總體上可分為兩大類(lèi)。一類(lèi)稱為經(jīng)典濾波器,即一般的濾波器,其特點(diǎn)是輸入信號(hào)中的有用成分和希望濾除的成分占用不同的頻帶,通過(guò)合適的選頻濾波器可以實(shí)現(xiàn)濾波。例如,若輸入信號(hào)中有干擾,信號(hào)和干擾的頻帶互不重疊,則可濾出信號(hào)中的干擾得到純信號(hào)。但是,如果輸入信號(hào)中信號(hào)和干擾的頻帶相重疊,則干擾就不能被有效的濾出。另一類(lèi)稱為現(xiàn)代濾波器,如維納濾波器、卡爾曼濾波器等,其輸入信號(hào)中有用信號(hào)和希望濾除的成分頻帶重疊。對(duì)于經(jīng)典濾波器,從頻域上也可以分為低通、高通、帶通和帶阻濾波器。從時(shí)域特性上看,數(shù)字濾波器還可以分為有限沖激響應(yīng)數(shù)字濾波器(FIR)和無(wú)限沖激響應(yīng)數(shù)字濾波器(IIR)。

對(duì)于有限沖激響應(yīng)數(shù)字濾波器(FIR),其輸出y(n)只取決于有限個(gè)過(guò)去和現(xiàn)在的輸入,x(n),x(n-1),…,x(n-m),濾波器的輸入輸出關(guān)系可表示為

y(n)=                    (1-4)

對(duì)于無(wú)限沖激響應(yīng)數(shù)字濾波器(IIR),它的輸出不僅取決于過(guò)去和現(xiàn)在的輸入,而且還取決于過(guò)去的輸出,其差分方程為

y(n)+=           (1-5)

該差分方程的單位沖激響應(yīng)是無(wú)限延續(xù)的。

1.1.3常用濾波器的性能指標(biāo)

濾波器性能一般用系統(tǒng)頻率特性來(lái)說(shuō)明,常用的性能指標(biāo)主有以下三個(gè)參數(shù):

1. 幅度平方函數(shù)

                   (1-6)

該性能指標(biāo)主要用來(lái)說(shuō)明系統(tǒng)的幅頻特性。

2. 相位函數(shù)

        (1-7)

其中:

                  (1-8)

該指標(biāo)主要用來(lái)說(shuō)明系統(tǒng)的相位特性。

3. 群延時(shí)

                        (1-9)

定義為相位對(duì)角頻率導(dǎo)數(shù)的負(fù)值,說(shuō)明了濾波器對(duì)不同的頻率成分的平均延時(shí)。當(dāng)要求在通帶內(nèi)的群延遲是常數(shù)時(shí),濾波器相位響應(yīng)特性是線性的。

它以矩陣運(yùn)算為基礎(chǔ),把計(jì)算、可視化、仿真設(shè)計(jì)融合到一個(gè)交互式的工作環(huán)境中。尤其是MATLAB工具箱使各個(gè)領(lǐng)域的研究人員可以直觀方便地進(jìn)行科學(xué)研究和工程應(yīng)用。其中的信號(hào)處理、圖像處理等工具箱為數(shù)字濾波研究的蓬勃發(fā)展提供了有力的工具。

實(shí)際設(shè)計(jì)中所能得到的濾波器的頻率特性與理想濾波器的頻率特性之間存在著一些顯著的差別,現(xiàn)以低通濾波器的頻率特性為例進(jìn)行說(shuō)明。

1.理想低通濾波器的特性:

設(shè)濾波器輸入信號(hào)為,信號(hào)中混入噪音,它們有不同的頻率成分。濾波器的單位脈沖響應(yīng)為。則理想濾波器輸出為:

             (1-10)

即噪音信號(hào)被濾除,而信號(hào)無(wú)失真只有延時(shí)和線性放大。對(duì)上式作傅里葉變換得:

  (1-11)

假定噪音信號(hào)被濾除,即:

                 (1-12)

整理得:

              (1-13)

圖1-1 理想低通濾波器頻率特性       圖1-2 理想濾波器的單位脈沖響應(yīng)

假定信號(hào)頻率成分為:,噪音頻率成分為。則完成濾波的理想低通濾波器特性是:

       (1-14)

即:

                (1-15)

                    (1-16)

系統(tǒng)的單位脈沖響應(yīng)為:

       (1-17)

理想低通濾波器的頻率特性如圖1-1所示,單位脈沖響應(yīng)的波形如圖1-2所示。

理想濾波器具有非因果、無(wú)限長(zhǎng)的單位脈沖響應(yīng)和不連續(xù)的頻率特性,要用穩(wěn)定的線性時(shí)不變(LTI)系統(tǒng)來(lái)實(shí)現(xiàn)這樣的特性是不可能的。工程上是用脈沖響應(yīng)為有限長(zhǎng)的、因果的、穩(wěn)定的線性時(shí)不變系統(tǒng)或具有連續(xù)頻率特性的線性時(shí)不變系統(tǒng)來(lái)逼近理想特性。在滿足一定的誤差要求的情況下來(lái)實(shí)現(xiàn)理想濾波特性。因此實(shí)際的濾波器的頻率特性如圖1-3所示。

其中:

——截止頻率

——阻帶起始頻率

——過(guò)渡帶寬

在通帶內(nèi)幅度響應(yīng)以的誤差接近于1,即:

             (1-18)

為阻帶起始頻率,在阻帶內(nèi)幅度響應(yīng)以小于的誤差接近于零,即:

               (1-19)

為了使逼近理想低通濾波器的方法成為可能,還必須提供一帶寬為的不為零的過(guò)渡帶。在這個(gè)頻帶內(nèi),幅度響應(yīng)從通帶平滑的下落到阻帶。

1.2 MATLAB概述

MATLAB是美國(guó)MathWorks公司開(kāi)發(fā)的一種功能極其強(qiáng)大的高技術(shù)計(jì)算語(yǔ)言和內(nèi)容極其豐富的軟件庫(kù),集數(shù)值計(jì)算、矩陣運(yùn)算和信號(hào)處理與顯示于一身。該軟件最初是由美國(guó)教授Cleve Moler創(chuàng)立的。1980年前后,他在教線性代數(shù)課程時(shí),發(fā)現(xiàn)用其他高級(jí)語(yǔ)言編程時(shí)極不方便,便構(gòu)思開(kāi)發(fā)了MATLAB,即矩陣實(shí)驗(yàn)室(Matrix Laboratory)。該軟件利用了當(dāng)時(shí)代表數(shù)值線性代數(shù)領(lǐng)域最高水平的EISPACK和LINPACK兩大軟件包,并且利用Fortran語(yǔ)言編寫(xiě)了最初的一套交互式軟件系統(tǒng),MATLAB的最初版本便由此產(chǎn)生了。      

最初的MATLAB由于語(yǔ)言單一,只能進(jìn)行矩陣的運(yùn)算,繪圖也只能用原始的描點(diǎn)法,內(nèi)部函數(shù)只有幾十個(gè),因此功能十分簡(jiǎn)單。1984年該公司推出了第一個(gè)MATLAB的商業(yè)版,并用C語(yǔ)言作出了全部改寫(xiě),F(xiàn)在的MATLAB程序是MathWorks公司用C語(yǔ)言開(kāi)發(fā)的,第一版由steve Bangert主持開(kāi)發(fā)編譯解釋程序,Steve Kleiman完成圖形功能的設(shè)計(jì),John Little和Cleve Moler主持開(kāi)發(fā)了各類(lèi)數(shù)學(xué)分分析的子模塊,撰寫(xiě)用戶指南和大部分的M文件。接著又添加了豐富的圖形圖像處理、多媒體功能、符號(hào)運(yùn)算和與其它流行軟件的接口功能,使MATLAB的功能越來(lái)越強(qiáng)大。

MTALAB系統(tǒng)主要由以下五個(gè)部分組成:

(1)MATALB語(yǔ)言體系。 MATLAB是高層次的矩陣/數(shù)組語(yǔ)言,具有條件控制、函數(shù)調(diào)用、數(shù)據(jù)結(jié)構(gòu)、輸入輸出、面向?qū)ο蟮瘸绦蛘Z(yǔ)言特性。利用它既可以進(jìn)行小規(guī)模端程,完成算法設(shè)計(jì)和算法實(shí)驗(yàn)的基本任務(wù),也可以進(jìn)行大規(guī)模編程,開(kāi)發(fā)復(fù)雜的應(yīng)用程序。

(2)MATLAB工作環(huán)境 。這是對(duì)MATLAB提供給用戶使用的管理功能的總稱。包括管理工作空間中的變量據(jù)輸入輸出的方式和方法,以及開(kāi)發(fā)、調(diào)試、管理M文件的各種工具。

(3)圖形句相系統(tǒng) 。這是MATLAB圖形系統(tǒng)的基礎(chǔ),包括完成2D和3D數(shù)據(jù)圖示、圖像處理、動(dòng)畫(huà)生成、圖形顯示等功能的高層MATLAB命令,也包括用戶對(duì)圖形圖像等對(duì)象進(jìn)行特性控制的低層MATLAB命令,以及開(kāi)發(fā)GUI應(yīng)用程序的各種工具。

(4)MATLAB數(shù)學(xué)函數(shù)庫(kù)。這是對(duì)MATLAB使用的各種數(shù)學(xué)算法的總稱。包括各種初等函數(shù)的算法,也包括矩陣運(yùn)算、矩陣分析等高層次數(shù)學(xué)算法。

(5)MATLAB應(yīng)用程序接口(API)。這是MATLAB為用戶提供的一個(gè)函數(shù)庫(kù),使得用戶能夠在MATLAB環(huán)境中使用C程序或FORTRAN程序,包括從MATLAB中調(diào)用于程序(動(dòng)態(tài)鏈接),讀寫(xiě)MAT文件的功能。

除此之外,MATLAB系統(tǒng)還具有如下特點(diǎn):

(1)具有易學(xué)易用的語(yǔ)言體系;

(2)具有交互式的工作環(huán)境;

(3)具有多層面的圖像處理系統(tǒng);

(4)具有豐富高效的MATLAB工具箱;

(5)具有便利的程序接口(API);

(6)應(yīng)用領(lǐng)域廣泛;

(7)嵌入了面向?qū)ο缶幊陶Z(yǔ)言。



濾波器的設(shè)計(jì)

2.1 IIR濾波器設(shè)計(jì)的常用方法

IIR數(shù)字濾波器的系統(tǒng)函數(shù)為:

       (2-1)

IIR濾波器設(shè)計(jì)就是根據(jù)性能指標(biāo)要求,設(shè)計(jì)濾波器的分子和分母多項(xiàng)式。IIR數(shù)字濾波器的設(shè)計(jì)通常借助于模擬濾波器原型,再將模擬濾波器轉(zhuǎn)換為數(shù)字濾波器。模擬濾波器的理論和設(shè)計(jì)方法已發(fā)展得相當(dāng)成熟,且有一些典型的模擬濾波器供我們選擇,如巴特沃斯(Butterworth)濾波器、切比雪夫(Chebyshev)濾波器、橢圓(Cauer)濾波器、貝塞爾(Bessel)濾波器等,這些典型的濾波器各有特點(diǎn)。本文采用經(jīng)典設(shè)計(jì)法中的模擬濾波器變換法和完全設(shè)計(jì)函數(shù)法分別來(lái)設(shè)計(jì)數(shù)字濾波器。

用MATLAB進(jìn)行典型的數(shù)字濾波器的設(shè)計(jì),一般步驟如下:

(1)按一定規(guī)則將給出的數(shù)字濾波器的技術(shù)指標(biāo)轉(zhuǎn)換成模擬低通濾波器的技術(shù)指標(biāo);

(2)根據(jù)轉(zhuǎn)換后的技術(shù)指標(biāo)使用濾波器階數(shù)選擇函數(shù),確定最小階數(shù)N和固有頻率Wn,根據(jù)選用的模擬低通濾波器的類(lèi)型可分別用函數(shù):buttord、cheb1ord、cheb2ord、ellipord等;

(3)運(yùn)用最小階數(shù)N產(chǎn)生模擬濾波器原型,模擬低通濾波器的創(chuàng)建函數(shù)有:buttap、cheb1ap、cheb2ap、ellipap等;

(4)運(yùn)用固有頻率Wn把模擬低通濾波器原型轉(zhuǎn)換成模擬低通、高通、帶通、帶阻濾波器,可分別用函數(shù)lp2lp、lp2hp、lp2bp、lp2bs;

(5)運(yùn)用沖激響應(yīng)不變法或雙線性變換法把模擬濾波器轉(zhuǎn)換成數(shù)字濾波器,分別用函數(shù)impinvar和bilinear來(lái)實(shí)現(xiàn)。

2.2雙線性變換法設(shè)計(jì)IIR數(shù)字濾波器

在MATLAB中,雙線性變換法的調(diào)用函數(shù)是bilinear。其調(diào)用格式為:

a. [zd,pd,kd]= bilinear(z,p,k,fs)

b. [zd,pd,kd]= bilinear(z,p,k,fs,fp)

c. [numd,dend]=bilinear(num,den,fs)

d. [numd,dend]=bilinear(num,den,fs,fp)

e. [Aa,Bb,Cc,Dd]=bilinear(A,B,C,D,fs)

f. [Aa,Bb,Cc,Dd]=bilinear(A,B,C,D,fs,fp)

[zd,pd,kd]=bilinear(z,p,k,fs)是把模擬濾波器的零極點(diǎn)模型轉(zhuǎn)換為數(shù)字濾波器的零極點(diǎn)模型,fs為采樣頻率,z,p,k分別為濾波器的零點(diǎn)、極點(diǎn)和增益;

[numd,dend]=bilinear(num,den,fs)是把模擬濾波器的傳遞函數(shù)模型轉(zhuǎn)換為數(shù)字濾波器的傳遞模型;

[Aa,Bb,Cc,Dd]=bilinear(A,B,C,D,fs)是把模擬濾波器的狀態(tài)方程模型轉(zhuǎn)換為數(shù)字濾波器狀態(tài)方程模型。

例如,用雙線性變換法設(shè)計(jì)一個(gè)巴特沃思數(shù)字低通濾波器,技術(shù)指標(biāo)如下:通帶截止頻率=24k rad/s,阻帶截止頻率=28k rad/s,通帶波紋系數(shù)=0.3dB, 阻帶波紋系數(shù)=50dB,采樣頻率fs=20000Hz。

程序如下:

[N,Wn]=buttord(wp,ws,Rp,Rs,’s’)    %估計(jì)濾波器最小階數(shù)

[z,p,k]=buttap(N);

[Bap,Aap]=zp2tf(z,p,k);

[b,a]=lp2lp(Bap,Aap,Wn);

[bz,az]=bilinear(b,a,fs)

freqz(bz,az,Nn,fs)

程序在MATLAB環(huán)境下的運(yùn)行及結(jié)果如圖2-1所示:

結(jié)果如下:

N =11

Wn =1.4892e+004

bz =

  Columns 1 through 6

    0.0110    0.1211    0.6055    1.8166    3.6333    5.0866

  Columns 7 through 12

    5.0866    3.6333    1.8166    0.6055    0.1211    0.0110

az =

  Columns 1 through 6

1.0000    2.7098    4.6379    5.2252    4.3685    2.7207

  Columns 7 through 12

1.2885    0.4561    0.1181    0.0211    0.0023    0.0001

圖2-1  巴特沃思數(shù)字低通濾波器幅頻-相頻特性

2.3 脈沖響應(yīng)不變法

脈沖響應(yīng)不變法就是要求數(shù)字濾波器的脈沖響應(yīng)序列h(n)與模擬濾波器的脈沖響應(yīng)的采樣值相等,即

h(n)==           (2-2)            

式中,T為采樣周期。根據(jù)模擬信號(hào)的拉普拉斯變換與離散序列的Z變換之間的關(guān)系,我們知道

                (2-3)                                 

此式表明,的拉普拉斯變換在s平面上沿虛軸,按照周期=2/T延拓后,按式z=,進(jìn)行Z變換,就可以將Ha(s)映射為H(z)。事實(shí)上,用脈沖響應(yīng)不變法設(shè)計(jì)IIR濾波器,只適合于Ha(s)有單階極點(diǎn),且分母多項(xiàng)式的階次高于分子多項(xiàng)式階次的情況。將Ha(s)用部分分式表示:     

Ha(s)=LT[h]=         (2-4)           

式中,LT[·]代表拉普拉斯變換,為的單階極點(diǎn)。將Ha(s)進(jìn)行拉普拉斯反變換,即可得到

=                 (2-5)   

式中,u(t)是單位階躍函數(shù)。則的離散序列(對(duì)它進(jìn)行抽樣):h(n)==             (2-6)

對(duì)h(n)進(jìn)行z變換之后,可以得到數(shù)字濾波器的系統(tǒng)函數(shù)H(z)

H(z)==         (2-7)  

對(duì)比Ha(s)與H(z),我們會(huì)發(fā)現(xiàn):s域中Ha(s)的極點(diǎn)是,映射到z平面之后,其極點(diǎn)變成了,而系數(shù)沒(méi)有發(fā)生變化,仍為。因此,在設(shè)計(jì)IIR濾波器時(shí),我們只要找出模擬濾波器系統(tǒng)函數(shù)Ha(s)的極點(diǎn)和系數(shù),通過(guò)脈沖響應(yīng)不變法,代入H(z)的表達(dá)式中,即可求出H(z),實(shí)現(xiàn)連續(xù)系統(tǒng)的離散化。

但是脈沖響應(yīng)不變法只適合于設(shè)計(jì)低通和帶通濾波器,而不適合于設(shè)計(jì)高通和帶阻濾波器。因?yàn),如果模擬信號(hào)的頻帶不是介于之間,則會(huì)在的奇數(shù)倍附近產(chǎn)生頻率混疊現(xiàn)象,映射到z平面后,則會(huì)在附近產(chǎn)生頻率混疊現(xiàn)象。從而使所設(shè)計(jì)的數(shù)字濾波器不同程度的偏離模擬濾波器在附近的頻率特性,嚴(yán)重時(shí)使數(shù)字濾波器不滿足給定的技術(shù)指標(biāo)。為此,希望設(shè)計(jì)的濾波器是帶限濾波器,如果不是帶限的,例如,高通濾波器、帶阻濾波器,需要在高通濾波器、帶阻濾波器之前加保護(hù)濾波器,濾出高于折疊頻率/T以上的頻帶,以免產(chǎn)生頻率混疊現(xiàn)象。但這樣會(huì)增加系統(tǒng)的成本和復(fù)雜性。因此,高通與帶阻濾波器不適合用這種方法。

在MATLAB中,脈沖響應(yīng)不變法的調(diào)用函數(shù)是impinvar,其調(diào)用格式為:

a. [bz,az]=impinvar(b,a,fs)

b. [bz,az]=impinvar(b,a)

c. [bz,az]=impinvar(b,a,fs,tol)

該函數(shù)的功能是將分子向量為b、分母向量為a的模擬濾波器,轉(zhuǎn)換為分子向量為bz、分母向量為az的數(shù)字濾波器。fs為采樣頻率,單位為Hz,默認(rèn)值為1Hz。tol指誤差容限,表示轉(zhuǎn)換后的離散系統(tǒng)函數(shù)是否有重復(fù)的極點(diǎn)。

例如,用脈沖響應(yīng)不變法設(shè)計(jì)一個(gè)契比雪夫1型數(shù)字低通濾波器,指標(biāo)要求:通帶截止頻率=1000Hz,阻帶截止頻率=1200Hz,采樣頻率fs=5000Hz,通帶衰減系數(shù)=0.3dB,阻帶衰減系數(shù)=40dB。

程序如下:

wp=1000*2*pi;ws=1200*2*pi;fs=2500;Rp=0.3;Rs=40;

[N,Wn]=cheb1ord(wp,ws,Rp,Rs,'s'); %估計(jì)濾波器最小階數(shù)

[z,p,k]=cheb1ap(N,Rp);            %模擬濾波器函數(shù)引用

[A,B,C,D]=zp2ss(z,p,k);           %返回狀態(tài)轉(zhuǎn)移矩陣形式

[AT,BT,CT,DT]=lp2lp(A,B,C,D,Wn); %頻率轉(zhuǎn)換

[b,a]=ss2tf(AT,BT,CT,DT);         %返回傳遞函數(shù)形式

[bz,az]=impinvar(b,a,fs);           %調(diào)用脈沖相應(yīng)不變法

[H,W]=freqz(bz,az);               %返回頻率響應(yīng)

plot(W*fs/(2*pi),abs(H));           %畫(huà)圖

grid;

xlabel('frequency/Hz');         

ylabel('magnitude');

N,Wn

N =11  Wn =6.2832e+003

程序在MATLAB環(huán)境下的運(yùn)行及結(jié)果如圖2-2所示:

圖 2-2  契比雪夫型數(shù)字低通濾波器幅頻特性曲線

2.4 完全濾波器的設(shè)計(jì)

在MATLAB信號(hào)處理工具箱提供了幾個(gè)直接設(shè)計(jì)IIR數(shù)字濾波器的函數(shù),所用到的函數(shù)有butter、cheby1、cheb2ord、ellipd以及besself等。Butter用來(lái)直接設(shè)計(jì)巴特沃思數(shù)字濾波器,cheby1用來(lái)直接設(shè)計(jì)切比雪夫型濾波器,cheb2ord用來(lái)設(shè)計(jì)切比雪夫型濾波器,ellipd用來(lái)設(shè)計(jì)橢圓濾波器,besself用來(lái)設(shè)計(jì)貝塞爾濾波器。完全濾波器的設(shè)計(jì)就是根據(jù)設(shè)計(jì)要求,直接調(diào)用函數(shù)來(lái)設(shè)計(jì)所需要的數(shù)字濾波器。主要函數(shù)的特點(diǎn)如下:

1、設(shè)計(jì)Butterworth濾波器用函數(shù)butter(),可以設(shè)計(jì)低通、高通、帶通和帶阻的數(shù)字和模擬濾波器,其特性是通帶內(nèi)的幅度響應(yīng)最大限度的平滑,但損失了截止頻率處的下降斜度。

2、設(shè)計(jì)Chebyshevl型濾波器用函數(shù)chebyl()?梢栽O(shè)計(jì)低通、高通、帶通和帶阻的數(shù)字和模擬Chebyshevl型濾波器,其通帶內(nèi)為等波紋,阻帶內(nèi)為單調(diào)。Chebyshevl型濾波器的下降斜度比II型大,但其代價(jià)是通帶內(nèi)波紋較大。

3、設(shè)計(jì)Chebyshev11型濾波器用函數(shù)cheby2()。可以設(shè)計(jì)低通、高通、帶通和帶阻的數(shù)字和模擬ChebyshevII型濾波器,其通帶內(nèi)為單調(diào),阻帶內(nèi)等波紋。ChebyshevII型濾波器的下降斜度比I型小,但其阻帶內(nèi)波紋較大。

4、設(shè)計(jì)橢圓濾波器用函數(shù)ellip(),與chebyl、cheby2類(lèi)似,可以設(shè)計(jì)低通、高通、帶通和帶阻的數(shù)字和模擬濾波器。與Butterworth和Chebyshev濾波器相比,ellip函數(shù)可以得到下降斜度更大的濾波器,得通帶和阻帶均為等波紋。一般情況下,橢圓濾波器能以最低的階實(shí)現(xiàn)指定的性能指標(biāo)。

以上幾種函數(shù)在低通濾波器設(shè)計(jì)中的比較:

設(shè):Wp=30Hz,Ws=35Hz,F(xiàn)s=100,Rp=0.sdB,Rs=4odB分別用巴特沃斯(Butterworth)濾波器、切比雪夫(chebyshev)濾波器、橢圓(Cauer)濾波器,程序設(shè)計(jì)如下:

巴特沃斯低通濾波器:

[nl,Wnl]=buttord(wp/(Fs/2),ws/(Fs/2),rp,rs,’z’);

[numl,denl]=butter(nl,Wnl);

切比雪夫I型低通濾波器:

[n2,Wn2]=cheb1ord(wp/(Fs/2),ws/(Fs/2),rp,rs,’z’):

[num2,den2]=ehebyl(n2,rp,Wn2);

切比雪夫II型低通濾波器:

[n3,Wn3]=ehebZord(wp/(Fs/2),ws/(Fs/2),rp,rs,’z’);

[num3,den3]=cheby2(n3,rp,Wn3):

橢圓低通濾波器:

[n4,Wn4]=ellipord(wp/(Fs/2),ws/(Fs/2),rp,rs,’z’):

[num4,den4]=ellip(n3,rp,rs,Wn3);



完整的Word格式文檔51黑下載地址:
2017MATLAB課程設(shè)計(jì)封面格式.doc (174.5 KB, 下載次數(shù): 12)


分享到:  QQ好友和群QQ好友和群 QQ空間QQ空間 騰訊微博騰訊微博 騰訊朋友騰訊朋友
收藏收藏1 分享淘帖 頂 踩
回復(fù)

使用道具 舉報(bào)

本版積分規(guī)則

手機(jī)版|小黑屋|51黑電子論壇 |51黑電子論壇6群 QQ 管理員QQ:125739409;技術(shù)交流QQ群281945664

Powered by 單片機(jī)教程網(wǎng)

快速回復(fù) 返回頂部 返回列表