什么是PID?
🕹️

什么是PID?

Property
PID是一个很简单的控制机制,由P、I、D三部分组成,分别代表偏移、积分、微分。
notion image

什么是P?

P就是这里的,代表现在目标与实际的差值,也叫做比例控制。
如目标速度58,现在速度30,那么差距28,通过控制幅度,将其设置成0.5时,代表这次操作增加0.5 * 28=14的速度,多次重复P的操作,可以将速度稳步增加到58(前提条件是车与地面没有摩擦力,增加的速度可以维持住)。
所以P负责的是对现有的差距进行补齐的部分,是一个简单有效的反馈机制。
 

什么是I?

I是积分,代表累积的误差和,叫做积分控制。它的作用是消除稳态误差,那么什么是稳态误差?
比如上面的例子,我本意是想通过增加0.5*28的速度,也即给车一段时间的力的作用,使得车以一定的加速度达成最终增加0.5*28的速度。然而,因为存在摩擦力,显然力消失的时候会使汽车慢下来。假定两次控制的时间间隔,正好使得摩擦力将速度降低0.5*28,那么控制器将会把汽车的速度维持在30km/h,永远没办法增加速度到58km/h。
这种稳态误差是因为存在错漏导致的,即没有考虑历史动作产生的影响。因此需要纠正历史动作的错误,因而考虑I,即历史误差的积分:。说的玄乎点叫做正视历史,当卡在稳态误差时,每次的误差是相同的,因此比例控制算法给出的量是相同的。
但是对于这一项来说因为存在累积,因此如果比例控制没能将差距缩小,陷入稳态误差时,积分控制可以帮助跨过稳态误差。
 

什么是D?

D代表微分,代表上次和这一次的误差的差值,叫做微分控制。它的作用是平滑减速或加速的幅度。
比如存在历史操作,车从30加到50,此时两次的误差分别为58-30=28,以及58-50=8,微分的作用是加入一个负数项,即8-28=-20,通过控制快速减T来实现平滑的目的。如前面的积分控制,每经过一次操作,都将增加加速的幅度,和微分控制结合可以实现平滑,不至于加过。
 

回顾总结

因此,回顾PID控制,其在离散情况下可以表示为:
实际应用时,如果没有稳态误差的情况,只使用P也是可以的,实际一般PI或者PD即够用。