一、PID控制算法
PID是比例、積分、微分的簡稱,PID控制的難點不是編程,而是控制器的參數整定。參數整定的關鍵是正確地理解各參數的物理意義,PID
控制的原理可以用人對爐溫的手動控制來理解。閱讀本文不需要高深的數學知識。

注:整個控制流程是PID控制器函數與被控對象的傳遞函數、一個負反饋結合完成的,在保證被控對象的傳遞函數與負反饋結合的閉環系統能夠達
到穩態的前提下(可以采用階躍信號實驗來測試),在前面加上PID控制器,能夠很好地實現快速、准確的調節系統,達到預期值。
PID的簡介如下:
1.比例控制
有經驗的操作人員手動控制電加熱爐的爐溫,可以獲得非常好的控制品質,PID控制與人工控制的控制策略有很多相似的地方。
下面介紹操作人員怎樣用比例控制的思想來手動控制電加熱爐的爐溫。假設用熱電偶檢測爐溫,用數字儀表顯示溫度值。在控制過程中,操
作人員用眼睛讀取爐溫,並與爐溫給定值比較,得到溫度的誤差值。然后用手操作電位器,調節加熱的電流,使爐溫保持在給定值附近。
操作人員知道爐溫穩定在給定值時電位器的大致位置(我們將它稱為位置L),並根據當時的溫度誤差值調整控制加熱電流的電位器的轉角。爐
溫小於給定值時,誤差為正,在位置L的基礎上順時針增大電位器的轉角,以增大加熱的電流。爐溫大於給定值時,誤差為負,在位置L的基礎上反
時針減小電位器的轉角,並令轉角與位置L的差值與誤差成正比。上述控制策略就是比例控制,即PID控制器輸出中的比例部分與誤差成正比。
閉環中存在着各種各樣的延遲作用。例如調節電位器轉角后,到溫度上升到新的轉角對應的穩態值時有較大的時間延遲。由於延遲因素的存在,
調節電位器轉角后不能馬上看到調節的效果,因此閉環控制系統調節困難的主要原因是系統中的延遲作用。
比例控制的比例系數如果太小,即調節后的電位器轉角與位置L的差值太小,調節的力度不夠,使系統輸出量變化緩慢,調節所需的總時間過長。
比例系數如果過大,即調節后電位器轉角與位置L的差值過大,調節力度太強,將造成調節過頭,甚至使溫度忽高忽低,來回震盪。
增大比例系數使系統反應靈敏,調節速度加快,並且可以減小穩態誤差。但是比例系數過大會使超調量增大,振盪次數增加,調節時間加長,動
態性能變壞,比例系數太大甚至會使閉環系統不穩定。
單純的比例控制很難保證調節得恰到好處,完全消除誤差。
2.積分控制
PID控制器中的積分對應於圖1中誤差曲線 與坐標軸包圍的面積(圖中的灰色部分)。PID控制程序是周期性執行的,執行的周期稱為采樣周期。
計算機的程序用圖1中各矩形面積之和來近似精確的積分,圖中的TS就是采樣周期。

圖1 積分運算示意圖
每次PID運算時,在原來的積分值的基礎上,增加一個與當前的誤差值ev(n)成正比的微小部分。誤差為負值時,積分的增量為負。
手動調節溫度時,積分控制相當於根據當時的誤差值,周期性地微調電位器的角度,每次調節的角度增量值與當時的誤差值成正比。溫度低於
設定值時誤差為正,積分項增大,使加熱電流逐漸增大,反之積分項減小。因此只要誤差不為零,控制器的輸出就會因為積分作用而不斷變化。積
分調節的“大方向”是正確的,積分項有減小誤差的作用。一直要到系統處於穩定狀態,這時誤差恆為零,比例部分和微分部分均為零,積分部分
才不再變化,並且剛好等於穩態時需要的控制器的輸出值,對應於上述溫度控制系統中電位器轉角的位置L。因此積分部分的作用是消除穩態誤差,
提高控制精度,積分作用一般是必須的。
PID控制器輸出中的積分部分與誤差的積分成正比。因為積分時間TI在積分項的分母中,TI越小,積分項變化的速度越快,積分作用越強。
3.PI控制
控制器輸出中的積分項與當前的誤差值和過去歷次誤差值的累加值成正比,因此積分作用本身具有嚴重的滯后特性,對系統的穩定性不利。如
果積分項的系數設置得不好,其負面作用很難通過積分作用本身迅速地修正。而比例項沒有延遲,只要誤差一出現,比例部分就會立即起作用。因
此積分作用很少單獨使用,它一般與比例和微分聯合使用,組成PI或PID控制器。
PI和PID控制器既克服了單純的比例調節有穩態誤差的缺點,又避免了單純的積分調節響應慢、動態性能不好的缺點,因此被廣泛使用。
如果控制器有積分作用(例如采用PI或PID控制),積分能消除階躍輸入的穩態誤差,這時可以將比例系數調得小一些。
如果積分作用太強(即積分時間太小),相當於每次微調電位器的角度值過大,其累積的作用會使系統輸出的動態性能變差,超調量增大,甚至
使系統不穩定。積分作用太弱(即積分時間太大),則消除穩態誤差的速度太慢,積分時間的值應取得適中。
4.微分作用
誤差的微分就是誤差的變化速率,誤差變化越快,其微分絕對值越大。誤差增大時,其微分為正;誤差減小時,其微分為負。控制器輸出量的微分
部分與誤差的微分成正比,反映了被控量變化的趨勢。
有經驗的操作人員在溫度上升過快,但是尚未達到設定值時,根據溫度變化的趨勢,預感到溫度將會超過設定值,出現超調。於是調節電位器的轉
角,提前減小加熱的電流。這相當於士兵射擊遠方的移動目標時,考慮到子彈運動的時間,需要一定的提前量一樣。
圖2 階躍響應曲線
圖2中的c (∞)為被控量c (t)的穩態值或被控量的期望值,誤差e(t) = c (∞) - c (t)。在圖2中啟動過程的上升階段,當 時,被控量尚未超過其穩態值。
但是因為誤差e(t)不斷減小,誤差的微分和控制器輸出的微分部分為負值,減小了控制器的輸出量,相當於提前給出了制動作用,以阻礙被控量的上升,
所以可以減少超調量。因此微分控制具有超前和預測的特性,在超調尚未出現之前,就能提前給出控制作用。
閉環控制系統的振盪甚至不穩定的根本原因在於有較大的滯后因素。因為微分項能預測誤差變化的趨勢,這種“超前”的作用可以抵消滯后因素的影
響。適當的微分控制作用可以使超調量減小,增加系統的穩定性。
對於有較大的滯后特性的被控對象,如果PI控制的效果不理想,可以考慮增加微分控制,以改善系統在調節過程中的動態特性。如果將微分時間設置
為0,微分部分將不起作用。
微分時間與微分作用的強弱成正比,微分時間越大,微分作用越強。如果微分時間太大,在誤差快速變化時,響應曲線上可能會出現“毛刺”。
微分控制的缺點是對干擾噪聲敏感,使系統抑制干擾的能力降低。為此可在微分部分增加慣性濾波環節。
5.采樣周期
PID控制程序是周期性執行的,執行的周期稱為采樣周期。采樣周期越小,采樣值越能反映模擬量的變化情況。但是太小會增加CPU的運算工作量,相
鄰兩次采樣的差值幾乎沒有什么變化,將使PID控制器輸出的微分部分接近為零,所以也不宜將采樣周期取得過小。
應保證在被控量迅速變化時(例如啟動過程中的上升階段),能有足夠多的采樣點數,不致因為采樣點數過少而丟失被采集的模擬量中的重要信息。
PID系統分為兩類:模擬PID(一般由硬件組成,比如電子原件)和數字PID(通過AD/DA,結合數字編程來實現):
模擬PID:

數字PID:
- 位置式:

- 增量式:

PID調節會遇到飽和的情況,一般有以下幾種抑制的方法:
- 遇限削弱積分法
- 有效偏差法
- 限位法
二、PID整定算法
PID手動整定
1.試湊法,試湊法就是人工選擇PID參數,使控制系統響應達到預定要求,這種方法既簡單又復雜,說簡單是,如果你有經驗和運氣的話,
那么在SIMULINK中,可能很快就達到了目標,說難的是,在現場實戰中,可能費了很大時間和精力來調整三個參數,也沒有完成任務。
2.臨界比例度法,臨界比例度法就是僅在P作用下,調整比例度使系統等幅振盪,然后根據公式算出PID值,效果如圖1所示,圖中左半部分
是系統等幅振盪,右半部分是控制效果。

圖1
3.衰減曲線法, 衰減曲線法 就是僅在P作用下,調整比例度使系統響應曲線以4:1或10:1比率衰減 ,然后根據公式算出PID值,效果如圖2所
示,圖中左半部分是系統衰減曲線 , 右半部分是控制效果。

圖2
4.反應曲線法,反應曲線法就是在開環狀態下,加階躍信號,然后用一階加純滯后系統逼近原系統,然后根據由Z-N或C-C公式算出PID值,
效果如圖3所示,圖中左半部分是系統 響應曲線 , 右半部分是控制效果。圖4是一個三階系統,臨界比例度法 求得的有關參數。

圖3

圖4
注:第1種方法,需要調整三個參數,第2-4種方法僅需調整一個參數,已經使問題大為簡單,我們在這里用的是一維搜索算法,尋找合適的比
例度,但實際上在現場這仍然是一件費力費時話,無疑自動整定是更方便的方法。
PID自動整定
5.繼電反饋法自整定
繼電反饋法自整定 ,就是用一個繼電器取代調節器,從而使系統強制振盪,然后根據振盪頻率和幅值,計算出PID值,這個一種比較簡單,也比
較靠譜的方法,應用比較廣泛,由於現場存在有干擾,如用於實戰,則需要重點考慮干擾問題, 如果繼電器帶有回滯,一定程度上可以克服干擾
影響,圖5繼電反饋法自整定效果。

圖5
6.模式識別法
模式識別法是提取暫態過程中的一些特征向量,並據此不斷修正PID值,模式識別法PID整定開始前,先要預整定,然后在預整定的基礎上再進行
模式識別法 PID整定,本人做的模式識別法效果如圖7所示,在預整定PID參數基本合適的情況下,經過3次整定就得到滿意的效果,如圖6所
示,否則整定次數將增加,如圖7所示 ,模式識別法 頗像經驗法,當然它是冠名為專家系統 ,而我玩的連“磚家系統”也算不上,勉強算個“本(笨)
人系統”吧。

圖6

圖7
7.自校正PID控制
自校正PID控制,實質上是一種極點配置法,就是通過調整PID控制器的結構和參數,使閉環系統的特征多項式變成預定的式子,這種PID控制表達式
離原本的PID表達式已經很遠了,盡管冠名PID控制,圖8是這種控制的效果,為實現自校正PID控制 ,需解丟番圖方程。

圖8
8.模糊自適應整定PID控制
自動整定好了是否就一勞永逸了呢?也不是,因為大部分的工業對象不是線性時不變(LTI)系統,負荷變化、設備老化等因素會使得對象特性發生變
化,此時,模糊自適應PID控制就有了用武之地,模糊自適應PID控制有點類似模式識別法PID整定,模式識別法PID整定需要預整定, 模糊自適應PID
控制需要有一個基礎PID值,模式識別法PID整定根據專家規則調整PID值, 模糊自適應PID控制根據模糊規則調整PID值,模糊自適應整定PID控制的
效果如圖9所示,被控對象是個大純滯后系統。

圖9
9.神經網絡PID控制
如果,被控對象有強烈的非線性且有時變特性,那么.神經網絡PID控制是合適的, 神經網絡PID控制 的效果如圖10所示,被控對象是個非線性時變系統。
圖10
10.PID參數優化
模糊自適應PID控制和神經網絡PID控制對時變,非線性和大純滯后等系統有較好效果,但對特定的優化指標,如ISE,IAE,ITAE等無能為力,此時,就需
要用到最優化技術了,實際上很多時候,控制問題就是一個最優化問題,如最優控制,最小方差控制,預測控制,系統辨識等,神經網絡實際上也是一
個優化的過程,PID參數優化,也是一個優化問題。優化一般來說,可以用傳統的分析方法,也可以用群體智能算法,MATLAB中也有多個非線性尋優
函數,我們這里用了4中方法尋優,優化指標除了上面提到的3個外,還有工程上常用的4:1衰減,及特殊情況下有用的無超調控制,見圖11-圖15,圖16
則是顯示一個大純滯后系統用PID控制效果,通常情況下,此時要用預估補償控制或內模控制,但在這里我們看到PID控制仍然威力十足,控制效果相當
不錯。
圖11

圖12

圖13

圖14

圖15

圖16
