matlab 斜坡响应,二阶系统时域分析MATLAB的单位阶跃,单位脉冲,单位斜波响应等...

对于系统的闭环传递函数为16/(s^2+8*zeta*s+16),其中zeta=0.707,求二阶系统的单位脉冲响应,单位阶跃响应,单位斜坡响应

用MATLAB所写程序如下:

syms s zeta

zeta=0.707;num=[16];den=[1 8*zeta 16];

p=roots(den);

sys=tf(num, den);

t=0:0.01:3;

figure(1)

impulse(sys,t);grid

xlabel('t');ylabel('c(t)');title('impulse response');

>> figure(2)

step(sys,t);grid

xlabel('t');ylabel('c(t)');title('step response');

figure(3)

u=t;

lsim(sys,u,t,0);grid

xlabel('t');ylabel('c(t)');title('ramp response');

blog_7bcf1c070100tw7p.html

blog_7bcf1c070100tw7p.html

从图中我们不难看出系统超调量为4.33%,上升时间为0.537,调节时间1.49

blog_7bcf1c070100tw7p.html

在过阻尼系数分别等于0,0.5,0.707,1,2不同时,对应二介系统的单位阶跃响应曲线,

用MATLAB所写程序如下:

syms s zeta

zeta=0;num=[16];den=[1 8*zeta 16];

p=roots(den);

sys=tf(num, den);

t=0:0.01:3;

figure(2)

step(sys,t);grid

xlabel('t');ylabel('c(t)');title('step response');

hold on

>> zeta=0.5;num=[16];den=[1 8*zeta 16];

p=roots(den);

sys=tf(num, den);

t=0:0.01:3;

step(sys,t);grid

>> hold on

>> zeta=0.707;num=[16];den=[1 8*zeta 16];

p=roots(den);

sys=tf(num, den);

t=0:0.01:3;

step(sys,t);grid

>> hold on

>> zeta=1;

p=roots(den);

sys=tf(num, den);

t=0:0.01:3;

step(sys,t);grid

>> hold on

zeta=1;num=[16];den=[1 8*zeta 16];

p=roots(den);

sys=tf(num, den);

t=0:0.01:3;

step(sys,t);grid

>> hold on

zeta=2;num=[16];den=[1 8*zeta 16];

p=roots(den);

sys=tf(num, den);

t=0:0.01:3;

step(sys,t);grid

>>

所得图如下,

blog_7bcf1c070100tw7p.html

我们不难从图中看出,随着过阻尼系数的增大,二介系统的单位阶跃响应趋近

于平稳信号的时间越慢,衰减越厉害,曲线越平稳,这和我们所算结果是相同的