第一句子网 - 唯美句子、句子迷、好句子大全
第一句子网 > matlab 单输入单输出线性时不变系统 试验线性时不变系统的时域分析及MATLAB实现.DOC...

matlab 单输入单输出线性时不变系统 试验线性时不变系统的时域分析及MATLAB实现.DOC...

时间:2019-05-13 15:19:30

相关推荐

matlab 单输入单输出线性时不变系统 试验线性时不变系统的时域分析及MATLAB实现.DOC...

试验线性时不变系统的时域分析及MATLAB实现

实验3 线性时不变系统的时域分析及MATLAB实现

一、实验目的

(1)熟悉连续LTI系统在典型激励信号下的响应及其特征。

(2)掌握连续LTI系统单位冲激响应的求解方法。

(3)重点掌握用卷积法计算连续时间系统的零状态响应。

(4)熟悉MATLAB的相关函数的调用格式和作用。

(5)会用MATLAB对系统进行时域分析。

二、实验原理

连续时间线性时不变系统(LTI)可以用如下的线性常系数微分方程来描述:

其中,,系统的初始条件为。

离散时间线性时不变系统(LTI)可以用如下的线性常系数差分方程来描述:

其中,,系统的初始条件为。

系统的响应一般包括两个部分,即由当前输入所产生的响应(零状态响应)和由历史输入(初始状态)所产生的响应(零输入响应)。对于低阶系统,一般可以通过解析的方法得到响应。但是,对于高阶系统,手工计算就比较困难,这时MATLAB强大的计算功能就能比较容易地确定系统的各种响应,如冲激响应/脉冲响应,阶跃响应,零输入响应,零状态响应,全响应等。

1. 直接求解法

涉及到的MATLAB函数有:impulse(冲激响应),step(阶跃响应),roots(零输入响应),lsim(零状态响应)等。在MATLAB中,要求以系数向量的形式输入系统的微分方程,因此,在此前必须对系统的微分方程进行变换,得到其传递函数,其分别用向量a和b表示分母多项式和分子多项式的系数(按照s的降幂排列)。

2. 卷积计算法

根据系统的单位冲激响应,利用卷积计算的方法,也可以计算任意输入状态下系统的零状态响应。设一个线性零状态系统,已知系统的单位冲激响应为行h(t),当系统的激励信号为f(t)时,系统的零状态响应为:

也可简单记为:

由于计算机采用的是数值计算,因此系统的零状态响应也可用离散学列卷积和近似为

式中分别对应以T为时间间隔对连续时间信号进行采样得到的离散序列。

三、涉及的MATLAB函数

1. Impulse函数

功能:计算并画出系统的冲激响应。

调用格式:

Impulse(sys):其中sys 可以是利用命令tf,zpk或ss建立的系统函数。

Impulse(sys,t)计算并画出系统在向量t定义的时间内的冲激响应。

Y=impulse(sys,t):保存系统的输出值。

2. Step函数

功能:计算并画出系统的阶跃响应曲线。

调用格式:

Step(sys):其中sys可以是利用命令tf,zpk,或ss建立的系统。

Step(sys,t):计算并画出系统在向量t定义的时间内的阶跃响应。

3. Lsim函数

功能:计算并画出系统在任意输入下的零状态响应。

调用格式:

Lsim(sys,x,t):其中sys可以是利用命令tf,zpk或ss建立的系统函数,x是系统的输入,t定义的是时间范围。

Lsim(sys,x,t,zi):计算出系统在任意输入和零状态下的全响应,sys必须是状态空间形式的系统函数,zi是系统的初始状态。

4. roots函数

功能:计算齐次多项式的根。

调用格式:

r=roots(b):计算多项式b的根,r为多项式的根。

5.impz函数

功能: 求离散系统单位脉冲响应,并绘制其时域波形。

调用格式:

impz(b ,a) :以默认方式绘出向量a , b 定义的离散系统的单位脉冲响应的离散时域波形.

impz(b ,a ,n) :绘出由向量a , b定义的离散系统在0—n (n必须为整数)离散时间范围内的单位序列响应的时域波形.

impz(b ,a ,n1:n2) : 绘出由向量a , b定义的离散系统在n1—n2 (n1 , n2必须为整数,且n1

y=impz(b , a , n1 :n2): 并不绘出系统单位序列响应的时域波形,而是求出向量a , b定义的离散系统在n1—n2(n1 , n2必须为在整数,且n1

6.filter函数

功能:对输入数据数字滤波.

调用格式:

y=filter(b , a ,x) :返回向量a , b定义的离散系统在输入为x时的零状态响应.如果x是一个矩阵,那么函数filter对矩阵x的列进行操作;如果x是一个N维数组,函数filter对数组中的一个非零量进行操作.

[y , zf]=filter(b , a ,x): 返回了一个状态向量的最终值zf.

[y , zf]= filter(b , a , x , zi) :指定了滤波器的初始状态向量zi.

[y ,zf]= filter(b ,a , x ,zi , dim ) 则是给定x中要进行滤波的维数dim.如果要使用零初始状态,则将zi设为空向

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