您好,欢迎来到纷纭教育。
搜索
您的当前位置:首页自控-二阶系统Matlab仿真

自控-二阶系统Matlab仿真

来源:纷纭教育
 .

自动控制原理

二阶系统性能分析 .

Matlab 仿真大作业附题目+

完整报告内容

2

设二阶控制系统如图1所示,其中开环传递函数

2n10G(s)

s(s2n)s(s1) R(s) -2ns(s2n)C(s)图1

图2

图3

要求:

1、分别用如图2和图3所示的测速反馈控制和比例微分控制两种方式改善系统的性能,如果要求改善后系统的阻尼比 =0.707,则Kt和

Td分别取多少?

解:

2n110由G(s)得n210,10, s(s2n)s(s1)210 3

2n对于测速反馈控制,其开环传递函数为:G(s); 2s(s2nKtn)2n闭环传递函数为:(s)1212s2(Ktn)nsn22;

所以当Ktn=0.707时,Kt(0.707)2n0.347;

2(Tds1)n对于比例微分控制,其开环传递函数为:G(s);

s(s2n)2(Tds1)n闭环传递函数为:(s);

12s22(Tdn)nsn)2所以当Tdn=0.707时,Td(0.707)2n0.347;

2、请用MATLAB分别画出第1小题中的3个系统对单位阶跃输入的响应图; 解:

①图一的闭环传递函数为:

2n110,, (s)2n2s2nsn21012Matlab代码如下:

clc clear wn=sqrt(10); zeta=1/(2*sqrt(10)); t=0:0.1:12;

Gs=tf(wn^2,[1,2*zeta*wn,wn^2]);

4

step(Gs,t)

title('图一单位阶跃响应曲线'); xlabel('t/s');ylabel('c(t)');

响应图如下:

②图二的闭环传递函数为:

(s)2n12s22(Ktn)nsn2,n10,t0.707

Matlab代码如下:

clc clear wn=sqrt(10);

5

zeta=0.707; t=0:0.1:12;

Gs=tf(wn^2,[1,2*zeta*wn,wn^2]); step(Gs,t)

title('图二单位阶跃响应曲线'); xlabel('t/s');ylabel('c(t)');

响应图如下:

③图三的闭环传递函数为:

2(Tds1)n(s),n10,d0.707

12s22(Tdn)nsn2Matlab代码如下:

6

clc clear wn=sqrt(10); zeta=0.707; t=0:0.1:12;

Gs=tf([0.347*wn^2,wn^2],[1,2*zeta*wn,wn^2]); step(Gs,t)

title('图三单位阶跃响应曲线'); xlabel('t/s');ylabel('c(t)');

响应图如下:

3、分别求出在单位斜坡输入下,3个系统的稳态误差;

7

解:

①当r(t)t时,图一的开环传递函数为:

2n10是I型系统 G(s)s(s2n)s(s1)esslims0s1121G(s)H(s)s11K,Kvlims0sG(s)H(s)lims0v1slims0sG(s)H(s)Kv其中K=10,所以ess1 10②当r(t)t时,图二的开环传递函数为:

2n102.237是I型系统 G(s)2s(s2nKtn)s(s13.47)s(0.224s1)esslims0s1121G(s)H(s)s11K,Kvlims0sG(s)H(s)lims0v1slims0sG(s)H(s)Kv其中K=2.237,所以ess10.447 2.237③当r(t)t时,图三的开环传递函数为:

2(Tds1)n10(0.374s1)是I型系统 G(s)s(s2n)s(s1)esslims0s1121G(s)H(s)s11K,Kvlims0sG(s)H(s)lims0v1slims0sG(s)H(s)Kv其中K=10,所以ess

1 104、列表比较3个系统的动态性能和稳态性能,并比较分析测速反馈控制和比例微分控制对改善系统性能的不同之处; 解:

可以利用Matlab求峰值时间、超调量、上升时间、调节时间,代码以系统一为例:

8

clc clear wn=sqrt(10); zeta=1/(2*sqrt(10)); t=0:0.1:12;

G=tf(wn^2,[1,2*zeta*wn,wn^2]); C=dcgain(G); [y,t]=step(G); plot(t,y); [Y,k]=max(y); timetopeak=t(k)

percentovershoot=100*(Y-C)/C n=1; while y(n)while(y(i)>0.98*C)&(y(i)<1.02*C) i=i-1; end

settingtime=t(i)

9

得到结果如下:

动态性能比较 峰值时间(s) 超调量(﹪) 上升时间(s) 调节时间(s) 系统一 系统二 系统三 稳态性能比较 系统一 系统二 系统三 1.0154 1.4077 0.8397 60.4417 4.3253 12.6740 0.5712 1.0619 0.4939 7.2985 1.8769 1.5806 单位阶跃输入下的稳态误差 0 0 0 由上述数据可以看出,测速反馈控制着重改善系统的平稳性(超调量明显降低),而比例微分控制着重改善系统的快速性(峰值时间、上升时间、调节时间降低)。

5、试用绘制图3对应的系统中参数Td变化时的根轨迹图,分析Td变化对系统性能的影响;用MATLAB画出Td分别为0,0.1,0.2,0.5和1时的系统单位阶跃响应图,比较其动态性能。

10

解:

2(Tds1)n10Tds10①G(s),由特征方程1G(s)0得: s(s2n)s(s1)s2s1010Tds0,110Tds0 此时可利用Matlab编程得到根轨

s2s10迹

Matlab代码如下:

clc clear num=[10 0]; den=[1 1 10]; G=tf(num,den); rlocus(G);

title('Td变化的参数根轨迹'); xlabel('实轴');ylabel('虚轴');

根轨迹图如下:

11

②图三的闭环传递函数为:

2(Tds1)n1n10,(s),,在Td分别取0,0.1,

122210s2(Tdn)nsn20.2,0.5和1时,可以用for语句实现 Matlab代码如下:

clc clear wn=3.1623; zeta=0.1581; t=0:0.1:12; Td=[0,0.1,0.2,0.5,1]; hold on;

12

for i=1:length(Td)

Gs=tf([Td(i)*wn^2,wn^2],[1,2*(zeta+0.5*Td(i)*wn)*wn,wn^2]) step(Gs,t) end hold on;

title('图三Td变化单位阶跃响应曲线'); xlabel('t/s');ylabel('c(t)');

响应图如下:

随着Td的增大,系统的峰值时间、上升时间、延迟时间、调节时间减小;超调量、振荡次数减小,系统的平稳性提高,快速性也提高了。

13

因篇幅问题不能全部显示,请点此查看更多更全内容

Copyright © 2019- fenyunshixun.cn 版权所有 湘ICP备2023022495号-9

违法及侵权请联系:TEL:199 18 7713 E-MAIL:2724546146@qq.com

本站由北京市万商天勤律师事务所王兴未律师提供法律服务