数字信号处理实验实验二.doc

  1. 1、本文档共8页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
数字信号处理实验实验二

数字信号处理实验报告 实验名称:离散系统频率响应和零极点分布 学生姓名: z 学生学号: 学生班级: 上课时间: 周二上午 指导老师: 实验目的 通过MATLAB仿真简单的离散时间系统,研究其频域特性,加深对离散系统的冲激响应,频率响应分析和零极点分布概念的理解。 实验原理 若用x(n)和y(n)分别表示一个线性时不变(LTI)离散时间系统,则其输入,输出关系可用以下常系数线性差分方程描述。记LTI离散时间系统单位冲激响应为h(n),h(n)反映了系统固有的特征,它是离散系统的一个重要参数。 任意LTI系统都可由系统单位冲激响应h(n)表示,相应地在频域响应H(w)表示,它是h(n)的傅里叶变换。 使系统函数的分母多项式等于零的z值,称为系统的极点;同理,使系统函数的分子多项式等于零的z值,称为系统的零点。 通过系统的零极点增益表达式,可以判断一个LTI离散时间系统的稳定性。对一个因果的离散时间系统,若所有的极点都位于单位圆内,则系统是稳定的。同理,由零极点分布图可大致估计出系统的频率响应: 单位圆附近的零点对幅度响应的谷点的位置与深度有明显影响,当零点位于单位圆上时,谷点为零。零点可在单位圆外。 单位圆附近的极点对幅度响应的峰点位置和高度有明显影响。 三、实验内容 一个LTI离散时间系统的输入输出差分方程为 y(n)-1.6y(n-1)+1.28y(n-2)=0.5x(n)+0.1x(n-1) 编程求此系统的单位冲激响应序列,并画出其波形。 MATLAB程序如下: N=100; num=[0.5 0.1 0]; den=[1 -1.6 1.28]; y=impz(num,den,N); stem(y); xlabel(时间序号); ylabel(信号幅度); title(冲激响应); grid; 执行结果如下图形所示: (2) 如输入序列x(n)=,编程求此系统输出序列y(n),并画出其图形。 MATLAB程序如下: n=100; x=[1 2 3 4 5 zeros(1,n-5) ]; subplot(2,1,1); stem(x); xlabel(时序信号); ylabel(信号幅度); title(x(n)); grid; y=filter(num,den,x); subplot(2,1,2); stem(y); xlabel(时序信号); ylabel(信号幅度); title(y(n)); grid; 执行结果如下图形所示: (3) 编程得到系统频率响应的幅度响应和相位响应,并画图。 MATLAB程序如下: fs=1000; b=[0.5 0.1 ]; a=[1 -1.6 1.28]; [h,f]=freqz(b,a,256,fs); mag=abs(h); ph=angle(h); ph=ph*180/pi; subplot(2,1,1); plot(f,mag); xlabel(频率(Hz)); ylabel(幅度); subplot(2,1,2); plot(f,ph); xlabel(频率(Hz)); ylabel(‘幅度); 执行结果如下图形所示: (4) 编程得到系统的零极点分布图,分析系统的因果性和稳定性。 MATLAB程序如下: ⅰ.b=[0.5 0.1 ]; a=[1 -1.6 1.28]; [z,p,k]=tf2zp(b,a); zplane(z,p); xlabel(实部); ylabel(虚部); title(系统的零极点分布图); 执行结果如下图形所示: ⅱ. MATLAB程序如下: b=[0.5 0.1 ]; a=[1 -1.6 1.28]; zplane(b,a); xlabel(实部); ylabel(虚部); title(系统的零极点分布图); 执行结果如下图形所示: 答:由上面图形可知系统的极点落在单位圆外,所以本系统是不稳定的。 记录调试运行情况及所遇问题的解决方法 采用filter函数时,输出y与输入x的长度是相同的,所以在(2)中n=100,x必须补95个0才能与y长度相同,所以程序如下 x=[1 2 3 4 5 zeros(1,n-5) ]; (2)在MATLAB中编写程序要注意不能用中文标点,否则程序编译时会出现错误。 (3)在问题(2)中,x(n)的波形是n=1时,幅度=1,n=2时,幅度=2.........实际情况应该是n=0时,幅度=1,n=1时,幅度=2.....

文档评论(0)

haocen + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档