控制算法(一)—— PID控制算法

        比例積分微分控制,簡稱PID控制,其中P表示比例、I表示積分、D表示微分。PID控制算法是最早發展起來的控制策略之一,由於其算法簡單、魯棒性好和可靠性高,被廣泛應用於工業過程控制。而且也衍生出多種相關的控制算法:P控制、PI控制、PD控制、增量式PID控制、模糊PID控制等。雖然這些算法各不相同,但都是基於最基本的PID控制算法爲原型的。

        下圖爲PID控制的示意圖

其中r(t)爲被控對象狀態的期望值,y(t)爲被控對象狀態的實際值,e(t)爲被控對象期望值與實際值之間的偏差,偏差輸入給P、I、D三個控制器。K_{p}K_{i}K_{d}分別爲比例、積分和微分參數,它們是PID控制的基本參數。經過P、I、D三個控制器輸出的值加和生成u(t),u(t)爲對被控對象的控制量。u(t)作用在被控對象上導致被控對象的狀態y(t)改變。

       下面我們來分析一下P、I、D三個控制的具體作用。

1P控制

       P控制按偏差e(t)的比例關係對被控對象進行控制,偏差一旦產生,控制器立即產生控制作用,以減小偏差。當僅有比例控制時系統輸出存在穩態誤差。

       P參數越大,比例作用越強,動態響應越快,消除誤差的能力越強。但實際系統是有慣性的,控制輸出變化後,實際y(t)值變化還需等待一段時間纔會緩慢變化。由於實際系統是有慣性的,比例作用不宜太強,比例作用太強會引起系統振盪不穩定。P參數的大小應在以上定量計算的基礎上根據系統響應情況,進行調試決定,通常將P參數由大向小調,以能達到最快響應又無超調爲最佳參數。

         P控制比較容易理解,舉一個簡單的控制,比如一個電控水溫加熱系統,期望水溫爲80度。如果當前實際水溫小於80度,比如是60度,則偏差e(t)=20,則P控制用20乘以K_{p},得到一個正的控制量,這個控制實際上是電控加熱的功率附加量。比如我們將水溫維持在80度需要的加熱功率爲X,則在這種情況下,加熱的控制量爲X+20\ast K_{p}。如果偏差越大,則加熱功率的調節輪越大。如果當前實際水溫爲90度,則偏差e(t)=-10,則加熱的功率控制量爲X-10\ast K_{p}。偏差越大,則對X減小的越多。

2I控制

       I控制器的輸出與輸入誤差信號的積分成正比關係。I控制主要用於消除靜態誤差。比例作用的輸出與誤差的大小成正比,誤差越大,輸出越大,誤差越小,輸出越小,誤差爲零,輸出爲零。由於沒有誤差時輸出爲零,因此比例調節不可能完全消除誤差。必定會存在一個穩定的誤差,以維持一個穩定的輸出。這個控制誤差稱爲靜態誤差,加強比例作用只能減少靜態誤差,但不能消除靜態誤差。

       爲了消除靜態誤差,引入積分控制,積分作用可以消除靜差,以使被控對象的狀態y(t)值最後與給定值一致。

積分作用消除靜態誤差的原理是,只要有誤差存在,就對誤差進行積分,使輸出繼續增大或減小,一直到誤差爲零,積分停止,輸出不再變化,y(t)值等於u(t)值,達到無差調節的效果。

       但由於實際系統是有慣性的,控制量變化後,y(t)值不會馬上變化,須等待一段時間才緩慢變化,因此積分的快慢必須與實際系統的慣性相匹配,慣性大、積分作用就應該弱,積分時間就應該大些。如果積分作用太強,積分輸出變化過快,就會引起積分過度的現象,產生積分超調和振盪。

       依然用上面的例子進行說明I控制的作用。如果在調節過程中,水溫維持在79度,一直無法達到80度,此時,如果只有P控制,則控制量爲X+1\ast K_{p}。可以看到控制量一直不變,溫度也一直上不去,這1度的誤差就是靜態誤差。很顯然不加大功率水溫是不可能上去的。在這種情況下,我們加入I控制,則控制量變爲X+1\ast K_{p}+\int e\left ( t \right )dt。加入積分量之後,在原有的控制量基礎上加入了積分控制量,而且,穩態誤差存在時間越長,積分量越大,控制量也會越大,直到消除穩態誤差。

3D控制

        上面已經分析過,不論比例調節作用,還是積分調節作用都是建立在產生誤差後才進行調節以消除誤差,都是事後調節,因此這種調節對穩態來說是無差的,對動態來說肯定是有差的,因爲對於負載變化或給定值變化所產生的擾動,必須等待產生誤差以後,然後再來慢慢調節予以消除。

        但一般的控制系統,不僅對穩定控制有要求,而且對動態指標也有要求,通常都要求負載變化或給定調整等引起擾動後,恢復到穩態的速度要快,因此光有比例和積分調節作用還不能完全滿足要求,必須引入微分作用。比例作用和積分作用是事後調節,而微分作用則是事前預防控制,即一發現y(t)有變大或變小的趨勢,馬上就輸出一個阻止其變化的控制信號,以防止出現過沖或超調等。

       D越大,微分作用越強,D越小,微分作用越弱。系統調試時通常把D從小往大調,具體參數由試驗決定。

       依然以上面水溫的控制爲例,如果在加大功率給水加熱,水溫逐漸上升,每個控制週期增加1度,如果沒有D控制,則溫度達到80度後,必然會出現超調,然後誤差爲負後,減小加熱功率。如果加入了D控制,則會在上面控制量的基礎上加入D環節\frac{\mathrm{d} e\left ( t \right )}{\mathrm{d} t}*K_{d},在水溫逐漸上升時\frac{\mathrm{d} e\left ( t \right )}{\mathrm{d} t}爲負值,則相當於在原有控制量的基礎上加了一個負的控制量,從而使總的控制量提前減小,以避免水溫的超調。

 

        由於PID控制應用已經很廣泛,前人的經驗也有很多可以作爲參考,當然也有人總結了很多實用的調試方法。下面奉上幾段順口溜來形象說明PID控制,當然這些順口溜是在網上抄襲的。

比例作用順口溜                                                                                              

比例州節器,像個放大器;                                                                

一個偏差來,放大送出去;                                                               

放大是多少,旋鈕看仔細;                                                              

比例度旋大,放大倍數低。                                                               

積分作用順口溜

重定調節器,累積有本領;

只要偏差在,累積不停止; 

累積快與慢,旋鈕看仔細;

積分時間長,累積速度低。

微分作用順口溜 

說起微分器,一點不神祕;

階躍輸入來,輸出跳上去;

下降快與慢,旋鈕看仔細;

微分時間長,下降就慢些。

 

下面再奉上一段PID參數調節經驗的順口溜。

參數整定找最佳,從小到大順序查,

先是比例後積分,最後再把微分加,

曲線振盪很頻繁,比例度盤要放大,

曲線漂浮繞大灣,比例度盤往小扳,

曲線偏離回覆慢,積分時間往下降,

曲線波動週期長,積分時間再加長,

曲線振盪頻率快,先把微分降下來,

動差大來波動慢,微分時間應加長,

理想曲線兩個波,前高後低4比1,

一看二調多分析,調節質量不會低。

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章