數字訊號處理——實驗(三)
阿新 • • 發佈:2018-12-21
實驗名稱:連續時間訊號的數字處理
一、實驗目的:
掌握通過週期抽樣實現連續時間訊號到離散時間訊號的轉換,驗證抽樣定理,瞭解訊號重構的過程;掌握模擬濾波器的設計方法。
二、實驗內容及要求:
1. 連續時間訊號的抽樣及重構:
(1)修改程式P5.1,將正弦訊號的頻率分別改為3Hz和7Hz,畫出抽樣結果圖,相應的等效離散時間訊號之間有差別嗎?若沒有差別,為什麼?
(2)修改程式P5.2,將正弦訊號的頻率分別改為3Hz和7Hz,畫出重構訊號。
2. 模擬濾波器的設計:
修改程式P5.4,設計巴特沃茲低通濾波器,其中通帶截止頻率為3000Hz,阻帶截止頻率為4000Hz,通帶波紋0.5dB,最小阻帶衰減30dB,繪製增益響應。所設計的濾波器的階數和3dB截止頻率分別是多少?
三、實驗結果及問題回答:
- 連續時間訊號的抽樣及重構:
(1)實驗結果:
% Program P5_1 % Illustration of the Sampling Process % in the Time-Domain clf; t = 0:0.0005:1; f = 7; xa = cos(2*pi*f*t); subplot(2,1,1) plot(t,xa);grid xlabel('Time, msec');ylabel('Amplitude'); title('Continuous-time signal 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:length(n)-1; stem(k,xs);grid; xlabel('Time index n');ylabel('Amplitude'); title('Discrete-time signal x[n]'); axis([0 (length(n)-1) -1.2 1.2])
抽樣結果圖相應的等效離散時間訊號之間沒有差別。因為抽樣週期沒有發生變化,頻率變化不會影響離散時間訊號。
f = 3時:
f = 7時:
(2)實驗結果:
clf; T = 0.1;f = 7; n = (0:T:1)'; xs = cos(2*pi*f*n); t = linspace(-0.5,1.5,500)'; ya = sinc((1/T)*t(:,ones(size(n))) - (1/T)*n(:,ones(size(t)))')*xs; plot(n,xs,'o',t,ya);grid; xlabel('Time, msec');ylabel('Amplitude'); title('Reconstructed continuous-time signal y_{a}(t)'); axis([0 1 -1.2 1.2]);
所有頻率對應影象都是下圖,原因與上題一致
2. 模擬濾波器的設計:
% Program P5_4
% Design of Analog Lowpass Filter
clf;
Fp = 3000;Fs = 4000;
Wp = 2*pi*Fp; Ws = 2*pi*Fs;
[N, Wn] = buttord(Wp, Ws, 0.5, 30,'s');
%buttord函式的用法為: [n,Wn]= buttord(Wp,Ws,Rp,Rs)
%其中Wp和Ws分別是通帶和阻帶的拐角頻率(截止頻率),其
%取值範圍為0至1之間。當其值為1時代表取樣頻率的一半。
%Rp和Rs分別是通帶和阻帶區的波紋係數。
[b,a] = butter(N, Wn, 's');
%%butter函式的用法為:[b,a]=butter(n,Wn,/ftype/) 其
%中n代表濾波器階數,Wn代表濾波器的截止頻率,這兩個引數
%可使用buttord函式來確定。buttord函式可在給定濾波器性
%能的情況下,求出巴特沃斯濾波器的最小階數n,同時給出對
%應的截止頻率Wn
wa = 0:(3*Ws)/511:3*Ws;
h = freqs(b,a,wa);
%freqs()函式
%freqs用於計算由向量a和b構成的模擬濾波器H(s)=B(s)/A(s)的幅頻響應.
%h=freqs(b,a,w)用於計算模擬濾波器的幅頻響應,其中實向量w用於指定頻
%率值,返回值h為一個複數行向量,要得到幅值必須對它取絕對值,即求模.
plot(wa/(2*pi), 20*log10(abs(h)));grid %畫圖,並開啟網格
xlabel('Frequency, Hz');ylabel('Gain, dB');%使用標籤
title('Gain response');%使用標題
axis([0 3*Fs -60 5]);%設定影象區域