数字信号处理实验指导书2016_通信.docx

  1. 1、本文档共30页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
数字信号处理实验 徐俊 2016年8月 目 录 实验一 离散时间系统及系统响应 ·······························2 实验二 离散傅立叶变换及其特性验证 ······························8 实验三 时域采样与频域采样 ···································17 实验四 冲激响应不变法 IIR 数字滤波器设计 ··························24 实验一 离散时间系统及系统响应 一、实验目的 1、掌握求解离散时间系统脉冲响应和阶跃响应的方法; 2、掌握用线性卷积求解离散时间系统响应的基本方法。 二、实验原理与设计方法 1、用 impz 和 dstep 函数求解离散系统的单位脉冲响应和阶跃响应 【例 1-1】已知某因果系统的差分方程为 系统为零状态,求系统的脉冲响应和阶跃响应。 解:该系统是一个 2 阶系统,列出 bm 和 ak 系数为 a0 =1,a1=0.5, a2=0, b0=1 ,b1=0, b2=2 MALAB 程序如下(取 16 点作图): a=[1,0.5,0]; b=[1,0,2]; n=16; hn=impz(b,a,n); %脉冲响应 gn=dstep(b,a,n); %阶跃响应 subplot(1,2,1),stem(hn,'k'); title(' 系统的单位脉冲响应 '); ylabel('h(n)');xlabel('n'); axis([0,n,1.1*min(hn),1.1*max(hn)]); subplot(1,2,2),stem(gn,'k'); title(' 系统的单位阶跃响应 '); ylabel('g(n)');xlabel('n'); axis([0,n,1.1*min(gn),1.1*max(gn)]); 结果如下图所示: 2、用 conv 函数进行卷积计算求系统响应 【例 1-2】某离散时间系统的脉冲响应为 hb(n)= δ (n)+2.5 -1)+2δ(n.5 δ-(n2)+ δ (n-3) 激励信号为 设 A=444.128 ,α =50 , 。 试求该系统在输入信号激励下的响应。 解: MATLAB 程序如下: n=1:50;  %定义序列的长度是  50 hb=zeros(1,50);  % 注意:  MA TLAB  中数组下标从  1 开始 hb(1)=1;hb(2)=2.5;hb(3)=2.5;hb(4)=1; close all; subplot(3,1,1); stem(hb);title(' 系统 h[n]'); m=1:50;T=0.001; % 定义序列的长度和采样率 A=444.128;a=50*sqrt(2.0)*pi; %设置信号有关的参数 w0=50*sqrt(2.0)*pi; x=A*exp(-a*m*T).*sin(w0*m*T); subplot(3,1,2);stem(x);title(' 输入信号 x[n]'); y=conv(x,hb); subplot(3,1,3);stem(y);title(' 输出信号 y[n]'); 结果如下图所示: 3、用 filter 函数求系统响应 线性常系数差分方程是描述离散时间 LTI 系统的另一个时域模型,即系统的输入信号 x[n] 输出信号 y[n] 关系可以用下面的差分方程来表达 N M dk y[n  k]  pk x[ n  k ] k 0  k 0 LTI  为了求得系统响应信号的显式表达式( Explicit expression 在 MATLAB 中,是用差分方程的系数来描述一个离散时间离散时间系统的差分方程为  ),必须对差分方程求解。 LTI 系统的。例如,一个 y[n]+y[n-1]-6y[n-2]=x[n] MATLAB  则用两个系数向量  num = [1]  和  den = [1 1 -6] 来描述该系统, 其中  num 和  den 分别表示系统差分方程右边和左边的系数,按照差分运算的递减排列。 在用  num 和  den 定义了一个离散时间  LTI  系统之后,可以利用  MATLAB  来求解系统 响应。求解离散时间系统的响应的一个非常有用的  MATLAB  函数就是  filter() 。它可以用 来求解系统的在输入信号 x[n] 作用下的零状态响应,也可以求解系统在这个输入信号作用 下的完全响应。其用法描述如下: y = filter(num, den, x) ,求系统在输入 x 作用下的零状态响应 y, x 与 y 的长度相同。 y = filter(num,

文档评论(0)

158****3804 + 关注
实名认证
内容提供者

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

1亿VIP精品文档

相关文档