实验二离散序列卷积及及系统时域响应分析.doc

实验二离散序列卷积及及系统时域响应分析.doc

  1. 1、本文档共7页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
实验二 离散序列卷积及及系统时域响应分析 一.实验目的 学会运用MATLAB求解离散时间系统的零状态响应; 学会运用MATLAB求解离散时间系统的单位脉冲响应; 学会运用MATLAB求解离散时间系统的卷积和。 二.实验原理及实例分析 1. 离散时间系统的响应 离散时间LTI系统可用线性常系数差分方程来描述,即 (2-1) 其中,(,1,…,N)和(,1,…,M)为实常数。 MATLAB中函数filter可对式(2-1)的差分方程在指定时间范围内的输入序列所产生的响应进行求解。函数filter的语句格式为 y=filter(b,a,x) 其中,x为输入的离散序列;y为输出的离散序列;y的长度与x的长度一样;b与a分别为差分方程右端与左端的系数向量。 由离散时间系统的频域分析法可知,线性时不变离散系统也可以用系统函数来表示: (2-2) 其中a0=1。MATLAB信号处理工具箱提供了一个dlsim( )函数,通过H(z)来求解任意输入的系统的零状态响应。其调用方式为: y=dlsim(b,a,x); 式中,b,a分别为系统函数H(z)中,由对应的分子项和分母项系数所构成的数组,x为输入序列。 【实例2-1】 已知某LTI系统的差分方程为 试用MATLAB命令绘出当激励信号为时,该系统的零状态响应。 解:MATLAB源程序为: a=1/3*[3 -4 2]; b=1/3*[1 2 0]; n=0:30; x=(1/2).^n; y=filter(b,a,x); stem(n,y,'fill'),grid on xlabel('n'),title('系统响应y(n)') 程序运行结果如图2-1所示。 参考程序: clf a=[3 -4 2]/3; b=[1 2]/3; n=0:30; x=(1/2).^n; y=dlsim(b,a,x); stem(n,y,'fill'); grid on; xlabel('n'); title('系统响应y(n)'); 2 离散时间系统的单位脉冲响应 系统的单位取样响应定义为系统在激励下系统的零状态响应,用表示。MATLAB求解单位取样响应可利用函数filter,并将激励设为前面所定义的impseq()函数。 【实例2-2】求解实例2-1中系统的单位取样响应时,MATLAB源程序为 参考程序1: a=[3 -4 2]; b=[1 2]; n=0:30; x=(n==0); h=filter(b,a,x); stem(n,h,'fill'),grid on xlabel('n'),title('系统单位取样响应h(n)') 参考程序2: 调用函数function y=impse q(n) y=(n==0); %当参数为0时冲激为1,否则为0 该方法请自行编写。 程序运行结果如图2-2所示。 图2-2 实例2-2的系统单位脉冲响应 MATLAB另一种求单位取样响应的方法是利用控制系统工具箱提供的函数impz()来实现。impz()函数的常用语句格式为 impz(b,a,N) 其中,参数N通常为正整数,代表计算单位脉冲响应的样值个数。 【实例2-3】 已知某LTI系统的差分方程为 利用MATLAB的impz函数绘出该系统的单位取样响应。 解:MATLAB源程序为 a=[3 -4 2]; b=[1 2]; n=0:30; impz(b,a,30),grid on title('系统单位取样响应h(n)') 程序运行结果如图2-3所示,比较图2-2和图2-3,不难发现结果相同。 图2-3 实例2-3的系统单位脉冲响应 3 离散时间信号的卷积和运算 由于系统的零状态响应是激励与系统的单位取样响应的卷积,因此卷积运算在离散时间信号处理领域被广泛应用。离散时间信号的卷积定义为 (2-3) 可见,离散时间信号的卷积运算是求和运算,因而常称为“卷积和”。 MATLAB求离散时间信号卷积和的命令为conv,其语句格式为 y=conv(x,h) 其中,x与h表示离散时间信号值的向量;y为卷积结果。用MATLAB进行卷积和运算时,无法实现无限的累加,只能计算时限信号的卷积。 【实例2-4】利用MALAB的conv命令求两个长为4的矩形序列的卷积和,即,其结果应是长为7(4+4-1=7)的三角序列。用向量[1 1 1 1]表示矩形序列,MATLAB源程序为: x1=[1 1 1 1]; x2=[1 1 1 1]; n=1:7; g=conv(x1,x2); stem(n,g,'fill'); grid

您可能关注的文档

文档评论(0)

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

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

1亿VIP精品文档

相关文档