
实验3 LTI系统的时域分析.docx
4页实验三LTI系统的时域分析一、实验目的1、 学习在MATLAB软件下系统的描述方法;2、 学会用MATLAB求解连续系统和离散系统的零状态响应,冲激响应及阶跃响应二、实验原理1. 连续时间系统零状态响应的数值解我们知道,LTI连续系统可用如下所示的线性常系数微分方程来描述,Ma y(i)(t) = Xb f (j)(t)i=0 j=0在MATLAB中,控制系统工具箱提供了一个用于求解零初始条件微分方程数值解的函数 lsim其调用格式y=lsim(sys,f,t)式中,t表示计算系统响应的抽样点向量,f是系统输入信号向量,sys是LTI系统模型,用 来表示微分方程其调用格式sys=tf(b,a)式中,b和a分别是微分方程的右端和左端系数向量例如,对于以下方程:a y "(t) + a y "(t) + a y (t) + a y (t) = b f' ' (t) + b f "(t) + bf (t) + b f (t)3 2 1 0 3 2 1 0可用 a = [a ,a ,a ,a ];b = [b ,b ,b ,b ]; sys = tf (b,a)获得其 LTI模型3 2 1 0 3 2 1 0注意,如果微分方程的左端或右端表达式中有缺项,则其向量a或b中的对应元素应为零,不能省略不写,否则出错。
例2-1已知某LTI系统的微分方程为y’’(t)+ 2y’(t)+100y(t)=f(t)其中,y (0) = y (0) = 0, f (t) = 10sin(2 兀 t),求系统的输出 y(t).解:显然,这是一个求系统零状态响应的问题其MATLAB计算程序如下:ts=0;te=5;dt=0.01; %定义变量sys=tf([1],[1,2,100]);%列微分方程,LTI系统模型t=ts:dt:te; %定义时间t的取值范围f=10*sin(2*pi*t); %定义响应y=lsim(sys,f,t); %求解零初始条件微分方程数值解plot(t,y); %y-t 关系图xlabel('Time(sec)'); %标注坐标轴ylabel('y(t)'); %标注坐标轴2. 连续时间系统冲激响应和阶跃响应的求解在MATLAB中,对于连续LTI系统的冲激响应和阶跃响应,可分别用控制系统工具箱 提供的函数impulse和step来求解其调用格式为y=impulse(sys,t)y=step(sys,t)式中,t表示计算系统响应的抽样点向量,sys是LTI系统模型例2-2已知某LTI系统的微分方程为y’’(t)+ 2y,(t)+100y(t)=10f(t)求系统的冲激响应和阶跃响应的波形.解:ts=0;te=5;dt=0.01;sys=tf([10],[1,2,100]);t=ts:dt:te;h=impulse(sys,t);figure;plot(t,h);xlabel('Time(sec)');ylabel('h(t)');g=step(sys,t);figure;plot(t,g);xlabel('Time(sec)');ylabel('g(t)');3、离散时间系统零状态响应的数值解LTI离散系统可用如下所示的线性常系数差分方程来描述,Zb f (n - j) j j=0y=filter(b,a,x);b,a表示输入输出系数向量,x表示输入信号例2-3某离散系统的差分方程为6y(n) — 5y(n-1) + y(n — 2) = x(n),激励,、 (n兀 \ 、 x(n) = cos —- u(n),零状态响应。
I 2 )程序a=[6 -5 1];b=[1];n=0:30;xn=cos(n*pi/2);yn=filter(b,a,xn);subplot(211),stem(n,xn,'filled'),xlabel('n');ylabel ('x(n)=cos(n*pi/2)');title('输入序列');subplot(212),stem(n,yn,'filled'),xlabel('n');ylabel ('y(n)');title('零状态响应');4、离散时间系统单位脉冲响应和单位阶跃响应的求解impz(b,a,N)stepz(b,a,N)b, a表示输入输出系数向量,N表示输出序列的长度例2-4:系统差分方程同例2.3,求其单位脉冲响应和单位阶跃响应a=[6 -5 1];b=[1];N=40;n=0:N-1;figure(1),hn=impz(b,a,N);stem(n,hn);xlabel('n');ylabel('h(n)');title('单位脉冲响应'),figure(2),gn=stepz(b,a,N);stem(n,gn);xlabel('n');ylabel('g(n)');title('单位阶跃响应'),三、上机实验内容1验证实验原理中所述的相关程序,对例2-1至例2-4的所有程序进行注释。
2已知描述系统的微分方程和激励信号f(t)如下,用MATLAB绘出系统零状态响应的时域仿真波形y’’(t)+ 4y’(t)+3y(t)=f(t) f(t)= u(t)f(t)= exp(-t)u(t)y’’(t)+ 4y’(t)+4y(t)=f’(t)+3f(t)3已知描述系统的微分方程如下,试用MATLAB求系统在0~10秒范围内冲激响应和阶跃响 应的数值解,并绘出系统冲激响应和阶跃响应的时域波形y’’(t)+3y’(t)+2y(t)=f(t)。












