900字范文,内容丰富有趣,生活中的好帮手!
900字范文 > 信号与系统实验四 LTI系统的时域分析

信号与系统实验四 LTI系统的时域分析

时间:2024-03-30 11:18:23

相关推荐

信号与系统实验四 LTI系统的时域分析

目录

【实验目的】

【实验原理】

【实验设备】

【实验内容】

1.至少用两种方法求以下系统的单位阶跃响应并绘图表示出来。

2.编程实现教材p106, 2-15(3),并绘图表示出来。

【实验感悟】

【实验目的】

(1)学会运用MATLAB求解连续与离散系统的冲激响应和阶跃响应。

(2)学会运用MATLAB求解LTI系统的零输人响应和零状态响应。

【实验原理】

1.连续时间系统的冲激响应和阶跃响应求解

在连续时间LTI系统中,冲激响应和阶跃响应是系统特性的描述﹐对它们的分析是线性系统中极为重要的问题。输入为单位冲激函数àt)所引起的零状态响应称为单位冲激响应,简称冲激响应﹐用h(t)表示;输人为单位阶跃函数u(t)所引起的零状态响应称为单位阶跃响应,简称为阶跃响应﹐用g(t)表示。

在MATLAB中,对于连续LTI系统的冲激响应和阶跃响应的数值解,可分别用控制系统工具箱提供的函数impulse和 step来求解。其语句格式分别为:

y =impulse(syt ,t)

y =step(sys,t)

其中,t表示计算系统响应的时间抽样点向量,sys表示LTI系统模型。

2.连续时间系统的响应求解

LTI连续系统可用线性常系数微分方程来描述,即:

该微分方程的全解(又名全响应)分为两个组成部分:一是与该方程相应的齐次方程的齐次解,记作 yh(t),另一个是满足非齐次方程的特解,记作yp(t)。系统的全响应也可以分解为零输人响应和零状态响应两部分。零输人响应是指外加激励为零时,只由初始状态作用于系统所产生的响应﹐通常用yzi(t)表示;零状态响应是指初始状态为零时,由外加激励作用于系统所产生的响应,通常用yzs(t)表示。

MATLAB符号工具箱提供了dsolve函数,可实现常系数微分方程的符号求解,其调用格式为

其中,参数eql,eq2,…表示各微分方程,它与MATIAB符号表达式的输入基本相同,微分或导数的输人是用Dy,D2y,D3y,…来表示y的一阶导数、二阶导数、三阶导数等;参数condl,cond2,…表示各初始条件或起始条件;参数v表示自变量,默认为是变量t。

【实验设备】

(1)计算机。

(2)MATLAB软件。

【实验内容】

1.至少用两种方法求以下系统的单位阶跃响应并绘图表示出来。

方法一:

t=0:0.001:6;%设置起点、步长和终点sys=tf([1,3,7],[1,4,6,4,1]);%应用传递函数g=step(sys,t);%用函数命令step求解阶跃响应的数值解plot(t,g),grid on;%绘图命令xlabel('Time(sec)'),ylabel('g(t)')%设置横纵轴标签title('阶跃响应')%设置图像名称

方法二:

a=[1 4 6 4 1];b=[1,3,7];t=0:0.01:6;%设置起点、步长和终点f=heaviside(t);%f是以t为变量的阶跃函数lsim(b,a,f,t);%用lsim命令画出LTI系统对f和t所描述的信号对应出的时间响应xlabel('Time'),ylabel('g(t)')%设置横纵轴标签title('阶跃响应')%设置图像名称

2.编程实现教材p106, 2-15(3),并绘图表示出来。

a=[1 2 1];b=[1 1 1];t=0:0.001:6;% 设置起点、步长和终点f=cos(t).*heaviside(t);%设置表达式lsim(b,a,f,t);%lsim命令画出LTI系统对f和t所描述的信号对应出的时间响应

3. 求其零状态解,并绘图表示出来

n=(-10:10);a=[1,-0.5];b=1;x=sin(n*pi/4).*heaviside(n);%设置激励的表达式y=filter(b,a,x);%用filter函数求解在x激励时所产生的响应序列的数值解stem(n,y);%绘图命令title('输出序列')%设置图像名称

【实验感悟】

通过本次实验,我学会了MATLAB中对于连续LTI系统的冲激响应和阶跃响应的数值解的求解方法,掌握了控制系统工具箱提供的函数lsim和step命令,尤其是对于一个系统的响应的不同求解方法,step(sys,t)命令是使用时间矢量t来模拟。在系统时间单位中,表达式t在sys的时间单位属性中是指定的。而lsim函数是针对线性时不变模型,给定任意输入,得到任意输出。lsim函数表示任意输入函数的响应,连续系统对任意输入函数的响应可以利用lsim函数求取。

通过此次实验,我也掌握了filter函数的使用,同时我也通过官方文献了解到表达式Y = filter(b,a,X) 滤除向量X中的数据,其中b是分子系数向量,a是分母系数向量。输入X为滤波前序列,Y为滤波结果序列,整个滤波过程是通过差分方程实现的。此次实验我也复习了前面已经学习过的命令,例如heaviside命令等等。

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。