用MATLAB进行控制系统的超前校正设计.docx
《用MATLAB进行控制系统的超前校正设计.docx》由会员分享,可在线阅读,更多相关《用MATLAB进行控制系统的超前校正设计.docx(15页珍藏版)》请在冰点文库上搜索。
用MATLAB进行控制系统的超前校正设计
学号:
课程设计
题目
学院
专业
班级
姓名
指导教师
年
月
日
课程设计任务书
学生姓名:
专业班级:
指导教师:
刘志立工作单位:
自动化学院
题目:
用MATLAB进行控制系统的超前校正设计
初始条件:
已知一单位反馈系统的开环传递函数是
要求系统的静态速度误差系数
,相角裕度
,幅值裕度
。
要求完成的主要任务:
(包括课程设计工作量及其技术要求,以及说明书撰写等具体要求)
(1)用MATLAB作出满足初始条件的K值的系统伯德图,计算系统的幅值裕度和相位裕度。
(2)在系统前向通路中插入一相位超前校正,确定校正网络的传递函数,并用MATLAB进行验证。
(3)用MATLAB画出未校正和已校正系统的根轨迹。
(4)对上述任务写出完整的课程设计说明书,说明书中必须进行原理分析,写清楚分析计算的过程及其比较分析的结果,并包含Matlab源程序或Simulink仿真模型,说明书的格式按照教务处标准书写。
时间安排:
任务
时间(天)
指导老师下达任务书,审题、查阅相关资料
2
分析、计算
2
编写程序
1
撰写报告
2
论文答辩
1
指导教师签名:
年月日
摘要
用频率法对系统进行超前校正的实质是将超前网络的最大超前角补在校正后系统开环频率特性的截止频率处,提高校正后系统的相角裕度和截止频率,从而改善系统的动态性能。
为此,要求校正网络的最大相位超前角出现在系统的截止频率处。
只要正确地将超前网络的交接频率1/aT和1/T设置在待校正系统截止频率Wc的两边,就可以使已校正系统的截止频率Wc和相裕量满足性能指标要求,从而改善系统的动态性能。
串联超前校正主要是对未校正系统在中频段的频率特性进行校正。
确保校正后系统中频段斜率等于-20dB/dec,使系统具有45°~60°的相角裕量。
以加快系统的反应速度,但同时它也削弱了系统抗干扰的能力。
在工程实践中一般不希望系数a值很大,当a=20时,最大超前角为60°,如果需要60°以上的超前相角时,可以考虑采用两个或两个以上的串联超前校正网络由隔离放大器串联在一起使用。
在这种情况下,串联超前校正提供的总超前相角等于各单独超前校正网络提供的超前相角之和。
关键词:
串联超前校正;动态性能;相角裕度
1.
超前校正的原理和方法
1.1.超前校正的原理
所谓校正,就是在调整放大器增益后仍然不能全面满足设计要求的性能指标的情况下,加入一些参数可以根据需要而改变的机构或装置,使系统整个特性发生变化,达到设计要求。
无源超前网络的电路如图1所示。
图1无源超前网络电路图
如果输入信号源的内阻为零,且输出端的负载阻抗为无穷大,则超前网络的传递函数可写为
①(1-1)
式中
通常a为分度系数,T叫时间常数,由式(1-1)可知,采用无源超前网络进行串联校正时,整个系统的开环增益要下降a倍,因此需要提高放大器增益交易补偿。
根据式(1-1),可以得无源超前网络
的对数频率特性,超前网络对频率在1/aT至1/T之间的输入信号有明显的微分作用,在该频率范围内,输出信号相角比输入信号相角超前,超前网络的名称由此而得。
在最大超前角频率
处,具有最大超前角
。
超前网路(1-1)的相角为
(1-2)
将上式对
求导并令其为零,得最大超前角频率
(1-3)
将上式代入(1-2),得最大超前角频率
(1-4)
同时还易知
m仅与衰减因子a有关。
a值越大,超前网络的微分效应越强。
但a的最大值受到超前网络物理结构的制约,通常取为20左右(这就意味着超前网络可以产生的最大相位超前大约为65度)。
利用超前网络行串联校正的基本原理,是利用其相角超前特性。
只要正确地将超前网络的交接频率1/aT或1/T选在待校正系统截止频率的两旁,并适当选择参数a和T,就可以使已校正系统的截止频率和相角裕度满足性能指标的要求,从而改善系统的动态性能。
②
1.2.超前校正的应用方法
待校正闭环系统的稳态性能要求,可通过选择已校正系统的开环增益来保证。
用频域法设计无源超前网络的步骤如下:
1)根据稳态误差要求,确定开环增益K。
2)利用已确定的开环增益,计算待校正系统的相角裕度。
3)根据截止频率
的要求,计算a和T。
令
,以保证系统的响应速
度,并充分利用网络的相角超前特性。
显然
成立的条件是
根据上式不难求出a值,然后由(1-3)确定T。
4)验算已校正系统的相角裕度
。
验算时,由式(1-4)求得
,再由已知的
算出待校正系统在
时的相角裕度
。
最后,按下式算出
如果验算结果不满足指标要求,要重选
,一般使
增大,然后重复以上步骤。
2.控制系统的超前校正设计
2.1.校正前系统初始状态分析
由已知条件,首先根据初始条件调整开环增益。
因为
系统的静态速度误差系数
=
K/3
,故取K=60s-1,则待校正的系统开环传递函数为
上式为最小相位系统,用MATLAB画出系统伯德图,程序为:
num=[20];
den=[1/3,1,0];
bode(num,den)
grid
得到的图形如图2所示。
图2校正前系统的伯德图
再用MATLAB求校正前的相角裕度和幅值裕度,程序为:
num=[20];
den=[1/3,1,0];
sys=tf(num,den);
margin(sys)
[gm,pm,wg,wp]=margin(sys)③
得到图形如图3所示。
图3校正前系统的裕度图
可得:
相角裕度Pm=21.9046deg截止频率wc=7.4610rad/s
幅值裕度Gm=∞dB
用MATLAB画出其根轨迹,程序为
num=[20];
den=[1/3,1,0];
rlocus(num,den);
Sgrid;
[k,p]=rlocfind(num,den);
Title('控制系统根轨图')
得到图形如图4所示。
图4校正前系统的根轨迹图
2.2.超前校正分析及计算
2.2.1校正装置计算的程序
根据1.2中所述超前校正的原理,超前网络提供的最大超前相位角应为
由
得
在此基础上超前校正控制器设计的程序代码为:
G=tf(20,1/310]);
margin(G);%画出Bode图并显示频域性能指标
phy=50-21.9046+10;
phy1=phy*pi/180;
a=(1+sin(phy1))/(1-sin(phy1));
M1=1/sqrt(a);
%分别返回频域响应幅值响应m、相角响应(以度为单位)和频率向量w
[m,p,w]=bode(G);
%spline为3次曲线插值函数,通过插值求新的截止频率
wm=spline(m,w,M1);
T=1/(wm*sqrt(a));
Gc=tf([a*T1],[T1])
超前校正控制器传递函数为,
Transferfunction:
Gc=
0.1885s+1
-------------
0.04465s+1
2.2.2校正后的验证
画出校正后的Bode图,程序为
num1=[20];
den1=[1/3,1,0];
numc=[0.18851];
denc=[0.04461];
[num,den]=series(numc,denc,num1,den1);
sys=tf(num,den);
margin(sys)
[gm,pm,wg,wp]=margin(sys)
校正后系统的Bode图如5图所示。
图5校正后系统的裕度图
相角裕度:
Pm=53.5029deg;截止频率:
wm=10.9053rad/sec
幅值裕度:
Gm=∞dB
可见其相角裕度、幅值裕度均满足设计要求。
所以,已校正系统的开环传递函数为:
用MATLAB画出校正后的根轨迹,程序为:
num=[3.176,20];
den=[0.011,0.293,1,0];
rlocus(num,den);
Title('控制系统根轨图')
得到图形如图6所示。
图6校正后系统的根轨迹
2.2.3超前校正对系统性能改变的分析
用MATLAB画出校正前后系统的单位阶跃响应的程序为
num1=[20];
den1=[1/3,1,0];
num2=[20];
den2=[1/3,1,0];
numc=[0.18851];
denc=[0.04461];
[num3,den3]=series(numc,denc,num1,den1);
t=[0:
0.02:
5]
[numc1,denc1]=cloop(num1,den1)
y1=step(numc1,denc1,t)
[numc3,denc3]=cloop(num3,den3)
y3=step(numc3,denc3,t)
plot(t,[y1,y3]);
grid
gtext('校正前')
gtext('校正后')
得到图形如图7所示
图7校正前后系统的单位阶跃响应图
由图7明显可以看出:
1)加入校正装置后,校正后系统单位阶跃响应的调节时间大大减小,大大提升了系统的响应速度。
2)校正后系统的超调量明显减小了,阻尼比增大,动态性能得到改善。
3)校正后系统的上升时间减小很多,从而提升了系统的响应速度。
综上,串入超前校正装置后,明显地提升了系统的动态性能指标,增强了系统的稳定性。
3.
心得体会
在很多人眼中为期两周的课程设计是一种煎熬,确实,课设和我们习惯的单纯的看书做题目不一样,它更考验我们对知识的理解和应用。
通过这次自控的课程设计中我可谓受益匪浅。
首先当然是对于课本知识的再学习和更深刻的理解,和做题目不一样,在做课设时需要全方面的考虑问题,而不是单纯的算出一个结果,特别是对与校正系统,在试取值时需要耐心的验算,在校正后还需要前后的对比分析,我这次在校正时刚开始就没能取到合适的值,但是在重新取值后最终还是满足了要求。
虽说这个过程并不算是多么的漫长或艰难,但是这种经历确实能让我们养成一种不断探索的科学研究精神,我想对于工学学生这个是很重要的。
这次课设对我的另一大考验就是MATLAB的应用,虽说之前上过基础强化训练课,但是并没有具体到在自动控制系统上的应用,所以自己查资料是必须的,对于工科学生来说查资料也是必备的能力,有些问题在不会时看上去很可怕,但是在看过资料后才发现也没有想象的那么难,这次课设中用到的MATLAB就比我之前想的要容易,我想搞课设很大的一方面原因也是为了提高我们的自学意识和自学能力,通过这次课设,我在查资料的能力上也确实得到了提高,除开图书馆,上网搜索也的确是不错的选择。
不少人抱怨在大学学不到东西,我并不这样认为。
我想无论是在学习还是在生活上只有自己有心去学习和参与才可能有收获,这也算是课设给我知识之外的一点小小的感悟。
参考文献
1张德丰.MATLAB自动控制系统设计.机械工业出版社,2010年1月第1版
2胡寿松.自动控制原理(第四版).北京:
科学出版社,2002年
3师宇杰.自动控制原理——基于MATLAB仿真的多媒体授课教材(上册).国防工业出版社,2007年
4何衍庆.MATLAB语言的运用.北京:
化学工业出版社,2003年
本科生课程设计成绩评定表
姓名
性别
专业、班级
课程设计题目:
课程设计答辩或质疑记录:
成绩评定依据:
评定项目
最高分限
评分成绩
1.选题合理、目的明确
10
2.设计方案正确、具有可行性、创新性
20
3.设计结果(例如:
系统设计程序、仿真程序)
20
4.态度认真、学习刻苦、遵守纪律
15
5.设计报告的规范化、参考文献充分(不少于5篇)
10
6.答辩
25
总分
100
最终评定成绩(以优、良、中、及格、不及格评定)
指导教师签字:
年月日