PID——算法改进

积分限幅

积分限幅是针对位置式PID,因为其公式里有单独的积分项。

右边写法的好处是积分项限幅的数量级和输出限幅数量级是一样的,更好确定。

积分分离

积分分离一般作用于定位置控制 ,因为定位置控制最后驱动力小 会产生一点点误差,此时就加入积分消除误差(包括外力影响时产生的误差) ;而前面的过程不需要积分,因为定位置控制时到达目标位置后系统就停了,如果最开始就有积分项会导致在最后积分累积过大而导致超调。定速控制加入积分不会超调是因为积分项调控力度要对抗摩擦力。

阈值可以是稳定时误差正常波动范围。

变速积分

不能完全没有积分,否则误差不能消除;但积分作用不能过大,不然会超调。所以就加入系数,使得积分在误差大时作用小,误差小时作用大。

变速积分也作用于定位置控制

积分分离和变速积分的取绝对值函数fabs()均作用于当前误差error0。

微分先行

普通微分项输出的力度以及方向取决于误差的斜率,目标值大幅度改变时可以看出误差斜率先变为较大的正向,又马上变为较大的负向,也就是此时微分项的输出实际上并没有一直提供阻尼以阻碍系统变化,而是先推了系统一下,促进这种变化,然后才马上拉住系统。

微分先行将微分项的输出改为取决于实际值的斜率变化,因为相比之下实际值变化一直都更平稳,只需要加一个负号即可,因为微分项要一直提供阻尼,而实际值和误差的变化趋势是相反的。

但加入微分先行不一定有好的效果,因为目标值改变时微分项会先推系统一下,这一下反而会加快实际值跟进到目标值的速度,使系统反应更加迅速。如果突变时微分项造成的不稳定对系统没有什么大影响可以不加。

不完全微分

有噪声的话,对P项的干扰只是实际误差和原本误差的差值,对I项的干扰则是两条曲线下面积之和的差值,而对D项的影响则是线上的本次误差与上次误差连线斜率的差值。可以看出噪声对D项影响最严重。

不完全微分让本次D项的输出和上次D项输出有关了,使其输出更加平滑,减少了抖动。

输出偏移和输入死区

对于此类执行器,不加入输出偏移,可能就会出现:最后还有一点点误差,所以PID输出值不为0,但小于启动力度导致执行器无动作,最后一点误差无法消除。

偏移值可以通过测试得到。加入输出偏移后执行器无动作的情况就没有了,只要PID输出不为0就一定有动作,但同时也会出现:(可能会有实际值一直在微小波动)PID最后一直在小力度调控,少了就加,多了就减,使得系统一直在微小抖动无法静止。此时需要再加入输入死区。二者通常一起使用。

输入死区

相关推荐
一只不想敲代码的程序猿2 小时前
如何更高效地拆解问题?
算法
微尘hjx3 小时前
【Deep-OC-SORT 02】多轨迹算法Deep-OC-SORT-相对 OC-SORT 的改进点
人工智能·算法·yolo·目标跟踪·视觉检测·ultralytics·deep-oc-sort
梦帮科技3 小时前
意识启发式量子隧穿退火算法用于全局优化 (CITA) 完整技术指南
网络·人工智能·算法·量子计算·模拟退火算法
一去不复返的通信er4 小时前
排序 + 双指针:力扣15三数之和
算法·leetcode
Pniubi4 小时前
力扣3无重复字符的最长字串(滑动窗口)
算法·leetcode·职场和发展
On The Road :4 小时前
深入理解 JVM 垃圾回收:GC 是什么、如何判定垃圾、四大回收算法全解析
jvm·算法
微尘hjx6 小时前
【Deep-OC-SORT 03】多轨迹算法Deep-OC-SORT-卡尔曼滤波预测过程
算法·yolo·目标跟踪·ultralytics·车跟踪·轨迹算法·deep-oc-sort
老师我太想进步了20268 小时前
【数据结构-3】算法美学之降复杂度
数据结构·算法
机器人零零壹13 小时前
技术白皮书:iRobotCAM如何解决机器人激光切割应用中的核心难点,从CAD离线编程到双目视觉定位与轨迹自适应提升复杂空间曲线切割的精度、效率与柔性化水平
人工智能·算法