您所在位置:网站首页 > 海量文档
 > 计算机 > matlab
实验十二离散时间系统时域分析的MATLAB实现.doc4页
本文档一共被下载:次,您可全文免费在线阅读后下载本文档。
下载提示
1.本站不保证该用户上传的文档完整性,不预览、不比对内容而直接下载产生的反悔问题本站不予受理。
2.该文档所得收入(下载+内容+预览三)归上传者、原创者。
3.登录后可充值,立即自动返金币,充值渠道很便利
实验十二 离散时间系统时域分析的MATLAB实现
一. 实验目的
加深对离散系统中零状态响应概念的理解,掌握其求解方法;
掌握impz、stepz、filter函数求解给定离散系统的单位序列响应单位阶跃响应的方法
二. 实验原理
线性时不变离散时间系统用常系数线性差分方程描述: 在已知初始状态以及输入的条件下,可以通过迭代算出系统MATLAB求解
impz( )是MATLAB专门用于计算离散系统单位响应h(k)的函数。impz( )的调用格式与利用impulse( )求连续系统单位冲激响应h(t)相类似,归纳为以下四种形式:
impz(b,a):绘出单位响应h(k)的波形图;
impz(b,a,k0):绘出单位响应h(k)在k =0~ k0时间范围内的波形图;
impz(b,a,k1: k2):绘出单位响应h(k)在k = k1~ k2时间范围内的波形图;
y= impz(b,a,k1: k2):求出单位响应h(k)在k = k1~ k2时间范围内的数值解。
其中,分别是系统差分方程左、右端的系数向量MATLAB求解
stepz( )是MATLAB专门用于计算离散系统单位阶跃响应g(k)的函数。stepz( )的调用格式与利用step( )求连续系统单位阶跃响应g(t)相类似,有以下四种形式:
stepz(b,a):绘出单位阶跃响应g(k)的波形图;
stepz(b,a,k0):绘出单位阶跃响应g(k)在k =0~ k0时间范围内的波形图;
stpez(b,a,k1: k2):绘出单位阶跃响应g(k)在k = k1~ k2时间范围内的波形图;
y=stepz(b,a,k1: k2):求出单位阶跃响应g(k)在k = k1~ k2时间范围内的数值解。
例12-1.已知离散系统的差分方程式为:
求系统在k=0~20区间内的单位响应和单位阶跃响应的波形图。
解:输入如下M文件,
a=[2 -2 1];
b=[1 2 2];
subplot(2,1,1);impz(b,a,20); %求单位响应
xlabel('k');title('单位响应');
subplot(2,1,2);stepz(b,a,20); %求阶跃响应
xlabel('k');title('阶跃响应');hold off
运行后,可得如图12-1所示的波形图。
4.离散系统零状态响应的MATLAB求解
系统的零状态响应就是在系统初始状态为零条件下分方程的解。MATLAB控制系统工具箱提供了一个filter函数,可以计算系统的零状态响应,其调用形式为:y=filter(b,a,f )
其中,分别是系统差分方程左、右端的系数向量,f表示输入向量,y表示输出向量。注意,输出序列的长度与输入序列的长度相同。 filter函数,输入如下M文件,
a=[1 -0.25 0.5];
b=[0 1 2];
k=0:10;
f=(0.5).^k;
y=filter(b,a,f) %调用函数filter,求零状态响应
subplot(2,1,1);stem(k,f,'fill');title('输入序列')
subplot(2,1,2);stem(k,y,'fill');title('响应序列')
运行以上M文件,可得以下文本形式的数值解和图12-2所示的波形图。
y =
Columns 1 through 9
0 1.0000 2.7500 1.4375 -0.3906 -0.5039 0.2256 0.3865 0.0229
Columns 10 through 11
-0.1680 -0.0437
需注意的是,函数filter( )将向量f以外(如例12-2中k=0~10区间之外)的输入序列样值均视为零。若输入是无限长序列,用函数filter( )计算系统的零状态响应?(k),利用函数filter( )也可计算系统的阶跃响应k=0:20; x=ones(1,length(k)); %定义阶跃信号
g=filter(b,a,x); %求阶跃响应
代替例12-1中的“stepz(b,a,20)” ,也可计算系统的单位阶跃响应g(k),得到与图12-1相同的结果。
离散系统的零状态响应y(k) 也可以通过如下方法求得:利用函数impz( )求得单位响应h(k),然后,调用函数dconv( )求输入序列f(k)与单位响应h(k)的卷积和。
三. 实验内容与步骤
1. 离散系统的利用函数impz和stepz求单位序列响应hk)和单位阶跃响应k),并与其理论值比较已知序列利用conv函数计算两个序列卷积后的新序列并显示结果系统的
输入为。k=0~10范围内,
(1)利用函数filter( )求系统的零
发表评论
请自觉遵守互联网相关的政策法规,严禁发布色情、暴力、反动的言论。
用户名:
验证码:
匿名?
发表评论