1、实验三 连续时间LTI系统的时域分析实验报告实验三 连续时间LTI系统的时域分析实验报告实验三 连续时间LTI系统的时域分析一、实验目的1、学会使用符号法求解连续系统的零输入响应和零状态响应 2、学会使用数值法求解连续系统的零状态响应3、学会求解连续系统的冲激响应和阶跃响应二、实验原理及实例分析1、连续时间系统零输入响应和零状态响应的符号求解连续时间系统可以使用常系数微分方程来描述,其完全响应零输入响应和零状态响应组成。MATLAB符号工具箱提供了dsolve函数,可以实现对常系数微分方程的符号求解,其调用格式为:dsolve(eq1,eq2,cond1,cond2,v)其中参数eq表示各个微
2、分方程,它与MATLAB符号表达式的输入基本相同,微分和导数的输入是使用Dy,D2y,D3y来表示y的一价导数,二阶导数,三阶导数;参数cond表示初始条件或者起始条件;参数v表示自变量,默认是变量t。通过使用dsolve函数可以求出系统微分方程的零输入响应和零状态响应,进而求出完全响应。2、连续时间系统零状态响应的数值求解在实际工程中使用较多的是数值求解微分方程。对于零输入响应来说,其数值解可以通过函数initial来实现,而该函数中的参量必须是状态变量所描述的系统模型,于现在还没有学习状态变量相关内容,所以此处不做说明。对于零状态响应,MATLAB控制系统工具箱提供了对LTI系统的零状态响
3、应进行数值仿真的函数lsim,利用该函数可以求解零初始条件下的微分方程的数值解。其调用格式为:y=lsim(sys,f,t),其中t表示系统响应的时间抽样点向量,f是系统的输入向量;sys表示LTI系统模型,用来表示微分方程、差分方程或状态方程。在求解微分方程时,sys是有tf函数根据微分方程系数生成的系统函数对象,其语句格式为:sys=tf(a,b)。其中,a和b分别为微分方程右端和左端的系数向量。例如,对于微分方程a3y(t)a2y(t)a1y(t)a0y(t)b3f(f)b2f(t)b1f(t)b0f(t)可以使用aa3,a2,a1,a0;bb3,b2,b1,b0;systf(b,a)获
4、得其LTI模型。注意,如果微分方程的左端或者右端表达式有缺项,则其向量a或者b中对应元素应该为零,不能省略不写。3、连续时间系统冲激响应和阶跃响应的求解在连续时间LTI系统中,冲激响应和阶跃响应是系统特性的描述。在MATLAB中,对于冲激响应和阶跃响应的数值求解,可以使用控制工具箱中提供的函数impulse和step来求解。yimpulse(sys,t)ystep(sys,t)其中t表示系统响应的时间抽样点向量,sys表示LTI系统模型。三、实验环境本次实验使用的是Matlab软件,连续时间系统可以使用常系数微分方程来描述,其完全响应零输入响应和零状态响应组成。MATLAB符号工具箱提供了ds
5、olve函数,可以实现对常系数微分方程的符号求解,MATLAB控制系统工具箱提供了对LTI系统的零状态响应进行数值仿真的函数lsim函数,冲激响应和阶跃响应的数值求解,可以使用控制工具箱中提供的函数impulse和step来求解对某些函数进行验证和画图。四、实验内容1、已知系统的微分方程和激励信号,使用MATLAB命令画出系统的零状态响应和零输入响应。要求题目2必做,题目1选做。解:零状态响应: 符号法:eq1=D2y+4*Dy+4*y=Df+3*f; eq2=f=exp(-t)*heaviside(t);cond=y(-)=0,Dy(-)=0;%求零状态响应 yzs=dsolve(eq1,e
6、q2,cond);%符号求解 yzs=simplify ezplot(yzs,0,10);grid ontitle(符号法求零状态响应) %输出符号法求零状态响应结果: yzs =-(heaviside(t)*(t - 2*exp(t) + 2)/exp(2*t)符号法求零状态响应数值法:t=0:10;%取间隔sys=tf(1,3,1,4,3);%表示出系统微分方程 f=exp(-t).*heaviside(t);%表示激励信号 y=lsim(sys,f,t);%零状态响应 plot(t,y),grid on xlabel(Time); ylabel(f(t); title(零状态数值法);零
7、状态数值法(t)零输入响应: 符号法:eq=D2y+4*Dy+4*y=0;%求零输入响应cond=y(0)=11,Dy(0)=22;%随意制定的起始条件 yzi=dsolve(eq,cond);%符号求解 yzi=simplify(yzi)ezplot(yzi,0,10);grid on%输出符号法求零输入响应 title(符号法求零输入响应); 结果 yzi =(11*(4*t + 1)/exp(2*t)符号法求零输入响应109876543210012345t6789102、已知系统的微分方程,使用MATLAB命令画出系统的冲激响应和阶跃响应。要求题目2必做,题目1选做。解:t=0:10;
8、sys=tf(0,1,0,1,2,2); f1=impulse(sys,t);subplot(2,1,1) plot(t,f1),grid;xlabel(t);ylabel(f1(t);title(冲激响应);subplot(2,1,2) plot(t,f2),grid;xlabel(t);ylabel(f2(t);title(阶跃响应);实验三 连续时间LTI系统的时域分析一、实验目的1、学会使用符号法求解连续系统的零输入响应和零状态响应 2、学会使用数值法求解连续系统的零状态响应3、学会求解连续系统的冲激响应和阶跃响应二、实验原理及实例分析1、连续时间系统零输入响应和零状态响应的符号求解连
9、续时间系统可以使用常系数微分方程来描述,其完全响应零输入响应和零状态响应组成。MATLAB符号工具箱提供了dsolve函数,可以实现对常系数微分方程的符号求解,其调用格式为:dsolve(eq1,eq2,cond1,cond2,v)其中参数eq表示各个微分方程,它与MATLAB符号表达式的输入基本相同,微分和导数的输入是使用Dy,D2y,D3y来表示y的一价导数,二阶导数,三阶导数;参数cond表示初始条件或者起始条件;参数v表示自变量,默认是变量t。通过使用dsolve函数可以求出系统微分方程的零输入响应和零状态响应,进而求出完全响应。2、连续时间系统零状态响应的数值求解在实际工程中使用较多
10、的是数值求解微分方程。对于零输入响应来说,其数值解可以通过函数initial来实现,而该函数中的参量必须是状态变量所描述的系统模型,于现在还没有学习状态变量相关内容,所以此处不做说明。对于零状态响应,MATLAB控制系统工具箱提供了对LTI系统的零状态响应进行数值仿真的函数lsim,利用该函数可以求解零初始条件下的微分方程的数值解。其调用格式为:y=lsim(sys,f,t),其中t表示系统响应的时间抽样点向量,f是系统的输入向量;sys表示LTI系统模型,用来表示微分方程、差分方程或状态方程。在求解微分方程时,sys是有tf函数根据微分方程系数生成的系统函数对象,其语句格式为:sys=tf(
11、a,b)。其中,a和b分别为微分方程右端和左端的系数向量。例如,对于微分方程a3y(t)a2y(t)a1y(t)a0y(t)b3f(f)b2f(t)b1f(t)b0f(t)可以使用aa3,a2,a1,a0;bb3,b2,b1,b0;systf(b,a)获得其LTI模型。注意,如果微分方程的左端或者右端表达式有缺项,则其向量a或者b中对应元素应该为零,不能省略不写。3、连续时间系统冲激响应和阶跃响应的求解在连续时间LTI系统中,冲激响应和阶跃响应是系统特性的描述。在MATLAB中,对于冲激响应和阶跃响应的数值求解,可以使用控制工具箱中提供的函数impulse和step来求解。yimpulse(s
12、ys,t)ystep(sys,t)其中t表示系统响应的时间抽样点向量,sys表示LTI系统模型。三、实验环境本次实验使用的是Matlab软件,连续时间系统可以使用常系数微分方程来描述,其完全响应零输入响应和零状态响应组成。MATLAB符号工具箱提供了dsolve函数,可以实现对常系数微分方程的符号求解,MATLAB控制系统工具箱提供了对LTI系统的零状态响应进行数值仿真的函数lsim函数,冲激响应和阶跃响应的数值求解,可以使用控制工具箱中提供的函数impulse和step来求解对某些函数进行验证和画图。四、实验内容1、已知系统的微分方程和激励信号,使用MATLAB命令画出系统的零状态响应和零输
13、入响应。要求题目2必做,题目1选做。解:零状态响应: 符号法:eq1=D2y+4*Dy+4*y=Df+3*f; eq2=f=exp(-t)*heaviside(t);cond=y(-)=0,Dy(-)=0;%求零状态响应 yzs=dsolve(eq1,eq2,cond);%符号求解 yzs=simplify ezplot(yzs,0,10);grid ontitle(符号法求零状态响应) %输出符号法求零状态响应结果: yzs =-(heaviside(t)*(t - 2*exp(t) + 2)/exp(2*t)符号法求零状态响应数值法:t=0:10;%取间隔sys=tf(1,3,1,4,3)
14、;%表示出系统微分方程 f=exp(-t).*heaviside(t);%表示激励信号 y=lsim(sys,f,t);%零状态响应 plot(t,y),grid on xlabel(Time); ylabel(f(t); title(零状态数值法);零状态数值法(t)零输入响应: 符号法:eq=D2y+4*Dy+4*y=0;%求零输入响应cond=y(0)=11,Dy(0)=22;%随意制定的起始条件 yzi=dsolve(eq,cond);%符号求解 yzi=simplify(yzi)ezplot(yzi,0,10);grid on%输出符号法求零输入响应 title(符号法求零输入响应); 结果 yzi =(11*(4*t + 1)/exp(2*t)符号法求零输入响应109876543210012345t6789102、已知系统的微分方程,使用MATLAB命令画出系统的冲激响应和阶跃响应。要求题目2必做,题目1选做。解:t=0:10; sys=tf(0,1,0,1,2,2); f1=impulse(sys,t);subplot(2,1,1) plot(t,f1),grid;xlabel(t);ylabel(f1(t);title(冲激响应);subplot(2,1,2) plot(t,f2),grid;xlabel(t);ylabel(f2(t);title(阶跃响应);
copyright@ 2008-2022 冰豆网网站版权所有
经营许可证编号:鄂ICP备2022015515号-1