自动控制原理仿真实验

合集下载
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

实验一一阶惯性系统特性仿真分析

1 实验目的:熟悉仿真模块及参数设定方法,研究一阶惯性环节闭环传递函数参数T和K对系统单位阶跃响应性能的影响。

2 实验方法:利用SIMULINK建立系统结构图。见图1。

3 实验内容:按照仿真图要求,从SIMULINK库中取出相应的模块,并连接闭合的系统结构图。闭环传函G(s)=K/(Ts+1),K=1,T=0.2秒,观察阶跃相应曲线。重复改变T 分别为0.5秒、0.8秒观察阶跃相应曲线的变化。计算一阶系统的动态响应指标tr和ts。

4 实验步骤:启动计算机,运行Matlab软件,启动Simulink程序,按照内容要求组装控制系统,做好实验准备。

5 实验结果分析及结论:

①求出一界系统单位阶跃响应函数表达式,计算T=0.2,0.5,0.8时的响应指标tr和ts。

② T逐渐增大时,上升时间tr和调节时间ts怎样变化?

③ T逐渐减小时,系统的闭环极点怎样变化?

④ T一定K增大时,系统的tr和ts怎样变化?闭环极点怎样变化?

⑤一界系统一定稳定吗?为什么?

⑥结论。

图1 一阶系统仿真

实验二二阶系统单位阶跃响应仿真分析

1 实验目的:学习利用SIMULINK库中的模块构成二阶系统的方法。分析二界系统的阻尼系数zhita对系统稳定性的影响。

2 实验方法:利用SIMULINK建立系统结构图。见图2。

3 实验内容:选择适当的仿真模块构成上述系统。令Wn=1。别选取zhita=1.5>1(过阻尼)、zhita=1(临界阻尼)、0

4 实验步骤:启动计算机,运行Matlab软件,启动Simulink程序,按照内容要求组装控制系统,做好实验准备。

5 实验结果分析及结论:

①zhita〉1,zhita=1,0

② zhita=-1时,系统的单位阶跃响应曲线的走向如何?

③结论。

+++

实验三二阶欠阻尼系统单位阶跃响应的仿真分析

1 实验目的:学习利用SIMULINK库中的模块构成二阶系统的方法,分析二界系统的阻尼系数zhita和自然频率Wn对过渡过程品质的影响。

2 实验方法:利用SIMULINK建立系统结构图。见图3。

3 实验内容:选择适当的模拟部件构成上述系统。令Wn=1、zhita=0.2、0.5、0.7观察系统的单位阶跃响应曲线,计算系统的动态响应指标tp、ts、Mp、ess(可使用程序验证)。

4 实验步骤:启动计算机,运行Matlab软件,启动Simulink程序,按照内容要求组装控制系统,做好实验准备。

5 实验结果分析及结论:

①求出系统的单位阶跃响应函数表达式。

② Wn=1,zhita逐渐增大时,观察变化怎样变化?

③ Wn=1时,计算zhita=0.2,0.5,0.7时的动、稳态指标tp、ts、Mp、ess。

④ Wn=1,zhita逐渐增大时,系统闭环极点怎样变化?

⑤试分析zhita一定,Wn逐渐增大或减少时,系统的单位阶跃响应曲线怎样变化?若对Wn变化不加限制,Wn的变化对系统的稳定性是否有影响?

⑥结论。

图3 二阶欠阻尼系统0<ζ<1仿真

附:二阶系统性能指标计算程序

二阶系统指标计算可按照下列计算程序计算,该程序在Matlab的M-files窗口编写,存盘后可在Command 窗口运行。运行时在Command窗口输入文件名后回车即可。

%******************Instance1求系统响应指标

**************************************

sys=zpk([],[0 -1 -5],10);%建立零极点增益型开环传递函数模型

sys=feedback(sys,1);%求闭环传递函数

step(sys);%传递函数sys的单位阶跃相应响应曲线

[num,den]=tfdata(sys,'v');

finalvalue=polyval(num,0)/polyval(den,0)

[y,x,t]=step(num,den);

[ymax,k]=max(y);%计算超调量

ymax=ymax %显示峰值

timetopeak=t(k);%计算峰值时间

percentovershoot=100*(ymax-finalvalue)/finalvalue;%显示超调量

%compute rise time

n=1;

while y(n)<0.1*finalvalue,n=n+1;end

m=1;

while y(m)<0.9*finalvalue,m=m+1;end

q=1;

while y(q)<0.5*finalvalue,q=q+1;end

td=t(q)

risetime=t(m)-t(n);%显示上升时间

tr=risetime

tp=timetopeak

%compute settling time

l=length(t);

while(y(l)>0.95*finalvalue&(y(l)<1.05*finalvalue)),l=l-1;end

settling=t(l);%显示调节时间

ts=settling

Mp=percentovershoot

%******************Instance2传递函数多项式形式

*****************************************

clear

num=18*[1,2];%传递函数分子

den=[1 40.4 391 150];%传递函数分母

printsys(num,den,'s');%求传递函数

mod=tf(num,den);%求传递函数

%SYS=([Z],[P],[K])

sys=zpk(-2,[-15,-25,-0.4],18);

%由分子向量和分母向量求零点和极点

z=roots(num);p=roots(den);

%******************Instance3求系统响应指标

*****************************************

clear

global y t

sys=tf(1.25,[1 1 0]);

Gc=feedback(sys,1);

step(Gc)

[y,t]=step(Gc);

[mp,tf]=max(y);

ct=length(t);

tm=max(t);

yss=y(ct);

相关文档
最新文档