反馈校正课程设计实例.docx

上传人:b****8 文档编号:8941204 上传时间:2023-02-02 格式:DOCX 页数:25 大小:235.76KB
下载 相关 举报
反馈校正课程设计实例.docx_第1页
第1页 / 共25页
反馈校正课程设计实例.docx_第2页
第2页 / 共25页
反馈校正课程设计实例.docx_第3页
第3页 / 共25页
反馈校正课程设计实例.docx_第4页
第4页 / 共25页
反馈校正课程设计实例.docx_第5页
第5页 / 共25页
点击查看更多>>
下载资源
资源描述

反馈校正课程设计实例.docx

《反馈校正课程设计实例.docx》由会员分享,可在线阅读,更多相关《反馈校正课程设计实例.docx(25页珍藏版)》请在冰豆网上搜索。

反馈校正课程设计实例.docx

反馈校正课程设计实例

自动控制理论课程设计

 

专业名称:

电气工程及其自动化(电力)

班级:

电力103

学号:

3100671050

姓名:

郭玥

2013年6月26日

 

自动控制理论课程设计报告

一、设计任务

控制系统的结构图如图所示,其中G1(s)=

G2(s)=

G3(s)=

进行反馈校正设计,使校正后系统满足如下性能指标:

(1)闭环主导极点满足σ%≤25%,

(2)调节时间ts≤0.8s。

R(s)Y(s)

--

 

二、校正前系统分析

校正前系统开环传递函数

G(s)=G1(s)G2(s)G3(s)=

1)时域分析

1.用MATLAB绘制系统校正前单位阶跃响应曲线

Matlab程序如下

clear

num=[400];

den=conv([1,0],conv([0.05,1],[0.25,1]));

t=0:

0.1:

5;

G1=tf(num,den);

sys=feedback(G1,1);

step(sys,t)

2.利用MATLAB求出系统阶跃响应的动态性能指标

Matlab程序如下

clear

num=[400];

den=conv([1,0],conv([0.05,1],[0.25,1]));

G=tf(num,den);

Gc=feedback(G,1);

[y,t]=step(Gc);

C=dcgain(Gc);

[max_y,k]=max(y);

peak_time=t(k)

max_overshoot=(max_y-C)/C

r1=1;

while(y(r1)<0.1*C)

r1=r1+1;

end

r2=1;

while(y(r2)<0.9*C)

r2=r2+1;

end

rise_time=t(r2)-t(r1)

s=length(t);

whiley(s)>0.98*C&&y(s)<1.02*C

s=s-1;

end

setting_time=t(s)

ess=1-dcgain(Gc)

运行结果如下

peak_time=0.1351(峰值时间)

max_overshoot=2.3356(超调量)

rise_time=0.0324(上升时间)

setting_time=0.2972(调节时间)

ess=0(稳态误差)

分析:

对比校正前后的阶跃响应曲线可知,校正前系统是不稳定的,是发散的,时域性能指标不存在,但通过Matlab可求得相应的值。

2).用MATLAB绘制系统校正前的根轨迹图

Matlab程序如下

clear

num=[400];

den=conv([1,0],conv([0.05,1],[0.25,1]));

G=tf(num,den);

rlocus(G);title('校正前系统的根轨迹图');

xlabel('实轴');

ylabel('虚轴');

[k,p]=rlocfind(num,den)

Selectapointinthegraphicswindow

selected_point=-1.8667(分离点)

k=0.0023

p=-20.2202

-1.9132

-1.8667

 

Selectapointinthegraphicswindow

selected_point=-0.0964+8.7475i(与虚轴交点)

k=0.0569

p=-23.8487

-0.0757+8.7399i

-0.0757-8.7399i

绘制原系统的零、极点

Matlab程序如下

clear

num=[400];

den=conv([1,0],conv([0.05,1],[0.25,1]));

G1=tf(num,den);

sys=feedback(G1,1);

Pzmap(sys)

[p,z]=pzmap(sys)

运行结果如下

p=-41.0453(极点)

8.5226+26.5893i

8.5226-26.5893i

z=Emptymatrix:

0-by-1(零点)

结论:

由系统根轨迹和零极点分布图可以看出,系统绝大部分靠近虚轴的根轨迹位于右半平面,且系统存在右半平面的极点,所以系统处于不稳定状态。

3).用MATLAB绘制系统校正前的Nyquist图

Matlab程序如下

clear

num=[400];

den=conv([1,0],conv([0.05,1],[0.25,1]));

G0=tf(num,den);

nyquist(G0)

由以上两图可以看出,校正前系统乃氏图包围(-10)点次数为+1次,即N=1,Z=P+N=1,系统不稳定

4).频域分析

1.用MATLAB绘制原系统开环幅频特性。

Matlab程序如下

clear

num=[400];

den=conv([1,0],conv([0.05,1],[0.25,1]));

G0=tf(num,den);

bode(G0);

grid

[Gm,Pm,Wcg,Wcp]=margin(G0)

运行结果

Gm=0.0600

Pm=-48.4201

Wcg=8.9443

Wcp=29.7408

由运行结果可知,截止频率Wc=Wcp=29.7408rad/dec;相角裕量γ=Pm=-48.4201°;相角穿越频率ωg=Wcg=8.9443rad/dec;幅值裕量Kg=Gm=0.0600。

未校正系统的增益裕量小于1,相位裕量小于0,系统处于不稳定状态,不能正常工作。

2.用MATLAB绘制原系统闭环幅频特性。

Matlab程序如下

clear

num=[400];

den=conv([1,0],conv([0.05,1],[0.25,1]));

G1=tf(num,den);

G1=feedback(G1,1);

bode(G1);

[m,p,w]=bode(G1)

mr=max(m)

wr=spline(m,w,mr)

运行结果

mr=1.4675

wr=23.3851

因此原系统的谐振峰值为1.4675,谐振频率为23.3851rad/s。

3、并联反馈校正设计

4、1)校正过程

1.绘制原系统的对数幅频特性Lo(ω)程序如下

Matlab程序如下

clear

num=[400];

den=conv([1,0],conv([0.05,1],[0.25,1]));

G0=tf(num,den);

bodeasym(G0)

xlabel()

gridon

2.绘制系统的期望对数幅频特性

根据近似公式

σ=0.16+0.4(

-1),35°≤γ≤90°

ts=

Ko=2+1.5(

-1)+2.5(

-1)2,35°≤γ≤90°

 

求得σ≤25%时对应的Mr≤1.23,ts≤0.8s对应的ωc≥9.7rad/s。

取ωc=10rad/s,期望特性的交接频率ω2可依据期望对数幅频特性校正中的关系式ω2≤ωc

=1.87rad/s取ω2=1.1rad/s

为简化校正装置,取中高频段的转折频率ω3=20。

过ω3=20做-20dB/dec的直线过0dB线,低端至ω2=1.1处的A点,高端至ω3=20处的B点。

再由A点做-40dB/dec的直线向低频段延伸与Lo(ω)相交于C点,该点的频率约为ω1=0.032,过B点做-40dB/dec的直线向高频段延伸与Lo(ω)相交于D点,该点频率为ω4=147。

由以上步骤得到的期望对数频率特性Lk(ω),如图所示

3.将Lo(ω)—Lk(ω)得到20lg|G2(jω)Gc(jω)|,如图中L2c(ω)所示,求出对应的传递函数为

G2(s)Gc(s)=

式中

K4=1/0.032=31.25,T2=1/1.1=0.9,T3=1/4=0.25

于是,求得反馈校正环节传递函数

Gc(s)=

=

=H(s)

2)检验校正后系统的性能指标是否满足要求。

1.求校正后系统的开、闭环传递函数

Matlab程序如下

s=tf('s');

G1=200/(0.05*s+1);

G2=200/(0.25*s+1);

G3=0.01/s;

Gc=0.156*s/(0.9*s+1);

G2c=feedback(G2,Gc);

G=series(series(G1,G2c),G3);

G,

CloseG=feedback(G,1);

CloseG

运行结果

Transferfunction:

360s+400

---------------------------------------------(校正后系统的开环传递函数)

0.01125s^4+1.843s^3+32.4s^2+s

Transferfunction:

360s+400

----------------------------------------------------------(校正后系统的闭环传递函数)

0.01125s^4+1.843s^3+32.4s^2+361s+400

2.求校正后闭环传递函数的主导极点

Matlab程序如下

clear

num=[360,400];

den=[0.01125,1.843,32.4,361,400];

G1=tf(num,den);

sys=feedback(G1,1);

Pzmap(sys)

[p,z]=pzmap(sys)

运行结果

p=1.0e+002*

-1.4719

-0.0773+0.1882i

-0.0773-0.1882i

-0.0117

z=-1.1111

∴校正后闭环传递函数

GB(s)=

可知s=-1.17为校正后系统的主导极点

则有GB(s)’=

3.绘制闭环主导极点下系统的阶跃响应特性曲线

Matlab程序如下

clear

num=[3200];

den=[1,1.17];

t=0:

0.1:

5;

G1=tf(num,den);

step(G1,t)

由图可知,校正后系统的闭环主导极点σ%=0<25%,满足设计要求

4.绘制已校正系统的单位阶跃响应,记录时域指标

Matlab程序如下

s=tf('s');

G1=200/(0.05*s+1);

G2=200/(0.25*s+1);

G3=0.01/s;

Gc=0.156*s/(0.9*s+1);

G2c=feedback(G2,Gc);

G=series(series(G1,G2c),G3);

CloseG=feedback(G,1);

step(CloseG)

反馈校正后系统单位阶跃响应曲线如图所示,可以得到时域性能指标:

Mp=18.9%,tp=0.271,ts=0.796<0.8s满足设计要求

由以上检验可知,反馈校正后系统全部满足设计要求

四、校正后系统分析

1)时域分析

利用MATLAB求出系统阶跃响应的动态性能指标

Matlab程序如下

s=tf('s');

G1=200/(0.05*s+1);

G2=200/(0.25*s+1);

G3=0.01/s;

Gc=0.156*s/(0.9*s+1);

G2c=feedback(G2,Gc);

G=series(series(G1,G2c),G3);

CloseG=feedback(G,1);

step(CloseG)

C=dcgain(CloseG);

[max_y,k]=max(y);

peak_time=t(k)

max_overshoot=(max_y-C)/C

r1=1;

while(y(r1)<0.1*C)

r1=r1+1;

end

r2=1;

while(y(r2)<0.9*C)

r2=r2+1;

end

rise_time=t(r2)-t(r1)

s=length(t);

whiley(s)>0.98*C&&y(s)<1.02*C

s=s-1;

end

setting_time=t(s)

ess=1-dcgain(CloseG)

运行结果

peak_time=0.271(峰值时间)

max_overshoot=0.189(超调量)

rise_time=0.0324(上升时间)

setting_time=0.796(调节时间)

ess=1(稳态误差)

校正后的系统是稳定的,系统的阶跃阶跃响应曲线是衰减振荡的。

可见,校正后的各项性能指标都大大减小,系统的性能变好了!

当调节时间取

的误差范围时,调节时间ts=0.796s

2).用MATLAB绘制系统校正前的根轨迹图

Matlab程序如下

s=tf('s');

G1=200/(0.05*s+1);

G2=200/(0.25*s+1);

G3=0.01/s;

Gc=0.156*s/(0.9*s+1);

G2c=feedback(G2,Gc);

G=series(series(G1,G2c),G3);

rlocus(G);title('校正前系统的根轨迹图');

xlabel('实轴');

ylabel('虚轴');

[k,p]=rlocfind(num,den)

Selectapointinthegraphicswindow

selected_point=--9.0000+0.0000i(分离点)

k=0.0155

p=-21.3380

-1.3310+4.6289i

-1.3310-4.6289i

[k,p]=rlocfind(num,den)

Selectapointinthegraphicswindow

selected_point=0.3333+51.8887i(与虚轴交点)

k=4.7055

p=-61.9471

18.9736+45.5052i

18.9736-45.5052i

绘制原系统的零、极点

Matlab程序如下

s=tf('s');

G1=200/(0.05*s+1);

G2=200/(0.25*s+1);

G3=0.01/s;

Gc=0.156*s/(0.9*s+1);

G2c=feedback(G2,Gc);

G=series(series(G1,G2c),G3);

sys=feedback(G,1);

Pzmap(sys)

[p,z]=pzmap(sys)

运行结果如下

p=1.0e+002*(极点)

-1.4549

-0.0853+0.1118i

-0.0853-0.1118i

-0.0124

z=-1.1111(零点)

结论:

由系统根轨迹和零极点分布图可以看出,系统绝大部分靠近虚轴的根轨迹位于右半平面,且系统不存在右半平面的极点,所以系统处于稳定状态。

3)、用MATLAB绘制系统校正前的Nyquist图

Matlab程序如下

s=tf('s');

G1=200/(0.05*s+1);

G2=200/(0.25*s+1);

G3=0.01/s;

Gc=0.156*s/(0.9*s+1);

G2c=feedback(G2,Gc);

G=series(series(G1,G2c),G3)

nyquist(G)

由以上两图可以看出,校正前系统乃氏图包围(-10)点次数为0次,即N=0,Z=P+N=0,系统稳定

4).频域分析

1.用MATLAB绘制原系统开环幅频特性。

Matlab程序如下

s=tf('s');

G1=200/(0.05*s+1);

G2=200/(0.25*s+1);

G3=0.01/s;

Gc=0.156*s/(0.9*s+1);

G2c=feedback(G2,Gc);

G=series(series(G1,G2c),G3)

bode(G);

grid

[Gm,Pm,Wcg,Wcp]=margin(G)

运行结果

Gm=13.8051

Pm=53.3051

Wcg=51.9411

Wcp=9.9939

 

由运行结果可知,截止频率Wc=Wcp=9.9939rad/dec;相角裕量γ=Pm=53.3051°;相角穿越频率ωg=Wcg=51.9411rad/dec;幅值裕量Kg=Gm=13.8051。

校正后系统的增益裕量大于1,相位裕量大于0,系统处于稳定状态,能正常工作。

对比校正前系统动态参数(截止频率Wc=Wcp=29.7408rad/dec;相角裕量γ=Pm=-48.4201°;相角穿越频率ωg=Wcg=8.9443rad/dec;幅值裕量Kg=Gm=0.0600。

未校正系统的增益裕量小于1,相位裕量小于0)可以看出系统截止频率减小了,系统反应时间变快,相角裕量和幅值裕量均增大,由不稳定状态变为稳定状态,稳定性提高了

2.用MATLAB绘制原系统闭环幅频特性。

Matlab程序如下

s=tf('s');

G1=200/(0.05*s+1);

G2=200/(0.25*s+1);

G3=0.01/s;

Gc=0.156*s/(0.9*s+1);

G2c=feedback(G2,Gc);

G=series(series(G1,G2c),G3)

G1=feedback(G,1);

bode(G1);

[m,p,w]=bode(G1)

mr=max(m)

wr=spline(m,w,mr)

运行结果

mr=1.1484

wr=7.1385

 

可知校正后系统的谐振峰值为1.1484,谐振频率为7.1385rad/s。

对比校正前系统

的谐振峰值为1.4675,谐振频率为23.3851rad/s。

可以知道校正后

(1)谐振峰值变小了,系统超调量降低,稳定性能变好了,

(2)谐振频率变小了,所以系统瞬态响应变慢了。

5、结论与心得体会

原系统开环传递函数G(s)=

由单位阶跃响应、Bode图、奈氏图、频率特

性曲线均可判断出原系统是不稳定的,原系统是发散的,时域指标不存在,截止频率Wc=Wcp=29.7408rad/dec;相角裕量γ=Pm=-48.4201°;相角穿越频率ωg=Wcg=8.9443rad/dec;幅值裕量Kg=Gm=0.0600。

未校正系统的增益裕量小于1,相位裕量小于0,系统处于不稳定状态,不能正常工作。

加入反馈校正环节H(s)=Gc(s)=

后系统开环传递函数G(S)=

校正后系统的闭环主导极点σ%=0<25%,由反馈校正后

系统单位阶跃响应曲线,可以得到时域性能指标:

Mp=18.9%,tp=0.271,ts=0.796<0.8s满足题目设计要求,由单位阶跃响应、Bode图、奈氏图、频率特性曲线均可判断出原系统是稳定的

校正后系统截止频率Wc=Wcp=9.9939rad/dec;相角裕量γ=Pm=53.3051°;相角穿越频率ωg=Wcg=51.9411rad/dec;幅值裕量Kg=Gm=13.8051。

校正后系统的增益裕量大于1,相位裕量大于0,系统处于稳定状态,能正常工作。

对比校正前系统动态参数(截止频率Wc=Wcp=29.7408rad/dec;相角裕量γ=Pm=-48.4201°;相角穿越频率ωg=Wcg=8.9443rad/dec;幅值裕量Kg=Gm=0.0600。

未校正系统的增益裕量小于1,相位裕量小于0)可以看出系统截止频率减小了,系统反应时间变快,相角裕量和幅值裕量均增大,由不稳定状态变为稳定状态,稳定性提高了。

校正后系统的谐振峰值为1.1484,谐振频率为7.1385rad/s。

对比校正前系统的谐振峰值为1.4675,谐振频率为23.3851rad/s。

可以知道校正后

(1)谐振峰值变小了,系统超调量降低,稳定性能变好了,

(2)谐振频率变小了,所以系统瞬态响应变慢了。

心得体会:

随着科学技术发展的日新月异,MATLAB已成为当今应用软件中空前活跃的领域,在生活中的应用可以说是无处不在,因此掌握MATLAB这个软件基本的使用方法对我们是十分有益的。

MATLAB可用于算法开发、数据可视化、数据分析以及数值计算的高级技术计算语言和交互式环境。

当然,MATLAB也可以用对反馈系统进行校正。

此次课程设计的内容对一个单位反馈系统进行反馈校正。

回顾此次实践的整个过程,虽然只有短短的几天,但是真的在这个自己独立学习的过程中学到了好多东西。

这次的课程设计,不仅让我们更好的更深一步的了解MATLAB这个十分有用的软件,也能运用他对某一电路图进行仿真,与理论上相结合,从而进一步验证理论的正确性,也是理论运用于实践的很好的证明。

与此同时,通过此次课程设计,加深了系统进行滞后-超前设计过程的理解,还掌握了用MATLAB编程计算系统时域性能指标和系统幅值裕量、相位裕量的方法。

总而言之,这次的课程设计的确让我受益匪浅,还让我把许多新知识尽收囊中。

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

当前位置:首页 > 总结汇报 > 学习总结

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

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