数字信号处理实验2

整理文档很辛苦,赏杯茶钱您下走!

免费阅读已结束,点击下载阅读编辑剩下 ...

阅读已结束,您可以下载文档离线阅读编辑

资源描述

数字信号处理实验2——离散系统频率响应和零极点分布姓名:李倩学号:13081403班级:通信四班指导教师:周争一.实验原理离散时间系统的常系数线性差分方程:求一个系统的频率响应:H(e^jw)是以2pi为周期的连续周期复函数,将其表示成模和相位的形式:H(e^jw)=|H(e^jw)|*e^(jarg[H(e^jw)])其中|H(e^jw)|叫做振幅响应(幅度响应),频率响应的相位arg[H(e^jw)]叫做系统的相位响应。将常系数线性差分方程的等式两边求FT,可以得到系统的频率响应与输入输出的频域关系式:H(e^jw)=Y(e^jw)/X(e^jw)将上式中的e^jw用z代替,即可得系统的系统函数:H(z)=Y(z)/X(z)H(z)=∑h(n)*z^(-n)(n的取值从负无穷到正无穷)将上式的分子、分母分别作因式分解,可得到LTI系统的零极点增益表达式为:H(z)=g∏(1-zr*z^(-1))/∏(1-pk*z^(-1))其中g为系统的增益因子,pk(k=1,2,3,…,N)为系统的极点,zr(r=1,2,3,…,M)为系统的零点。通过系统的零极点增益表达式,可以判断一个系统的稳定性,对于一个因果的离散时间系统,若所有的极点都在单位圆内,则系统是稳定的。二.实验内容一个LTI离散时间系统的输入输出差分方程为y(n)-1.6y(n-1)+1.28y(n-2)=0.5x(n)+0.1x(n-1)(1)编程求此系统的单位冲激响应序列,并画出其波形。(2)若输入序列x(n)=&(n)+2&(n-1)+3&(n-2)+4&(n-3)+5&(n-4),编程求此系统输出序列y(n),并画出其波形。(3)编程得到系统频响的幅度响应和相位响应并画图。(4)编程得到系统的零极点分布图,分析系统的因果性和稳定性。三.程序与运行结果(1)编程求此系统的单位冲激响应序列,并画出其波形。程序:clear;N=100;b=[0.50.1];a=[1-1.61.28];h1=impz(b,a,N);%计算系统的冲激响应序列的前N个取样点x1=[1zeros(1,N-1)];%生成单位冲激序列h2=filter(b,a,x1);%计算系统在输入单位冲激序列时的输出subplot(2,1,1);stem(h1);xlabel('时间序号n');ylabel('单位冲激响应序列值');title('单位冲激响应序列h1(n)');subplot(2,1,2);stem(h2);xlabel('时间序号n');ylabel('单位冲激响应序列值');title('单位冲激响应序列h2(n)');运行结果:0102030405060708090100-1012x105时间序号n单位冲激响应序列值单位冲激响应序列h1(n)0102030405060708090100-1012x105时间序号n单位冲激响应序列值单位冲激响应序列h2(n)结果说明:可以用impz函数直接求出系统的单位冲激响应序列,也可输入单位冲激序列,用filter函数求出系统的单位冲激响应序列,两者求得的结果相同。单位冲激序列可以用zeros函数来实现。(2)若输入序列x(n)=&(n)+2&(n-1)+3&(n-2)+4&(n-3)+5&(n-4),编程求此系统输出序列y(n),并画出其波形。程序:clear;N=100;n=0:99;b=[0.50.1];a=[1-1.61.28];h1=impz(b,a,N);x2=[12345zeros(1,N-5)];%生成一个只在n=0,1,2,3,4处有对应值1,2,3,4,5,其他n值情况下值为零的序列y1=conv(x2,h1);%计算卷积求系统输出y2=filter(b,a,x2);%求系统输出subplot(2,1,1);stem(n,y1(1:length(y2)));%使得y1和y2的图形取值范围相同xlabel('时间序号n');ylabel('输出序列幅度值');title('输出序列y1(n)');subplot(2,1,2);stem(n,y2);xlabel('时间序号n');ylabel('输出序列幅度值');title('输出序列y2(n)');运行结果:0102030405060708090100-1-0.500.51x106时间序号n输出序列幅度值输出序列y1(n)0102030405060708090100-1-0.500.51x106时间序号n输出序列幅度值输出序列y2(n)结果说明:由卷积算出来的输出y的序列长度为length(x)+length(h)-1,将其长度限定为用filter函数求出的输出y的序列长度相同后,两者的图相同。(3)编程得到系统频响的幅度响应和相位响应并画图。程序:clear;b=[0.50.1];a=[1-1.61.28];fs=1000;[h,f]=freqz(b,a,256,fs);%计算系统的频率响应值与对应的频率值mag=abs(h);%对复函数h求模值ph=angle(h);%对复函数h求相位ph=ph*180/pi;%将相位弧度值转化成度数值subplot(2,1,1);plot(f,mag);xlabel('频率值f');ylabel('频率响应输出模值');title('频率响应H的模值');subplot(2,1,2);plot(f,ph);xlabel('频率值f');ylabel('频率响应输出相位值');title('频率响应H的相位值');运行结果:0501001502002503003504004505000123频率值f频率响应输出模值频率响应H的模值050100150200250300350400450500-200-1000100200频率值f频率响应输出相位值频率响应H的相位值结果说明:由幅频特性曲线可知系统呈高通特性;由系统的相频特性曲线可知,其相位非线性。(4)编程得到系统的零极点分布图,分析系统的因果性和稳定性。程序:clear;b=[0.50.1];a=[1-1.61.28];[z,p,k]=tf2zp(b,a);%计算零点、极点构成的矢量和系统增益subplot(2,1,1);zplane(z,p);%画出以零点矢量和极点矢量描述的离散时间系统的零极点图subplot(2,1,2);zplane(b,a);%画出以矢量b,a描述的离散时间系统的零极点图运行结果:-3-2-10123-1-0.500.51RealPartImaginaryPart-3-2-10123-1-0.500.51RealPartImaginaryPart结果说明:由图可以看出系统的全部极点都在单位圆外,当系统的收敛域向内时,系统为非因果稳定系统;当系统的收敛域向外时,系统为因果非稳定系统。零极点是在一个复平面上,极点的坐标可由matlab直接显示。四.实验总结:本次实验要掌握以下几个函数的用法和作用:1、计算系统的频率响应值H(e^jw)[h,f]=freqz(b,a,n,fs)其中fs是采样频率,n是在0~fs/2之间的选取的频率点数2、已知系统的差分方程、输入和单位冲激响应序列,求对应的系统的输出有以下几种方法:y=conv(x,h)或y=filter(b,a,x)3、求系统的单位冲激响应序列有如下方法:h=impz(b,a,x)或令输入序列x=[1zeros(1:N)],再利用filter函数求得系统的输出即系统的单位冲激响应序列。4、求零极点图有两种方式:先用[z,p,k]=tf2zp(b,a)求得系统的零极点分别构成的矢量,再利用zplane(z,p)函数直接作出系统的零极点图;或者直接用zplane(b,a)函数作出系统的零极点图。总结:根据零极点图,极点如果全在单位圆内,则系统是稳定的,否则系统不稳定。若系统函数的收敛域包含无穷远点,则系统是因果的。在求系统的频率响应时求得的是一个周期连续的复函数,要分别求出它的模值和相位值并画出幅频特性曲线和相频特性曲线。

1 / 12
下载文档,编辑使用

©2015-2020 m.777doc.com 三七文档.

备案号:鲁ICP备2024069028号-1 客服联系 QQ:2149211541

×
保存成功