离散系统的时域分析matlab文档格式.docx
《离散系统的时域分析matlab文档格式.docx》由会员分享,可在线阅读,更多相关《离散系统的时域分析matlab文档格式.docx(27页珍藏版)》请在冰豆网上搜索。
n=0:
20;
stem(n,h,)
legend('
冲激'
)
4)产生幅度A=3,频率f=100,初始相位ϕ=1.2,点数为32点的正弦序列。
31;
x=3*exp(j*314*n)
figure
(1)
stem(n,x)
5)产生幅度A=3,角频率ω=314,点数为32点的复正弦序列。
31
A=3;
w=314;
x=A*exp(w*j*n)
6)产生幅度A=3,a=0.7,点数为32点的实指数序列。
a=0.7;
x=A*a.^n
实验二离散系统的时域分析
(1)熟悉并掌握离散系统的差分方程表示方法
(2)加深对冲激响应和卷积方法的理解
1、对于离散时间系统
其输入与输出的关系可以用以下的差分方程描述:
dk=0,k=0,1,2....N时,h[n]是有限长度的,称此时系统为FIR系统;
反之,称系统为IIR系统。
2、在MATLAB中,可以用y=filter(p,d,x)函数实现差分方程的仿真,也可以用y=conv(x,h)计算卷积,用y=impz(p,d,N)求系统的冲激响应。
三、实验内容与要求
编制程序求解下列两个系统的单位冲激响应和阶跃响应,并绘出其图形。
要求分别用filter、conv、impz三种函数完成。
y[n]+0.75y[n−1]+0.125y[n−2]=x[n]−x[n−1]
y[n]=0.25{x[n−1]+x[n−2]+x[n−3]+x[n−4]}
给出理论计算结果和程序计算结果并讨论。
(1)
1)a1=[1,0.75,0.125];
b1=[1,-1];
x2=ones(1,21);
y1filter=filter(b1,a1,x2);
stem(n,y1filter);
title('
y1filter_step'
);
xlabel('
x'
ylabel('
y'
2)
a1=[1,0.75,0.125];
[h]=impz(b1,a1,20);
y1=conv(h,x2);
y1conv=y1(1:
21);
n1=0:
stem(n1,y1conv,'
filled'
y1conv'
n'
y1[n]'
3)
a=[1,0.75,0.125];
b=1;
impz(b,a);
(2)
1)
a2=1;
b2=[00.25*ones(1,4)];
y2filter=filter(b2,a2,x2);
stem(n,y2filter);
y2filter_step'
h=[00.25*ones(1,4)];
y2=conv(h,x2);
y2conv=y2(1:
stem(n,y2conv,'
y2conv'
y[n]'
b=[0,0.25,0.5,0.75,ones(1,17)];
a=1;
impz(b,a,21);
实验三线性卷积与循环卷积的运算
1)进一步加深对线性卷积的理解和分析能力。
2)听过编程,上机调试进一步增强使用计算机解决问题的能力。
3)掌握线性卷积与循环卷积软件实现方法,并验证二者之间的关系。
1、线性卷积
线性时不变系统输入输出间的关系为:
当系统输入序列
,系统的单位脉冲响应为
,输出序列为
,则系统输出为:
2、循环卷积
设两个有限长的N点序列
和
,
的DTFT为X1(k),
DTFT为X2(k),如有X3(k)=X1(k)X2(k)
则
3、两个有限长序列的线性卷积
序列
为L点长,序列
为P点长,
为这两个序列的线性卷积,则有线性卷积的最大长度为L+P-1。
4、循环卷积于线性卷积的关系
当N〉=L+P-1时,圆周卷积等于线性卷积。
当N<
L+P-1时,两者不相等。
三、实验内容及结果
已知两个有限长序列
x(n)=δ(n)+2δ(n−1)+3δ(n−2)+4δ(n−3)+5δ(n−4)
H(N)=δ(n)+2δ(n−1)+δ(n−2)+2δ(n−3)
(1)实验前,预先笔算好这两个序列的线性卷积及下列几种情况的循环卷积
(1)x(n)*h(n)
(2)x(n)*h(n)(3)x(n)*h(n)(4)x(n)*h(n)
(2)编制一个计算两个序列线性卷积的通用程序,计算x(n)*h(n)。
(3)编制一个计算循环卷积的通用程序,计算上述4种情况下两个序列x(n)与
h(n)的循环卷积。
(4)上机调试并打印或记录实验结果。
(可在一个程序中用菜单形式实现上述两种卷积的计算。
要求列出计算两种卷积的公式,画出程序框图,给出实验结果,并对结果作出分析。
验证循环卷积两者之间的关系。
x1=[12345];
x2=[1212];
L=length(x1)+length(x2)-1;
XE=fft(x1,L);
HE=fft(x2,L);
y=ifft(XE.*HE);
L-1;
stem(n,y)
Amplitude'
线性卷积'
ycn1=circonv(x1,x2,5);
ny1=[0:
1:
length(ycn1)-1];
subplot(2,2,1);
stem(ny1,ycn1);
5点长的循环卷积'
ycn2=circonv(x,h,6);
ny2=[0:
length(ycn2)-1];
subplot(2,2,2);
stem(ny2,ycn2);
6点长的循环卷积'
ycn3=circonv(x1,x2,7);
ny3=[0:
length(ycn3)-1];
subplot(2,2,3);
stem(ny3,ycn3);
7点长的循环卷积'
ycn4=circonv(x,h,8);
ny4=[0:
length(ycn4)-1];
subplot(2,2,4);
stem(ny4,ycn4);
8点长的循环卷积'
实验四应用快速傅立叶变换对信号进行频谱分析
3)熟练掌握快速傅立叶变换原理及其用FFT进行频谱分析的基本方法。
4)在通过计算机上用软件实现FFT及信号的频谱分析。
5)通过实验对离散傅立叶变换的主要性质及FFT在数字信号处理的重要作用有进一步了解。
离散傅里叶变换及其主要性质
a.DFT表示离散信号的离散频谱,DFT的主要性质中的奇偶对称性,虚实特性等。
b.对于单一频率的三角序列来说它的DFT谱线也是单一的。
2、利用DFT对信号进行频谱分析
DFT的重要应用之一是对时域连续的信号的频谱进行分析,成为傅里叶分析。
Sc(t)V(k)
LPFxc(t)A/Dx(n)Xv(n)DFT
Ha(j
w(n)
图.时域连续信号离散傅里叶分析的处理步骤
3、快速离散傅里叶变换(FFT)
快速离散傅里叶变换是计算离散傅里叶变换的一种快速算法,FFT将DFT的计算逐次分解成较小点数的DFT。
(1)实指数序列
clearall
N=60;
n=0:
N-1;
xn=1.08.^n
KK=fft(xn,N)
magKK=abs(KK);
phaKK=angle(KK);
subplot(2,1,1)
stem(xn)
xlabel('
x(n)'
title('
x(n)N=60'
subplot(2,1,2)
k=0:
length(magKK)-1;
stem(k,magKK,'
.'
k'
/X(k)/'
X(k)N=60'
(2)复指数序列
xn=3*(0.9+0.3*j).^n
plot(n,xn)
stem(k,magKK,'
(3)周期为N的正弦序列
xn=sin(2*pi*n/N);
(4)周期为N的余弦序列
N=60;
xn=cos(2*pi*n/N);
(5)复合函数序列
xn=0.9*sin(2*pi/N*n)+0.6*sin(2*pi*3/N*n);
三、心得体会
通过实验操作我在掌握快速傅立叶变换原理和性质的基础上有学会了用FFT进行频谱分析的基本方法,在通过计算机上MATLAB实现FFT及信号的频谱分析更直观、真实,能进一步加深理论知识的理解。
实验五离散系统的变换域分析
(1)熟悉对离散系统的频率响应分析方法;
(2)加深对零、极点分布的概念的理解
系统的频率响应为:
系统的转移函数:
三、实验内容及程序
求系统
的零极点和幅度频率相应、相位响应。
编程实现系统参数输入,绘出幅度频率相应、相位响应曲线和零、极点分布图。
程序:
k=256
a=[1,-1.8107,2.4947,-1.8801,0.9537,-0.2336]
b=[0.0528,0.0797,0.1295,0.1295,0.797,0.0528]
subplot(3,1,1);
zplane(b,a)
w=0:
pi/k:
pi
h=freqz(b,a,w);
subplot(3,1,2);
plot(w/pi,abs(h));
grid
幅频'
\omega/\pi'
幅值'
subplot(3,1,3);
plot(w/pi,angle(h));
相频'
弧度'
实验六用双线性变换法设计IIR滤波器
1、实验目的
熟悉模拟Batterworth滤波器设计和用双线性变换法设计数字IIR滤波器方
法。
2、实验原理
利用双线性变换设计IIR滤波器,首先要设计出满足指标要求的模拟滤波器的传递函数H(s)a,然后由H(s)a通过双线性变换可得所要设计的IIR滤波器的系统函数H(z)。
如果给定的指标为数字滤波器的指标,则首先要转换成模拟域指
标。
1实验原理
利用双线性变换设计IIR滤波器,首先要设计出满足指标要求的模拟滤波器的传递函数
,然后由
通过双线性变换可得所要设计的IIR滤波器的系统函数H(z)。
如果给定的指标为数字滤波器的指标,则首先要转换成模拟域指标。
(1)低通数字滤波器设计
数字域与模拟域关系
=tg
H(z)=
(2)高通数字滤波器设计
3、实验内容及要求
(1)编写用双线性变换法设计Batterworth低通IIR数字滤波器的程序,要求
通带内频率低于0.2πrad时,容许幅度误差在1dB之内,频率在0.3πrad到
πrad之间的阻带衰减大与10dB。
其中要求参数ωp,ωs,ap,as
可由键盘输
入。
(2)以
为采样间隔,在屏幕上打印出数字滤波器的频率区间[0,π]上的幅频响应特性由线(H(ejω))。
(3)在屏幕上打印出H(z)的分子,分母多项式系数。
Wp=0.2*pi;
Ws=pi;
Rp=1;
Rs=10;
Fs=64/pi;
Ts=1/Fs;
[N,Wn]=Buttord(Wp,Ws,Rp,Rs,'
s'
[Z,P,K]=buttap(N);
[Bap,Aap]=Zp2tf(Z,P,K);
[b,a]=lp2lp(Bap,Aap,Wn)
[bz,az]=bilinear(b,a,Fs);
[H,W]=freqz(bz,az);
plot(W*Fs/(2*pi),abs(H));
频率/Hz'
幅度'
实验七用窗口法设计FIR滤波器
1、实验目的
了解一个实际滤波器设计过程,加深掌握用窗口法设计FIR滤波器的原理和
窗函数对滤波器性能的影响
直接截取的办法可以形象地想象为,h(n)好比是通过一个“窗口”所看
到的一段hd(n)。
h(n)中表达为hd(n)和一个“窗口函数”的乘积。
在这里,窗口函数就是矩形脉冲函数RN(n),即h(n)=hd(n)R(n)。
一般来说,窗口函数并不一定是矩形函数,可以在矩形以内还对hd(n)作
一定的加权处理,因此,一般可以表示为h(n)h(n)w(n)这里w(n)就是窗口函数。
这种对理想单位取样响应加窗的处理对频率响应会产生影响。
用改进余弦窗设计一个FIR线性相应相位低通数字滤波器,已知
w=0.5,N=21cπ。
编写调试程序,要求在幕幕上显示出单位脉冲响应h(n)的数值,画出其幅度
响应H(ejw)的曲线。
N=21;
Wc=0.5*pi;
Wn=Wc/pi;
B=fir1(N,Wn,hamming(N+1));
freqz(B,1)
%[H,W]=
%subplot(2,1,1)
%plot(W/pi,abs(H));
%subplot(2,1,2)
%plot(W/pi,angle(H));
%grid
%xlabel('
Æ
µ
Â
Ê
'
%ylabel('
·
ù
¶
È
心得体会
对工科来说理解比记忆更重要,对数字信号处理这门课程来说熟练掌握MATLAB软件是分析解决信号处理问题的基础,实验课是一次将理论化为实际行动的一次实践,在实验过程中进一步巩固了以前在Matlab课程中课时少遗留下来的问题。
而且通过编程以图形的形式更直观的观察现象,我对课本里的一些理论知识加深了理解,同时提高了动手能力,思考问题能力,学培养了分析问题解决问题能力。
在我们已有的理论基础上去展示我们的实践操作能力,增强了专业技能,从实际问题出发不断探索思考,创新。
为今后的自学,工作积累了丰富经验。
我觉得这是大学期间必须要掌握的,当今电子工业的飞速发展,对通信质量的要求越来越高,如果不借助软件很难做到精确无误,MATLAB以其强大的功能、快捷实用的操作界面及良好的开放性,为设计者提供了方便,使设计者能快捷、准确地调试系统性能,观察现象。