从公式和波形上理解PID
概述
看完大佬们对PID通俗易懂的解释之后,感觉自己又行了,但又感觉还差点意思。为什么呢?PID怎么说也是个控制算法,光理解个概念还不行,好歹得从公式、波形上再分析一下。
前言
本篇主角
这里用一个电机转速控制系统的matlab仿真波形来分析,需要控制转速稳定在85r/min。
-
P控制
显然,P控制有两个缺点:
为了弥补这两个缺点,依次加入I控制和D控制
-
PI控制
图中,红蓝色阴影面积是对误差的积分,公式表明系统多了一个输出量,且输出量慢慢增加。红色面积肯定比蓝色多,所以稳定后依旧会有输出量,而这个输出量刚好用来抵抗干扰,所以能做到无静差。
另外,I控制因为是对误差的积分,输出是一个逐渐增加的过程,单独使用响应时间会很长,所以需要结合P控制。
-
PID控制
D控制是对误差的微分,也就是误差变化率((e[k]-e[k-1])/T),在系统中像是起到了缓冲作用。 怎么个缓冲法呢? 对于提速阶段,电机从0加速到85后由于惯性飙的更高(比如90),而在0-90的加速过程中,误差(目标值-实际值)始终是在减小的,其微分就是负的,所以对正超调就有抑制作用。同理,从90到85也会有惯性(比如80),此时误差是在增大的,微分就是正的,对负超调有抑制作用。这样减小超调,让系统稳定地更快。 对于突变负载的情况,如果突减负载,速度瞬间提高,误差瞬间减小,其微分就是负的,输出就减弱,从而降低速度;突增负载速度降低,误差增大,微分符号为正,输出就增加,速度增加,提高了系统稳定性。 所以D控制对误差的微分并不是始终为负值的。
总结
以上是本小白目前对PID的理解,当然我知道我肯定会回来再改的。。。