零输入响应与零状态响应

更新时间:2023-04-21 05:59:58 阅读: 评论:0


2023年4月21日发(作者:锪孔)

零输⼊响应与零状态响应

1.零输⼊响应与零状态响应

Matlab中,lsim函数还可以对带有⾮零起始状态的LTI系统进⾏仿真,使⽤⽅法为y=lsim(sys,u,t,x0),其中sys表⽰LTI系统,

⽮量ut分别表⽰激励信号的抽样值和抽样时间,⽮量x0表⽰该系统的初始状态,返回值y是系统响应值。如果只有起始状态

⽽没有激励信号,或者令激励信号为0,则得到零输⼊响应。如果既有初始状态也有激励信号,则得到完全响应。

请注意lsim函数只能对⽤状态⽅程描述的LTI系统仿真⾮零起始状态响应,函数ss(对传递函数描述的LTI系统将失效,函数

tf)。

2.5 给定如图所⽰电路,t<0S处于1的位置⽽且已经达到稳态,将其看做起始状态,当t=0时,S1转向2.分别求t>0i(t)

的零状态响应和零输⼊响应。

2.1 2.4 电路图

解:由所⽰电路写出回路⽅程和结点⽅程

分别得到状态⽅程和输出⽅程:

下⾯将⽤两种⽅法计算完全响应。第⼀种⽅法:⾸先仿真2V电压e作⽤⾜够长时间(10s)后系统进⼊稳态,从⽽得到稳态值

x0,再以该值作为初始值仿真4V电压e作⽤下的输出rf,即是系统的完全响应,为充分掌握lsim函数的使⽤⽅法,还仿真了系

统的零状态响应rzs和零输⼊响应rzi。第⼆种⽅法:构造⼀个激励信号,先保持2V⾜够长时间再跳变为4V,然后即可以零初始

状态⼀次仿真得到系统的完全响应r1

对应程序如下:

C=1;

L=1/4;

R1=1;

R2=3/2;

A=[-1/R1/C,-1/C;1/L,-R2/L];

B=[1/R1/C;0];

C=[-1/R1,0];

D=[1/R1];

sys=ss(A,B,C,D); %建⽴LTI 系统sys

tn=[-10:0.01:-0.01]'; %⽣成-10s -0.01s 的抽样时间,间隔为0.01s

en=2*(tn<0); %⽣成机理信号的抽样值e(t)=2

[rn tn xn]=lsim(sys,en,tn); %仿真t<0时的输出信号

x0=xn(length(en),:); %x0记录了初始状态的值

t=[0:0.01:10]';

e=4*(t>=鳖甲的功效与作用 0); %⽣成激励信号的抽样值e(t)=4

ezi=0*(月份英文缩写是什么 t>=0); %⽣成零输⼊信号的抽样值e(t)=0

rzs=lsim(sys,e,t); %仿真零状态响应

rzi=lsim(sys,ezi,t,x0); %仿真零输⼊响应

rf=lsim(sys,e,t,x0); %仿真完全响应

r1=lsim(sys,[en;e],[tn;t]); %⽤另⼀种⽅法仿真完全响应

2. 冲激响应与阶跃响应

如果分别⽤冲激信号和阶跃信号作激励,lsim 函数可仿真出冲激响应和阶跃响应。但鉴于这两种岗位职能 响应的重要性,为简化操

作,Matlab 专门提供了impul(sys)step(sys )两个函数分别直接产⽣LTI 系统的冲激响应和阶跃响应,其中sys 表⽰LTI

统模型。

1 连续系统的单位冲激响应h(t)的计算

impul(sys)计算并画出连续系统的冲激响应,sys 可由函数tf(b,a)获得,其中b a 分别是系统函数H(s)的分⼦多项式和分母

多项式的系数矩阵。h=impul(sys,t)计算并画出系统在向量t 定义的时间范围内的冲激响应,向量h 保存对应时间的系统冲激

响应的输出值。

2.6 已知描述某连续系统的微分⽅程为()()()()()t f t f t y t y t y 8265'

'''+=++计算该系统的单位冲激响应h(t).

对应程序如下:

a=[1,5,6];

b=[2,8];

sys=tf(b,a);

t=0:0.1:10;

h=impul(sys,t);

plot(h);

xlabel('t'); title('h(t)')

观察运⾏结果图。

2 连续系统单位阶跃响应g(t)的计算

step(sys)计算并画出连续系统的阶跃响应。g=step(sys,t)计算并画出连续系统在向量t 定义的时间范围盐酸小檗碱片 内的阶跃响应。向量g

存对应时间的系统阶跃响应的输出值。

⼆、卷积

Matlab 中,连续时间的卷积运算可以⽤数值⽅法计算近似值。⾸先对卷积公式()()()d t f f t f ?∞

∞--=21 针开头的成语 两侧以T 为间隔抽样,再将积分拆成长度为T 的若⼲⼩段,得到 ()()()∑?∞-∞=+-=

m T mT mT d nT f f nT f 21

假设抽样间隔⾜够⼩,以⾄于两个函数相邻抽样点上的值⼏乎不变,则近似有

()()()∑-m

mT nT f mT f T nT f 21 (2.1)

Matlab 中定义了w=conv(u,v) 函数实现卷积和

()()()∑-+=m

m n v m u n w 1 (2.2)

下⾯讨论如何利⽤conv 函数实现连续时间卷积。⾸海鲫鱼 先假设序列u(m)是函数()t f 11t 时刻开始,以T 为间隔采样的结果,则

()mT f T t m u 111=??? ?

-+ (2.3) 假设1t T 的整数倍。同理假设v(m)是对函数()t f 22t 时刻开始以相同间隔抽样得到的序列,即

()mT f T t m v 211=??? ?

-+ (2.4) 将式(2.3)(2.4)带⼊式(2.1),有

(模型英文 )??? ??-+-??? ??-+∑T t m n v T t m u T nT f m

2111 (2.5) 定义T t m m 1'1-+=T

t t n n 21'1+-+=并带⼊式(2.5)得到 ()()()

∑-+m m n v m u T nT f '''1 (2.6)

对⽐式(2.2)(2.6)

()()??

+-+=T t t n Tw n Tw nT f 2

1'1 (2.7) w(n)近似为从21t t +时刻开始以T 为间隔对f(t)抽样得到的序列,从⽽可以⽤conv 函数实现连续时间卷积。在以上推

导的基础上,定义了⼀个函数conv1实现连续时间卷积: ⽂件名为conv1.m

function[w,tw]=conv1(u,tu,v,tv)%输⼊参数:u v 表⽰两个序列,tu tv 分别表⽰他

们的抽样时间返回值.即输出参数:w tw 分别表⽰卷积结果及其抽样时

间。

T=tu(2)-tu(1);%T 为间隔抽样,再将积分拆成长度为离职证明怎么写 T 的若⼲⼩段,相当于dt w=T*conv(u,v);

tw=tu(1)+tv(1)+T*[0:length(u)+length(v)-2];

%抽样时间tw=[tu(1)+tv(1), tu(1)+tv(1)+T, tu(1)+tv(1)+2T,…,

tu(1)+tv(1)+T(length(u)-1+length(v)-1)] 卷蓝天白云简笔画 积的时间为两序列起点的和到两序列终点的和

2.7 已知某系统冲激响应为()2t t h =0

对应程序如下:

t=[-1:0.01:4]’;

e=[-0.5:0.01:(-0.5+1.5)];

h=(t>0&t<2).*t/2;

[r1,t1]=conv1(e,t,h,t);

tr=t1(t1>=-1&t1<=4); %t1中选择和t 相同起⽌时刻的抽样时间tr

r=r1(t1>=-1&t1<=4); %⽤类似⽅法选择tr 对应的输出r

plot(tr,r)


本文发布于:2023-04-21 05:59:58,感谢您对本站的认可!

本文链接:https://www.wtabcd.cn/fanwen/fan/82/507166.html

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,我们将在24小时内删除。

标签:零输入响应
相关文章
留言与评论(共有 0 条评论)
   
验证码:
推荐文章
排行榜
Copyright ©2019-2022 Comsenz Inc.Powered by © 专利检索| 网站地图