基于GUI的數(shù)字信號處理實驗平臺的開發(fā) 通信工程專業(yè)
《基于GUI的數(shù)字信號處理實驗平臺的開發(fā) 通信工程專業(yè)》由會員分享,可在線閱讀,更多相關(guān)《基于GUI的數(shù)字信號處理實驗平臺的開發(fā) 通信工程專業(yè)(23頁珍藏版)》請在裝配圖網(wǎng)上搜索。
1、 、 題目:基于GUI的數(shù)字信號處理實驗平臺的開發(fā) Title: Development of digital signal processing experimental platform based on GUI 摘 要 本文介紹了基于GUI的數(shù)字信號處理實驗平臺的開發(fā),采用層次化的設(shè)計方法,利用GUI實現(xiàn)圖形用戶界面,以交互的方式實現(xiàn)對《數(shù)字信號處理》中重要教學內(nèi)容的動態(tài)仿真。用MATLAB的圖形界面設(shè)計工具(GUI),以數(shù)字信號處理理論知識為基礎(chǔ),設(shè)計了與課堂教學、實驗內(nèi)容相配套的輔助工具。該輔助工具可用于《數(shù)字信號處理》課程的課堂教學演示,
2、也可作為學生課后自學提供幫助。文中主要以大家都熟悉的數(shù)字濾波器為例,能更直觀的,真正的將實驗內(nèi)容融入教學過程,有助于學生更容易地理解數(shù)字信號處理的原理和分析方法,有利于提高學生分析問題能力和綜合應用能力。 關(guān)鍵詞:MATLAB GUI;數(shù)字信號處理;濾波器 II Abstract This paper introduces the development of digital signal processing experiment platform based on GUI, using the hierarchical design me
3、thod and Realization of graphical user interface using GUI, in an interactive way to realize the dynamic simulation of digital signal processing is an important teaching content in < >. The graphical interface design with MATLAB (GUI), on the theory of digital signal processing knowledge based
4、 design and classroom teaching, experiment content matching tool. This tool can be used for classroom demonstration "digital signal processing" course, but also can be used as the students after-school self-study help. In this paper, we are familiar with the digital filter for example, can
5、 More intuitive, the real content of the experiment into the teaching process, help students more easily understand the principles of digital signal processing and analysis methods, to improve students' ability to analyze problems and comprehensive application ability. Keywords: MATLAB GUI; d
6、igital signal processing; Wave filter II 目 錄 摘 要 II Abstract III 1 引言 1 2 數(shù)字信號處理簡介 1 2.1 數(shù)字信號處理基本介紹 1 2.2 傅里葉變換分類 2 2.3 離散傅里葉變換(DFT) 2 2.4 分析、計算離散傅里葉變換(DFT) 3 2.5 離散傅里葉變換(DFT)注意事項 3 2.6 數(shù)字濾波器的簡單介紹 4 2.6.1 濾波器的基本概念 5 2.6.1 數(shù)字濾波器的分類 5 2.6.2 數(shù)字濾波器的技術(shù)要求 6
7、 3 MATLAB軟件介紹 6 3.1 MATLAB現(xiàn)狀 6 3.2 MATLAB基礎(chǔ)知識 8 3.2.1 基本運算 8 3.2.2 常用的數(shù)學函數(shù) 8 3.2.3 MATLAB的繪圖功能 8 3.3 MATLAB在數(shù)字信號處理中的應用 9 4 MATLAB GUI的數(shù)字信號處理仿真平臺的設(shè)計和實現(xiàn) 9 4.1 GUI界面設(shè)計基礎(chǔ)知識 10 4.2 GUI界面設(shè)計基本步驟 10 4.3 數(shù)字切比雪夫濾波器 11 4.3.1切比雪夫濾波器的基本知識 11 4.3.2切比雪夫濾波器的設(shè)計步驟 11 4
8、.4 高通濾波器 11 4.4.1高通濾波器的工作原理 11 4.4.2一階高通濾波器 11 4.5 結(jié)果展示 12 5總結(jié) 12 參考文獻 14 附錄 15 1 引言 一直以來,數(shù)字信號處理都被廣泛應用于研究數(shù)字濾波、快速實現(xiàn)離散變換的算法以及對頻譜的分析等領(lǐng)域,一直以來都被作為電子信息、通信等信息工程領(lǐng)域的必修課程,是一門通過研究數(shù)字方法從而實現(xiàn)對信號進行快速算法以及分析、變換、濾波、檢測、調(diào)制、解調(diào)的重要學科。最近伴隨著數(shù)字電路與計算機技術(shù)的迅速發(fā)展,數(shù)字信號處理技術(shù)應用范圍也不僅僅只被應用于傳統(tǒng)的通信與電子信息工程方面,它已經(jīng)被越來越廣泛的應用于生
9、物工程、雷達等許多高科技尖端領(lǐng)域,為各種工程領(lǐng)域的發(fā)展提供了重要動力。數(shù)字信號處理這門課程也被許多高校設(shè)為信息專業(yè)領(lǐng)域必修課程[1] 。這門課程的特點是:公式多、推導性質(zhì)復雜繁瑣、有較多的概念,更需要以其他諸多課程為基礎(chǔ),所以學生在學習的過程中,很容易因為跟不上進度,沒有吃透書本知識,理解不到位以及大量的復雜運算而失去對《數(shù)字信號處理》這門課的學習興趣。就這門課的現(xiàn)狀而言,是非常不理想的,所以我們必須打破這種現(xiàn)狀,在網(wǎng)絡和計算機飛速發(fā)展的今天,各行各業(yè)都都開始與計算機進行掛鉤,我們完全可以借助計算機來完成各種復雜的公式運算從而實現(xiàn)計算機輔助教學的模式。 Matlab提供了大量數(shù)學函數(shù)和關(guān)于信
10、號處理的工具箱,其強大的功能和交互式的環(huán)境使得它在這30多年內(nèi)成為了科學研究,工程技術(shù)等領(lǐng)域不可或缺的仿真平臺。MATLAB相比其它軟件具有三大優(yōu)勢,一是其在數(shù)值分析和工程科學繪圖等方面功能強大;二是其界面操作方便,編程語言簡單易懂;三是擁有交互式的環(huán)境,方便由用戶自由擴展其功能。MATLAB的圖形化顯示和圖形處理功能相當完備,還擁有高效的數(shù)值精確計算和建模仿真功能,可以應用到在數(shù)值分析[2]。 現(xiàn)在許多校在教授這門課時都會同時增開相應的課程實驗課,通常選擇使用Matlab來對數(shù)據(jù)信息進行仿真模擬展示,使用該軟件的圖形交互界面借助于配套的實驗工具,實現(xiàn)理論與模擬結(jié)果的相結(jié)合,從而加深學生理解。
11、 [3] 2 數(shù)字信號處理簡介 2.1 數(shù)字信號處理基本介紹 數(shù)字信號處理技術(shù)通常利用數(shù)值運算的方式來處理數(shù)據(jù),它通常將信號轉(zhuǎn)換成二進制數(shù)字的形式,然后來對這些二進制數(shù)據(jù)進行處理,相對傳統(tǒng)的模擬信號處理方式,可以極大提高靈活性,同時可以極大提高數(shù)據(jù)精度降低損耗,可以很方便的實現(xiàn)系統(tǒng)的集成,具有模擬系統(tǒng)無法比擬的性能優(yōu)勢[9]。 現(xiàn)在例如電、光、電磁、熱量等許多外部客觀信息都可以通過相應的傳感器進行收集,這些收集到的信號信息都可以通過相應的轉(zhuǎn)換設(shè)備被轉(zhuǎn)換成數(shù)字信號。所以當下在很多工程領(lǐng)域都使用數(shù)字信號處理的技術(shù)。要想實現(xiàn)將這些信息進行數(shù)字形式的處理就首先需要使用相應設(shè)備對
12、信號信息進行采集,然后通過相應設(shè)備轉(zhuǎn)換成數(shù)字信號,然后對這些采集到的信息進行處理分析等操作,最后需要通過軟件轉(zhuǎn)換或者硬件處理的方式來對相應信號信息進行處理。通過軟件實現(xiàn)處理通常需要自己編寫算法程序?qū)崿F(xiàn)相應數(shù)字信號處理;硬件實現(xiàn)則是按照其原理圖和電路圖,設(shè)計相對應的硬件結(jié)構(gòu)圖,用乘法器、加法器、延時器、控制器以及輸入輸出接口等基本部件來實現(xiàn)。由此可見,軟件實現(xiàn)方法比較靈活,而硬件實現(xiàn)方法運算速度快,不是很靈活。數(shù)字信號處理由于需要使用傅里葉變換、Z變換等數(shù)學知識來實現(xiàn)數(shù)字信號的處理,所以,數(shù)字信號具有靈活性高,同時可以極大提高數(shù)據(jù)精度降低損耗,可以很方便的實現(xiàn)系統(tǒng)的集成等模擬系統(tǒng)所無法比擬的性能
13、優(yōu)勢。 數(shù)字信號處理就是將模擬信號轉(zhuǎn)換成數(shù)字信號進行處理,要想實現(xiàn)模擬信號到數(shù)字信號的轉(zhuǎn)換,就需要將模擬信號進行測量或者濾波操作來實現(xiàn)模數(shù)轉(zhuǎn)換。最后處理之后的結(jié)果要想進行展示就需要再將數(shù)字信號再轉(zhuǎn)換回模擬信號,這就需要通過數(shù)模轉(zhuǎn)換器實現(xiàn)的。 最早實現(xiàn)模數(shù)轉(zhuǎn)換通常使用DFT離散傅立葉變換算法來離散信號的數(shù)字域和頻域,從而實現(xiàn)將模擬信號轉(zhuǎn)換成計算機可以處理的離散信號。而真正實現(xiàn)將這種處理技術(shù)運用到實踐中的是這種算法的改進版FFT快速傅立葉轉(zhuǎn)換算法,這種算法比起DFT性能有了極大的改進與提升,極大減少數(shù)據(jù)運算量,從而實時實現(xiàn)模數(shù)轉(zhuǎn)換,這種算法極大推動了數(shù)字信號處理成為工程應用技術(shù)。圖1
14、 數(shù)字信號處理系統(tǒng) 2.2 傅里葉變換分類 根據(jù)原信號的不同類型,我們可以把傅立葉變換分為四種類別: 1、非周期性連續(xù)信號 傅立葉變換(Fourier Transform) 2、周期性連續(xù)信號 傅立葉級數(shù)(Fourier Series) 3、非周期性離散信號 離散時域傅立葉變換
15、(Discrete Time Fourier Transform) 4、周期性離散信號 離散傅立葉變換(Discrete Fourier Transform) 2.3 DFT的基本性質(zhì) 1)線性性質(zhì) 如果和是兩個有限長序列,長度分別為和,且 式中a,b為常數(shù),取,則y(n)的N點DFT (3-3)
16、 其中和分別為和的N點DFT。 2)循環(huán)移位特性 (1)序列的循環(huán)移位 設(shè)x(n)為有限長序列,長度為M,M≤N,則x(n)的循環(huán)移位定義為 (3-4) (2)時域循環(huán)移位定理 設(shè)x(n)是長度為M(M≤N)的有限長序列,y(n)為x(n)的循環(huán)移位,即 (3-5)
17、 (3-6) 其中 , 0≤k≤N—1 (3)頻域循環(huán)移位定理 如果 , 0≤k≤N—1 則 (3-7) 3)循環(huán)卷積定理 有限長序列和長度分別為和,,和在N點的循環(huán)卷積為: 則x(n)的N點DFT為: (3-8) 2.3 D
18、FT對模擬信號進行譜分析 在工程實際當中經(jīng)常遇到的模擬信號是連續(xù)函數(shù)及其頻譜函數(shù)也是連續(xù)函數(shù),為了使用 DFT變換對進行譜分析,對進行時域采樣可以得到,然后 x( n)進行 DFT變換,可以得到函數(shù) X( k)是在頻率區(qū)間上對 x( n)進行傅里葉變換得到的 N點等間隔采樣,其中 x( n)和 X( k)全部是有限長序列。然而,由傅里葉變換理論可知,對于長度有限的信號其頻譜的寬度是無限的,相反,比較弱的信號其頻譜的持續(xù)時間會變得接近無限長,因此,在根據(jù)采樣定理進行采樣時,相應的采樣序列應該是無限長,這樣就不能使用 DFT變換了。在實際情況中,對于擁有很寬頻譜的信號,為預防對其時域采樣
19、后產(chǎn)生不好頻譜的混疊現(xiàn)象,一般會先對信號使用前置濾波器將其幅度比較小的高頻部分給濾掉,是的信號的帶寬比采樣頻率??;同理,對于具有很慘持續(xù)時間的信號,選取的采樣點過多也會造成計算困難和存儲困難,一般情況下也是選取有限個采樣點進行采樣計算。由此可以看出,對模擬信號進行DFT變換的結(jié)果只是個近似值,其效果由信號的帶寬、采樣截取長度和采樣頻率決定。 2.4 分析、計算離散傅里葉變換(DFT) 計算DFT有3種不同的方法,分別是: 1.首先,可以通過聯(lián)立方程來求解,它因效率太低而無法在實際中使用。 已知時域中N個點的值,求這N個點在頻域中的值(忽略頻域中必為零的兩個值)。由基本的代數(shù)常識
20、可知:要求解N個未知數(shù),就必須寫出N個方程。為了求這些值,將每個正弦波的第一個樣點加起來,這個和必等于時域信號必等于時域信號的第一個樣點值,即可得到第一個方程。同理,時域信號中的每個樣點都可以寫成類似的方程,就得到了所需的N個方程。使用該方法進行求解時,計算量非常大,實際上從未在 DSP 中使用。該方法的提出說明了一個信號為什么可以被分解成正弦波,需要分解出多少個正弦波,以及這些基本函數(shù)必須線性不相關(guān)。 2.第二種方法是通過相關(guān)性計算DFT。它是以從一個信號中檢測已知信號為基礎(chǔ)的,是DFT的標準算法。將時域信號與適當?shù)恼一蛴嘞也ㄏ喑?,再把所得結(jié)果全部累加起來,即可得到頻域中的每個樣
21、點值,這就是 DFT 的分析方程,也就是從時域值求解頻域值的數(shù)學方法,如下圖: 圖2 DFT的分析方程 3.第三種方法,稱為快速傅里葉變換(FFT),該算法將一個含有N個點的DFT分解為N個只含有一個點的 DFT。 在實際應用中,如果進行 DFT 的點數(shù)少于32個,則選用相關(guān)性的方法來計算,否則選用FFT進行計算。 2.5 離散傅里葉變換(DFT)注意事項 (1)時域和頻域混疊 根據(jù)奈奎斯特采樣定理,在一般的情況下采樣頻率必須大于采樣信號的最高頻率的兩倍,才能后采樣得到完整的信號。由于在實際情況中,信號的持續(xù)時間不可能是無限的,所以理論上來講,信號的頻譜寬度可
22、以是無限的,無論去多大的采樣頻率都是不可能采樣到完整的采樣信號的。但是當高頻分量超過一定范圍后,其對采樣信號的影響已經(jīng)可以忽略不計,因此在工程中需要先對信號進行低通濾波。 (2)截斷效應 在實際情況中模擬信號往往是有限長度的,其不可能是無限長,因此必須先將模擬信號截斷成程度為N的有限長信號,再使用DFT變換對信號進行譜分析。 (3)頻譜泄露 原序列 x( n)在截斷后每根譜線上都會帶有一個辛格普,這是由于原序列是離散譜線,就像向兩邊延伸譜線,這種由于截斷導致頻譜延寬的現(xiàn)象稱為泄漏,泄漏會導致頻譜變得模糊不清,頻譜的分辨率變得很低。 (4)譜間干擾 由于截斷,會使得主要的譜線的兩邊形
23、成許多的旁瓣,導致不同頻譜分量間的干擾,這就是譜間干擾,這可能會導致弱信號被強信號淹沒,而且也會使得分別率既降低。截斷造成的譜間干擾是不可能完全消除的,只能根據(jù)實際情況來進行調(diào)整折中達到性能最優(yōu)。 (5)柵欄效應 DFT對信號進行 N個點頻譜的間隔采樣,其中采樣頻率區(qū)間為,采樣后會得到多個離散點 X( k),并且去采樣頻點為基頻 F的倍數(shù),這就像通過一條的細小的縫隙來看柵欄外的風景,只能在細小的縫隙處才能看到外面的景象,這細小的縫隙就是離散采樣點,而其余部分則都看不到外面,這就是柵欄效應??梢栽跁r域數(shù)據(jù)的末端增加一些零值點,來減小柵欄效應。 (6)信號長度的選擇 對信號長度的選擇會影響
24、到DFT變換的性能。在實際中,信號的長度往往是長度隨機的。因此在實際中,往往是對幾個典型的或者周期性的信號進行頻譜分析,然后在得到合理的結(jié)果。 2.6 數(shù)字濾波器的簡單介紹 2.6.1 濾波器的基本概念 數(shù)字濾波器主要用于處理數(shù)字信號,能夠?qū)?shù)字信號中無用的信息和成分濾出掉,只保留需要的信號。從這一角度分析,模擬和數(shù)字濾波器的作用是一樣的,只是處理的信號形式不同。數(shù)字濾波器有精度高,處理方便,操作靈活,性能穩(wěn)定,沒有模擬濾波器中的阻抗匹配問題等優(yōu)點,比模擬濾波器擁有更加強大的功能。數(shù)字濾波器也能用于處理模擬信號,但是在處理前要通過模數(shù)轉(zhuǎn)換器,把模擬信號轉(zhuǎn)變?yōu)閿?shù)字信號9]。 設(shè)
25、計數(shù)字濾波器的方式主要有兩種,一是通過計算機軟件,編程實現(xiàn)數(shù)字濾波器需要實現(xiàn)的功能,是基于軟件系統(tǒng)的設(shè)計方法,二是通過硬件設(shè)備,建立專門的數(shù)字處理工具。在信號處理領(lǐng)域中,可以利用matlab軟件設(shè)計濾波器,其提供了專業(yè)的工具箱,能夠?qū)崿F(xiàn)濾波的功能,還可以分析頻譜。工具箱中有大量使用方便的工具,集成了豐富的功能。直接調(diào)用相關(guān)函數(shù),就能完成濾波器的設(shè)計、參數(shù)設(shè)置和指標分析,且分析速度快、準確率高,為相關(guān)研究提供了便利條件。 2.6.2 數(shù)字濾波器的分類 1.從功能上分低通、帶通、高通、帶阻。 2.從實現(xiàn)方法上分FIR、IIR 3.從設(shè)計方法上來分Chebyshev(切比雪夫),Butter
26、worth(巴特沃斯).... 4.從處理信號來分經(jīng)典濾波器、現(xiàn)代濾波器等。 數(shù)字濾波器的理想低通、高通、帶通、帶通、帶阻濾波器幅度特性 圖3 濾波器幅度特性圖 經(jīng)典濾波器:一般的濾波器,特點是輸入信號中有用頻率成分和希望濾除的頻率成分各占有不同的頻帶,通過一個合適的選頻濾波器達到濾波的目的。 圖4 輸入函數(shù)的頻響函數(shù) 圖5 系統(tǒng)函數(shù)的頻響函數(shù) 圖5 輸出函數(shù)的頻響函數(shù) 但是,如果信號的干擾和頻帶互相重疊,叫不能完成對干擾的有效濾除。 現(xiàn)代濾波器這一類濾波器可按照隨機信號內(nèi)部的一些統(tǒng)計分布規(guī)律,從干擾中最佳地提取信號。 現(xiàn)代濾波器理論源于維納在40年
27、代及其以后的工作,這一類濾波器的代表為維納濾波器,此外,還有卡爾曼濾波器、線性預測器、自適應濾波器。 2.6.3 數(shù)字濾波器的技術(shù)要求 通常用的數(shù)字濾波器一般屬于選頻濾波器。假設(shè)數(shù)字濾波器的傳輸函數(shù)用下式表示 H (ejw)=│ H ( ejw) │ e jΩ(w) (2.6) 式中,H ( ejw)稱為幅頻特性,Q(w)稱為相頻特性。 幅頻特性表示信號通過該濾波器后各頻率成分衰減情況;相頻特性反映各頻率成分通過濾波器后在時間上的延時情況。 因此,即使兩個濾波器幅頻特性
28、相同,而相頻特性不一樣,對相同的輸入,濾波器輸出的信號波形是不一樣的。 一般選頻濾波器的技術(shù)要求由幅頻特性給出,相頻特性一般不作要求。但如果對輸出波形有要求,則需要考慮相頻特性的技術(shù)指標,例如,語音合成、波形傳輸、圖像信號處理等。 3 MATLAB軟件介紹 3.1 MATLAB現(xiàn)狀 MATLAB簡稱Matrix Laboratory,是矩陣實驗室之意。最初,matlab主要用于矩陣的計算和分析,作為數(shù)學分析工具,進行數(shù)學計算。隨著技術(shù)的發(fā)展,matlab的功能日益完善,也在刷領(lǐng)域得到應用。matlab是一款專業(yè)的數(shù)學分析工具,由math works公司設(shè)計并推出,采用面向?qū)ο蟮母呒?/p>
29、開發(fā)語言,提供了有好的顯示界面,能夠進行數(shù)值計算和分析、算法開發(fā)、編寫代碼,還提供了數(shù)據(jù)分析、應用開發(fā)的交互式開發(fā)環(huán)境、文件管理的多項操作。matlab的工具箱數(shù)量高達十余個,還提供了simulink和matlab兩大專業(yè)功能。 利用matlab的GUIDE工具箱能夠在可視化的(GUI)圖形界面中進行濾波器的設(shè)計,設(shè)置參數(shù),模擬和仿真數(shù)字信號。在GUI中,包括按鍵、文本框、彈出框、窗口等,通過鼠標點擊或選擇就能完成濾波器的設(shè)計,使用方便、靈活,為數(shù)字信號處理的分析和研究提供了便利條件,初學者也能輕松掌握。該GUI,能將Matlab軟件和多媒體硬件很好的結(jié)合, 形成一種新的計算機輔助教學形式,
30、可以很好的解決傳統(tǒng)教學方法中不易完成或不可能完成的教學任務。而在實際的教學應用中,大幅度的提高了教學的效率和效果,也很好的證明了這種新的CAI方式有利于加強學生對理論知識的理解。[4] 下面來介紹一下MATLAB的優(yōu)點: 1.友好的工作平臺和編程環(huán)境 MATLAB由一系列工具組成。用戶通過matlab工具,直接調(diào)用其中的文件或函數(shù),就能夠?qū)崿F(xiàn)特定功能。通過可視化的顯示界面,能夠直接看到分析結(jié)果,清晰、直觀。matlab軟件包括文件瀏覽、工作空間、圖形界面、幫助、搜索路徑、調(diào)試器、編輯器、命令窗口等。隨著技術(shù)的發(fā)現(xiàn),matlc軟件不斷更新和優(yōu)化,為用戶提供了友好的顯示界面,使
31、用方便,操作性強,易于掌握。最新版的matlab改進了幫助和查詢系統(tǒng)能夠輕松搜索和查詢所需要的信息,為實際使用帶來更大的便利。matlat有強大的調(diào)試工具,開發(fā)環(huán)境良好,無需編譯就能夠直接運行程序,并提供糾錯報告,為程序開發(fā)和設(shè)計提供可靠參考,極大提高了編程效率。 2.強大的科學計算機數(shù)據(jù)處理能力 MATLAB作為一個善于矩陣運算的工具,它的數(shù)學運算能力是很強的,對于一些大的數(shù)據(jù)集合,編程要比C語言簡易很多,因為在C語言上一個語句只能執(zhí)行一個數(shù)的操作,大批數(shù)據(jù)的處理就需要使用循環(huán)。matlab軟件中植入了豐富的函數(shù)和算法,數(shù)學函數(shù)的數(shù)量高達600余個,計算能力強,計算速度快,
32、能夠進行大數(shù)據(jù)量的計算。通過直接調(diào)用函數(shù)就能完成相應計算,使用方便,在實際工程項目和科學研究中得到廣泛應用。算法庫不僅包含基本的算法,還包括改進、優(yōu)化的最新算法,容錯性更好,適用性更強,如傅立葉變換、侵侮分析、矩陣計算等,能夠直接當成編程工具來使用。通過函數(shù),能建立動態(tài)仿真模型、多維數(shù)組、三角函數(shù)、復數(shù)和稀疏矩陣的計算,數(shù)據(jù)或頻域變幻的數(shù)據(jù)分析,符號運算,求解微積分方程組和線性方程組,進行矩陣計算等。此外,還能應用到實際工程之中,解決最優(yōu)路徑、工程優(yōu)化等問題。也相關(guān)領(lǐng)域的分析和研究帶來了極大便利。 3.除具備超強的數(shù)值計算能力外,它還提供了專業(yè)水平的文字處理,符號計算,實時控制和
33、可視化建模仿真等功能。 MATLAB的基本數(shù)據(jù)單位是矩陣,它的指令表達式與數(shù)學,工程中常用的形式十分相似,故用MATLAB來解算問題要比用FORTRAN等語言完相同的事情簡捷得多 4.MATLAB軟件具有很強大的數(shù)據(jù)可視化功能和圖形符號表達功能。該軟件不僅能夠進行二維繪圖和三維繪圖,還可以給三維圖形添加光照處理以及四維數(shù)據(jù)的顯示等[5]。 5.MATLAB的開放性使其廣受用戶歡迎,除了內(nèi)部函數(shù)外,所有MATLAB主包文件和各種工具包都是可讀可修改的文件。 6.MATLAB中GUI設(shè)計作用和功能在工作學習中的意義是更加形象直觀,如果你把你的程序封裝成GU
34、I話,那么別人不需要理解你的算法也可以根據(jù)你的提示輸入并得到想要的結(jié)果。 3.2 MATLAB基礎(chǔ)知識 3.2.1 基本運算 在MATLAB下進行基本數(shù)學運算,只需將運算式直接打入提小號(>>)之后,并按入Enter鍵即可。例如: >> (5*2+1.3-0. 80)*10/25 Ans=4.2000 MATLAB會將運算結(jié)果直接存入一變ans,代表MATLAB運算后的答案(Answer)并顯不其數(shù)值于屏幕上 提示: “>>”是MATLAB的提示符號(Prompt),但在PC中文視窗系統(tǒng)下,由于編碼方式不同,此提示符號常會消失不見,但
35、這并不會影響到MATLAB的運算結(jié)果。 我們也可將上述運算式的結(jié)果設(shè)定給另一個變數(shù)x X=(5*2 +1.3-0. 8)*10^2/25 X=42 3.2.2 常用的數(shù)學函數(shù) abs(x):純量的絕對值或向量的長度 angle(z):復數(shù)z的相角(Phase angle) sqrt(x):開平方round(x):四舍五入至最近整數(shù) fix(x):無論正負,舍去小數(shù)至最近整數(shù) rat(x):將實數(shù)x化為分數(shù)表不 rats(x):將實數(shù)x化為多項分數(shù)展開 floor(x):地板函數(shù),即舍去正小數(shù)
36、至最近整數(shù) sign(x):符號函數(shù)(Signum function) ceil(x):天花板函數(shù),即加入正小數(shù)至最近整數(shù) 3.2.3 MATLAB的繪圖功能 1、繪制二維圖形的一般步驟 (1)數(shù)據(jù)的準備:選定所要表現(xiàn)的范圍 產(chǎn)生自變量采樣向量 計算相應的函數(shù)值向量 典型指令x=0:pi/100:2*Pi; (2)選定圖形窗及其子同的位置: 缺省時,打開figure No.1當前窗,當前子圖可用指令指定圖形窗號和子圖號 典型指令:figure(1) %指定1號圖形窗
37、 subplot(2,2,2)%指定2號子團 (3) 調(diào)用(高層)繪圖指令:線型、色彩、數(shù)據(jù)點形 典型指令:plot (x,y,'-ro') %用紅色實線畫曲線,其數(shù)據(jù)點類型為o (4) 設(shè)置軸的范圍與刻度、坐標分格線 典型指令:axis ([o,inf,-1,1]) %設(shè)置坐標軸的范圍 grid on %畫坐標分格線 (5) 圖形注釋,包括圖名、坐標名、圖例、文字說明等 典型指令:title(‘專家系統(tǒng)’) %圖名
38、 xlabel (‘ ’);ylabel ('y') %軸名 legend ('sinx','cosx') %圖例 terct(2,1,'y-ajax') %文字說明 (6)打印圖形窗上的直接打印選項或按鍵,利用圖形后處理軟件打印,采用圖形窗選項或按鍵打印最簡捷。 步驟1,3是最基本的繪同步驟。至于其他步驟,并不完全必須。 2、三維圖形的繪制 繪制三維曲線最常用的函數(shù)是plot3,它的一般格
39、式為plot3(x,y,z),MATLAB除了能夠繪制曲線圖形外,還能夠繪制網(wǎng)格圖形和曲面圖[6]。 3.3 MATLAB在數(shù)字信號處理中的應用 目前, MATLAB在數(shù)字信號處理的仿真實驗中用于數(shù)字信號處理仿真實驗平臺的設(shè)計已經(jīng)十分普遍,很多實驗在真正在實驗室操作之前,一般先進行仿真,而 MATLAB為此提供了十分便利的條件。在科學研究中,實驗是必不可少的,但是實驗室的造價高昂,但是大量的科學驗證都必須得進行實驗,所以,人們就在計算機上設(shè)計出了相關(guān)的仿真軟件,用于在計算機上模擬出實驗環(huán)境, MATLAB就是一款這樣的軟件,使用 MATLAB來進行實驗仿真就可以達到類似于在實驗室進
40、行實驗的效果。數(shù)字信號處理實驗使用MATLAB來進行仿真,可以讓實驗變得更加容易,由于MATLAB的仿真的效果良好,能夠推動科學技術(shù)的發(fā)展。MATLAB仿真平臺能夠使得實驗能在計算機軟件上進行模擬仿真,使實驗變得更加容易和普及化,能極大的推動科學的進步。[7] 4 MATLAB GUI的數(shù)字信號處理仿真平臺的設(shè)計和實現(xiàn) 4.1 GUI界面設(shè)計基礎(chǔ)知識 GUIDE全稱為Graphical User Interface Development Environment,即MATALB圖形用戶接口開發(fā)環(huán)境。它提供了一系列工具用于建立GUI界面的方法。GUI工具欄、GUI布局區(qū)、GUI對象選擇
41、區(qū),以及狀態(tài)欄為其組成主要的四大部分。在MATLAB中,創(chuàng)建并設(shè)計GUI界面的主要有二種方法:使用.m文件直接動態(tài)添加控件;使用GUIDE快速的生成GUI界面。顯然第二種可視化編輯方法算更適合寫大型程序。分別為使用可視化的界面環(huán)境可直接通過編寫程序。本設(shè)計主要采用前者的設(shè)計方法[10] 4.2 GUI界面設(shè)計基本步驟 1、 使用可視化的界面環(huán)境來實現(xiàn)GUI界面的設(shè)計,首先設(shè)計整個演示系統(tǒng)的主界面、功能選擇界面和子界面。 2、其次分別編寫各個子界面中各個控件對象(object)的回調(diào)函數(shù), 來實現(xiàn)直接通過操作界面上各個控件,就可以方便地對《數(shù)字信號處理》中重要內(nèi)容的仿真及仿真圖形進行讀取和
42、分析的目的。 3、然后編寫功能選擇界面的回調(diào)函數(shù), 將各個模塊的子界面整合在信號與系統(tǒng)演示系統(tǒng)的功能選擇界面中, 實現(xiàn)操作功能選擇界面的各個空間就可以進入任何一個子模塊界面進行實例仿真的功能。 4、最后編寫實驗演示系統(tǒng)主界面的回調(diào)函數(shù), 實現(xiàn)從主界面直接切換進入功能選擇界面的功能[11]。 圖6 用GUI設(shè)計的界面 4.3 數(shù)字切比雪夫濾波器 4.3.1切比雪夫濾波器的基本知識 切比雪夫濾波器在通帶內(nèi)的幅度響應是等波紋的,而在阻帶內(nèi)是單調(diào)下降的;或者在通帶內(nèi)是單調(diào)下降的,而在阻帶內(nèi)是等波紋的。 切比雪夫濾波器的幅度平方函數(shù)為
43、 (4.1) 式中,ε稱為紋波參數(shù),它與通帶內(nèi)幅度響應的紋波有關(guān);Ω c為有效通帶截止頻率,N是濾波器的階數(shù)。 切比雪夫濾波器是由ε、Ω c和N共3個參數(shù)確定。 4.3.2切比雪夫濾波器的設(shè)計步驟 (1)根據(jù)濾波器的指標確定參數(shù)ε、Ω c和N。 (2)計算常量α、a和b,并求出極點Sk。 (3)由s平面左半平面的極點構(gòu)成傳遞函加H a(s)。 (4)利用沖激響應不變法或雙線性變換法將H a(s)轉(zhuǎn)換成H(z)。 4.3.3數(shù)字濾波器的典型的分析和設(shè)計方法 頻域: 1) 幅頻特性,相位特性,群延遲特性。 2) 舍入噪聲,也就是常說的平均噪聲功率和噪聲譜
44、。 時域: 1)沖激和響應,還有對其他輸入的時間響應。 2)極限環(huán)。分析這些特性的方法主要有:a.節(jié)點方程式。b.混合方程式。c.狀態(tài)方程式。d.傳輸函數(shù)。分析輸入輸出之間的關(guān)系可知,a~d逐漸增多,則從d的傳遞函數(shù)可以知道頻域和時域的輸入輸出之間的關(guān)系特性。分析系統(tǒng)的結(jié)構(gòu)可以知道,d~a依次不斷增多,因此知道系統(tǒng)結(jié)構(gòu)就知道節(jié)點方程式,從節(jié)點方式式也能推出系統(tǒng)結(jié)構(gòu),這兩者是相通的。但我們這里只討論傳遞函數(shù)。 4.4 高通濾波器 4.4.1高通濾波器的工作原理 去掉信號中不必要的低頻成分,去掉低頻干擾的濾波器; 在電力系統(tǒng)中,諧波補償時用高通濾波器濾除某次及其以上的各次諧波。
45、高通濾波器是指車載功放中能夠讓中、高頻信號通過而不讓低頻信號通過的電路,其作用是濾去音頻信號中的低音成分,增強中音和高音成分以驅(qū)動揚聲器的中音和高音單元。此外高通濾波器常常和低通濾波器成對出現(xiàn),不論哪一種,都是為了把一定的聲音頻率送到指定的單元。 4.4.2基于MATLAB的數(shù)字信號處理虛擬實驗仿真平臺主界面 (1)用MATLAB進行關(guān)于FIR的仿真編程,利用MATLAB的GUI功能來設(shè)計仿真平臺的主界面如圖4.1所示: 圖4.1數(shù)字信號處理的仿真設(shè)計主界面 從這個界面我們就可以清晰的看到整個仿真平臺的構(gòu)建,以及具體各部分的功能。 (2)原始數(shù)據(jù)及輸入數(shù)據(jù)運行程序后生成的
46、波形如下圖4.2: %這個程序用于產(chǎn)生外部測試信號并用于讓GUI界面去讀取這個保存的外部數(shù)據(jù) clear clc %采樣率Fs; Fs=600; %時間序列 t=0:1/Fs:0.5; %設(shè)置信號頻率; %設(shè)置信號幅度 f1=40; amp1=20; f2=60; amp2=10; f3=150; amp3=13; f4=200; amp4=20; f5=220; am
47、p5=10; f6=280; amp6=10; %產(chǎn)生疊加的測試信號 x=amp1*sin(2*pi*f1*t)+amp2*cos(2*pi*f2*t)+... amp3*sin(2*pi*f3*t)+amp4*sin(2*pi*f4*t)+amp5*cos(2*pi*f5*t)+amp6*sin(2*pi*f6*t);%產(chǎn)生6個頻率疊加的信號 a=x; %保存為外部文件,用于GUI界面讀取 save('a','a'); 圖4.2導入數(shù)據(jù)后的DFT圖 這部分的上圖是讀取MATLAB額外產(chǎn)生的外部信號
48、,顯示出時域波形,下圖是對讀取的這個信號進行傅里葉變換求出頻譜并畫出頻譜圖??梢娫趲讉€頻率點上都有沖擊,這就說明了產(chǎn)生的外部信號就是這幾個頻譜的疊加。上圖的采樣頻率Fs=600。 (3)生成所設(shè)置濾波器如圖4.3: 圖4.3生成所設(shè)置的濾波器圖 這個部分是根據(jù)輸入的濾波器參數(shù)生成的頻譜響應和相位特性圖,因為所設(shè)置的帶通濾波器的截至頻率是100~170之間,所以產(chǎn)生的幅頻特性的通帶范圍也是在100~170之間,從相頻響應看100~170剛好是-3dB衰減的位置,由上圖可清晰的看出來。 (4)濾波后如圖4.4: 圖4.4濾波后的圖 這部分的功能就是濾波器把原來的多頻
49、率信號進行濾波,從下圖頻譜圖可以看出濾波后只剩下通帶內(nèi)的頻率分量了,對應上圖的時域就是那個頻率單一的正弦信號。 (5)運行程序后整個仿真平臺如圖4.5: 圖4.5導入數(shù)據(jù)后的整個仿真界面 這個界面的整體就是貫穿信號處理過程的全部仿真,包括信號的產(chǎn)生,濾波器的產(chǎn)生以及濾波后的對比分析。從這個界面上可以初步分析出因為一開始的信號頻率很多所以頻譜有很多尖峰,然后濾波后的頻譜圖就留下了一個尖峰,還有對應的一開始信號有好多頻率混雜波形很亂,通過濾波后就正剩下一個正弦波。這樣就完成一次完整的信號處理仿真過程。 4.5 結(jié)果展示 圖7 濾波曲線 5總結(jié) MATLAB的
50、數(shù)字信號處理實驗平臺的設(shè)計技術(shù)的實現(xiàn)與創(chuàng)新離不開計算機技術(shù)的不斷發(fā)展, MATLAB設(shè)計出來的仿真實驗平臺對教學有很大的幫助,可以借助于該平臺所設(shè)計的相關(guān)典型的實驗,達到教學的目的。由于在現(xiàn)實中 ,很多實驗器材不具備以及實驗器材的不可避免的誤差影響,使得實驗效果不是很明顯,所以用MATLAB GUI設(shè)計出這個平臺不僅方便還可以高度仿真。MATLAB GUI設(shè)計平臺占用資源極少,只需要一臺電腦就可以進行試驗,以這是一個很有研究意義的仿真平臺。以后還應該加強設(shè)計優(yōu)化,使它更實用和更簡單。 最后我要感謝我的指導老師—胡菊菊老師,在我的論文撰寫期間,老師對我嚴格要求同時,對我論文中存在的問題也是耐心
51、講解、悉心指導,這才讓我的學士學位論文寫作得以順利完成。胡老師平易近人的性格,嚴謹?shù)墓ぷ鲬B(tài)度、淵博的專業(yè)學識使我在此次論文學習中受益匪淺。她也是我以后學習和工作的典范。同時我要感謝通信2班的全體,在我大學生涯的思念學習期間他們給予了我很多的幫助和鼓勵,一同探討問題、一同解決問題的經(jīng)歷是如此的寶貴。 參考文獻 [1] 高西全, 丁玉美.數(shù)字信號處理 [M] .2 版.西安:電子科技大學出版社, 2003. [2] 劉艷. 基于MATLAB GUI的數(shù)字信號處理仿真平臺的設(shè)計[
52、J]. 電子世界, 2013(17):133-134. [3] 施曉紅, 周佳.精通 GUI圖形界面編程 [M] .北京:北京大學出版社, 2003. [4] 沈捷, 王莉. 數(shù)字信號處理教學實驗軟件包的GUI設(shè)計與實現(xiàn)[J]. 實驗技術(shù)與管理, 2008, 25(2):88-91. [5] 鄧華等. MATLAB通信仿真及應用實例詳解[M]. 北京:人民郵電出版社,2003. [6] Edward W.Kamen,Bonnie S.Heck.Fundamentals of Signal and Systems Uing the Web and MATLAB[M].English:Pe
53、arson Education,2002. [7] 朱雷平. MATLAB在數(shù)字信號處理中的應用[J]. 科技信息:學術(shù)版, 2007(5):180+18 [8] 程佩青. 數(shù)字信號處理教程(第4版)[M].清華大學出版社,2013:65-70. [9] 樓順天、李博菡 . 基于MATLAB的系統(tǒng)分析與設(shè)計現(xiàn)—信號處理[M] . 西安電子科技大學出版社,1998:112-130. [10] 楊丹,趙海濱.MATLAB從入門到精通[M].北京:中國鐵道出版社,2013:1-18 [11] 羅華飛.MATLAB GUI設(shè)計學習手記(第三版)[M].北京:北京航空航天大學出版社,2014:353-428 [12] 王群, 姚為正, 王兆安. 高通濾波器對諧波檢測電路檢測效果的影響分析[J]. 電力系統(tǒng)自動化, 1999, 23(16):17-19. 21
- 溫馨提示:
1: 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
2: 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
3.本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
5. 裝配圖網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責。
6. 下載文件中如有侵權(quán)或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 110中國人民警察節(jié)(筑牢忠誠警魂感受別樣警彩)
- 2025正字當頭廉字入心爭當公安隊伍鐵軍
- XX國企干部警示教育片觀后感筑牢信仰之基堅守廉潔底線
- 2025做擔當時代大任的中國青年P(guān)PT青年思想教育微黨課
- 2025新年工作部署會圍繞六個干字提要求
- XX地區(qū)中小學期末考試經(jīng)驗總結(jié)(認真復習輕松應考)
- 支部書記上黨課筑牢清廉信念為高質(zhì)量發(fā)展營造風清氣正的環(huán)境
- 冬季消防安全知識培訓冬季用電防火安全
- 2025加強政治引領(lǐng)(政治引領(lǐng)是現(xiàn)代政黨的重要功能)
- 主播直播培訓直播技巧與方法
- 2025六廉六進持續(xù)涵養(yǎng)良好政治生態(tài)
- 員工職業(yè)生涯規(guī)劃方案制定個人職業(yè)生涯規(guī)劃
- 2024年XX地區(qū)黨建引領(lǐng)鄉(xiāng)村振興工作總結(jié)
- XX中小學期末考試經(jīng)驗總結(jié)(認真復習輕松應考)
- 幼兒園期末家長會長長的路慢慢地走