数字信号处理实验2.docx

上传人:b****3 文档编号:2223301 上传时间:2022-10-28 格式:DOCX 页数:8 大小:78.94KB
下载 相关 举报
数字信号处理实验2.docx_第1页
第1页 / 共8页
数字信号处理实验2.docx_第2页
第2页 / 共8页
数字信号处理实验2.docx_第3页
第3页 / 共8页
数字信号处理实验2.docx_第4页
第4页 / 共8页
数字信号处理实验2.docx_第5页
第5页 / 共8页
点击查看更多>>
下载资源
资源描述

数字信号处理实验2.docx

《数字信号处理实验2.docx》由会员分享,可在线阅读,更多相关《数字信号处理实验2.docx(8页珍藏版)》请在冰豆网上搜索。

数字信号处理实验2.docx

数字信号处理实验2

 

数字信号处理实验2

——离散系统频率响应和零极点分布

 

姓名:

李倩

学号:

班级:

通信四班

指导教师:

周争

 

一.实验原理

离散时间系统的常系数线性差分方程:

求一个系统的频率响应:

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)');

运行结果:

结果说明:

可以用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)');

运行结果:

结果说明:

由卷积算出来的输出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的相位值');

运行结果:

结果说明:

由幅频特性曲线可知系统呈高通特性;由系统的相频特性曲线可知,其相位非线性。

(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描述的离散时间系统的零极点图

运行结果:

结果说明:

由图可以看出系统的全部极点都在单位圆外,当系统的收敛域向内时,系统为非因果稳定系统;当系统的收敛域向外时,系统为因果非稳定系统。

零极点是在一个复平面上,极点的坐标可由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)函数作出系统的零极点图。

总结:

根据零极点图,极点如果全在单位圆内,则系统是稳定的,否则系统不稳定。

若系统函数的收敛域包含无穷远点,则系统是因果的。

在求系统的频率响应时求得的是一个周期连续的复函数,要分别求出它的模值和相位值并画出幅频特性曲线和相频特性曲线。

 

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 解决方案 > 学习计划

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1