资源描述
自控课设串联滞后超前校正..
精品文档
目 录
绪论 1
一 课程设计的目的及题目 2
1.1课程设计的目的 2
1.2课程设计的题目 2
二 课程设计的任务及要求 3
2.1课程设计的任务 3
2.2课程设计的要求 3
三 校正函数的设计 5
3.1理论知识 5
3.2设计部分 6
四 传递函数特征根的计算 10
4.1校正前系统的传递函数的特征根 10
4.2校正后系统的传递函数的特征根 11
五 系统动态性能的分析 12
5.1校正前系统的动态性能分析 12
5.2校正后系统的动态性能分析 15
六 系统的根轨迹分析 18
6.1校正前系统的根轨迹分析 18
6.2校正后系统的根轨迹分析 20
七 系统的奈奎斯特曲线图 21
7.1校正前系统的奈奎斯特曲线图 21
7.2校正后系统的奈奎斯特曲线图 22
八 系统的对数幅频特性及对数相频特性 23
8.1校正前系统的对数幅频特性及对数相频特性 23
8.2校正后系统的对数幅频特性及对数相频特性 24
总结 26
参考文献 26
绪论
在控制工程中用得最广的是电气校正装置,它不但可应用于电的控制系统,而且通过将非电量信号转换成电量信号,还可应用于非电的控制系统。控制系统的设计问题常常可以归结为设计适当类型和适当参数值的校正装置。校正装置可以补偿系统不可变动部分(由控制对象、执行机构和量测部件组成的部分)在特性上的缺陷,使校正后的控制系统能满足事先要求的性能指标。常用的性能指标形式可以是时间域的指标,如上升时间、超调量、过渡过程时间等(见过渡过程),也可以是频率域的指标,如相角裕量、增益裕量(见相对稳定性)、谐振峰值、带宽(见频率响应)等。
常用的串联校正装置有超前校正、滞后校正、滞后-超前校正三种类型。在许多情况下,它们都是由电阻、电容按不同方式连接成的一些四端网络。各类校正装置的特性可用它们的传递函数来表示,此外也常采用频率响应的波德图来表示。不同类型的校正装置对信号产生不同的校正作用,以满足不同要求的控制系统在改善特性上的需要。在工业控制系统如温度控制系统、流量控制系统中,串联校正装置采用有源网络的形式,并且制成通用性的调节器,称为PID(比例-积分-微分)调节器,它的校正作用与滞后-超前校正装置类同。
收集于网络,如有侵权请联系管理员删除
一 课程设计的目的及题目
1.1课程设计的目的
1、掌握自动控制原理的时域分析法,根轨迹法,频域分析法,以及各种补偿(校正)装置的作用及用法,能够利用不同的分析法对给定系统进行性能分析,能根据不同的系统性能指标要求进行合理的系统设计,并调试满足系统的指标。
2、学会使用MATLAB语言及Simulink动态仿真工具进行系统仿真与调试。
3、提高分析问题解决问题的能力。
1.2课程设计的题目
已知单位负反馈系统的开环传递函数,试用频率法设计串联滞后——超前校正装置,使系统的相角裕量,静态速度误差系数。
二 课程设计的任务及要求
2.1课程设计的任务
设计报告中,根据给定的性能指标选择合适的校正方式对原系统进行校正(须写清楚校正过程),使其满足工作要求。然后利用MATLAB对未校正系统和校正后系统的性能进行比较分析,针对每一问题分析时应写出程序,输出结果图和结论。最后还应写出心得体会与参考文献等。
2.2课程设计的要求
1、 首先,根据给定的性能指标选择合适的校正方式对原系统进行校正,使其满足工作要求。要求程序执行的结果中有校正装置传递函数和校正后系统开环传递函数,校正装置的参数T,α等的值。
2、 利用MATLAB函数求出校正前与校正后系统的特征根,并判断其系统是否稳定,为什么?
3、 利用MATLAB作出系统校正前与校正后的单位脉冲响应曲线,单位阶跃响应曲线,单位斜坡响应曲线,分析这三种曲线的关系?求出系统校正前与校正后的动态性能指标σ%、、、以及稳态误差的值,并分析其有何变化?
4、 绘制系统校正前与校正后的根轨迹图,并求其分离点、汇合点及与虚轴交点的坐标和相应点的增益值,得出系统稳定时增益的变化范围。绘制系统校正前与校正后的Nyquist图,判断系统的稳定性,并说明理由?
5、 绘制系统校正前与校正后的Bode图,计算系统的幅值裕量,相位裕量,幅
值穿越频率和相位穿越频率。判断系统的稳定性,并说明理由?
三 校正函数的设计
要求:首先,根据给定的性能指标选择合适的校正方式对原系统进行校正,使其满足工作要求。要求程序执行的结果中有校正装置传递函数和校正后系统开环传递函数,校正装置的参数T,α等的值。
3.1校正步骤
应用频率特性法设计串联滞后-超前校正装置的步骤如下:
(1) 根据稳态误差要求,确定开环增益K。
(2) 利用已确定的开环增益,作出未校正系统的对数频率特性曲线,确定未校正系统的剪切频率,相角裕度和幅值裕度以检验性能指标是否满足要求。若不满足要求,则执行下一步。
(3) 确定滞后校正器传递函数的参数:
式中,要距较远为好。
(4)选择一个新的系统剪切频率,使在这一点超前校正所提供的相位超前量达到系统相位稳定裕量的要求。又要使得在这一点原系统加上滞后校正器综合幅频特性衰减为0dB,即L曲线在点穿越横坐标。
(5)确定超前校正器传递函数的参数
式中。由以下表达式:
为原系统加上滞后校正器后幅频分贝值。还有公式
求出参数、
(6)画出校正后的系统的Bode图,并验算已校正系统相角裕度和幅值裕度。
3.2设计部分
已知单位负反馈系统的开环传递函数,试用频率法设计串联滞后——超前校正装置,使系统的相角裕量,静态速度误差系数。
(1) 由静态速度误差系数。可知。
所以,该系统的开环传递函数为
化为:,。
(2) 确定未校正系统的剪切频率,相角裕度和幅值裕度。
MATLAB程序如下:
>> d1=[1,0];
>> d2=[1,2];
>> d3=[1,40];
>> den1=conv(d1,d2);
>> den=conv(den1,d3);
>> num=[1600];
>> g0=tf(num,den);
>> [gm,pm,wcg,wcp]=margin(g0);
>> margin(g0);
>> figure(1)
校正前的Bode图为:
幅值裕度:=6.44dB
相角裕度:=9.35deg
穿越频率:=8.9443rad/sec
截止频率:=6.13rad/sec
(3) 计算出滞后校正器的传递函数。
因为,可以取,。
由于,取,则,得到滞后校正补偿器传递函数:
串联滞后校正器的系统传递函数为:
由MATLAB语言计算出串联滞后校正后的
>> n1=20;
>> d1=conv(conv([1 0],[0.5 1]),[0.025 1]);
>> s1=tf(n1,d1);
>> s2=tf([0.82 1],[1.64 1]);
>> sope=s1*s2;
>> margin(sope)
(4) 用MATLAB语言计算出超前校正器的传递函数。
题目要求,取,所以最大超前相角:
则校正装置的参数:
用MATLAB语言计算出,:
>> n1=20;
>> d1=conv(conv([1 0],[0.5 1]),[0.025 1]);
>> g=tf(n1,d1);
>> s2=tf([0.82 1],[1.64 1]);
>> sope=g*s2;
>> v=41;
>> v1=v-11+11;
>> v1=v1*pi/180;
>> a=(1+sin(v1))/(1-sin(v1));
>> k=10*log10(a);
>> [mag,phase,w]=bode(sope);
>> kdB=20*log10(mag);
>> wm=spline(kdB,w,-k);
>> T=1/(wm*sqrt(a));
,
解方程组得:, ,得到超前校正器的传递函数:
(5)校验系统校正后系统是否满足题目要求。
校正后的传递函数为:
用MATLAB语言校正如下:
>> n1=1600;
>> d1=conv(conv([1 0],[1 2]),[1 40]);
>> s1=tf(n1,d1);
>> s2=tf([0.82 1],[1.64 1]);
>> s3=tf([0.337 1],[0.07 1]);
>> sope=s1*s2*s3;
>> margin(sope)
校正后的Bode图为:
幅值裕度:=16.7dB
相角裕度:=43.7deg,满足题目要求
截止频率:rad/sec
穿越频率:=22.1rad/sec
四 传递函数特征根的计算
要求:利用MATLAB函数求出校正前与校正后系统的特征根,并判断其系统是否稳定,为什么?
4.1校正前系统的传递函数的特征根
校正前的开环传递函数为:
MATLAB程序如下:
>> num=1600;
>> den=conv(conv([1 0],[1 2]),[1 40]);
>> g=tf(num,den);
>> sys=feedback(g,1);
>> pzmap(g);
>> [p,z]=pzmap(g);
>> den=sys.den{1};
>> r=roots(den);
>> disp(r)
-41.0006
-0.4997 + 6.2269i
-0.4997 - 6.2269i
系统没有零极点在右边,所以系统开环稳定。
4.2校正后系统的传递函数的特征根
校正后的开环传递函数为:
MATLAB程序如下:
>> k=1600;
>> num=conv([0.82 1],[0.337 1]);
>> den=conv(conv(conv(conv([1 0],[1 2]),[1 40]),[1.64 1]),[0.07 1]);
>> g=tf(k*num,den);
>> sys=feedback(g,1);
>> pzmap(g);
>> [p,z]=pzmap(g);
>> den=sys.den{1};
>> r=roots(den);
>> disp(r)
-43.0016
-4.4129 + 6.9169i
-4.4129 - 6.9169i
-3.8016
-1.2665
系统没有零极点在右边,所以系统开环稳定。
五 系统动态性能的分析
要求:利用MATLAB作出系统校正前与校正后的单位脉冲响应曲线,单位阶跃响应曲线,单位斜坡响应曲线,分析这三种曲线的关系?求出系统校正前与校正后的动态性能指标σ%、、、以及稳态误差的值,并分析其有何变化?
5.1校正前系统的动态性能分析
校正前的开环传递函数为:
(1)单位脉冲响应
MATLAB程序为:
>> num=1600;
>> den=conv(conv([1,0],[1,2]),[1,40]);
>> G1=tf(num,den);
>> sys1=feedback(G1,1);
>> impulse(sys1);
校正前单位脉冲响应曲线
(2)单位阶跃响应
MATLAB程序为:
>> num=1600;
>> den=conv(conv([1,0],[1,2]),[1,40]);
>> G1=tf(num,den);
>> sys1=feedback(G1,1);
>> step(sys1);
校正前单位阶跃响应曲线
由图可知:,,,,
(3)单位斜坡响应
MATLAB程序为:
>> n1=1600;
>> d1=conv(conv([1 0],[1 2]),[1 40]);
>> sope1=tf(n1,d1);
>> sys1=feedback(sope1,1);
>> n2=1;
>> d2=conv([1 0],[1 1]);
>> rs=tf(n2,d2);
>> sys2=sys1*rs;
>> step(sys2)
校正前单位斜坡响应曲线
5.2校正后系统的动态性能分析
校正后的开环传递函数为:
(1)单位脉冲响应
MATLAB程序为:
>> k=1600;
>> num=conv([0.82 1],[0.337 1]);
>> den=conv(conv(conv(conv([1 0],[1 2]),[1 40]),[1.64 1]),[0.07 1]);
>> g=tf(k*num,den);
>> sys=feedback(g,1);
>> impulse(sys);
校正后单位脉冲响应曲线
(2)单位阶跃响应
MATLAB程序为:
>> k=1600;
>> num=conv([0.82 1],[0.337 1]);
>> den=conv(conv(conv(conv([1 0],[1 2]),[1 40]),[1.64 1]),[0.07 1]);
>> g=tf(k*num,den);
>> sys=feedback(g,1);
>> step(sys)
校正后单位阶跃响应曲线
由图可知:,,,,
(3)单位斜坡响应
MATLAB程序为:
>> k=1600;
>> num=conv([0.82 1],[0.337 1]);
>> den=conv(conv(conv(conv([1 0],[1 2]),[1 40]),[1.64 1]),[0.07 1]);
>> g=tf(k*num,den);
>> sys1=feedback(g,1);
>> n2=1;
>> d2=conv([1 0],[1 1]);
>> rs=tf(n2,d2);
>> sys2=sys1*rs;
>> step(sys2)
校正后单位斜坡响应曲线
三条曲线关系:斜坡响应曲线的导数是阶跃,阶跃响应曲线的导数是脉冲响应曲线。
校正后的、、、与校正前均减小,不变,都是0。
六 系统的根轨迹分析
要求:绘制系统校正前与校正后的根轨迹图,并求其分离点、汇合点及与虚轴交点的坐标和相应点的增益值,得出系统稳定时增益的变化范围。
6.1 校正前系统的根轨迹分析
校正前的开环传递函数为:
MATLAB程序如下:
num=[1600];
den=conv(conv([1 0],[1 2]),[1 40]);
rlocus(num,den)
[k,poles]=rlocfind(num,den)
得到校正前系统的根轨迹:
selected_point =
0 + 8.6957i
k=1.985
poles: -41.9
-0.050111 + 8.7062i
-0.050111 - 8.7062i
selected_point =
0 - 8.1988i
k =1.7657
poles =
-41.7060
-0.1470 + 8.2291i
-0.1470 - 8.2291i
分离点:
与虚轴交点:
6.2 校正后系统的根轨迹分析
校正后的开环传递函数为:
MATLAB程序如下:
>> n1=conv(conv([0 1600],[0.82 1]),[0.337 1]);
>> den=conv(conv(conv(conv([1 0],[1 2]),[1 40]),[1.64 1]),[0.07 1]);
>> g=tf(n1,den);
>> rlocus(g)
>> [k,poles]=rlocfind(g)
得到校正后系统的根轨迹:
selected_point =
0 +21.1180i
k =6.2821
poles =
-51.9708
-0.3291 +21.2541i
-0.3291 -21.2541i
-3.0399
-1.2265
分离点:
汇合点:
与虚轴交点:
七 系统的奈奎斯特曲线图
要求:绘制系统校正前与校正后的Nyquist图,判断系统的稳定性,并说明理由。
7.1校正前系统的奈奎斯特曲线图
校正前的开环传递函数为:
MATLAB程序如下:
>> num=1600;
>> den=conv(conv([1 0],[1 2]),[1 40]);
>> g=tf(num,den);
>> nyquist(g)
由图可知N=0,Z=P-2N,所以Z=0,从而校正前的系统稳定。
7.2校正后系统的奈奎斯特曲线图
校正后的开环传递函数为:
MATLAB程序如下:
>> k=1600;
>> num=conv([0.82 1],[0.337 1]);
>> den=conv(conv(conv(conv([1 0],[1 2]),[1 40]),[1.64 1]),[0.07 1]);
>> g=tf(k*num,den);
>> nyquist(g)
由图可知N=0,Z=P-2N,所以Z=0,从而校正后的系统稳定。
第八章 系统的对数幅频特性及对数相频特性
要求:绘制系统校正前与校正后的Bode图,计算系统的幅值裕量,相位裕量,幅值穿越频率和相位穿越频率。判断系统的稳定性,并说明理由。
8.1校正前系统的对数幅频特性及对数相频特性
校正前的开环传递函数为:
MATLAB程序如下:
>> d1=[1,0];
>> d2=[1,2];
>> d3=[1,40];
>> den1=conv(d1,d2);
>> den=conv(den1,d3);
>> num=[1600];
>> g0=tf(num,den);
>> [gm,pm,wcg,wcp]=margin(g0);
>> margin(g0);
>> figure(1)
幅值裕度:=6.44dB
相角裕度:=9.35deg
穿越频率:=8.9443rad/sec
截止频率:=6.13rad/sec
8.2校正后系统的对数幅频特性及对数相频特性
校正后的开环传递函数为:
用MATLAB语言校正如下:
>> n1=1600;
>> d1=conv(conv([1 0],[1 2]),[1 40]);
>> s1=tf(n1,d1);
>> s2=tf([0.82 1],[1.64 1]);
>> s3=tf([0.337 1],[0.07 1]);
>> sope=s1*s2*s3;
>> margin(sope)
幅值裕度:=16.7dB
相角裕度:=43.7deg
截止频率:rad/sec
穿越频率:=22.1rad/sec
由此可以看出校正后的系统符合题目对相角稳定裕量的要求,从而此次设计正确。根据奈奎斯特曲线可得N=0,Z=P-2N,所以Z=0,从而校正后的系统稳定。
总结
短短2周的时间,紧张忙碌的自控课程设计就这样过去了。从一开始的确定题目,到查资料,到自学MATLAB,这一系列的环节都是对我的极大的考验。开始看到题目之后,我先按照上课所讲的知识,简单的算了下该如何校正。然后就是找资料以及自学MATLAB。一开始面对MATLAB的时候被它的英文版给打败了。然后我照着书上的做法,慢慢的就会使用了。
再谈谈MATLAB对于我的帮助:
1.学习MATLAB,需要多动手,即多写程序多调试。只有经过自己亲身的调试才能发现问题,进而解决问题。
2.善于利用MATLAB中的帮助功能。作为一个初学者,“帮助”功能对我的帮助很大。很多问题不论大小,几乎都可以再帮助中得到解决,虽然是英文版可能有些看不懂,但利用参考资料及上网搜索综合而来说,一些小的问题都可以得到解决。
参考文献
[1] 程鹏.自动控制原理.北京.高等教育出版社,2005
[2] 赵广元.MATLAB与控制系统仿真实践.北京.北京航空航天大学出版社,2012
[3] 丁华锋等.控制系统仿真及MATLAB语言.北京.电子工业出版社,2009
展开阅读全文