PID控制是最早发展起来的控制策略之一,由于其算法简单、鲁棒性好和可靠性高,被广泛用于过程控制和运动控制中。数字PID控制算法是将模拟PID离散化得到,各参数有着明显的物理意义,调整方便,所以PID控制器很受工程技术人员的喜爱。
转台是检测和评价惯性导航与制导系统的主要测试设备。转台内安装的是力矩电机,因此理想的转台的数学模型可以写成直流力矩电机的数学模型,PID控制器各控制环节的作用是这样的,比例控制(P控制)即时成比例地反应控制系统的偏差信号e(t),积分控制(I控制)主要用于消除静差,微分控制(D控制)反应偏差信号的变化趋势(变化速率)。比例控制是对现在误差的一种校正,积分控制是对过去误差的校正,而微分控制是对将来可能的误差的校正。下面结合转台的控制过程对数字PID控制及其改进算法作具体的讨论。
1 Simulink仿真
转台的PID控制的Simulink仿真框图如图1所示。其中包含了两个子系统PID Controller(PID控制器)和Turn-table(转台)。对理想模型进行Simulink仿真实验。选用不同参数的PID控制器,它们对幅值为0.2的参考输入的阶越响应的过程曲线如图2所示。图中实线为只采用比例控制,取Kp=1;点画线、虚线和粗线均为采用比例微分控制,点画线的KI=1,KD=200;虚线的Kp=1,KD=600;粗线的Kp=10,KD=1000;图中点线为PID控制,Kp=1,KI=0.0005,KD=200。
分析图2可得出:
① 对于理想的数学模型,不需要积分控制项,只采用PD控制就够了。由于积分控制项的目的只是消除静差,所以在系统没有静差的情况下不要加入积分控制环节,因为积分控制环节会恶化过程动态特性,造成过大的超调量,并增加了调整时间;
② 不要忽视微分控制环节。要减小上升时间,增加系统的控制刚度,必然要求增加Kp,但过大的Kp会产生过大的超调,甚至使系统振荡,但增加Kp的同时只要增加KD一般都可以减小超调,获得较好的动态特性。可以这么说,理想的数学模型,采用大参数的PD控制可以获得足够好的控制性能。但也不是说可以一味的增加KP和KD的值,因为KP值越大,控制量u也越大,消耗的能量也越多,而且u受饱和限制。
运用PD控制在实际转台系统中时,有较大的稳态输出误差,并且输出波动较大。分析原因如下:
① 由于功率放大器有较大的死区,而且转台的机械系统存在有静摩 擦力,使实际的被控系统有较大死区。所以控制器如果没有积分环节,稳态输出有较大的静差;
②实际的被控系统总是会受到许多干扰,包括各种不确定的系统噪声和量测噪声。过大的KD会放大噪声,使系统的输出波动较大。[page]
2 PID控制的改进算法
在理想的数学模型中加入大小为-0.25~0.25的Dead Zone(死区),如图3所示进行仿真,仿真实验结果如图4所示。仿真中为了更好的探讨积分环节的作用,取KD=0。图中Kp=3,实线无积分控制作用,可以看出有较大静差;点线为加入积分控制,并取KI=0.0015;分析可知:积分环节可以减小上升时间,但会增大超调量,延长调整时间。事实上,如果要减小上升时间,可以增大Kp的值,没有必要为了减小上升时间而加大KI的值。
图4中虚线为采用积分分离PID控制的过程,可以看出积分分离PID算法明显改善了控制过程。积分分离PID算法的思想是在误差较小时保留积分控制作用,而在误差较大时取消积分控制环节。积分分离PID控制器在误差较大时保证系统的跟踪性能,而在误差较小则能保证系统稳态精度和抗干扰性能,较大的改善控制性能。
积分分离PID控制写成公式时,可在积分项乘一系数β,其值根据误差大小来决定。
其中:ε>0——设定的阈值。此时积分分离PID控制算式的积分控制写为:
积分分离PID算法的另一本质就是改变了过去的误差对控制量的权系数,而不再是普通的求和(普通的求和权系数相同,都是1)。同时我们可以用连续函数(连续或分段连续)来计算求和的权重,比如采用连续函数:
来计算权系数β(k),其中参数ε根据需要调整,当e(k)2=ε时,β(k)=0.5。此时,积分控制量写为:
图4中的点画线为变速积分控制过程,其中ε=0.0015,KI=0.004。显然变速积分法要比积分分离算法效果要好,但是变速积分法要花费更大的代价来实现,而且积分分离算法效果不错,变速积分法只不过稍稍改善了一些性能。
根据各种改进积分环节算法的有效性和代价,我们选择容易实现而且效果不错的积分分离算法运用于我们实际的转台控制,得到了很好的控制效果。
3 结束语
根据对转台控制的仿真和经验,总结出PID参数工程整定的一般步骤:
只加入比例控制环节,慢慢增加Kp使系统微微振荡起来;
加入微分控制环节,慢慢增加KD,这相当于增大系统的阻尼,使系统平稳下来;
系统平稳下来后,再增加Kp使系统微微振荡起来,然后再增加KD使系统平稳下来,如此反复下去,直到Kp和KD都不能增加时为止;
再把Kp的值适当减小一点。加入积分控制环节,慢慢增加KI的值,直到稳态误差在可接受的范围内;⑤ 为了使系统更可靠和稳定,保证鲁棒性。最后还要把KP、KD、KI的值都适当减小,再根据经验做一些相应的调整。