上文介绍了PID在理想情况下的工作原理,接下来是对实际中使用积分器的展开

积分器的饱和情况

(actuator:机器的一部分)

我们知道常量的误差值在经过积分器的作用会成为一个递增的函数,也就是说,给设备的指令(command)的转速会不断增加。

但是我们知道,现实中的电机转速是有限的,在设备指令增加到一定的转速时,电机的转速就不会上升了,这种情况叫做饱和

还是以无人机为例

还是像之前一样,有一个无人机,目标是悬停在50m处的空中

但是我们在一开始的时候先固定住无人机

由于被固定住,高度误差不会减小,从而电机指令会不断增加,从而电机转速不断上升,但增加到1000rpm时,达到电机转速的极限,电机转速不再增加

但是电机指令由于没有收到高度误差减小的反馈,依然会不断增加

直到放开无人机时,电机指令开始减小,减小到1000rpm时,电机转速开始减小,但是高度误差早已经为负,意思就是无人机已经超过50m的高度,飞向自由了

如何抗饱和积分

有三种方法抗饱和积分 + clamping(钳位):根据条件关闭积分器 + back-calculation(反算) + observer opproach(跟踪模式)

一般比较常用的是钳位的方法,也称条件积分,因为简单、方便,下面介绍的也是钳位的配置

我们现在不让设备指令直接给设备了,而是在设备前加一个限定,也就是钳位饱和限定,通过判定限定前和限定后的值,判断控制器是否饱和

对于钳位的情况可以描述如下:

  1. 积分器的值会被限定在一个指定的值
  2. 积分器的值会在系统误差过大的时候停止,即|e|>e,e为指定的值
  3. 当控制器饱和的时候,积分器的值会停止增大,即,当u≠us时
  4. 当控制器饱和并且系统误差和操作变量符号相同,即,当u≠us且e*u>0时

参考资料

公众号内回复 下载|PID资料 获得

  • Visioli, A., "Modified Anti-Windup Scheme for PID Controllers," IEE Proceedings - Control Theory and Applications, Vol. 150, Number 1, January 2003