畢業(yè)論文-基于C++數(shù)字抽取濾波器的設(shè)計與實現(xiàn)_第1頁
畢業(yè)論文-基于C++數(shù)字抽取濾波器的設(shè)計與實現(xiàn)_第2頁
畢業(yè)論文-基于C++數(shù)字抽取濾波器的設(shè)計與實現(xiàn)_第3頁
畢業(yè)論文-基于C++數(shù)字抽取濾波器的設(shè)計與實現(xiàn)_第4頁
畢業(yè)論文-基于C++數(shù)字抽取濾波器的設(shè)計與實現(xiàn)_第5頁
已閱讀5頁,還剩67頁未讀 繼續(xù)免費閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報或認(rèn)領(lǐng)

文檔簡介

1、 長江大學(xué)工程技術(shù)學(xué)院畢業(yè)設(shè)計(論文)題 目 名 稱基于C+數(shù)字抽取濾波器的設(shè)計與實現(xiàn)系 部信息系專 業(yè) 班 級電信61102班學(xué) 生 姓 名指 導(dǎo) 教 師輔 導(dǎo) 教 師時 間2014年9月至2015年6月 頁 (共 49 頁)基于C+數(shù)字抽取濾波器的設(shè)計與實現(xiàn)1 前 言信號與信號處理是信息科學(xué)中近幾十年來發(fā)展最為迅速的學(xué)科之一。長期以來,信號處理技術(shù)一直用于轉(zhuǎn)換、產(chǎn)生模擬或數(shù)字信號,其中最為頻繁應(yīng)用的領(lǐng)域就是信號的濾波。數(shù)字濾波是語音、圖像處理、模式識別和譜分析等應(yīng)用中的一個基本處理部件,它可以滿足濾波器對幅度和相位特性的嚴(yán)格要求,避免模擬濾波器無法克服的電壓漂移、溫度漂移和噪聲等問題。我的

2、畢業(yè)設(shè)計的課題是基于C+數(shù)字抽取濾波器的設(shè)計與實現(xiàn),其主要目的是通過此次課程設(shè)計進(jìn)一步學(xué)習(xí)和鞏固數(shù)字信號處理及其相關(guān)知識,并學(xué)會利用所學(xué)的知識能力,在設(shè)計過程中能綜合運用所學(xué)知識內(nèi)容,進(jìn)一步熟悉和掌握Matlab的使用方法;對數(shù)字濾波器的原理有較深的了解;為即將進(jìn)入社會參加工作打下堅實的基礎(chǔ); 掌握收集資料、消化資料和綜合資料的能力等等。從事電子通信業(yè)而不能熟練操作使用Matlab電子線路設(shè)計軟件,在工作和學(xué)習(xí)中將是寸步難行的。在數(shù)學(xué)、電子、金融等行業(yè),使用Matlab等計算機(jī)軟件對產(chǎn)品進(jìn)行設(shè)計、仿真在很早以前就已經(jīng)成為了一種趨勢,這類軟件的問世也極大地提高了設(shè)計人員在通信、電子等行業(yè)的產(chǎn)品設(shè)

3、計質(zhì)量與效率。同時熟練的使用C+也是非常重要的,C+兼具C(中級語言)和面向?qū)ο蟪绦蛟O(shè)計語言的特性,既可以用于設(shè)計性能要求比較高的系統(tǒng)級程序,又可以用來設(shè)計應(yīng)用軟件,設(shè)計出程序易于維護(hù)、易于重用、效率高。設(shè)計得當(dāng)?shù)脑?,還易于移植。眾所周知,實際過程中信號傳輸都要經(jīng)過調(diào)制與解調(diào)這一過程,由于消息傳過來的原始信號即調(diào)制信號具有頻譜較低的頻譜分量,這種信號在許多信道中不宜傳輸。因而,在通信系統(tǒng)的發(fā)送端通常需要有調(diào)制過程,反之在接收端則需要有解調(diào)過程?;贑+數(shù)字抽取濾波器的設(shè)計與實現(xiàn)2 緒論2.1 數(shù)字抽取濾波器的研究背景與意義在數(shù)字信號處理中,濾波占有極其重要的地位。數(shù)字濾波是語音和圖象處理、模式

4、識優(yōu)點,它可以滿足濾波器對幅度和相位特性的嚴(yán)格要求,可以避免模擬濾波器所無法克服的電壓漂移、溫度漂移和噪聲等問題。當(dāng)今,數(shù)字信號處理 (DSP:Digtal Signal Processing)技術(shù)正飛速發(fā)展,它不但自成一門學(xué)科,更是以不同形式影響和滲透到其他學(xué)科:它與國民經(jīng)濟(jì)息息相關(guān),與國防建設(shè)緊密相連;它影響或改變著我們的生產(chǎn)、生活方式,因此受到人們普遍的關(guān)注。數(shù)字化、智能化和網(wǎng)絡(luò)化是當(dāng)代信息技術(shù)發(fā)展的大趨勢,而數(shù)字化是智能化和網(wǎng)絡(luò)化的基礎(chǔ),實際生活中遇到的信號多種多樣,例如廣播信號、電視信號、雷達(dá)信號、通信信號、導(dǎo)航信號、射電天文信號、生物醫(yī)學(xué)信號、控制信號、氣象信號、地震勘探信號、機(jī)械

5、振動信號、遙感遙測信號,等等。上述這些信號大部分是模擬信號,也有小部分是數(shù)字信號。模擬信號是自變量的連續(xù)函數(shù),自變量可以是一維的,也可以是二維或多維的。大多數(shù)情況下一維模擬信號的自變量是時間,經(jīng)過時間上的離散化(采樣)和幅度上的離散化(量化),這類模擬信號便成為一維數(shù)字信號。因此,數(shù)字信號實際上是用數(shù)字序列表示的信號,語音信號經(jīng)采樣和量化后,得到的數(shù)字信號是一個一維離散時間序列;而圖像信號經(jīng)采樣和量化后,得到的數(shù)字信號是一個二維離散空間序列。數(shù)字信號處理,就是用數(shù)值計算的方法對數(shù)字序列進(jìn)行各種處理,把信號變換成符合需要的某種形式。例如,對數(shù)字信號經(jīng)行濾波以限制他的頻帶或濾除噪音和干擾,或?qū)⑺麄?/p>

6、與其他信號進(jìn)行分離;對信號進(jìn)行頻譜分析或功率譜分析以了解信號的頻譜組成,進(jìn)而對信號進(jìn)行識別;對信號進(jìn)行某種變換,使之更適合于傳輸,存儲和應(yīng)用;對信號進(jìn)行編碼以達(dá)到數(shù)據(jù)壓縮的目的,等等。數(shù)字濾波技術(shù)是數(shù)字信號分析、處理技術(shù)的重要分支。無論是信號的獲取、傳輸,還是信號的處理和交換都離不開濾波技術(shù),它對信號安全可靠和有效靈活地傳輸是至關(guān)重要的。在所有的電子系統(tǒng)中,使用最多技術(shù)最復(fù)雜的要算數(shù)字濾波器了。數(shù)字濾波器的優(yōu)劣直接決定產(chǎn)品的優(yōu)劣。緒論2.2 數(shù)字抽取濾波器的設(shè)計與實踐本文主要介紹數(shù)字信號處理中的基本概念,數(shù)字濾波器的設(shè)計方法,抽取的概念,抽取濾波的原理,和幾種常用的濾波器及其使用的條件與各自的

7、特點。可以很方便地運用MATLAB對濾波器進(jìn)行理論的分析,再用C+實現(xiàn)一個簡單的抽取濾波的過程,設(shè)計抽取濾波器的過程是對理論知識學(xué)習(xí)的過程,也是對數(shù)字信號處理軟件熟悉的過程。2.3 數(shù)字抽取濾波器的作用與優(yōu)勢濾波器是指用來對輸入信號進(jìn)行濾波的硬件或軟件。如果濾波器的輸入、輸出都是離散時間信號,則該濾波器的沖激響應(yīng)也必然離散,這樣的濾波器定義為數(shù)字濾波器。數(shù)字濾波器在數(shù)字信號處理的各種應(yīng)用中發(fā)揮著十分重要的作用它是通過對采樣數(shù)據(jù)信號進(jìn)行數(shù)學(xué)運算處理來達(dá)到頻域濾波的目的。數(shù)字濾波器是提取有用信息非常重要、非常靈活的方法,是現(xiàn)代信號處理的重要內(nèi)容。因而在數(shù)字通信、語音圖象處理、譜分析、模式識別、相對

8、于模擬濾波器,數(shù)字濾波器沒有漂移,能夠處理低頻信號,頻率響應(yīng)特性可做成非常接近于理想的特性,且精度可以達(dá)到很高,容易集成等,這些優(yōu)勢決定了數(shù)字濾波器的應(yīng)用將會越來越廣泛。Signal處理器的出現(xiàn)和的迅速發(fā)展也促進(jìn)了數(shù)字濾波器的發(fā)展,并為數(shù)字濾波器的硬件實現(xiàn)提供了更多的選擇。相對于模擬濾波器數(shù): 精度高:10-3 以上,而數(shù)字系統(tǒng)17位字長就可以達(dá)到10-5 精度。因此在一些精度要求很高的濾波系統(tǒng)中,就必須采用數(shù)字濾波器來實現(xiàn)。 靈活性大:數(shù)字濾波器的性能主要取決于乘法器的各系數(shù),而這些系數(shù)是存放在系統(tǒng)存儲器中的,只要改變存儲器存放的系數(shù),就可以得到不同的系統(tǒng),這些都比改變模擬濾波器系統(tǒng)的特性要

9、容易和方便的多,因而具有很大的靈活性。 高:“0”和“1”,受噪聲及環(huán)境條件的影響小,而模擬濾可靠性波器各個參數(shù)都有一定的溫度系數(shù),易受溫度、振動、電磁感應(yīng)等影響。并基于C+數(shù)字抽取濾波器的設(shè)計與實現(xiàn)且數(shù)字濾波器多采用大規(guī)模集成電路,大規(guī)模集成電路的故障率遠(yuǎn)比眾多分立元件構(gòu)成的模擬系統(tǒng)的故障率低。易于大規(guī)模集成:便于大規(guī)模集成,大規(guī)模生產(chǎn),且數(shù)字濾波器電路主要工作在截止或飽和狀態(tài),對電路參數(shù)要求不嚴(yán)格,因此產(chǎn)品的成品率高,價格也日趨降低。相對于模擬濾波器,數(shù)字濾波器在體積、重量和性能方面的優(yōu)勢己越來越明顯。 并行處理:比如數(shù)字濾波器可以采用DSP處理器來實現(xiàn)并行處理。Tl公司系列的芯片采用8條

10、指令并行處理的結(jié)構(gòu),時鐘頻率為的DSP芯片。可高達(dá)每秒執(zhí)行百萬條指令)。 2.4 數(shù)字抽取濾波器的應(yīng)用現(xiàn)狀和發(fā)展趨勢在信號處理過程中,所處理的信號往往混有噪音,從接收到的信號中消除或減弱噪音是信號傳輸和處理中十分重要的問題。在近代電信設(shè)備和各類控制系統(tǒng)中,數(shù)字濾波器應(yīng)用極為廣泛。語音處理是最早應(yīng)用數(shù)字濾波器的領(lǐng)域之一,也是最早推動數(shù)字信號處理理論發(fā)展的領(lǐng)域之一。另外,數(shù)字濾波技術(shù)已成功的應(yīng)用于靜止圖像和活動圖像的恢復(fù)和增強、數(shù)據(jù)壓縮、去噪音和干擾、圖像識別以及層析x射線攝影,還成功的應(yīng)用于雷達(dá)、聲納、超聲波和紅外信號的可見圖像成像。其他的,在通信、電視、雷達(dá)、聲納、生物醫(yī)學(xué)信號處理、音樂等領(lǐng)域

11、也有很大的應(yīng)用價值?,F(xiàn)在以及未來的日子里,數(shù)字濾波器在軍事上以被大量應(yīng)用于導(dǎo)航、制導(dǎo)、電子對抗、戰(zhàn)場偵察;在電力系統(tǒng)中被應(yīng)用于能源分布規(guī)劃和自動檢測;在環(huán)境保護(hù)中被應(yīng)用于對空氣污染和噪聲干擾的自動監(jiān)測;在經(jīng)濟(jì)領(lǐng)域中被應(yīng)用于股票市場預(yù)測和經(jīng)濟(jì)效益分析,等等越來越廣泛的應(yīng)用范圍。隨著科學(xué)技術(shù)的發(fā)展,人們對數(shù)據(jù)轉(zhuǎn)換的精度要求越來越高,例如在現(xiàn)代地震勘探中,地震信號的動態(tài)范圍大于12dB,為了能獲得高分辨的地震數(shù)據(jù),要求采集系統(tǒng)的動態(tài)范圍必須大于120dB,畸變小于百萬分之五,甚至百萬分之一,這就對采集系統(tǒng)的A/D轉(zhuǎn)換器提出了很高的要求。同樣,在用數(shù)字方法產(chǎn)生高精度的模擬信號時,為了使產(chǎn)生的信號的信噪

12、比諧波畸變等指標(biāo)優(yōu)于百萬分之五,要求A/D轉(zhuǎn)換器必須具有20位以上的分辨率,而抽取濾波器作為A/D轉(zhuǎn)換器中的重要的一部分,也數(shù)字抽取濾波器的分類及其原理分析必須在算法的研究,在物理實現(xiàn)的功能器件,在設(shè)計的思路要不斷完善,在設(shè)計的方法上有所突破,在不同的環(huán)境中都能有較強的可操作性,使用范圍更加廣闊。-隨著電子工業(yè)的發(fā)展,對濾波器的性能要求越來越高,功能也越來越多,并且要求它們向集成方向發(fā)展。我國濾波器研制和生產(chǎn)與上述要求相差甚遠(yuǎn),為縮短這個差距,電子工程和科技人員負(fù)有重大的歷史責(zé)任。3 數(shù)字抽取濾波器的分類及其原理分析3.1 幾種頻率之間的關(guān)系在分析抽取濾波之前,必須理解數(shù)字信號處理中常見的幾種

13、頻率之間的轉(zhuǎn)化關(guān)系。首先是連續(xù)時間信號的模擬頻率,用表示,他是一個連續(xù)變量,其單位為赫茲(Hz),另一個模擬頻率為角頻率,用 表示,單位為弧度/秒(rad/s)。他與的關(guān)系為。在模擬信號與系統(tǒng)中,對頻率的取值范圍沒有限制,如果包括負(fù)頻率在內(nèi),可取的所有值,完全由信號的特性決定。離散信號數(shù)字頻率的概念,用表示,單位為弧度rad。并通過采樣信號的頻譜,建立了模擬頻率與數(shù)字頻率之間的關(guān)系為 如果離散信號是由模擬信號采樣而得到的,由上式可見,對應(yīng)于模擬頻率的,按照采樣定理,是采樣信號能取的最高頻率,因此也就是數(shù)字頻率能取的最高頻率。由于離散信號的頻譜具有周期性,因此與模擬頻率不同,的有效值范圍在,或。

14、范圍的頻譜與范圍的頻譜相同。注意,雖然信號在時域是離散的,但仍然是連續(xù)變量。我們將數(shù)字頻率進(jìn)行了離散化,根據(jù)DFT的長度N,對在范圍內(nèi)進(jìn)行了N點的等間隔采樣,每個樣點的間隔為,并引入了離散的數(shù)字頻率的概念,用k表示。k的取值范圍為的整數(shù),因此可得出離散頻率k與數(shù)字頻率和模擬頻率之間的對應(yīng)關(guān)系為:基于C+數(shù)字抽取濾波器的設(shè)計與實現(xiàn) k當(dāng)時,與數(shù)字頻率對應(yīng),如果是對實模擬模擬信號進(jìn)行數(shù)字化處理,就對應(yīng)著模擬信號1/2采樣頻率,也就是信號的最高頻率。而則與模擬信號的負(fù)頻率部分對應(yīng)。3.2 抽取與抽取濾波器的原理設(shè)x(n)為模擬信號x(t)按奈奎斯特采樣率抽樣后獲得的數(shù)字信號,抽樣間隔為T=,現(xiàn)在需要

15、將抽樣率降低M倍,即進(jìn)行M:1的整數(shù)倍抽取,然后形成新的數(shù)字信號y(m),y(m)的抽樣頻率和抽樣間隔T1分別為 =,T1=MT, (1)h(h(n) M抽取器圖1 抽取濾波的過程按抽樣定理,在一次抽樣時為了保證不產(chǎn)生混疊失真,x(t)必須是一個最高頻率為fs/2的帶限信號,記X()為x(n)的數(shù)字頻譜,則有 (2)這里w=2為相對于抽樣頻率的數(shù)字頻率?,F(xiàn)在討論抽樣率減少M倍后y(m)的頻譜。為了說明取M=4,由于y(m)的抽樣率=/4顯然,為了防止混疊失真,必須將信號的頻譜限制在(-/8/8)之間,相對于原抽樣頻率的數(shù)字頻率應(yīng)為 (3) 應(yīng)此為了直接由x(n)獲得y(m),首先必須用數(shù)字低通

16、濾波器將高于以上的頻率分量濾去,濾波器的特性為: 然后再將濾波器的輸出每隔M點取一點,達(dá)到抽樣率降低的目的從而形成y(m),這數(shù)字抽取濾波器的分類及其原理分析個過程的框圖如圖1,顯然y(m)的頻譜相對于抽樣頻率而言為 相對于新抽樣頻率而言則為這里為相對于抽樣頻率的數(shù)字頻率。如果將數(shù)字低通率波器的單位脈沖響應(yīng)表示為為濾波器的輸出,則有 (5)而y(m)=w(Mm) (6)在圖1中用第二個方框所進(jìn)行的運算來表示,該方框符號代表為抽取器,它對應(yīng)于抽取第mM(m=0,1,2,)樣點的運算。將(5)式和(6)式合并,則求得y(m)與x(n)之間的關(guān)系為 (7) (7)式所代表的系統(tǒng)仍然是線性系統(tǒng),但不是

17、移不變系統(tǒng),這可說明如下。設(shè)x(n)y(m)表示對應(yīng)n時刻時,抽取器的輸出為y(m),那么對應(yīng)于時刻的輸出為 顯然若令當(dāng)(r為整數(shù))時,則有 說明為的移位形式,但若不為M的整數(shù)倍時,不能表示成的移位形式,即:不成立,因為不為整數(shù)時沒有意義。基于C+數(shù)字抽取濾波器的設(shè)計與實現(xiàn)之所以如此,是因為輸出y(m)是由x(n)移動M的整數(shù)倍樣點來計算的緣故。由于(4)式所代表的濾波器為理想低通濾波器,它是不能實現(xiàn)的,在實際中須采用以某種形式逼近它的非理想濾波器來實現(xiàn)。為了能研究實際低通濾波器對y(m)所造成誤差的性質(zhì),下面推導(dǎo)y(m)的Z變換與x(n)的Z變換之間的關(guān)系。為此,先定義一個新序列上式表明,在

18、抽樣瞬間,但在其他時間等于零。若定義d(n)為周期為M的抽樣序列 (8)則有 既然d(n)是以M為周期性脈沖序列,由此可求得其離散付氏級數(shù) 其反變換為 因此可將(n)表示, (9)由于 (10)取y(n)的Z變換 因為除m為M的整數(shù)以外全為零,上式可化為數(shù)字抽取濾波器的分類及其原理分析 = (11)其中W(Z)代表W(n)的變換。因為 W(z)=H(z)X(z)因此,可把Y(Z)表示成 (12)當(dāng)Z在單位圓上取值時,Z=,可求得y(m)的付氏變換或頻譜為 (13)其中,為相對于抽樣頻率的數(shù)字頻率。(13)式求和中的每一項 代表了輸入信號x(n)經(jīng)h(n)濾波后的頻譜的周期延 拓。很明顯,(13

19、)式說明二次抽樣序列的頻譜實際上為x(n)經(jīng)濾波后頻譜的混疊。將(13)式中各項直接寫出,可得 Y()=X()+ (14) 若低通濾波器接近理想濾波器,能濾去在以上的頻率分量,那么(13)式中的高次項均可略去,則(13)式變成了 (15)說明除了一個常數(shù)因子1/M外,的確代表了原信號的頻譜,但若濾波器性能不好就會產(chǎn)生(13)式所示的混疊失真,因此抽取濾波器的一個重要作用就是抗混疊失真。基于C+數(shù)字抽取濾波器的設(shè)計與實現(xiàn)3.3 兩種特殊的抽取濾波器的性質(zhì)分析3.3.1 半帶濾波器下圖為半帶濾波抽取器的單級實現(xiàn)框圖,其中HB(Half2Band) 為半帶濾波器, f s 為輸入采樣率,而為輸出采樣

20、率,符號“2 ”表示2 倍抽取. HB2HB2圖2 半帶濾波器的單級實現(xiàn)一般來說,為了保證濾波抽取器抽樣率變化后不產(chǎn)生混疊失真,必須將頻率在以上的頻率分量全部濾掉,如果濾除不干凈,這些頻率分量將以為中心折疊進(jìn)入有用的頻帶. 現(xiàn)在考慮頻率特性如圖 (橫坐標(biāo)為模擬頻率,為數(shù)字角頻率) 所示的一種特殊FIR 濾波。 圖3 半帶濾波器的幅頻特性(1) 通帶波紋與阻帶波紋相等,即=;(2) 通帶邊頻與阻帶邊頻相對于對稱,即+=此類FIR 數(shù)字低通濾波器稱HB FIR 濾波器. 顯然,當(dāng)足夠小時,HB FIR 濾波器可用作抽取因子為2 的濾波器. 因為此時() 內(nèi)的頻率分量僅會折疊進(jìn)() 頻帶內(nèi)(即數(shù)字抽

21、取濾波器的分類及其原理分析在濾波器的過渡帶內(nèi)) ,不會對興趣的()通帶內(nèi)信號產(chǎn)生影響.為了保證FIR 濾波器的線性相位特性,必須使濾波器的系數(shù)具有偶對稱特性, 即要求,其中, N 為濾波器的階數(shù),設(shè)N為奇數(shù). 另外,可以證明HB 濾波器系數(shù)除中心點即點 外,所有的的偶次系數(shù)均為零,且由于HB FIR 濾波器系數(shù)的對稱性和近一半的系數(shù)為零,使得濾波運算的乘法次數(shù)減少近3/4,加法次數(shù)減少了近一半. 用于存放濾波器系數(shù)的存儲器也減少了一半。由半帶濾波器所引出的M分之一帶濾波器運用也很廣。所謂M分之一帶濾波器是指濾波器的單位脈沖響應(yīng), 滿足即除了零點之外,所有M倍數(shù)的樣值均等于零。可見M分之一濾波器

22、是半帶濾波器的推廣,設(shè)濾波器的長度N為奇數(shù),他也是第一種類型的線性相位濾波器。為了敘述方便,我們分析零相位濾波器。 為奇數(shù)這是一個非因果的濾波器,如果要想得到因果濾波器,只須乘上因子即可將表示成多相濾波器的形式,由式可知其零相分量,這樣可將表示為 設(shè)計M分之一帶濾波器最簡單的方法是窗函數(shù)法,如果令低通濾波器的截止頻率為,可得到濾波器的系數(shù)如下:基于C+數(shù)字抽取濾波器的設(shè)計與實現(xiàn)可見,M分之一帶濾波器可以做為抽取因子為M的抽取濾波器。3.3.2 梳狀濾波器具有線形相位的FIR 濾波器,其系數(shù)是對稱的,與一般濾波器相比可節(jié)省一半的乘法器,但系數(shù)較復(fù)雜;而梳狀濾波器系數(shù)比較簡單(是整系數(shù)),不需要存

23、儲單元存儲系數(shù),也不需要乘法器,直接采用積分器、微分器或加法器就可實現(xiàn)。與能達(dá)到相同抽取目的的濾波器相比,它的結(jié)構(gòu)要簡單得多,因此常用作抽取濾波器的第一級,且可在這一級實現(xiàn)較大幅度的降頻,一般可降到4 倍奈奎斯特頻率。梳狀濾波器的轉(zhuǎn)移函數(shù)為: 從式(8)可知,梳狀濾波器有N 個零點,1 個極點,在頻率為0的地方極點和零點相互抵消,因此梳狀濾波器實質(zhì)上也是一個FIR 濾波器。而且梳狀濾波器的零點均勻分配在單位圓上,所以梳狀濾波器在頻率為k Fs /N( Fs 為采樣頻率,N 為濾波器長度,k 為整數(shù))處幅度為零,在這些頻率附近幅度有很大衰減。為了利用這個特性,梳狀濾波器的長度N 應(yīng)該等于抽取濾波

24、器的抽取因子M。為了獲得較大的阻帶衰減,梳狀濾波器一般采用多級級聯(lián)的方式,級聯(lián)的級數(shù)為K=L+1(L 為模擬調(diào)制器的階數(shù))。3.4多級抽取濾波器的原理通過以上分析,抽取前應(yīng)做低通濾波以避免信號的混疊。低通濾波器采用具有線性相位的FIR濾波器,此種濾波器的系數(shù)具有對稱性,可減少近一半的乘法器。FIR濾波器的設(shè)計方法有窗函數(shù)法,頻率抽樣法,最優(yōu)化設(shè)計法。一般來說,一級抽取的頻率變化太大,抗混疊低通濾波器實現(xiàn)困難,實際上在設(shè)計中常常采用多級抽取將頻率降低,這樣每一級濾波器的階數(shù)比較低,容易實現(xiàn)。設(shè)總的抽取因子為,各級抽取因子為,那么 : 同樣,每個抽取濾波器之前插入一個抗混疊濾波器,該濾波器隨著抽取

25、因子的不同參數(shù)指標(biāo)會發(fā)生變化。采用多級抽取后,通帶截止頻率與阻帶波紋參數(shù)不變,阻帶變?yōu)閿?shù)字抽取濾波器的分類及其原理分析,通帶波紋變?yōu)?,其中,是原始抽樣頻率,是第i級抽取濾波器的輸出抽樣頻率,n為總的抽取級數(shù)。利用MATLAB進(jìn)行枚舉比較,發(fā)現(xiàn)多級抽取時一般采用3,4級,增加級數(shù),濾波器的性能也不會有太大變化,所以并不是級數(shù)越多越好,而且每級的抽取因子應(yīng)該由高到低排列。多級抽取濾波器的第一級采用梳狀濾波器實現(xiàn)16 倍抽取,中間采用兩級半帶濾波器分別實現(xiàn)4 倍抽取,最后一級采用普通的線性相位FIR 濾波器對幅度進(jìn)行補償。 為了說明多級抽取的優(yōu)點,舉一例子進(jìn)行分析:設(shè)有一4階調(diào)制器輸出的碼的抽樣率為

26、,要求經(jīng)多級濾波抽取后轉(zhuǎn)換成抽樣率為的信號。濾波器的指標(biāo)如下:通帶波紋等于阻帶波紋,通帶邊頻和阻帶邊頻分別,根據(jù)前面所述的原則,針對這一具體情況,按,設(shè)計了一個三級抽取結(jié)構(gòu),第一級采用的梳狀濾波器按設(shè)計,第二級和第三級濾波器采用Kaiser窗函數(shù)法進(jìn)行設(shè)計,節(jié)數(shù)按 計算基于C+數(shù)字抽取濾波器的設(shè)計與實現(xiàn) 表1 三級抽取濾波器參數(shù)所需運算速率與存儲量級 數(shù)單級抽取三 級 抽 取第一級第二級第三級輸入采樣率256256324輸出采樣率13241抽取因子256884通帶上邊頻0.4梳 狀 濾 波 器0.50.4阻帶下邊頻濾波器節(jié)數(shù)199772985313乘加次數(shù)/樣點3995357169625最小運

27、算速率(運算次數(shù)/s)399530001824000676000625000為了比較,表中還列出了單級抽取時的值,顯然采用多級抽取大大節(jié)省了運算量。由于濾波器節(jié)數(shù)減少,也節(jié)省了用于存儲濾波器系數(shù)的存儲量以及進(jìn)行濾波器運算所需的循環(huán)緩沖區(qū)的大小。 線性相位FIR 數(shù)字濾波器和IIR數(shù)字濾波器相比,突出的優(yōu)點是具有嚴(yán)格的線性相位特性,而且穩(wěn)定性高,運算速度快,各設(shè)計各種幅度特性的濾波器。但是在相同的技術(shù)指標(biāo)下,F(xiàn)IR數(shù)字濾波器說需階數(shù)往往高于IIR數(shù)字濾波器的5-10倍,且對通帶、阻帶濾波器的衰減特性控制不明顯,設(shè)計過程往往需要借助計算機(jī)來玩成的。4 數(shù)字濾波器的算法設(shè)計4.1 由模擬濾波器設(shè)計I

28、IR數(shù)字濾波器 數(shù)字濾波器的算法設(shè)計在之前的部分中已經(jīng)說明,理想的濾波器是非因果的,即物理上不可實現(xiàn)的系統(tǒng)。工程上常用的模擬濾波器都不是理想的濾波器。但按一定規(guī)則構(gòu)成的實際濾波器的幅頻特性可逼近理想濾波器的幅頻特性,例如巴特奧茲(Butterworth)、切比雪夫(Chebyshev)濾波器和橢圓濾波器等。4.2 巴特奧茲濾波器 巴特沃茲濾波器9(Butterworth 濾波器)特點:具有通帶內(nèi)最大平坦的振幅特性,且隨f,幅頻特性單調(diào)。其幅度平方函數(shù):(3-1)N為濾波器階數(shù),如圖4 圖4 巴特沃斯濾波器振幅平方特性通帶: 使信號通過的頻帶阻帶:抑制噪聲通過的頻帶過渡帶:通帶到阻帶間過渡的頻率

29、范圍c :截止頻率。過渡帶為零理想濾波器 阻帶|H(j )|=0 通帶內(nèi)幅度|H(j)|=cons.基于C+數(shù)字抽取濾波器的設(shè)計與實現(xiàn)H(j)的相位是線性的圖中,N增加,通帶和阻帶的近似性越好,過渡帶越陡。通帶內(nèi),分母/c1, ( /c)2N1, ( /c)2N1, 增加, A(2)快速減小。=c, ,幅度衰減,相當(dāng)于3db衰減點。振幅平方函數(shù)的極點 (3-2) 可見,Butter worth濾波器 的振幅平方函數(shù)有2N個極點,它們均勻?qū)ΨQ地分布在|S|=c的圓周上??紤]到系統(tǒng)的穩(wěn)定性,知DF的系統(tǒng)函數(shù)是由S平面左半部分的極點(SP3,SP4,SP5)組成的,它們分別為:(3-3)系統(tǒng)函數(shù)為:

30、 (3-4)令 ,得歸一化的三階BF: (3-5)如果要還原的話,則有(3-6) 4.3 切比雪夫濾波器振幅平方函數(shù)為 (3-7)式中 有效通帶截止頻率與通帶波紋有關(guān)的參量,大,波紋大,0 1。數(shù)字濾波器的算法設(shè)計Vn(x)N階切比雪夫多項式,定義為(3-8)(3-9)如圖3-1,通帶內(nèi) ,,變化范圍1- c ,隨/c ,0(迅速趨于零)當(dāng) =0時,(3-10)N為偶數(shù),,(min) , (3-11)N為奇數(shù),,(max), (3-12) 圖5 切比雪夫濾波器的振幅平方特性有關(guān)參數(shù)的確定:a. 通帶截止頻率 ,預(yù)先給定b. 由通帶波紋表為 (3-13)基于C+數(shù)字抽取濾波器的設(shè)計與實現(xiàn) (3-

31、14)給定通帶波紋值分貝數(shù) 后,可求。(3-15)c. 階數(shù)N由阻帶的邊界條件確定。(,A事先給定)(3-16)(3-17)(3-18) (3-19)得 (3-20)4.4 橢圓濾波器特點:幅值響應(yīng)在通帶和阻帶內(nèi)都是等波紋的,對于給定的階數(shù)和給定的波紋要求,橢圓濾波器能獲得較其它濾波器為窄的過渡帶寬,就這點而言,橢圓濾波器11是最優(yōu)的,其振幅平方函數(shù)為 (3-21) 式中,RN(,L)為雅可比橢圓函數(shù),L是一個表示波紋性質(zhì)的參量。 數(shù)字濾波器的算法設(shè)計 圖6 N=5時 的特性曲線 由圖可見,在歸一化通帶內(nèi)(-11),在(0,1)間振蕩,而超過L后,在L2, 間振蕩。L越大,L也變大。這一特點使

32、濾波器同時在通帶和阻帶具有任意衰減量。 下圖為典型的橢園濾波器振幅平方函數(shù): 圖7 橢圓濾波器的振幅平方函數(shù) 圖中和A的定義與切比雪夫濾波器相同。 當(dāng)c、s、和A確定后,階次N的確定方法為 : 基于C+數(shù)字抽取濾波器的設(shè)計與實現(xiàn)確定參數(shù)確定參量 N=式中K(k)= 為第一類完全橢圓積分。4.5 用matlab仿真數(shù)字濾波器傳統(tǒng)的數(shù)字濾波器的設(shè)計過程復(fù)雜,HYPERLINK /pc/ 計算工作量大,濾波特性調(diào)整困難,HYPERLINK / 影響了它的HYPERLINK / 應(yīng)用。利用MATLAB信號處理工具箱(Signal Processing Toolbox)可以快速有效的設(shè)計由軟件組成的常規(guī)

33、數(shù)字濾波器的設(shè)計HYPERLINK / 方法。給出了使用MATLAB語言進(jìn)行程序設(shè)計和利用信號處理工具箱的FDATool工具進(jìn)行界面設(shè)計的詳細(xì)步驟。利用MATLAB設(shè)計濾波器,可以隨時對比設(shè)計要求和濾波器特性調(diào)整參數(shù),直觀簡便,極大的減輕了工作量,有利于濾波器設(shè)計的最優(yōu)化。4.6 FDATool界面FDATool(Filter Design & Analysis Tool)是MATLAB信號處理工具箱里專用的濾波器設(shè)計分析工具,MATLAB6.0以上的版本還專門增加了濾波器設(shè)計工具箱(Filter Design Toolbox)。FDATool可以設(shè)計幾乎所有的基本的常規(guī)濾波器,包括FIR和I

34、IR的各種設(shè)計方法。它操作簡單,方便靈活。FDATool界面總共分兩大部分,一部分是Design Filter,在界面的下半部,用來設(shè)置濾波器的設(shè)計參數(shù),另一部分則是特性區(qū),在界面的上半部分,用來顯示濾波器的各種特性。Design Filter部分主要分為:Filter Type(濾波器類型)選項,包括Lowpass(低通)、Highpass(高通)、Bandpass(帶通)、Bandstop(帶阻)和特殊的FIR濾波器。Design Method(設(shè)計方法)選項,包括IIR濾波器的Butterworth(巴特沃思)法、Chebyshev Type I(切比雪夫I型)法、 Chebyshev

35、Type II(切比雪夫II型) 法、數(shù)字濾波器的算法設(shè)計Elliptic(橢圓濾波器)法和FIR濾波器的Equiripple法、Least-Squares(最小乘方)法、Window(窗函數(shù))法。Filter Order(濾波器階數(shù))選項,定義濾波器的階數(shù),包括Specify Order(指定階數(shù))和Minimum Order(最小階數(shù))。在Specify Order中填入所要設(shè)計的濾波器的階數(shù)(N階濾波器,Specify OrderN-1),如果選擇Minimum Order則MATLAB根據(jù)所選擇的濾波器類型自動使用最小階數(shù)。Frenquency Specifications選項,可以詳

36、細(xì)定義頻帶的各參數(shù),包括采樣頻率Fs和頻帶的截止頻率。它的具體選項由Filter Type選項和Design Method選項決定,例如Bandpass(帶通)濾波器需要定義Fstop1(下阻帶截止頻率)、Fpass1(通帶下限截止頻率)、Fpass2(通帶上限截止頻率)、Fstop2(上阻帶截止頻率),而Lowpass(低通)濾波器只需要定義Fstop1、Fpass1。采用窗函數(shù)設(shè)計濾波器時,由于過渡帶是由窗函數(shù)的類型和階數(shù)所決定的,所以只需要定義通帶截止頻率,而不必定義阻帶參數(shù)。Magnitude Specifications選項,可以定義幅值衰減的情況。例如設(shè)計帶通濾波器時,可以定義Ws

37、top1(頻率Fstop1處的幅值衰減)、Wpass(通帶范圍內(nèi)的幅值衰減)、Wstop2(頻率Fstop2處的幅值衰減)。當(dāng)采用窗函數(shù)設(shè)計時,通帶截止頻率處的幅值衰減固定為6db,所以不必定義。Window Specifications選項,當(dāng)選取采用窗函數(shù)設(shè)計時,該選項可定義,它包含了各種窗函數(shù),在通帶內(nèi)的衰減為6dB?;贑+數(shù)字抽取濾波器的設(shè)計與實現(xiàn) 圖8 FDATool的操作頁面通過菜單選項Analysis可以在特性區(qū)看到所設(shè)計濾波器的幅頻響應(yīng)、相頻響應(yīng)、零極點配置和濾波器系數(shù)等各種特性。設(shè)計完成后將結(jié)果保存為*.fda文件。在設(shè)計過程中,可以對比濾波器幅頻相頻特性和設(shè)計要求,隨時調(diào)

38、整參數(shù)和濾波器類型,以便得到最佳效果。其它類型的FIR濾波器和IIR濾波器也都可以使用FDATool來設(shè)計。4.7 用Fdatool進(jìn)行帶通濾波器設(shè)計給定的數(shù)字帶通濾波器的參數(shù)是:通帶為45Hz 55Hz,低截止頻率為40Hz,高截止頻率為60Hz,通帶內(nèi)衰減不大于3db,阻帶衰減大于80db。借助Matlab仿真,可以得到設(shè)計成不同類型的濾波器所需的階數(shù):數(shù)字濾波器的算法設(shè)計 表2 采用不同類型濾波器實現(xiàn)所需的階數(shù)濾波器類型最低階數(shù)穩(wěn)定性FIR濾波器Kaiser窗函數(shù)201穩(wěn)定Blackman窗函數(shù)180穩(wěn)定Equirpple86穩(wěn)定IIR濾波器Butterworth濾波器26穩(wěn)定Chebi

39、shev濾波器16穩(wěn)定橢圓濾波器12穩(wěn)定 可見,F(xiàn)IR濾波器階數(shù)過高,導(dǎo)致的直接結(jié)果是消耗的資源較多,成本增加。因此采用IIR濾波器實現(xiàn)比較合適。而在IIR濾波器中,橢圓濾波器的階次最低,切比雪夫次之,巴特沃茲最高,參數(shù)的靈敏度則恰恰相反。根據(jù)傳遞函數(shù)的形式,巴特沃思和切比雪夫濾波器的傳遞函數(shù)都是一個常數(shù)除以一個多項式,為全極點網(wǎng)絡(luò),僅在無限大阻帶處衰減為無限大,而橢圓函數(shù)濾波器在有限頻率上既有零點又有極點,極零點在通帶內(nèi)產(chǎn)生等波紋,阻帶內(nèi)的有限傳輸零點減小了過渡區(qū),可獲得極為陡峭的衰減特性曲線。綜上考慮,采用橢圓函數(shù)濾波器最為適宜。用以下matlab程序15可得到滿足給定條件的12階橢圓濾波

40、器的直接型表示:fs=200;wp=45 55*2/fs;ws=40 60*2/fs; 把截止頻率轉(zhuǎn)成弧度表示rp=3;rs=80;Nn=512;n,wn=ellipord(wp,ws,rp,rs);b,a=ellip(n,rp,rs,wn);freqz(b,a,Nn,fs);z,p,k=ellip(n,rp,rs,wn);zplane(z,p); 基于C+數(shù)字抽取濾波器的設(shè)計與實現(xiàn) 圖9 12階橢圓濾波器的幅頻相應(yīng)和相頻響應(yīng) 圖10 12階橢圓濾波器的零極圖圖9說明12階橢圓濾波器很好的滿足了給定的阻帶和通帶的衰減。圖10說明極點全在單位園內(nèi)部,因而該橢圓濾波器是穩(wěn)定的。數(shù)字濾波器的算法設(shè)計

41、a,b分別為分母與分子的系數(shù),即得到的直接型表示為 (1) (3-22)4.8 將系統(tǒng)函數(shù)由直接型化成級聯(lián)型由于直接型具有一些共同缺點:(1)系數(shù)對濾波器的性能控制作用不明顯。(2)極點對系數(shù)的變化過于靈敏,易出現(xiàn)不穩(wěn)定或較大誤差。(3)運算的累計誤差較大。并且在這個設(shè)計中,直接型表示時系數(shù)和的最大值與最小值相差9倍,考慮到在乘法器上實現(xiàn)時引入的截斷誤差很大,因此決定采用6個二階節(jié)級聯(lián)來實現(xiàn)。4.9 二階節(jié)系數(shù)的確定用matlab函數(shù)把直接型系數(shù)化成級聯(lián)型二階節(jié)的系數(shù):基于C+數(shù)字抽取濾波器的設(shè)計與實現(xiàn)G1.910088486951538數(shù)組SOS的每行表示一個二階節(jié)的系數(shù),第13列分別是分子

42、上、的系數(shù),第46列分別是分母上、的系數(shù)。分配給各二階節(jié)的增益分別為:0.064426919942375843,0.064426919942375843,0.36083349830553402,0.36083349830553402,0.5945544040902202,0.5945544040902202。xxg11b1b2ya1a2圖 二階節(jié)結(jié)構(gòu)方框圖數(shù)字濾波器的算法設(shè)計4.10 系數(shù)轉(zhuǎn)換成二進(jìn)制碼若采用24位乘法器,用1位整數(shù)位,1位符號位,共22位定點二進(jìn)制數(shù)進(jìn)行運算,負(fù)數(shù)用補碼表示,由此將減法運算變成累加求和運算。各系數(shù)可用matlab編程轉(zhuǎn)成二進(jìn)制補碼,轉(zhuǎn)換結(jié)果如表: 表3 各系數(shù)

43、轉(zhuǎn)成二進(jìn)制的結(jié)果十進(jìn)制數(shù)定點24位補碼數(shù)0.0644269199423758430000010000011111100100100.086237116875715341000001011000010011101001-0.090446129522962132111110100011011000100001-0.9517888619754914110000110001010111100100-0.0862371168757153411111101001111011000101110.0904461295229603830000010111001001110111110.3608334983055

44、34020001011100010111111001010.23642640306518907000011110010000110011100-0.23451506983909279111100001111110110110101-0.96999789866178998110000011110101110001110-0.236426403065189071111000011011110011001000.234515069839091340000111100000010010010110.59455440409022020010011000001101001011100.3059836590

45、2400908001101101001111001111001-0.30583918594063586111011000110110100100001-0.305983659024009081100100101100001100001110.30583918594063608000100111001001011011111-0.99059830159543105110000001001101000001010可用Matlab程序求截斷后系數(shù)并進(jìn)行仿真:for i=1:1:6 for j=1:1:6 s= to2(SOS(i,j);SOS1(i,j)=to10(r)+s;endendr=to2(

46、G);G1=to10(r);B,A = SOS2TF(SOS1,G1); 轉(zhuǎn)成直接型freqz(B,A,Nn,fs);系數(shù)截斷后圖形:基于C+數(shù)字抽取濾波器的設(shè)計與實現(xiàn) 圖11 系數(shù)截斷后的幅頻、相頻響應(yīng)仿真圖形 圖12 系數(shù)截斷后的零極點圖圖11與圖12表明使用24位乘法器不會引入截斷誤差,通帶與阻帶衰減都符合設(shè)計要求。若采用24位乘法器,用1位整數(shù)位,1位符號位,共22位定點二進(jìn)制數(shù)進(jìn)行運算,負(fù)數(shù)用補碼表示,由此將減法運算變成累加求和運算。各系數(shù)可用matlab編程轉(zhuǎn)成二進(jìn)制補碼,轉(zhuǎn)換結(jié)果如表:數(shù)字濾波器的算法設(shè)計 表4 各系數(shù)轉(zhuǎn)成二進(jìn)制的結(jié)果十進(jìn)制數(shù)定點24位補碼數(shù)0.064426919

47、9423758430000010000011111100100100.086237116875715341000001011000010011101001-0.090446129522962132111110100011011000100001-0.9517888619754914110000110001010111100100-0.0862371168757153411111101001111011000101110.0904461295229603830000010111001001110111110.360833498305534020001011100010111111001010.2

48、3642640306518907000011110010000110011100-0.23451506983909279111100001111110110110101-0.96999789866178998110000011110101110001110-0.236426403065189071111000011011110011001000.234515069839091340000111100000010010010110.59455440409022020010011000001101001011100.30598365902400908001101101001111001111001

49、-0.30583918594063586111011000110110100100001-0.305983659024009081100100101100001100001110.30583918594063608000100111001001011011111-0.99059830159543105110000001001101000001010可用Matlab程序求截斷后系數(shù)并進(jìn)行仿真:for i=1:1:6 for j=1:1:6 s= to2(SOS(i,j);SOS1(i,j)=to10(r)+s;endendr=to2(G);G1=to10(r);B,A = SOS2TF(SOS1

50、,G1); 轉(zhuǎn)成直接型freqz(B,A,Nn,fs);系數(shù)截斷后圖形:基于C+數(shù)字抽取濾波器的設(shè)計與實現(xiàn) 圖13 系數(shù)截斷后的幅頻、相頻響應(yīng)仿真圖形 圖14 系數(shù)截斷后的零極點圖圖13與圖14表明使用24位乘法器不會引入截斷誤差,通帶與阻帶衰減都符合設(shè)計要求。4.11本章總結(jié)比較以上幾種類型的濾波器參數(shù),在給定的參數(shù)要求下,采用橢圓濾波器可以獲得最佳的幅頻響應(yīng)特性,具有階數(shù)低,過渡帶窄等優(yōu)點。雖然橢圓濾波器在通帶也會產(chǎn)生波動,但考慮到波動處在可接受的范圍內(nèi),仍然符合設(shè)計要求。數(shù)字抽取濾波器的實現(xiàn)過程但由直接型傳輸函數(shù)表達(dá)式來實現(xiàn)并不實用。因此如前所說,將其分解為多個二階傳輸函數(shù)的級聯(lián)形式。借

51、助Matlab 信號處理工具箱中函數(shù)tf2sos(Transfer function to second- order- section)將傳遞函數(shù)轉(zhuǎn)換為二階級聯(lián)形式。對于是數(shù)字信號,需要對先前分析計算中分解獲得的二階子系統(tǒng)的濾波器系數(shù)進(jìn)量化,即用一個固定的字長加以表示。量化過程中由于存在不同程度的量化誤差由此會導(dǎo)致濾波器的頻率響應(yīng)出現(xiàn)偏差,嚴(yán)重時會使IIR 濾波器的極點移到單位圓之外,使系統(tǒng)不穩(wěn)定。為了獲得最優(yōu)的濾波器系數(shù),量化的精度也相當(dāng)重要,因此這里采用24位乘法器,48位加法器進(jìn)行運算,仿真結(jié)果顯示,不會產(chǎn)生極限環(huán)現(xiàn)象和溢出振蕩。5 數(shù)字抽取濾波器的實現(xiàn)過程5.1 用MATLAB進(jìn)行仿

52、真 MATLAB的簡介:是美國Mathwork公司于1967年推出的一個用于數(shù)學(xué)計算的軟件包,全名為“Martrix Laboratory”。它是一種功能強,效率高,便于進(jìn)行科學(xué)和工程計算的交互式軟件包。MATLAB擁有豐富的庫函數(shù),在進(jìn)行復(fù)雜的數(shù)學(xué)運算時可以直接調(diào)用,并且它的庫函數(shù)同用戶文件在形式上一樣,所以用戶文件也可以作為MATLAB的庫函數(shù)來調(diào)用。因而,用戶可以根據(jù)自己的需要,方便地建立和擴(kuò)充新的庫函數(shù)。另外,為了充分利用C等高級語言的資源,包括用戶已編好的高級語言程序,通過建立Met調(diào)用文件的形式,混合編程,可方便地調(diào)用有關(guān)的高級語言的子程序。其繪圖也十分方便,它有一系列繪圖函數(shù)。而

53、信號處理是MATLAB應(yīng)用最成功的領(lǐng)域之一,MATLAB將信號處理中的許多常用算法編寫成了可調(diào)用的函數(shù),匯集構(gòu)成了信號處理工具箱。用MATLAB做一個模擬信號轉(zhuǎn)換為數(shù)字信號的實驗:程序如下:clf;t=0:0.0005:1;f=13;xa=cos(2*pi*f*t);subplot(2,1,1);plot(t,xa);grid基于C+數(shù)字抽取濾波器的設(shè)計與實現(xiàn) xlabel(時間,msec);ylabel(振幅);title(連續(xù)時間信號x_a(t);axis(0 1 -1.2 1.2);subplot(2,1,2);T=0.1;n=0:T:1;xs=cos(2*pi*f*n);k=0:len

54、gth(n)-1; stem(k,xs);gridxlabel(時間序號n);ylabel(振幅); title(離散時間信號xn);axis(0(length(n)-1)-1.2 1.2);得到的圖形:數(shù)字抽取濾波器的實現(xiàn)過程 圖15 模擬信號轉(zhuǎn)換為數(shù)字信號用MATLAB進(jìn)行數(shù)字抽取的實驗:使用M函數(shù)decimate來設(shè)計和實現(xiàn)一個具有整數(shù)抽取因子M的抽取器。程序如下:clf;M=input(抽樣因子=);n=0:99;x=sin(2*pi*0.043*n)+sin(2*pi*0.031*n);y=decimate(x,M,fir);subplot(2,1,1);stem(n,x(1:100

55、);title(輸入序列);xlabel(時間序號n);ylabel(振幅);subplot(2,1,2);m=0:(100/M)-1;stem(m,y(1:100/M);title(輸出序列);xlabel(時間序號n);ylabel(振幅);基于C+數(shù)字抽取濾波器的設(shè)計與實現(xiàn) 圖16 經(jīng)過抽取因子為4的抽取濾波器后的序列時域比較可見用MATLAB設(shè)計濾波器十分的簡便,但不助于對整個知識結(jié)構(gòu)的把握,在理論分析過程中可以運用,但是實際學(xué)習(xí)中運用VC+編寫濾波器的程序更能強化理論知識,可以提高動手能力。5.2 用C+進(jìn)行濾波器的實現(xiàn)VC+簡介:Visual C+是Microsoft公司推出的目前

56、使用極為廣泛的基于Windows平臺的C+可視化開發(fā)環(huán)境。Visual C+6.0是以往版本不斷更新的基礎(chǔ)上形成的,由于其功能強大,靈活性好,完全可擴(kuò)展以及具有強有力的Internet支持,在各種C+語言開發(fā)工具中脫穎而出,成為最流行的C+語言開發(fā)工具。在用VC+的設(shè)計抽取濾波器的過程中,采用窗函數(shù)設(shè)計前面的低通濾波器,再將輸入信號與濾波器的脈沖響應(yīng)根據(jù)時域卷積定理,從而完成整個工程。在用軟件實現(xiàn)之前必須先建立數(shù)學(xué)模型,找到設(shè)計低通濾波器的表達(dá)式,以及設(shè)計過程中所必須的參數(shù),窗函數(shù)的單位脈沖響應(yīng)數(shù)學(xué)模型,然后用VC+語言編寫出來。數(shù)字抽取濾波器的實現(xiàn)過程5.2.1 抽取濾波器的界面框圖本工程主

57、要有三個模塊:信號輸入,信號處理(抽取濾波),信號輸出三個功能的結(jié)果都會由直觀的圖形界面表示。用戶操作的對話框用戶操作的對話框輸入信號抽取濾波器輸出信號參數(shù)設(shè)定時域波形采樣頻率幅度響應(yīng)頻域波形時域波形頻域波形 圖17 抽取濾波器的界面框圖5.2.2 對話框的設(shè)計在VC+中,使用對話框非常容易,因此它提供的對話框編輯器能“可視”地進(jìn)行設(shè)計,編輯,并可用ClassWizard為對話框從CDialog基類中派生一個類。MFC的CDialog類封裝了對話框的顯示,關(guān)閉等常用操作的許多功能函數(shù),例如DoModal函數(shù)用來顯示模式對話框并返回結(jié)果。通過對話框的編輯器,用戶可以完成下列工作:添加,選取,刪除

58、對話框內(nèi)的控件改變控鍵的Tab鍵次序利用基準(zhǔn)線,標(biāo)尺及布局工具進(jìn)行控件的布局測試所編輯的對話框的性能(1)打開對話框編輯器將項目工作區(qū)窗口切換到ResourceView頁面,雙擊Dialog目錄下任意一個對話框ID,就可以打開對話框編輯器,或者當(dāng)選者“Insert”中的“Resource”選單命令(或按快捷鍵Ctrl+R)時,在彈出的資源列表中選擇Dialog項。單擊New按鈕后,就會在開發(fā)環(huán)境的右側(cè)顯示出對話框編輯器。(2)在對話框中添加和編輯控件基于C+數(shù)字抽取濾波器的設(shè)計與實現(xiàn)一旦對話框資源被打開或被創(chuàng)建,就可以在對話框中進(jìn)行控件的添加、修改、刪除等操作。對話框編輯器最初打開時,控件工具

59、欄是隨之出現(xiàn)的,利用此工具欄中的各個按鈕可以順利完成控件的添加。添加一個控件有以下幾種方法:在控件工具欄中單擊某控件,此時的鼠標(biāo)箭頭在對話框內(nèi)變成“十”字形狀;在對話框指定位置單擊鼠標(biāo)左鍵,則此控件被添加到對話框的相應(yīng)位置,再拖動選擇框可改變控件的大和位置。在控件工具欄中單擊某控件,此時的鼠標(biāo)箭頭對話框內(nèi)變成“十”字形狀;在指定位置處單擊鼠標(biāo)左鍵不放,拖動鼠標(biāo)至滿意位置,釋放鼠標(biāo)鍵。用鼠標(biāo)左鍵點中控件工具欄中某控件,并按住鼠標(biāo)鍵不放;在移動鼠標(biāo)到對話框的指定位置的過程中,用戶會看到一個虛線框,下面帶有該控件的標(biāo)記;釋放鼠標(biāo)鍵,新添加的控件立即出現(xiàn)在對話框中。對于大多數(shù)控件來說,這些屬性一般都有

60、General(一般屬性)、Styles(控件的分格)和Extended Styles(控件的擴(kuò)展風(fēng)格)。其中Styles和Extended Styles是用來設(shè)定控件的外觀、輔助功能的。不同的控件具有不同的風(fēng)格和擴(kuò)展風(fēng)格,但控件的一般屬性基本相同,它通常有標(biāo)識符框、標(biāo)題框等內(nèi)容。 圖18 控件屬性對話框ID: 控件的標(biāo)識符。每種控件都有默認(rèn)的ID,例如按鈕控件IDC_BUTTON1Caption: 控件的標(biāo)題。大多數(shù)控件都有默認(rèn)的標(biāo)題,例如按鈕控件為Button1Visible: 指定控件初始化時是否可見Group: 指定控件組中的第一個控件,如果該項被選中,則此控件后的所有控件均被看成同一

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論