上文介紹了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

個人博客

公眾號:greedyhao


推薦閱讀:
相關文章