pid积分限幅限多少,求助控制系统PID计算中关于积分项是如何计算的
来源:整理 编辑:亚灵电子网 2023-09-02 02:06:14
本文目录一览
1,求助控制系统PID计算中关于积分项是如何计算的
是“计算误差E*采样时间间隔的Ti分之一”并累加(积分),这个值的绝对值会越来越大,促使PID运算消除控制偏差。如果积分时间Ti取值不合适,也会引发震荡。不好意思没描述清楚,是将每个采样时间上的E(t)累加,还是累加E(t)*d(t)?按2楼的解释,当偏差为0时,积分作用仍有较大输出,那怎么实现的了无差PID死区设得太窄了,导致偏差为0时积分项仍然有输出。一般温度控制PID上下限设0.5度就行了。还有设备的工艺跟控制结果也有关系。工艺做得不合格,PID也没法实现理想的控制效果。求解,如果系统对偏差E(t)进行积分就是把E(t)进行求和的话那么偏差为0时系统仍然有输出,这与要求不一致啊
2,pid积分比例 具体怎么算
调节器控制规律为比例、积分、微分控制,简称PID控制,又称PID调节.PID控制器的参数整定是控制系统设计的核心内容。它是根据被控过程的特性确定PID控制器的比例系数、积分时间和微分时间的大小。P:比例系数 I:积分时间 D:微分时间 比例(P)控制 比例控制是一种最简单的控制方式。其控制器的输出与输入误差信号成比例关系。当仅有比例控制时系统输出存在稳态误差(Steady-state error)。 积分(I)控制 在积分控制中,控制器的输出与输入误差信号的积分成正比关系。对一个自动控制系统,如果在进入稳态后存在稳态误差,则称这个控制系统是有稳态误差的或简称有差系统(System with Steady-state Error)。为了消除稳态误差,在控制器中必须引入“积分项”。积分项对误差取决于时间的积分,随着时间的增加,积分项会增大。这样,即便误差很小,积分项也会随着时间的增加而加大,它推动控制器的输出增大使稳态误差进一步减小,直到等于零。因此,比例+积分(PI)控制器,可以使系统在进入稳态后无稳态误差。 微分(D)控制 在微分控制中,控制器的输出与输入误差信号的微分(即误差的变化率)成正比关系。 自动控制系统在克服误差的调节过程中可能会 出现振荡甚至失稳。其原因是由于存在有较大惯性组件(环节)或有滞后(delay)组件,具有抑制误差的作用,其变化总是落后于误差的变化。解决的办法是使抑制误差的作用的变化“超前”,即在误差接近零时,抑制误差的作用就应该是零。这就是说,在控制器中仅引入“比例”项往往是不够的,比例项的作用仅是放大误差的幅值,而目前需要增加的是“微分项”,它能预测误差变化的趋势,这样,具有比例+微分的控制器,就能够提前使抑制误差的控制作用等于零,甚至为负值,从而避免了被控量的严重超调。所以对有较大惯性或滞后的被控对象,比例+微分(PD)控制器能改善系统在调节过程中的动态特性。
3,pic单片机pid控制算法参数整定
我这有51的#include <stdlib.h>#include "global_varible.h"/***************************************************************************** 模块名: PID* 描述: PID调节子程序* 采用PID-PD算法。在偏差绝对值大于△e时,用PD算法,以改善动态品质。* 当偏差绝对值小于△e时,用PID算法,提高稳定精度。* PIDout=kp*e(t)+ki*[e(t)+e(t-1)+...+e(1)]+kd*[e(t)-e(t-1)]*============================================================================* 入口: 无* 出口: 无* 改变: PID_T_Run=加热时间控制*****************************************************************************/void PID_Math(void) signed long ee1; //偏差一阶 //signed long ee2; //偏差二阶 signed long d_out; //积分输出 if(!Flag_PID_T_OK) return; Flag_PID_T_OK=0; Temp_Set=3700; //温度控制设定值37.00度 PID_e0 = Temp_Set-Temp_Now; //本次偏差 ee1 = PID_e0-PID_e1; //计算一阶偏差 //ee2 = PID_e0-2*PID_e1+PID_e2; //计算二阶偏差 if(ee1 > 500) //一阶偏差的限制范围 ee1 = 500; if(ee1 < -500) ee1 = -500; PID_e_SUM += PID_e0; //偏差之和 if(PID_e_SUM > 200) //积分最多累计的温差 PID_e_SUM = 200; if(PID_e_SUM < -200) PID_e_SUM = -200; PID_Out = PID_kp*PID_e0+PID_kd*ee1; //计算PID比例和微分输出 if(abs(PID_e0) < 200) //如果温度相差小于1.5度则计入PID积分输出 if(abs(PID_e0) > 100) //如果温度相差大于1度时积分累计限制 if(PID_e_SUM > 100) PID_e_SUM = 100; if(PID_e_SUM < -100) PID_e_SUM = -100; } d_out = PID_ki*PID_e_SUM; //积分输出 if(PID_e0 < -5) //当前温度高于设定温度0.5度时积分累计限制 if(PID_e_SUM > 150) PID_e_SUM = 150; if(PID_e_SUM > 0) //当前温度高于设定温度0.5度时削弱积分正输出 d_out >>= 1; } PID_Out += d_out; //PID比例,积分和微分输出 } else PID_e_SUM=0; PID_Out/=100; //恢复被PID_Out系数放大的倍数 if(PID_Out > 200) PID_Out=200; if(PID_Out<0) PID_Out=0; if(PID_e0 > 300) //当前温度比设定温度低3度则全速加热 PID_Out=200; if(PID_e0 < -20) //当前温度高于设定温度0.2度则关闭加热 PID_Out=0; Hot_T_Run=PID_Out; //加热时间控制输出 PID_e2 = PID_e1; //保存上次偏差 PID_e1 = PID_e0; //保存当前偏差}////////////////////////////////////////////////////////////void PID_Math() end.
4,单片机中的PID算法
PID算法 下面对控制点所采用的PID控制算法进行说明。 控制点目前包含三种比较简单的PID控制算法,分别是:增量式算法,位置式算法,微分先行。 这三种PID算法虽然简单,但各有特点,基本上能满足一般控制的大多数要求。1) PID增量式算法离散化公式: 注:各符号含义如下 u(t) 控制器的输出值。 e(t);;控制器输入与设定值之间的误差。 Kp;; 比例系数。 Ti;;积分时间常数。 Td;微分时间常数。 T;;调节周期。 对于增量式算法,可以选择的功能有: (1) 滤波的选择可以对输入加一个前置滤波器,使得进入控制算法的给定值不突变,而是有一定惯性延迟的缓变量。 (2) 系统的动态过程加速在增量式算法中,比例项与积分项的符号有以下关系:如果被控量继续偏离给定值,则这两项...PID算法 下面对控制点所采用的PID控制算法进行说明。 控制点目前包含三种比较简单的PID控制算法,分别是:增量式算法,位置式算法,微分先行。 这三种PID算法虽然简单,但各有特点,基本上能满足一般控制的大多数要求。1) PID增量式算法离散化公式: 注:各符号含义如下 u(t) 控制器的输出值。 e(t);;控制器输入与设定值之间的误差。 Kp;; 比例系数。 Ti;;积分时间常数。 Td;微分时间常数。 T;;调节周期。 对于增量式算法,可以选择的功能有: (1) 滤波的选择可以对输入加一个前置滤波器,使得进入控制算法的给定值不突变,而是有一定惯性延迟的缓变量。 (2) 系统的动态过程加速在增量式算法中,比例项与积分项的符号有以下关系:如果被控量继续偏离给定值,则这两项符号相同,而当被控量向给定值方向变化时,则这两项的符号相反。 由于这一性质,当被控量接近给定值的时候,反号的比例作用阻碍了积分作用,因而避免了积分超调以及随之带来的振荡,这显然是有利于控制的。但如果被控量远未接近给定值,仅刚开始向给定值变化时,由于比例和积分反向,将会减慢控制过程。 为了加快开始的动态过程,我们可以设定一个偏差范围v,当偏差|e(t)|= β时,则不管比例作用为正或为负,都使它向有利于接近给定值的方向调整,即取其值为|e(t)-e(t-1)|,其符号与积分项一致。利用这样的算法,可以加快控制的动态过程。 (3) PID增量算法的饱和作用及其抑制 在PID增量算法中,由于执行元件本身是机械或物理的积分储存单元,如果给定值发生突变时,由算法的比例部分和微分部分计算出的控制增量可能比较大,如果该值超过了执行元件所允许的最大限度,那么实际上执行的控制增量将时受到限制时的值,多余的部分将丢失,将使系统的动态过程变长,因此,需要采取一定的措施改善这种情况。 纠正这种缺陷的方法是采用积累补偿法,当超出执行机构的执行能力时,将其多余部分积累起来,而一旦可能时,再补充执行。2) PID位置算法 离散公式: ;= 对于位置式算法,可以选择的功能有: a、滤波:同上为一阶惯性滤波 b、饱和作用抑制: (1) 遇限削弱积分法一旦控制变量进入饱和区,将只执行削弱积分项的运算而停止进行增大积分项的运算。具体地说,在计算Ui时,将判断上一个时刻的控制量Ui-1是否已经超出限制范围,如果已经超出,那么将根据偏差的符号,判断系统是否在超调区域,由此决定是否将相应偏差计入积分项。(2) 积分分离法在基本PID控制中,当有较大幅度的扰动或大幅度改变给定值时, 由于此时有较大的偏差,以及系统有惯性和滞后,故在积分项的作用下,往往会产生较大的超调量和长时间的波动。特别是对于温度、成份等变化缓慢的过程,这一现象将更严重。为此可以采用积分分离措施,即偏差较大的时,取消积分作用;当偏差较小时才将积分作用投入。 另外积分分离的阈值应视具体对象和要求而定。若阈值太大,达不到积分分离的目的,若太小又有可能因被控量无法跳出积分分离区,只进行PD控制,将会出现残差。 离散化公式:Δu(t) = q0e(t) + q1e(t-1) + q2e(t-2) 当|e(t)|≤β时 q0 = Kp(1+T/Ti+Td/T) q1 = -Kp(1+2Td/T) q2 = Kp Td /T 当|e(t)|>β时 q0 = Kp(1+Td/T) q1 = -Kp(1+2Td/T) q2 = Kp Td /T u(t) = u(t-1) + Δu(t) 注:各符号含义如下 u(t);;控制器的输出值。 e(t);控制器输入与设定值之间的误差。 Kp;;比例系数。 Ti;;;积分时间常数。 Td;;微分时间常数。 T;;;调节周期。 β;;; 积分分离阈值 (3) 有效偏差法当根据PID位置算法算出的控制量超出限制范围时,控制量实际上只能取边际值U=Umax,或U=Umin,有效偏差法是将相应的这一控制量的偏差值作为有效偏差值计入积分累计而不是将实际的偏差计入积分累计。因为按实际偏差计算出的控制量并没有执行。 如果实际实现的控制量为U=U(上限值或下限值),则有效偏差可以逆推出,即:= 然后,由该值计算积分项 3) 微分先行PID算法 当控制系统的给定值发生阶跃时,微分作用将导致输出值大幅度变化,这样不利于生产的稳定操作。因此在微分项中不考虑给定值,只对被控量(控制器输入值)进行微分。微分先行PID算法又叫测量值微分PID算法。公式如下: 离散化公式: 参数说明同上对于纯滞后对象的补偿 控制点采用了Smith预测器,使控制对象与补偿环节一起构成一个简单的惯性环节。PID参数整定(1) 比例系数Kc对系统性能的影响: 比例系数加大,使系统的动作灵敏,速度加快,稳态误差减小。Kc偏大,振荡次数加多,调节时间加长。Kc太大时,系统会趋于不稳定。Kc太小,又会使系统的动作缓慢。Kc可以选负数,这主要是由执行机构、传感器以控制对象的特性决定的。如果Kc的符号选择不当对象状态(pv值)就会离控制目标的状态(sv值)越来越远,如果出现这样的情况Kc的符号就一定要取反。 (2) 积分控制Ti对系统性能的影响: 积分作用使系统的稳定性下降,Ti小(积分作用强)会使系统不稳定,但能消除稳态误差,提高系统的控制精度。 (3) 微分控制Td对系统性能的影响: 微分作用可以改善动态特性,Td偏大时,超调量较大,调节时间较短。Td偏小时,超调量也较大,调节时间也较长。只有Td合适,才能使超调量较小,减短调节时间。
文章TAG:
pid积分限幅限多少积分 积分限 多少