3.4数字PID控制的改进•为了提高控制性能,可以对PID控制进行改进,使PID控制具有更完善的功能。几种典型的改进算法。饱和效应•积分项的积极作用:在PID控制中的积分项,其作用是消除静差,提高稳定度和精度。•积分项的副作用:主要是饱和、超调。•在一个实际的控制系统中,因受电路或执行元件的物理和机械性能约束(如放大器的饱和[不能超过正负电源]、电动机的最大转速、阀门的最大开度等),控制量及其变化率往往被限制在一个有限的范围内。minmax()|()|maxUukTUukTU饱和效应•当计算所得的控制量或其变化率在限制范围之内时,控制则可按预期的结果进行。•一旦超出限制范围,则实际的执行量就不在是计算值,而是系统执行的饱和临界值,从而得不到期望的效果。这种现象称为“饱和”效应。Umaxtuminmax()|()|maxUukTUukTU•a曲线:执行机构不存在极限时的输出y(t)和控制作用u(k);曲线b:存在限制,仍采用标准PID算法所对应的输出和控制作用。•若设定值突变增加时,PID计算结果很大,超出限制,有效控制量只能取Umax。在Umax的作用下,系统输出上升。但由于控制量受到限制,其增长比没有限制时慢,偏差也比没有限制时持续更长时间保持正值,使得PID算式的积分项有较大的累积值。•当输出达到设定值后,控制作用使输出继续上升。此时e(k)变负,e(k)不断减小,可是由于之前积累得太多,只有经过相当长的时间后,才可能u(k)Umax,而使得系统回到正常的控制状态。使得系统输出超调明显,也加长了调节时间。可见,主要是由于积分项的存在,引起PID运算的“饱和”,这种饱和称为“积分饱和”。积分饱和问题积分项副作用在一般的PID调节控制中,由于系统的执行机构线性范围受到限制,当偏差e(k)较大时,如系统在开工、停工或大幅度升、降时,由于积分项的作用,将会产生“积分饱和”现象。积分饱和增加了:(1)调节时间,(2)超调量!这种现象对于变化比较缓慢的对象,如温度、液面调节系统,其影响更为严重。解决方法:为了消除积分饱和的影响,对标准PID算法进行修正,如积分分离法、遇限削弱法等。积分饱和积分分离算法解决方法之一:积分分离思路:在控制量开始跟踪(随控制对象变化)时,取消积分作用,直至被调量接近给定值时,才产生积分作用,保证系统稳态精度。方法:设给定值为r(k),测量值为y(k),最大允许偏差值为,则积分分离PID控制为:控制为时控制为时当PIDPDkykrke,,|)()(||)(|(或P控制)(或PD控制)积分分离算法积分分离程序算式)]}1()([)()({)(0kekeTTjeTTKkeKkukjdifp)(0)(1kekeKf{error=rin-yout;if(abs(error)epsilon)beta=0;elsebeta=1.0;ei=ei+error*ts;u=kp*error+kd*(error-error_1)/ts+beta*ki*ei;error_1=error;}积分分离算法计算机仿真(积分分离算法)80G()601sess被控对象延迟时间4个采样周期,被控对象离散化为:,若T=20s51Y()0.2835()()10.7165zzHGzUzzPIDG(s)R(s)Y(s)E(s)U(s)Ref:刘金琨.先进PID控制及其MATLAB仿真,电子工业出版社,2003Matlab源代码及效果遇限削弱积分法解决方法之二:遇限削弱积分法思路:一旦控制量进入饱和区,则停止执行增大积分的运算,只执行削弱积分项的累加。方法:用PID算法计算u(t)值时,首先判断上一次采样时刻控制量u(k-1),是否已超过限制范围,如果已超出,将根据偏差的符号[判断系统的输出是否已进入超调区域],由此决定是否将偏差计入积分项。编程:在计算控制量u(k)时,首先判断上一时刻的控制量u(k-1)是否已经超出限制范围。若u(k-1)Umax,则只累加负偏差;若u(k-1)-Umax,则只累加正偏差。程序:参见课件所附的C程序(SaturationResitance_PID.c)。遇限削弱积分法{error=rin-yout;if((u=UmaxP)&&(error0))beta=0;elsebeta=1.0;if((u=UmaxM)&&(error0))beta=0;elsebeta=1.0;ei=ei+beta*error*ts;u=kp*error+kd*(error-error_1)/ts+ki*ei;error_1=error;}遇限削弱积分法积分项的其它改进(1)梯形积分-改进原因:减小残差,提高积分项的运算精度。-改进方法:矩形积分改为梯形积分。(2)消除积分不灵敏区-改进原因:由于计算机字长的限制,当运算结果小于字长所能表示的数的精度,计算机就作为“零”处理,此时积分作用消失,称为积分不灵敏区。积分项的其它改进-改进方法:①增加A/D转换位数,加长运算字长,提高运算精度。②当积分项连续n次小于输出精度ε的情况下,不要把它们作为“零”处理,而是把它们累加起来,直到累加值大于ε时才输出,同时把累加单元清零。例如,某温度控制系统,温度量程为0℃至1275℃,A/D转换为8位,并采用8位字长定点运算。设Kp=1,Ti=10s,T=1s,e(k)=50℃,则积分增量ui(k)=Kp*T*e(k)/Ti=1。如果e(k)50℃,则ui(k)1,计算机将此作为“零”丢掉,控制器就没有积分作用。只有当e(k)50℃,才会有积分作用。这样,势必造成控制系统的残差。遇限削弱积分法与积分分离策略的区别1)积分分离:把整个积分项全部去掉;2)“遇限削弱积分法”,对(k-1)以前的积分部分予以保留,而对(k)时的误差e(k)是否积累根据e(k)的极性和u(k-1)的状况决定.另外,当给定值或输出量突变时,比例及微分项的计算值也可能引起控制量超过极限值的饱和情况,从而减慢系统的动态过程。1、问题---微分项的副作用引入微分项,主要是期望提高系统的响应速度,但也有副作用。当阶跃信号输入时,微分项输出急剧增加,容易引起超调和输出振荡,导致调节品质下降,而且微分具有放大干扰信号的特点,在PID控制中,对具有高频扰动的生产过程,微分作用响应过于灵敏,容易引起控制过程振荡。2、解决方法----PID不完全微分为了解决这一问题,同时要保证微分作用有效,采用不完全微分的PID算式。--改进方法:串联一阶惯性环节,作为低通滤波器抑制高频噪声,组成不完全微分PID控制器。PID算法中微分项的改进2.不完全微分PID算法PIDGf(s)e(kT)E(s)U(s)u(kT)方法一:方法二:方法三(微分先行):E(s)U(s)惯性关节串接在PID之后—算式PIDGf(s)e(kT)E(s)U(s)u(kT)1()()=1'()ffUsGsTsUs交叉相乘,()()'()fUsTsUsUs()()()'()fukTukTTukTTukTT()()(1)'()ukTukTTukT,ffTTT为滤波系数0'(){()()[()-(-)]}kDPjITTukTKekTejTekTekTTTT//PIDalgorithmofpartiallyderivative//u'(k)=kp*e(k)+ki*(sigma(e(i))+kd*(e(k)-e(k-1))/ts;//u(k)=a*u(k-1)+(1-a)u'(k);//Thevariablesusedbelowareglobal.{error=rin-yout;ei=ei+error*ts;//calculatetheintegralsoferroru_prime=kp*error+kd*(error-error_1)/ts+ki*ei;u=alpha*u+(1-alpha)*u_prime;error_1=error;}惯性关节串接在PID之后—算法实现•完全微分效果•微分作用只在第一个采样周期起作用•幅度大,执行机构无法在一个周期内跟踪微分作用的输出。•微分作用在第一个采样周期中的作用削弱•微分作用持续作用多个周期,逐渐下降,不易引起振荡惯性关节串接在PID之后—效果•串接低通滤波器后的微分效果()[()-(-)]}DTukTekTekTTTDGf(s)e(kT)E(s)U(s)u(kT)sE(s)e(t)De(kT)E(s)U(s)u(kT)()()()()fDdutdetutTTdtdt对于幅度为a的阶跃输入:()()ffTukTukTTTT[()()]DfTekTekTTTTp.45惯性环节只加在微分项上—算式E(s)U(s)DT1+)()()PDDsUsKTsEsK(比例积分推导如前,此处推导不完全微分项()(kTT)()()()DPDDTukTuekTekTTukTKTKTT整理可得u(kT),再加上PI控制所得的u(kT)微分先行PID控制算式•改进原因:为避免给定值的升降给系统带来冲击,如超调过大,调节阀动作剧烈。•微分先行:把微分运算放在前面,后面跟比例和积分运算。•改进方法:把微分提前,只对被控量y(t)微分,不对偏差e(t)微分。-计算机控制式(差分方程)的推导[留作习题]在计算机控制系统中,严重的噪声和干扰可能引起系统执行机构的频繁动作。为了消除此种振荡,可采用带死区的PID控制算法。设置一个不灵敏区B,即:当|e(kT)|B时,e(kT)=e(kT),则调节器工作;当|e(kT)|=B时,e(kT)=0,则调节器不工作。使用时应当选择合适的B值。当B值太小时,调节动作频繁,不能达到稳定系统的要求;当B值太大时,系统将产生大的滞后。带死区的PID算法3.5PID控制算法举例p.47作业:3-1至3-6,微分先行PID算式推导。作业请发:mcu_bit_assign@163.com主题:计算机控制系统作业_姓名_学号_第xx章_(题目编号)邮件内署名可用MSWord完成。也可手写后保存为照片,粘贴到Word中,要清晰。作业内也署名,学号。先进PID控制•专家PID控制(expertPIDcontrol)•模糊PID控制(fuzzytuningPIDcontrol)•神经PID控制(neuralPIDcontrol)•基于遗传算法整定的PID控制(PIDbasedongeneticalgorithms)•基于Kalman滤波器的PID控制(PIDcontrolbasedonKalmanfilter)本章要求掌握:•PID原理,PID各项的作用•对PID的改进及算式推导•PID参数的整定•PID程序,改进的PID程序实现本章完