找回密码
 立即注册

QQ登录

只需一步,快速开始

搜索
查看: 1439|回复: 2
打印 上一主题 下一主题
收起左侧

PID-位置型PID和增量式PID比较

[复制链接]
跳转到指定楼层
楼主
ID:41543 发表于 2023-2-2 23:48 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
近段在学习 PID ,分享好货,希望对大家有帮助。
一. 位置型PID
位置型 PID 算法适用于不带积分元件的执行器。 执行器的动作位置与其输入信号呈一一对应的关系。 控制器根据第 n 次计算机采样结果与给定值之间的偏差 e 来计算出第 n 次采用后所输出的控制变量的值。 以调节阀来简单说明,假设调节阀的输入控制信号为 4~20mA, 当 阀 门 开 度 为 0%时 ,控制信号为4mA,而当阀门开度为 100%时,则控制信号为 20mA。

二. 增量式 PID
增量式 PID 算法适用于自身带有积分记忆元件的执行器。这类执行器的动作终点位置和之前每次输入信号的累加值相关。 即每次输入的信号决定相邻两次执行器动作终点位置的增量,因此把这种 PID 算法称之为增量式 PID 算法。 增量式 PID 算法在步进电机的控制和步进电机驱动阀门有着较广泛的运用。

三. 两种算法的区别分析
位置式 PID 控制算法是一种非递推算法,输出 u(k)可以直接控制执行机构的位置,如上文所述的阀门开度的例子, 阀门的开度取决于控制器的输出 u(k)的值。 而增量式 PID 控制算法是一种递推算法,其输出u(k)只是控制量的增量,即 Δu(k)。 而非执行机构的实际位置(例如控制水温上升,无法立即控制最终温度,只能慢慢达到)。

位置式 PID 算法的优缺点分析
由位置式 PID 控制的表达式中可以看出: 比例部分只和当前的偏差 e(k)有关,积分部分则是表示系统之前的所有偏差之和, 因此位置式 PID 控制算法的优点在于其控制器结构比较清晰,参数的整定也较为明确。位置式 PID 算法的第一个缺点在于: 当前采样时间的输出值 u(k)与之前各个状态都有关,过去的每个状态都决定着当前时刻的输出值,因此计算时需要对偏差 e(k)进行不断累加,使得计算量不断加大,同时也加大了计算机的负担,一旦计算机出现故障,累加将会停止,输出 u(k)会长度巨大偏差,从而导致执行机构的位置大幅度变化。 位置型 PID 算法的第二个缺点在于积分饱和现象的产生,即当系统的控制量已经达到最大值时,误差依然会在积分的作用下继续累加。 一旦误差开始反向变化,则系统会进入饱和区,并且需要较长时间才能从饱和区退出。 因此当输出 u(k)达到最小或者最大值时,需要停止积分作用,否则将会产生积分饱和现象。 对于积分饱和现象,通常会采取积分限幅算法,即设置控制器输出控制量的极限值,当 PID 控制器的输出量超出设定范围后,即停止积分运算。

增量式 PID 算法的优缺点分析
然而对于增量式 PID 算法,它将位置式 PID 算法的缺点加以改进,从而变成了增量式 PID 算法的优点。

①算法采用加权处理,而不需要累加,控制增量 Δu(k)仅仅与最近 3 次的采样值有关;

②计算机每次只会输出控制增量 Δu(k),即执行机构的位置变化量,因此计算机发生故障的几率较小;

③手动切换和自动切换时的冲击小,可以做到无扰动切换。积分饱和现象是位置式 PID 算法应用常见的一种现象,因此对于位置式 PID 算法除了需要对输出进行限幅外还需要对积分输出进行限幅,而增量式算法很好地避免了积分饱和现象,因此在增量式 PID 控制算法中只需要对输出限幅,而无需积分限幅。

参考

① 增量式 PID 和位置式 PID 算法的整定比较与研究(王祎晨)
————————————————
版权声明:本文为CSDN博主「海歌也疯狂」的原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明。
原文链接:https://blog.csdn.net/qq_31094099/article/details/125410670

分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
收藏收藏5 分享淘帖 顶 踩
回复

使用道具 举报

沙发
ID:279380 发表于 2023-11-13 09:01 | 只看该作者
分析得很好!
回复

使用道具 举报

板凳
ID:496636 发表于 2023-11-13 13:02 | 只看该作者
位置式控制的积分是先前所有偏差积分的累加相关,计算量大,会死机,这个错了,并不是这样,弄个偏差累加变量好了,这样就是在这个变量之上的累加而已,并不要再次把先前的所有偏差都计算个遍。
偏差,还是测量值、设定值都是没有量纲的,是根据量程把工程值变成0-1之间的值,如一个温度计的测量值是80度,量程是-50-200度,那么测量值就是0.65。
如果设定值是100度,就是0.75,那么,按位置式,这个偏差就是0.1,如果比例系数是2,那么比例输出就是20%。
如果积分时间是100秒,意思就是维持100秒,就累加相同比例的输出,如上面,偏差是0.1,比例输出20%,如果0.1偏差维持100秒,积分输出就增加20%,如果采样时间是1秒,那么100秒就是100次,每次增加的量就是偏差*比例系数/积分时间,
如果把采样时间考虑进去,那么等于偏差*比例系数*采样时间/积分时间。
这样在采样时间为1秒的时候,积分项=积分项+偏差*2/100
我们只要使用当前偏差,计算积分增量,把它累加上去就可以了。
还有微分项,什么意思?
微分有微分时间,微分时间越大,作用力越大。假设一个釜,控制釜温,现在是100度,控制温度也是100度,忽然,温度变成100.1度,又过一秒变成100.2度,如果使用比例来控制,来不及作用,因为偏差太太小了,假设温度计量程0-200度,0.1度的偏差是多少?才0.0005,即使比例为10,比例输出也才0.5%开度,来不及降温的,当釜温在0.1度/秒变化的时候,这个加热的功率会很大很大,1000L的反应釜放热功率起码是100千W以上,反应开始放热了,你得全开阀门,开始用冷却水降温。
每1秒变化的速率,这样维持微分时间值,如果微分时间为100秒,那么100秒后温度变化就会达到10度,然后10度来算偏差,就是0.05,乘以比例系数10,就是50%了,那么微分项输出就是50%,再加上比例项5%,就是55%了,比例项随着偏差变大,就会增加,如温度达到了101度了,偏差0.005,比例项输出5%,二者相加就是55%,还有积分项是累加的时间越久,增加开度越大。可见微分项是忽然增加的。
如果温度变化速度为0了,这个50%就会忽然消失。
如果温度变化是负值,那么微分项就是很大的负值,即使比例项+积分项是正,也要被它减去。
输出有限值的,0-100%,它会影响积分项。如果输出是100%了,一般只是比例积分控制,那么积分项等于100%-比例项。

评分

参与人数 1黑币 +50 收起 理由
admin + 50 回帖助人的奖励!

查看全部评分

回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

手机版|小黑屋|51黑电子论坛 |51黑电子论坛6群 QQ 管理员QQ:125739409;技术交流QQ群281945664

Powered by 单片机教程网

快速回复 返回顶部 返回列表