數字訊號處理實驗指導書2019

2022-09-28 11:15:03 字數 3996 閱讀 7241

數字訊號處理

實驗指導書

理學院實驗中心

實驗一連續訊號的取樣與恢復

【實驗型別】綜合性

【實驗學時】2學時

【實驗目的】

1.熟悉連續訊號經理想取樣前後的頻譜變化關係,加深對時域取樣定理的理解;

2.熟悉時域離散系統的時域特性;

3.利用卷積的方法觀察分析系統的時域特性;

4.掌握序列傅利葉變換的計算機實現方法,利用序列的傅利葉變換對連續訊號、離散訊號及系統響應進行頻域分析。

【實驗內容】

1.分析取樣序列的特性。對訊號,以取樣頻率進行50點的取樣,得取樣序列

,,其中,,,分別確定滿足奈奎斯特取樣定理條件的取樣頻率及任一欠取樣頻率,觀察兩種取樣頻率下訊號頻譜的區別,驗證取樣定理。

提示:(,,)的圖形與頻譜圖(截短後)分別如下:

由圖形可知,可將訊號譜最高頻率定為500hz.

2.時域離散訊號、系統和系統響應分析。

①觀察訊號與響應的時域和頻域特性;利用線性卷積求訊號通過系統的響應,比較所求響應和的時域及頻域特性,它們之間有無差別?用所學理論解釋結果。

②利用線性卷積求系統對訊號的響應,並判斷圖形及其非零值序列長度是否與理論結果一致。求得,觀察

特性曲線,定性判斷結果的正確性。

3.卷積定理的驗證。對訊號(其中,,,),重複實驗2. ①,列印曲線;另外,按計算,並繪出的曲線,與前面直接對進行傅利葉變換所得幅頻特性曲線進行比較,驗證時域卷積定理。

【實驗前的預備知識】

1.時域離散訊號——序列的時域特性;

2.連續訊號理想取樣的基本原理,取樣訊號頻譜變化的過程;

3.單位脈衝響應與時域離散線性移不變系統的描述;

4.卷積定理的原理;

程式設計基礎。

【實驗方法或步驟】

1.取樣是連續訊號數字處理的第乙個關鍵環節。對取樣過程的研究可以了解取樣前後訊號時域和頻域特性發生的變化以及訊號資訊不丟失的條件。

對乙個連續訊號進行取樣的過程可用(1)式表示。

1)其中是的理想取樣,為週期衝激脈衝,即

2)的傅利葉變換為

3)(3)式表明為的週期延拓,其延拓週期為取樣角頻率()。取樣前後訊號的頻譜示意圖見教材圖1-29。只有滿足奈奎斯特取樣定理時,才不會發生頻率混疊失真。

在計算機上用高階語言程式設計直接按(3)式計算理想取樣的頻譜很不方便。下面匯出用序列的傅利葉變換來計算的公式。

將(2)式代入(1)式並進行傅利葉變換,

4)式中就是取樣後得到的序列,即

的傅利葉變換為

5)比較(5)式和(4)式可知

6)這說明兩者之間只在頻率度量上相差乙個常數因子。實驗過程中應注意這一差別。

離散訊號和系統在時域均可用序列來表示。序列圖形給人以形象直觀的印象,它可以加深我們對訊號和系統的時域特徵的理解。

為了在數字計算機上觀察分析各種序列的頻域特性,通常對在上進行點取樣來觀察分析。即有

其中,。通常情況下應取大些,以便觀察譜的細節變化。取模可繪出幅頻特性曲線。

乙個時域離散線性移不變系統的輸入輸出關係為

如果和的長度分別為和,則的長度為。

上述卷積運算也可以在頻域實現:。

2.用matlab編制實驗用主程式及相應子程式。其中子程式包括(1)訊號產生子程式,產生實驗要用的訊號,及。

(2)系統單位脈衝響應產生子程式,產生系統與。(3)傅利葉變換數值計算子程式,計算頻譜。主程式參考框圖如下:

ynyn3.計算兩個有限長度序列的卷積,可以直接呼叫卷積函式conv(x,h),其中引數x和y是兩個已經賦值的行向量序列。

繪圖函式plot(n,x):繪製平面線圖,用於繪製連續頻譜圖;

stem(n,x):繪製平面杆圖,用於繪製離散時間訊號。

實驗二線性卷積與圓周卷積

【實驗型別】驗證性

【實驗學時】2學時

【實驗目的】

1.加深對有限長序列的圓周卷積意義的理解,掌握線性卷積與圓周卷積的區別之處;

2.熟練掌握圓周卷積代替線性卷積的條件;

3.學習體會用圓周卷積代替線性卷積的計算機實現方法。

【實驗內容】

對任意兩個有限長訊號與編制利用dft實現的線性卷積程式,繪製圖形,並驗證結果的正確性。

【實驗前的預備知識】

1. 離散傅利葉變換dft與離散時間傅利葉變換dtft的原理與區別;

2. 線性卷積與圓周卷積的定義、性質及區別;

3. matlab程式設計基礎。

【實驗方法或步驟】

1.複習有關線性卷積與圓周卷積的定義、性質及區別,並對圓周卷積在何種情況下可以代替線性卷積運算有深入理解。

時域線性卷積的計算公式為

,在頻域上相當於兩序列的離散時間傅利葉變換(dtft)相乘

有限長序列時域圓周卷積的點離散傅利葉變換(dft)等於兩序列的點離散傅利葉變換相乘即

因而可以採用dft的快速演算法——快速傅利葉變換(fft)演算法,它與線性卷積相比,計算速度可以大大加快。但是,一般實際問題都是線性卷積運算。如果訊號以及系統的單位衝激響應都是有限長序列(假設長度分別為,),則只需將訊號及單位衝激響應分別補上與個零點,將它們都變成長為的序列,當滿足

時,點的圓周卷積就可代替線性卷積,從而可呼叫fft子程式運算。

2. 用matlab編寫主程式實現基於dft的線性卷積運算,主程式框圖如下:

3.與用函式conv(x,h)實現的卷積圖形進行比較。

提示:1.計算訊號的離散傅利葉變換時可呼叫fft子程式,格式為fft(x,n)。

2.計算逆離散傅利葉變換(idft)可呼叫ifft函式,格式為y=ifft(x)。

實驗三 fft譜分析

【實驗型別】驗證性

【實驗學時】2學時

【實驗目的】

1.進一步加深dft演算法原理和基本性質的理解(fft只是dft的一種快速演算法,故fft的運算結果必然滿足dft的基本性質);

2.熟悉fft演算法原理和fft子程式的應用;

3.學習用fft對連續訊號和時域離散訊號進行譜分析的方法,了解可能出現的分析誤差及其原因。

【實驗內容】

分別對如下三個訊號:

,,,作和的離散傅利葉變換dft,繪製、分析它們的訊號與頻譜圖,並回答下列問題:

1.8點和16點dft的頻譜圖有什麼關係,說明原因;

2.時,與頻譜圖一樣嗎?為什麼?呢?

【實驗前的預備知識】

1.離散傅利葉變換(dft)的定義、性質和用dft作譜分析的相關知識;

演算法原理與程式設計思想;

程式設計基礎。

【實驗方法或步驟】

離散傅利葉變換(dft)是對有限長序列進行頻譜分析的一種有用工具。離散傅利葉變換對在時域和頻域都是離散的,更有利於數字計算。dft除了作為有限長序列的一種傅利葉變換表示法在理論上相當重要之外,而且由於存在著計算離散傅利葉變換的有效快速演算法——快速傅利葉變換(fft),因而在數字訊號處理的演算法中起著核心作用。

本實驗的主程式比較簡單,只需直接呼叫fft子程式。程式設計的難點在於fft子程式的編寫。不過,各種語言的fft子程式都可在有關訊號處理的程式庫中找到(包括matlab)。

教材圖4-34已給出了一種按時間抽選、輸入倒位序、輸出自然順序、的基-2 fft演算法的程式。下面給出一種用c語言編制的fft函式,供有興趣的同學參考。

/*dit-fft函式(c語言)*/

fft-基2dit-fft函式

要求:指向複數陣列指標x,fft長度為,為正整數

fft輸出結果放在輸入複數陣列中。

/*計算n點fft子程式*/

/*xr:=訊號序列實部,xi:=訊號序列虛部,n:=fft變換區間長度n=2^m*/

/*如果訊號長度小於n,應該給xr,xi後面補0*/

/*計算結果x(k)的實部和虛部分別儲存在陣列xr和xi中*/

void fft (double xr, double xi, intn, intm)

changeorder(xr,xi,n); /*呼叫倒序子程式*/

/*計算各級蝶形*/

for(l=1; l<=m; l++)

{ b=(int)(pow(2, (l-1))+0.5);

for(j=0; j<=b-1; j++)

數字訊號處理實驗指導書

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

數字訊號處理實驗指導書

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

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

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