控制系统建模与仿真论文( 2011)
由图4中可以看出,加入PD校正,系统的曲线仍然是呈衰减震荡,但衰减次数显著减少,比且超调量也降低了不少。而且对系统的上升时间和静差来说影响不大。剩下的问题就是如何实现无静差。
(4)、PI校正装置设计
消除静差,可以通过加入积分环节。当在原系统的基础上加入一个比例放大器和一个积分放大器时,系统的闭环传递函数为:
Gc(s)?Kps?KIs?10s?(20?Kps)?KI32
加入PI校正后,系统的阶跃响应曲线如图5所示:
图5 PI校正后系统的闭环阶跃响应曲线
6
由图可见,加入PI校正后,系统的稳态值为1,也就是实现了无静差。系统的输出量可以无误差地跟踪设定值的变化。然而,这样的系统调节时间稍长,响应速度不够快。
为了满足这些要求,我们接下来引入经典的PID校正。
(5)、PID校正装置设计
加入Kp、KI、KD。通过调节这三个参数,并使用Matlab绘图进行逐步校正。此处省略调试过程。最终取KP?450,KI?300,KD?40。
系统的闭环传递函数如下:
Gc(s)?编写程序如下: clear;
t=0:0.01:2; Kp=450; Ki=300; Kd=40;
num=[Kd Kp Ki];
KDs?Kps?KIs?(10?KD)s?(20?Kps)?KI322
den=[1 (10+Kd) (20+Kp) Ki]; c=step(num,den,t); plot(t,c);
xlabel('Time-Sec'); ylabel('y');
title('Step Response'); grid;
所得图形如图6所示:
7
控制系统建模与仿真论文( 2011)
图6 PID校正后系统的闭环阶跃响应曲线
4.1 PID参数整定法概述
1.PID参数整定方法
(1) Relay feedback :利用Relay 的 on-off 控制方式,让系统产生一定的周期震荡,再用Ziegler-Nichols调整法则去把PID值求出来。
(2) 在线调整:实际系统中在PID控制器输出电流信号装设电流表,调P值观察电流表是否有一定的周期在动作,利用Ziegler-Nichols把PID求出来,PID值求法与Relay feedback一样。
(3) 波德图&跟轨迹:在MATLAB里的Simulink绘出反馈方块图。转移函数在用系统辨识方法辨识出来,之后输入指令算出PID值。[13]
2.PID调整方式
8
PID调整方式 有转移函数 无转移函数 系统辨识法 Relay feedback 在线调整 波德图 根轨迹 图4-1 PID调整方式
如上描述之PID调整方式分为有转函数和无转移函数,一般系统因为不知转移函数,所以调PID值都会从Relay feedback和在线调整去着手。波德图及根轨迹则相反,一定要有转移函数才能去求PID值,那这技巧就在于要用系统辨识方法,辨识出转移函数出来,再用MATLAB
[15]
里的Simulink画出反馈方块图,调出PID值。 所以整理出来,调PID值的方法有在线调整法、Relay feedback、波德图法、根轨迹法。前提是要由系统辨识出转移函数才可以使用波德图法和根轨迹法,如下图4-2所示。
图4-2由系统辨识法辨识出转移函数
4.2 针对无转移函数的PID调整法
在一般实际系统中,往往因为过程系统转移函数要找出,之后再利用系统仿真找出PID值,但是也有不需要找出转移函数也可调出PID值的方法,以下一一介绍。
4.2.1 Relay feedback调整法
9
控制系统建模与仿真论文( 2011)
图4-3 Relay feedback调整法
如上图4-3所示,将PID控制器改成Relay,利用Relay的On-Off控制,将系统扰动,可得到该系统于稳定状态时的震荡周期及临界增益(Tu及Ku),在用下表4-4 的Ziegler-Nichols第一个调整法则建议PID调整值,即可算出该系统之Kp、Ti、Tv之值。
表4-4 Ziegler-Nichols第一个调整法则建议PID调整值
[9]
4.2.2 Relay feedback 在计算机做仿真
Step 1: 以MATL AB里的Simulink绘出反馈方块,如下图4-5所示。
Controller 图Simulink馈方块图
P PI KP TI TD
4-5 绘出的反
0.5Ku 0.45Ku 0.83Tu 让RelayOn-Off
PID 0.6Ku 0.5Tu 0.125Tu Step 2:
做动作,将
10