华科Matlab大作业_铣床控制器设计资料
2010 级
《MATAB语言与控制系统仿真》课程
铣床控制器设计
目录
一、引言............................................................................................... - 2 -
二、设计要求....................................................................................... - 2 -
三、设计原理及思路........................................................................... - 3 -
四、设计过程....................................................................................... - 3 -
1、观察原系统的斜坡响应和阶跃响应:..................................... - 3 -
2、超前校正器设计......................................................................... - 6 -
3、滞后校正器设计....................................................................... - 10 -
五、实验总结..................................................................................... - 15 -
六、参考文献..................................................................................... - 16 -
一、引言
铣床是以各类电动机为动力的传动装置与系统的对象以实现生产过程自动化的技术装置。电气系统是其中的主干部分,在国民经济各行业中的许多部门得到广泛应用。自动铣床具有工作平稳可靠,操作维护方便,运转费用低的特点,已成为现代生产中的主要设备。自动铣床控制系统的设计是一个很传统的课题,现在随着各种先进精确的诸多控制仪器的出现,铣床控制的设计方案也越来越先进,越来越趋于完美。我们之前学习了自动控制原理,要学会把学习的知识用在现实生活的具体设计之中,才能更深的体会和理解这些知识。这次我们通过Matlab仿真工具Simulink,完成对该控制系统仿真简单建模,进行简单仿真分析和研究。
二、设计要求
图1铣床的基本模型
现有一个控制器的传递函数为的磨床,要对它进行校正,使它达到以下的要求:
1、对于斜坡输入R(s)=a
s ,输出地稳态误差为a
8
。
2、对于阶跃输入,输出的超调量要小于20%。
图2系统的抽象框图图2系统的开环传递函数G(s):
G(s)=
2
s(1+s)(5+s)
三、设计原理及思路
控制系统的动态性能、稳定性和稳态性能通常是矛盾的:增大系统开环增益可使系统稳态误差减小,但是也将减小系统的阻尼比,是系统的超调量和振荡增加;同样,增加开环积分环节可以提高系统类型,是系统跟踪输入信号的能力加强,却有可能导致系统动态性能恶化,甚至不稳定。
因此,为了使控制系统同时具有满意的动态性能和稳态性能,就需要对系统加入一些校正环节。校正的基本思想就是:低频段具有足够高的增益值,以保证稳态误差足够小;中频段具有-20dB/dec的斜率,保证系统的稳定性;高频段具有足够负的斜率,保证抑制噪声干扰能力。
本次实验采用超前校正环节改善系统性能,观察它的阶跃响应和斜坡响应,确定需要采用哪几个参数来描述这个校正器,再根据题目的各个条件,分别算出各个参数需要满足的范围,最后用Matlab对经过校正后的系统进行仿真,如果发现波形还有些不够满足题目要求,再对参数进行微小的调整,最终使得它满足题目的要求。
四、设计过程
1、观察原系统的斜坡响应和阶跃响应
图 3 Simulink对校正前系统仿真
图 4 Simulink仿真原系统的单位斜坡响应
在scope中只能看到比较粗略的斜坡响应,Matlab没有求斜坡响应的函数,为了计算其稳态误差,仍考虑用step函数。根据闭环传递函数的定义
G(s)=C(s) R(s)
对于单位阶跃信号有
R(s)=1 s
则
C(s)=G(s)?1 s
对于单位斜坡信号有
R(s)=1 s2
C(s)=G(s)?1
s2
=[G(s)?
1
s
]?
1
s
由此可以看出,求系统的单位斜坡响应只需将闭环传递函数的分母多项式乘以拉氏算子“s”,再使用step函数即可。
num=2;
den=conv([1 0],conv([1 1],[1 5])); G=tf(num,den); Gf=feedback(G,1); d=[1 6 5 2 0]; Gs=tf(num,d); t=[0:0.1:10]; u=t;
u1=step(Gs,t); plot(t,u); hold on plot(t,u1)
得到单位斜坡响应如图 5所示:
图 5原系统单位斜坡响应
ess=u(100)-u1(100) ess =
2.5151
因为原系统为1型系统
e ss =1v
=2.5
计算结果与仿真结果基本一致。 阶跃响应如图 6: step(Gf)
单位斜坡响应
图 6校正前系统的阶跃响应
由以上两图知,原系统的单位斜坡响应的稳态误差为2.5,超调量为3.75%。 2、超前校正器设计
对于超前校正器,它需要两个参数α、T 来描述,为了题目的稳态误差的要求,增加一个参数K ,他的传递函数为:
G c (s )=K 1+αTs
1+Ts
为了满足第一个设计要求,e ss =1/8,所以K v =8,此时开环传递函数:
G (s )=40
即超前校正器的增益为K=20。
用matlab 做出校正前系统的伯德图,如图 7 num1=[40]; den1=[1 6 5 0]; G1=tf(num1,den1); Gf1=feedback(G1,1); margin(G1)
Step Response
Time (seconds)
A m p l i t u d e
0.2
0.4
0.6
0.8
1
1.2
1.4
图 7校正前系统bode 图
从图中可以看出校正前系统的增益穿越频率为 2.57rad/s ,相角裕度PM=-6.02°。设计要求超调量限定在20%,则要求的阻尼比大约为0.45。算出要求的相位超调角
φm =(45°+6.02°)×(1+10%)≈56.1°
α=1+sin φ1?sin φ
=10.77
?M =?10lg α=?10.32dB
在图 7中找到对应增益为-10.32dB 的点
ωm =ωgc =4.38rad s ? T =
1ωm √α
=0.0696
从而得到
αT =0.749
于是超前校正网络的传递函数便求得为
G c (s)=1+0.749s
1+0.0696s
为了抵消衰减,总的开环增益提高三倍,故校正后的开环传递函数为
G c (s )G(s)=40(1+0.749s)
s(1+s)(5+s)(1+0.0696s)
10
10
10
10
10
P h a s e (d e g )
Bode Diagram
Gm = -2.5 dB (at 2.24 rad/s) , P m = -6.02 deg (at 2.57 rad/s)
Frequency (rad/s)
M a g n i t u d e (d B )
校正后单位斜坡响应如图8:
num2=[40*0.749 40];
den2=conv([1 6 5 0],[0.0696 1]);
G2=tf(num2,den2);
Gf2=feedback(G2,1)
Transfer function:
29.96 s + 40
-------------------------------------------------
0.0696 s^4 + 1.418 s^3 + 6.348 s^2 + 34.96 s + 40 num3=[29.96 40];
den3=[0.0696 1.418 6.348 34.96 40 0];
G3=tf(num3,den3);
plot(t,u);
hold on
plot(t,step(G3,t))
单位斜坡响应
图8校正后单位斜坡响应求稳态误差:
u2=step(G3,t);
ess=u(100)-u2(100)
ess =
0.1250
满足第一个设计要求。
校正后系统的bode 图如图 8图 9:
图 9校正后阶跃响应
因为47.6%的超调量太大,故将进行下一步的滤波器设计。这次设法获得80°的超前相位,重复上述计算过程,可得:
α=130.65 ?M =?21.16dB
在图 7中找到对应增益为-21.16dB 的点
ωm =ωgc =7.18rad s ? T =
1ωm √α
=0.0122
从而得到
αT =1.592
于是超前校正网络的传递函数便求得为
G c (s)=1+1.592s
为了抵消衰减,总的开环增益提高三倍,故校正后的开环传递函数为
G c (s )G(s)=40(1+1.592s)
s(1+s)(5+s)(1+0.0122s)
用Matlab 重新作出阶跃响应如图 10: num2=[40*1.592 40];
Step Response
Time (seconds)
A m p l i t u d e
00.51
1.5
den2=conv([1 6 5 0],[0.0122 1]); G2=tf(num2,den2); Gf2=feedback(G2,1); step(Gf2)
图 10重新校正后阶跃响应
超调量依然不能满足设计要求,经过多次尝试发现由超前校正器去校正系统无法无法提供足够的相位超调量,所以下面选择滞后校正器。
3、滞后校正器设计
为了方便阅读,重新将校正前系统bode 图粘贴如下:
Step Response
Time (seconds)
A m p l i t u d e
图 11校正前系统bode 图
系统单位斜坡响应稳态误差只与K 的大小有关,因此K 的取值依然为20不变(详细见上面相关推导)。设计要求超调量限定在20%,则要求的阻尼比大约为0.45。由上面的波特图知,频率ω=0.639rad/s 时满足相位裕度要求。算出要求的相位超调角
φm =45°×(1+10%)≈50°
在该处幅值为?M =20.3dB 。
G c (s )=K 1+τs
1+βτs
?M =20lg β β=10.35
校正环节不能影响后面的相角特性,零点转折频率设置在新增益穿越频率的1/10处,即
1
τ
=0.1ωgc =0.0639rad/s 可得
τ=15.65 βτ=161.97
于是校正器的传递函数可以写为
G c (s )=20
1+15.65s
1+161.97s
10
10
10
10
10
P h a s e (d e g )
Bode Diagram
Gm = -2.5 dB (at 2.24 rad/s) , P m = -6.02 deg (at 2.57 rad/s)
Frequency (rad/s)
M a g n i t u d e (d B )
从而可得进行滞后校正后,系统的开环传递函数为
G c (s )G(s)=40(1+15.65s)
滞后校正器设计完成,校正后单位斜坡响应如图 12: num2=[40*15.65 40];
den2=conv([1 6 5 0],[161.97 1]); G2=tf(num2,den2); Gf2=feedback(G2,1)
Transfer function:
626 s + 40 -------------------------------------------- 162 s^4 + 972.8 s^3 + 815.9 s^2 + 631 s + 40 num3=[626 40];
den3=[162 972.8 815.9 631 40 0]; G3=tf(num3,den3); t=[0:0.1:1000]; u=t;
u2=step(G3,t); plot(t,u); hold on plot(t,u2)
图 12校正后单位斜坡响应
ess=u(10000)-u2(10000)
单位斜坡响应