华科Matlab大作业_铣床控制器设计资料
- 格式:docx
- 大小:246.05 KB
- 文档页数:17
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)
单位斜坡响应