實驗一Matlab軟體的使用

2023-01-14 14:00:02 字數 6035 閱讀 6293

1、實驗目的和要求

掌握matlab軟體的使用方法;

常用離散時間訊號的產生、顯示和運算。

2、實驗內容

matlab軟體常用命令和工具箱的使用,學會簡單的程式設計;

程式設計實現常用離散時間訊號;

離散時間訊號的疊加、移位、線性卷積等基本運算。

3、實驗原理

利用軟體生成數字訊號處理系統中所涉及的訊號及訊號的加、移位、卷積等運算。

4、主要儀器裝置

計算機,matlab軟體。

實驗步驟:

程式1:

n=-5:30;

x=[zeros(1,5),1,zeros(1,30)];

stem(n,x,'fill');

grid on

程式2:

n=-5:30;

x=[zeros(1,5),ones(1,8),zeros(1,23)];

stem(n,x,'fill');

grid on;

程式3:

n=-15:20;

x=[zeros(1,15),1,2,3,4,5,zeros(1,16)];

stem(n,x,'fill');

grid on;

程式4:

n=10;

m=10;

l=n+m-1;

x=[1,2,3,4,5,zeros(1,5)];

h=[1,2,1,2,zeros(1,6)];

y=conv(x,h);

n=0:l-1;

stem(n,y,'*k');

grid on ;

實驗結果:

1、2、

3、4、

實驗二 dtft和z變換的matlab實現

1、實驗目的和要求

掌握dtft和z變換的matlab實現的方法;

進一步了解離散時域系統的時頻特性。

2、實驗內容

dtft和z變換的計算和基本性質;

離散時域系統的**;

利用函式實現離散時域系統的頻率響應,分析零、極點的分布,進一步了解離散時域系統的時域特性。

3、實驗原理

利用matlab軟體計算出系統函式的零極點分布、單位脈衝響應和系統頻率響應等的影象並於筆算結果進行比較,找出異同。編譯合適程式能計算取值範圍不同的離散卷積。

4、主要儀器裝置

計算機,matlab軟體。

實驗步驟:

程式1:

n=0:30;

x=zeros(1,length(n));

h=zeros(1,length(n));

x([find((n>=0)&(n<=4))])=1;

h([find((n>=0)&(n<=8))])=0.5;

figure(1)

subplot(3,1,1);

stem(n,x);

axis([0,30,0,2]);

title('輸入序列');

xlabel('n');

ylabel('x(n)');

subplot(3,1,2);

stem(n,h);

axis([0,30,0,2]);

title('衝激響應序列');

xlabel('n');

ylabel('h(n)');

y=conv(x,h);

subplot(3,1,3);

n=0:length(y)-1;

stem(n,y);

title('輸出響應');

xlabel('n');

ylabel('y(n)');

程式2:

b=[0.0181,0.0543,

0.0543,0.0181];

a=[1.000,-1.76,

1.1829,-0.2781];

w=pi*freqspace(500);

h=freqz(b,a,w);

mh=abs(h);

ah=angle(h);

subplot(2,1,1);

plot(w/pi,mh);

grid;

axis([0,1,0,1]);

xlabel('w(pi)');

ylabel('|h|');

title('幅度、相位響應');

subplot(2,1,2);

plot(w/pi,ah);

grid;

xlabel('w(pi)');

ylabel('angle(h)');

實驗結果:

1、2、

實驗三 dfs和dft的matlab實現

1、實驗目的和要求

加深dfs和dft的演算法原理和基本性質的理解;

熟悉利用fft對典型數碼訊號進行頻譜分析。

2、實驗內容

使用matlab實現程式週期序列的dfs;

利用fft和ifft程式設計實現兩個有限長序列的迴圈卷積;

3、實驗原理

對有限長序列使用離散fouier變換(dft)可以很好的反映序列的頻譜特性,而且易於用快速演算法在計算機上實現。

4、主要儀器裝置

計算機,matlab軟體。

實驗步驟:

程式1:

function shiyan22()

f=50;

n=64;

t=0.000625;

n=1:n;

x=cos(2*pi*f*n*t);

subplot(2,1,1);

plot(n,x);

hold on

title('x(n)');

xlabel('n');

x=fft(x);

subplot(2,1,2);

plot(n,x);

grid

title('fft|x|');

xlabel('f(pi)');

程式2:

n=0:30;%輸入x(n)和衝激響應h(n)

x=zeros(1,length(n));

h=zeros(1,length(n));

x([find((n>=0)&(n<=4))])

=1;h([find((n>=0)&(n<=8))])

=0.5;

subplot(3,1,1);

stem(x);

title('x(n)');

axis([0,30,0,2]);

subplot(3,1,2);

stem(h);

title('h(n)');

axis([0,30,0,2]);

x=fft(x);

h=fft(h);

y=x.*h;

y=ifft(y);

subplot(3,1,3);

實驗結果:

1、2、

實驗四 iir數字濾波器的設計和實現

1、實驗目的和要求

掌握衝擊響應不變法和雙線形變換法設計iir數字濾波器的原理和方法;

通過觀察對實際訊號的濾波,獲得對數字濾波的感性認識。

2、實驗內容

巴特沃思濾波器設計實現模擬低通濾波器;

利用衝擊響應不變法和雙線形變換法對模擬濾波器進行a/d轉換;

3、實驗原理

用數字濾波器的單位脈衝響應序列模仿模擬濾波器的衝激響應,讓正好等於的取樣值,即。

4、主要儀器裝置

計算機,matlab軟體。

實驗步驟:

設計乙個巴特沃思數字低通濾波器,設計指標如下:通帶內幅度衰減不大於1db;阻帶幅度衰減不小於15db。編制實現該數字濾波器程式並且實現數字濾波。

function shiyan3()

fp=200*pi;

fs=300*pi;

wp=0.2*pi;

ws=0.3*pi;

rp=1;

as=15;

t=1;

fs=1000;

[n,fc]=buttord(fp,fs,rp,as,'s');

[b,a]=butter(n,fc,'s');

w=[0:1000*2*pi];

[hf,w]=freqs(b,a,1000);

[d,c]=impinvar(b,a,fs);

wd=[0:512]*pi/512;

hw1=freqz(d,c,wd);

[f,e]=bilinear(b,a,fs);

hw2=freqz(f,e,wd);

omegap=(2/t)*tan(wp/2);

omegas=(2/t)*tan(ws/2);

ep=sqrt(10^(rp/10)-1);

ripple=sqrt(1/(1+ep.^2));

attn=1/10^(as/20);

subplot(3,1,1);

plot(wd/pi,abs(hw1)/abs(hw1(1)));

title('幅度響應(衝擊響應不變法)');

xlabel('w(pi)');

ylabel('h');

ylabel('h');

axis([0,1,0,1.1]);

set(gca,'xtickmode','manual','xtick',[0,0.2,0.35,1.1]);

set(gca,'ytickmode','manual','ytick',[0,attn,ripple,1]);

grid;

subplot(3,1,2);

plot(wd/pi,20*log10((abs(hw2)+eps)/abs(hw2(1))));

title('幅度響應(雙線性變換法(db))');

xlabel('w(pi)');

ylabel('h');

axis([0,1,-40,5]);

set(gca,'xtickmode','manual','xtick',[0,0.2,0.35,1.1]);

set(gca,'ytickmode','manual','ytick',[-50,-15,-1,0]);

grid;

subplot(3,1,3);

plot(wd/pi,-angle(hw2));

title('相位響應');

xlabel('w(pi)');

ylabel('pi unit');

%axis([0,1,0,1.1]);

set(gca,'xtickmode','manual','xtick',[0,0.2,0.35,1.1]);

set(gca,'ytickmode','manual','ytick',[-1,0,1]);

grid;

實驗結果:

實驗五 fir數字濾波器的設計和實現

1、實驗目的和要求

掌握用窗函式法設計fir數字濾波器的原理和方法;

熟悉線性相位fir濾波器的幅頻特性和相頻特性;

了解不同窗函式對濾波器效能的影響。

2、實驗內容

用hanning窗設計線性相位帶通濾波器;

分別改用矩形窗和blackman窗設計線性帶通濾波器;

3、實驗原理

確定數字濾波器的效能要求,根據效能要求,合理選擇單位脈衝響應的奇偶對稱性,從而確定理想頻率響應的幅頻特性和相頻特性;求理想單位脈衝響應,選擇適當的窗函式,根據求所需設計的fir濾波器單位脈衝響應;

4、主要儀器裝置

計算機,matlab軟體。

實驗步驟:

設計乙個fir數字濾波器,設計指標如下:通帶內幅度衰減不大於1db;阻帶幅度衰減不小於15db;編制計算設計的數字濾波器幅度特性和相位特性的程式。

wp=0.2*pi;

ws=0.3*pi;

tr_width=ws-wp;

m=ceil(6.6*pi/tr_width)+1;

n=0:m-1;

wc=(ws+wp)/2;

alpha=(m-1)/2;

m=n-alpha+eps;

hd=sin(wc*m)./(pi*m);

w_ham=(hamming(m))';

[mag,db,pha,w]=freqz_m(h,[1]);

數學軟體MATLAB實驗報告實驗二

實驗二 數學軟體matlab的資料型別 實驗目的與要求 掌握matlab的陣列 矩陣 字串 多維陣列 結構陣列 單元陣列和函式控制代碼等資料型別。實驗內容 1.常數 在命令視窗中分別鍵入 rho sqrt 5 1 2 a abs 3 4i realmax huge exp log realmax t...

數學軟體MATLAB實驗報告實驗四

實驗四 數學軟體matlab的繪製圖形 實現目的與要求 熟練掌握利用matlab提供的繪圖函式繪製基本二維圖形 三維線性圖和表面圖 掌握利用matlab提供的函式繪製線性圖 條形圖等實用圖形。實驗內容 1 在乙個座標系中繪製線形圖 條形圖 面積圖。程式 x 1 2 3 4 5 6 7 8 y 10 ...

DSP實驗報告 使用MatLab

大學 實驗報告 實驗名稱取樣 系統性質及濾波 系統頻率響應和樣本處理演算法實現 加窗和離散傅氏變換 數字濾波器設計 陷波器設計 課程名稱 數字訊號處理 班級學號 姓名開課時間 20 20 學年,第學期 實驗一1實驗名稱 取樣 系統性質及濾波 2實驗目的和任務,實驗內容 一 觀察取樣引起的混疊 設模擬...