數字訊號處理實驗指導書 更新

2022-11-24 16:57:07 字數 4823 閱讀 1952

《數字訊號處理》

實驗指導書

吳啟巨集編

華北電力大學

2007 年 3 月

前言1. 實驗總體目標

通過實驗,學生應能深入了解「數字訊號處理」這門課程的知識點,加深對基本概念的理解,同時基本掌握matlab語言,為今後進一步學習和研究打下乙個良好的基礎。

⒉ 適用專業

全校工科各專業

⒊ 先修課程

訊號與系統

⒋ 實驗課時分配

⒌ 實驗環境

普通配置計算機,安裝matlab6.5或以上版本。

⒍ 實驗總體要求

自行編寫matlab程式,完成上機實驗內容,並提交實驗報告。

⒎ 本實驗的重點、難點及教學方法建議

本實驗的重點為「數字訊號處理」的基本理論及應用;難點在matlab語言的熟練使用。

教學方法建議:學生在實驗前先自學matlab語言,指導教師將實驗中用到的主要的matlab函式列出,提前給學生,供參考。

實驗一熟悉matlab環境

一、實驗目的

1. 熟悉matlab環境的主要操作命令。

2. 學會簡單的矩陣輸入和資料讀寫。

3. 掌握簡單的繪圖命令

4. 用matlab程式設計並學會建立函式。

5. 觀察離散系統的頻率響應。

二、實驗型別

驗證型三、實驗儀器

裝有matlab語言的計算機

四、實驗原理

matlab的基本命令和函式

五、實驗內容和要求

1. 陣列的加、減、乘、除和乘方運算。輸入a=[1 2 3 4],b=[3 4 5 6],求c=a+b,d=a-b,e=a.

*b,f=a./b,g=a.^b,並用stem語句畫出a、b、c、d、e、f、g。

2. 用matlab實現下列序列:

(1)(2)(3)(4) 將(3)中的擴充套件為以16為週期的函式,繪出四個週期。

(5) 將(3)中的擴充套件為以10為週期的函式,繪出四個週期。

3.,產生並繪出下列序列的樣本:

(1)(2)4.繪出下列時間函式的圖形,對軸、軸以及圖形上方均須加上適當的標註:

(1)(2)5.編寫函式stepshift(n0,n1,n2)實現u(n-n0),n16.給定一因果系統,求出並繪製的幅頻響應和相頻響應。

7.計算序列和序列的離散卷積,並作圖表示卷積結果。

8.求以下差分方程所描述系統的單位脈衝響應

六、思考題

1. 比較實驗內容第2題中(4)和(5)兩小題的結果,試說明對於週期性訊號,應當如何取樣,才能保證週期擴充套件後與原訊號保持一致?

2. 對於有限長序列,如何用matlab計算其dtft?

3. 對於由兩個子系統級聯或併聯的系統,如何用matlab計算它們的幅頻響應與相頻響應?

七、實驗報告要求

1. 簡述實驗目的及原理。

2. 按實驗步驟附上實驗程式。

3. 按實驗步驟附上有關離散系統的頻率特性曲線。

4. 簡要回答思考題。

備註:本實驗用到的主要函式

h=freqz(num,den,w)

y=filter(num,den,x)

c=conv(a,b)

一、實驗目的

1. 在理論學習的基礎上,通過本實驗,加深對fft的理解,熟悉matlab中的有關函式。

2. 熟悉應用fft對典型訊號進行頻譜分析的方法。

3. 了解應用fft進行訊號頻譜分析過程中可能出現的問題,以便在實際中正確應用fft。

4. 熟悉應用fft實現兩個序列的線性卷積和相關的方法。

二、實驗型別

演示型三、實驗儀器

裝有matlab語言的計算機

四、實驗原理

在各種訊號序列中,有限長序列訊號處理占有很重要地位,對有限長序列,我們可以使用離散fouier變換(dft)。這一變換不但可以很好的反映序列的頻譜特性,而且易於用快速演算法在計算機上實現,當序列x(n)的長度為n時,它的dft定義為:

反變換為:

有限長序列的dft是其z變換在單位圓上的等距取樣,或者說是序列fourier變換的等距取樣,因此可以用於序列的譜分析。

fft並不是與dft不同的另一種變換,而是為了減少dft運算次數的一種快速演算法。它是對變換式進行一次次分解,使其成為若干小點數的組合,從而減少運算量。常用的fft是以2為基數的,其長度 。

它的效率高,程式簡單,使用非常方便,當要變換的序列長度不等於2的整數次方時,為了使用以2為基數的fft,可以用末位補零的方法,使其長度延長至2的整數次方。

1. 混疊

序列的頻譜是被取樣訊號頻譜的週期延拓,當取樣速率不滿足nyquist定理時,就會發生頻譜混疊,使得取樣後的訊號序列頻譜不能真實的反映原訊號的頻譜。避免混疊現象的唯一方法是保證取樣速率足夠高,使頻譜混疊現象不致出現,即在確定取樣頻率之前,必須對頻譜的性質有所了解,在一般情況下,為了保證高於摺疊頻率的分量不會出現,在取樣前,先用低通模擬濾波器對訊號進行濾波。

2.洩漏

實際中我們往往用截短的序列來近似很長的甚至是無限長的序列,這樣可以使用較短的dft來對訊號進行頻譜分析,這種截短等價於給原訊號序列乘以乙個矩形窗函式,也相當於在頻域將訊號的頻譜和矩形窗函式的頻譜卷積,所得的頻譜是原序列頻譜的擴充套件。

洩漏不能與混疊完全分開,因為洩漏導致頻譜的擴充套件,從而造成混疊。為了減少洩漏的影響,可以選擇適當的窗函式使頻譜的擴散減至最小。

3.柵欄效應

dft是對單位圓上z變換的均勻取樣,所以它不可能將頻譜視為乙個連續函式,就一定意義上看,用dft來觀察頻譜就好像通過乙個柵欄來**乙個圖景一樣,只能在離散點上看到真實的頻譜,這樣就有可能發生一些頻譜的峰點或谷點被「尖樁的柵欄」所攔住,不能別我們觀察到。

減小柵欄效應的乙個方法就是借助於在原序列的末端填補一些零值,從而變動dft的點數,這一方法實際上是人為地改變了對真實頻譜取樣的點數和位置,相當於搬動了每一根「尖樁柵欄」的位置,從而使得頻譜的峰點或谷點暴露出來。

用fft可以實現兩個序列的圓周卷積。在一定的條件下,可以使圓周卷積等於線性卷積。一般情況,設兩個序列的長度分別為n1和n2,要使圓周卷積等於線性卷積的充要條件是fft的長度n≥n1+n2-1,對於長度不足n的兩個序列,分別將他們補零延長到n。

當兩個序列中有乙個序列比較長的時候,我們可以採用分段卷積的方法。有兩種方法:

1. 重疊相加法

將長序列分成與短序列相仿的片段,分別用fft對它們作線性卷積,再將分段卷積各段重疊的部分相加構成總的卷積輸出。

2.重疊保留法

這種方法在長序列分段時,段與段之間保留有互相重疊的部分,在構成總的卷積輸出時只需將各段線性卷積部分直接連線起來,省掉了輸出段的直接相加。

兩個長為的實離散時間序列與的互相關函式定義為 :

的離散付里葉變換為:

當時,得到的自相關函式為:

利用fft求兩個有限長序列線性相關的步驟(設長,長):

(1)為了使兩個有限長序列的線性相關可用其圓周相關代替而不產生混淆,選擇週期≥,以便使用fft,將,補零至長為。

(2)用fft計算

(3)(4)對作ifft;取後項,得;取前項,得。

實驗中用到的訊號序列:

a)高斯(gaussian)序列

b)衰減正弦序列

c)三角波序列

d)反三角波序列

上機實驗內容:

(1)觀察高斯序列的時域和幅頻特性,固定訊號中引數,改變的值,使分別等於2,4,8,觀察它們的時域和幅頻特性,了解當取不同值時,對訊號序列的時域及幅頻特性的影響;固定,改變,使分別等於8,13,14,觀察引數變化對訊號序列的時域及幅頻特性的影響,觀察等於多少時,會發生明顯的洩漏現象,混疊是否也隨之出現?記錄實驗中觀察到的現象,繪出相應的時域序列和幅頻特性曲線。

(2)觀察衰減正弦序列的時域和幅頻特性,,檢查譜峰出現位置是否正確,注意頻譜的形狀,繪出幅頻特性曲線,改變,使分別等於0.4375和0.5625,觀察這兩種情況下,頻譜的形狀和譜峰出現位置,有無混疊和洩漏現象?

說明產生現象的原因。

(3)觀察三角波和反三角波序列的時域和幅頻特性,用n=8點fft分析訊號序列和的幅頻特性,觀察兩者的序列形狀和頻譜曲線有什麼異同?繪出兩序列及其幅頻特性曲線。

在和末尾補零,用n=32點fft分析這兩個訊號的幅頻特性,觀察幅頻特性發生了什麼變化?兩種情況下的fft頻譜還有相同之處嗎?這些變化說明了什麼?

(4)乙個連續訊號含兩個頻率分量,經取樣得

已知,分別為1/16和1/64,觀察其頻譜;當時,不變,其結果有何不同,為什麼?

(5)用fft分別實現()和()的16點圓周卷積和線性卷積。

*(6)產生一512點的隨機序列,並用和作線性卷積,觀察卷積前後頻譜的變化。要求將分成8段,分別採用重疊相加法和重疊保留法。

(7)用fft分別計算()和()的16點圓周相關和線性相關,問一共有多少個結果,它們之間有何異同點。

(8)用fft分別計算()和()的自相關函式。

1.實驗中的訊號序列和,在單位圓上的z變換頻譜和會相同嗎?如果不同,說出哪乙個低頻分量更多一些,為什麼?

2. 對乙個有限長序列進行dft等價於將該序列週期延拓後進行dfs展開,因為dfs也只是取其中乙個週期來計算,所以fft在一定條件下也可以用以分析週期訊號序列。如果實正弦訊號用16點fft來做dfs運算,得到的頻譜是訊號本身的真實譜嗎?

為什麼?

1.簡述實驗目的及原理。

2.按實驗步驟附上實驗訊號序列和幅頻特性曲線,分別分析所得到的圖形,說明引數改變對時域和頻域的影響。

3.總結實驗中的主要結論。

4.簡要回答思考題。

備註:本實驗用到的主要函式

xk=fft(x,n)

x=ifft(xk,n)

實驗三 iir數字濾波器的設計

一、實驗目的

1. 掌握雙線性變換法及脈衝響應不變法設計iir數字濾波器的具體設計方法及其原理,熟悉用雙線性變換法及脈衝響應不變法設計低通、高通和帶通iir數字濾波器的matlab程式設計。

數字訊號處理實驗指導書

電氣工程學院 數字訊號處理 實驗指導書 王武編寫 適用專業 測控技術與儀器 貴州大學 二oo 四年六月 前言一 實驗目的 數字訊號處理是一門工程技術基礎性質的課程,因此實驗方法的學習是本門課教學過程中的乙個必不可少的環節。其目的為 一 依據理論課的內容對重要的原理加以驗證,鞏固和加深所學的理論知識,...

數字訊號處理實驗指導書

數字訊號處理 實驗指導書 實驗一離散時間系統及離散卷積 一 實驗目的 1 熟悉matlab軟體的使用方法。2 熟悉系統函式的零極點分布 單位脈衝響應和系統頻率響應等概念。3 利用matlab繪製系統函式的零極點分布圖 系統頻率響應和單位脈衝響應。4 熟悉離散卷積的概念,並利用matlab計算離散卷積...

數字訊號處理》實驗指導書 正文

實驗一離散時間訊號分析 一 實驗目的 1 掌握各種常用的序列,理解其數學表示式和波形表示。2 掌握在計算機中生成及繪製數碼訊號波形的方法。3 掌握序列的相加 相乘 移位 反褶等基本運算及計算機實現與作用。4 掌握線性卷積軟體實現的方法。5 掌握計算機的使用方法和常用系統軟體及應用軟體的使用。6 通過...