现代控制理论实验02.docx

上传人:b****5 文档编号:5855201 上传时间:2023-01-01 格式:DOCX 页数:26 大小:637.47KB
下载 相关 举报
现代控制理论实验02.docx_第1页
第1页 / 共26页
现代控制理论实验02.docx_第2页
第2页 / 共26页
现代控制理论实验02.docx_第3页
第3页 / 共26页
现代控制理论实验02.docx_第4页
第4页 / 共26页
现代控制理论实验02.docx_第5页
第5页 / 共26页
点击查看更多>>
下载资源
资源描述

现代控制理论实验02.docx

《现代控制理论实验02.docx》由会员分享,可在线阅读,更多相关《现代控制理论实验02.docx(26页珍藏版)》请在冰豆网上搜索。

现代控制理论实验02.docx

现代控制理论实验02

实验2

自动实1301杨晓丹

一、实验内容及目的

仿真一阶系统和二阶系统在单位脉冲、阶跃、斜坡、抛物线输入信号下的响应曲线,改变T、k、Wn、y的值,观察响应曲线的变化,观察响应曲线间的关系。

本次实验熟悉一阶系统和二阶系统的各种响应曲线,以及参数改变对响应曲线的影响。

二、实验方案内容

(1)一阶系统仿真

一阶系统传递函数为G(S)=k/(TS+1),代码如下

clc;

clearall;

closeall;

s=tf('s');

k=1;

T=1;

kc=1;

Tc=1;

num1=[k];

den1=[T1];

numc=[kc];

denc=[Tc1];

sys1=tf(num1,den1);

sys2=sys1/s;%fort^2/2

sysc1=tf(numc,denc);

sysc2=sysc1/s;

te=15;%endtime

st=0.01;%step

t=0:

st:

te;

t=t';

y1=impulse(sys1,t);

y2=step(sys1,t);

y3=lsim(sys1,t,t);

y4=lsim(sys2,t,t);

yc1=impulse(sysc1,t);

yc2=step(sysc1,t);

yc3=lsim(sysc1,t,t);

yc4=lsim(sysc2,t,t);

y1d=zeros(te/st+1,1);%itisderivative

y2d=zeros(te/st+1,1);

y3d=zeros(te/st+1,1);

y4d=zeros(te/st+1,1);

fori=1:

(te/st-1)%calculatederivative

y1d(i)=(y1(i+1)-y1(i))/st;

y2d(i)=(y2(i+1)-y2(i))/st;

y3d(i)=(y3(i+1)-y3(i))/st;

y4d(i)=(y4(i+1)-y4(i))/st;

end

figure

(1);

plot(t,y1,'b',t,y2d,'r',t,yc1,'k--');

figure

(2);

plot(t,y2,'b',t,y3d,'r',t,yc2,'k--');

figure(3);

plot(t,y3,'b',t,y4d,'r',t,yc3,'k--');

figure(4);

plot(t,y4,'b',t,yc4,'k--');

绘图中蓝线为原图像,红线为另一响应曲线求导得到的曲线,黑线为修改K,T值后的曲线。

1.观察一阶系统输入单位脉冲、阶跃、斜坡、抛物线信号时的响应曲线

2.观察响应曲线求导后的关系

3.更改K,T,观察响应曲线的变化

(2)二阶系统仿真

二阶系统传递函数为G(S)=Wn^2/(S^2+2*y*Wn*s+Wn^2),代码如下

clc;

clearall;

closeall;

s=tf('s');

wn=1;

y=1;

wnc=3;%changed

yc=1;

numc=[wnc*wnc];

denc=[12*yc*wncwnc*wnc];

sysc1=tf(numc,denc);

sysc2=sysc1/s;

num1=[wn*wn];

den1=[12*y*wnwn*wn];

sys1=tf(num1,den1);

sys2=sys1/s;%fort^2/2

te=15;%endtime

st=0.01;%step

t=0:

st:

te;

t=t';

y1=impulse(sys1,t);

y2=step(sys1,t);

y3=lsim(sys1,t,t);

y4=lsim(sys2,t,t);

yc1=impulse(sysc1,t);

yc2=step(sysc1,t);

yc3=lsim(sysc1,t,t);

yc4=lsim(sysc2,t,t);

y1d=zeros(te/st+1,1);%itisderivative

y2d=zeros(te/st+1,1);

y3d=zeros(te/st+1,1);

y4d=zeros(te/st+1,1);

fori=1:

(te/st-1)%calculatederivative

y1d(i)=(y1(i+1)-y1(i))/st;

y2d(i)=(y2(i+1)-y2(i))/st;

y3d(i)=(y3(i+1)-y3(i))/st;

y4d(i)=(y4(i+1)-y4(i))/st;

end

[a,b,c,d,e,f,g]=value(y2,st);

figure

(1);

plot(t,y1,'b',t,y2d,'r:

',t,yc1,'k--');

figure

(2);

plot(t,y2,'b',t,y3d,'r:

',t,yc2,'k--');

legend(g,4);

figure(3);

plot(t,y3,'b',t,y4d,'r:

',t,yc3,'k--');

figure(4);

plot(t,y4,'b',t,yc4,'k--');

绘图中蓝线为原图像,红线为另一响应曲线求导得到的曲线,黑线为修改y,Wn值后的曲线。

1.观察二阶系统输入单位脉冲、阶跃、斜坡、抛物线信号时的响应曲线

2.观察响应曲线求导后的关系

3.更改y,Wn,观察响应曲线的变化

三、实验结果及分析

(1)一阶系统

对信号进行拉普拉斯变换,则u1(s)=1,u2(s)=1/s,u3(s)=1/s^2,u4(s)=1/s^3。

带入得y1(S)=k/(1+TS),y2(S)=k/(1+TS)/S,y3(S)=k/(1+TS)/S^2,y4(S)=k/(1+TS)/S^3。

y1(t)=k/T*exp(-t/T)

y2(t)=k-k*exp(-t/T)

y3(t)=k*t-T*k+T*k*exp(-t/T)

y4(t)=T^2*k+(k*t^2)/2-T^2*k*exp(-t/T)-T*k*t

1.K=1,T=1时

脉冲

阶跃

斜坡

抛物线

图像与对应的方程相同

2.各个信号和各个响应曲线间的关系

对响应曲线求导,发现图像性状相似,将相似的图像绘制到同一张图上。

脉冲信号的响应曲线和阶跃信号的响应曲线的求导曲线:

 

阶跃信号的响应曲线和斜坡信号的响应曲线的求导曲线:

斜坡信号的响应曲线和抛物线信号的响应曲线的求导曲线:

两条曲线(蓝、红)完全重合,由方程可知y1(t)=y2’(t)=k/t*exp(-t/T),y2(t)=y3’(t)=k-k*exp(-t/T),y3(t)=y4’(t)=k*t-T*k+T*k*exp(-t/T)。

二者存在导数关系。

验证了若f2(t)=f1’(t),则g2(t)=g1’(t)。

3.改变K值

K从1到10变化:

脉冲

阶跃

斜坡

抛物线

随着K值的增大,y1的初值成比例增大,y2、y3、y4的终值成比例增大,但是y1和y2的稳定时间没有变化,y3和y4上升到相应值的时间也没有变化。

y1(t),y2(t),y3(t),y4(t)的表达式中不难看出,k值的改变让y(t)增大了k倍,与图像相符。

4.改变T值

T从1到3变化:

脉冲

阶跃

斜坡

抛物线

y1的初值随T的增大而减小,衰减率随T的增大而减小。

y2的终值不变,ts随T的增大而增大。

y3的初始增长速度随T的增大而减小,增长速度最终相等。

y4的初值增长速度随T的增大而减小,增长速度最终相等。

这是由于

y1(t)=k/T*exp(-t/T),初值为k/T,衰减率为exp(-t/T)。

y2(t)=k-k*exp(-t/T),y2终值与T无关,而y2在某一时刻的值与t/T的值有关。

y3(t)=k*t-T*k+T*k*exp(-t/T),刚开始T*k*exp(-t/T)影响较大,随后影响较小。

y4(t)=T^2*k+(k*t^2)/2-T^2*k*exp(-t/T)-T*k*t,刚开始-T*k*t和-T^2*k*exp(-t/T)影响较大,随后影响减小。

(2)二阶系统

对信号进行拉普拉斯变换,则u1(s)=1,u2(s)=1/s,u3(s)=1/s^2,u4(s)=1/s^3。

带入得y1(s)=Wn^2/(s^2+2*y*Wn*s+Wn^2),y2(s)=Wn^2/(s^2+2*y*Wn*s+Wn^2)/s,

y(3)=Wn^2/(s^2+2*y*Wn*s+Wn^2)/s^2,y(4)=Wn^2/(s^2+2*y*Wn*s+Wn^2)/s^3。

y1(t)=(Wn*exp(-Wn*t*y)*sin(Wn*t*(1-y^2)^(1/2)))/(1-y^2)^(1/2)

y2(t)=1-exp(-Wn*t*y)*(cosh(Wn*t*(y^2-1)^(1/2))+(y*sinh(Wn*t*(y^2-1)^(1/2)))/(y^2-1)^(1/2))

y3(t)=t-(2*y)/Wn+(2*y*exp(-Wn*t*y)*(cosh(Wn*t*(y^2-1)^(1/2))-(sinh(Wn*t*(y^2-1)^(1/2))*(Wn*y+(-4*Wn*y^2+Wn)/(2*y)))/(Wn*(y^2-1)^(1/2))))/Wn

y4(t)=(4*y^2-1)/Wn^2+t^2/2-(2*t*y)/Wn-(exp(-Wn*t*y)*(cosh(Wn*t*(y^2-1)^(1/2))-(sinh(Wn*t*(y^2-1)^(1/2))*(Wn*y+(-8*Wn*y^3+4*Wn*y)/(4*y^2-1)))/(Wn*(y^2-1)^(1/2)))*(4*y^2-1))/Wn^2

1.Wn=1,y=1

脉冲

阶跃

斜坡

抛物线

2.各个信号和各个响应曲线间的关系

对响应曲线求导,发现图像性状相似,将相似的图像绘制到同一张图上。

脉冲信号的响应曲线和阶跃信号的响应曲线的求导曲线:

阶跃信号的响应曲线和斜坡信号的响应曲线的求导曲线:

斜坡信号的响应曲线和抛物线信号的响应曲线的求导曲线:

两条曲线(蓝、红)完全重合。

验证了若f2(t)=f1’(t),则g2(t)=g1’(t)。

3.改变Wn的值

Wn的值见右下角

Wn增大,ts减小,tr减小。

Wn减小,ts增大,tr增大。

Wn和ts以及tr成反比。

4.

改变y的值

y值和Wn的值在图片的右下角。

当y<0时,系统是发散的,随着y的减小,系统发散的程度增大。

当y=0时,系统处于临界状态。

当0

ts与y近似的成反比。

当y≥1时,随着y的增大,ts增大,tr增大。

四、实验中存在的问题

1.用MATLAB对二阶系统做拉普拉斯逆变换得到的方程较为复杂,出现了双曲三角函数,难以像一阶系统一样的进行分析。

2.实验中直接改Wn,y的值便于分析,但却不能直接体现出参数之间的矛盾,需要通过Wn=sqrt(K/J),y=B/2*sqrt(1/T/K)推导得出。

将代码改为用K,B,J来定Wn和y或许更能体现这一点。

3.实验报告的图较多,浏览起来并不方便。

展开阅读全文
相关资源
猜你喜欢
相关搜索
资源标签

当前位置:首页 > 医药卫生 > 临床医学

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1