实验一 Matlab软件的使用.docx
- 文档编号:28236337
- 上传时间:2023-07-09
- 格式:DOCX
- 页数:17
- 大小:195.96KB
实验一 Matlab软件的使用.docx
《实验一 Matlab软件的使用.docx》由会员分享,可在线阅读,更多相关《实验一 Matlab软件的使用.docx(17页珍藏版)》请在冰豆网上搜索。
实验一Matlab软件的使用
实验一Matlab软件的使用
1、实验目的和要求
掌握Matlab软件的使用方法;
常用离散时间信号的产生、显示和运算。
2、实验内容
Matlab软件常用命令和工具箱的使用,学会简单的编程;
编程实现常用离散时间信号;
离散时间信号的叠加、移位、线性卷积等基本运算。
3、实验原理
利用软件生成数字信号处理系统中所涉及的信号及信号的加、移位、卷积等运算。
4、主要仪器设备
计算机,Matlab软件。
实验步骤:
程序1:
n=-5:
30;
x=[zeros(1,5),1,zeros(1,30)];
stem(n,x,'fill');
gridon
程序2:
n=-5:
30;
x=[zeros(1,5),ones(1,8),zeros(1,23)];
stem(n,x,'fill');
gridon;
程序3:
n=-15:
20;
x=[zeros(1,15),1,2,3,4,5,zeros(1,16)];
stem(n,x,'fill');
gridon;
程序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');
gridon;
实验结果:
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:
functionshiyan22()
F=50;
N=64;
T=0.000625;
n=1:
N;
x=cos(2*pi*F*n*T);
subplot(2,1,1);
plot(n,x);
holdon
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。
编制实现该数字滤波器程序并且实现数字滤波。
functionshiyan3()
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('piunit');
%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]);
delta_w=2*pi/1000;
Rp=-(min(db(1:
wp/delta_w+1)));
As=-round(max(db(ws/delta_w+1:
501)));
subplot(2,2,1);
stem(n,hd);
title('理想冲激响应');
axis([0,M-1,-0.1,0.3]);
ylabel('hd(n)');
subplot(2,2,2);
stem(n,h);
title('实际冲激响应');
axis([0,M-1,-0.1,0.3]);
ylabel('h(n)');
subplot(2,2,3);
plot(w/pi,pha);
title('滤波器相位响应');
axis([0,1,-pi,pi]);
ylabel('pha');
set(gca,'XTickmode','manual','XTick',[0,0.2,0.3,1.1]);
set(gca,'YTickmode','manual','YTick',[-pi,0,pi]);
grid;
subplot(2,2,4);
plot(w/pi,db);
title('滤波器幅度响应');
axis([0,1,-100,10]);
ylabel('H(db)');
set(gca,'XTickmode','manual','XTick',[0,0.2,0.3,1.1]);
set(gca,'YTickmode','manual','YTick',[-50,-15,0]);
function[mag,db,pha,w]=freqz_m(b,a)
[H,w]=freqz(b,a,1000,'whole');
H=(H(1:
501))';
w=(w(1:
501))';
mag=abs(H);
db=20*log10((mag+eps)/max(mag));
pha=angle(H);
实验结果:
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 实验一 Matlab软件的使用 实验 Matlab 软件 使用