【分享】萬能算法PID最全總結
PID的數學模型
目的
何為PID以及為何需要PID?
(1)、比例控制規律P:采用P控制規律能較快地克服擾動的影響,它的作用于輸出值較快,但不能很好穩定在一個理想的數值,不良的結果是雖較能有效的克服擾動的影響,但有余差出現。它適用于控制通道滯后較小、負荷變化不大、控制要求不高、被控參數允許在一定范圍內有余差的場合。如:金彪公用工程部下設的水泵房冷、熱水池水位控制;油泵房中間油罐油位控制等。
(2)、比例積分控制規律(PI):在工程中比例積分控制規律是應用最廣泛的一種控制規律。積分能在比例的基礎上消除余差,它適用于控制通道滯后較小、負荷變化不大、被控參數不允許有余差的場合。如:在主線窯頭重油換向室中F1401到F1419號槍的重油流量控制系統;油泵房供油管流量控制系統;退火窯各區溫度調節系統等。
(3)、比例微分控制規律(PD):微分具有超前作用,對于具有容量滯后的控制通道,引入微分參與控制,在微分項設置得當的情況下,對于提高系統的動態性能指標,有著顯著效果。因此,對于控制通道的時間常數或容量滯后較大的場合,為了提高系統的穩定性,減小動態偏差等可選用比例微分控制規律。如:加熱型溫度控制、成分控制。需要說明一點,對于那些純滯后較大的區域里,微分項是無能為力,而在測量信號有噪聲或周期性振動的系統,則也不宜采用微分控制。如:大窯玻璃液位的控制。
(4)、例積分微分控制規律(PID):PID控制規律是一種較理想的控制規律,它在比例的基礎上引入積分,可以消除余差,再加入微分作用,又能提高系統的穩定性。它適用于控制通道時間常數或容量滯后較大、控制要求較高的場合。如溫度控制、成分控制等。
鑒于D規律的作用,我們還必須了解時間滯后的概念,時間滯后包括容量滯后與純滯后。其中容量滯后通常又包括:測量滯后和傳送滯后。測量滯后是檢測元件在檢測時需要建立一種平衡,如熱電偶、熱電阻、壓力等響應較慢產生的一種滯后。而傳送滯后則是在傳感器、變送器、執行機構等設備產生的一種控制滯后。純滯后是相對與測量滯后的,在工業上,大多的純滯后是由于物料傳輸所致,如:大窯玻璃液位,在投料機動作到核子液位儀檢測需要很長的一段時間。
總之,控制規律的選用要根據過程特性和工藝要求來選取,決不是說PID控制規律在任何情況下都具有較好的控制性能,不分場合都采用是不明智的。如果這樣做,只會給其它工作增加復雜性,并給參數整定帶來困難。當采用PID控制器還達不到工藝要求,則需要考慮其它的控制方案。如串級控制、前饋控制、大滯后控制等。
Kp,Ti,Td三個參數的設定是PID控制算法的關鍵問題。一般說來編程時只能設定他們的大概數值,并在系統運行時通過反復調試來確定最佳值。因此調試階段程序須得能隨時修改和記憶這三個參數。
數字PID控制器
(1)模擬PID控制規律的離散化
在某些應用場合,比如通用儀表行業,系統的工作對象是不確定的,不同的對象就得采用不同的參數值,沒法為用戶設定參數,就引入參數自整定的概念。實質就是在首次使用時,通過N次測量為新的工作對象尋找一套參數,并記憶下來作為以后工作的依據。具體的整定方法有三種:臨界比例度法、衰減曲線法、經驗法。
1、臨界比例度法(Ziegler-Nichols)
1.1 在純比例作用下,逐漸增加增益至產生等副震蕩,根據臨界增益和臨界周期參數得出PID控制器參數,步驟如下:
(1)將純比例控制器接入到閉環控制系統中(設置控制器參數積分時間常數Ti =∞,實際微分時間常數Td =0)。
(2)控制器比例增益K設置為最小,加入階躍擾動(一般是改變控制器的給定值),觀察被調量的階躍響應曲線。
(3)由小到大改變比例增益K,直到閉環系統出現振蕩。
(4)系統出現持續等幅振蕩時,此時的增益為臨界增益(Ku),振蕩周期(波峰間的時間)為臨界周期(Tu)。
(5) 由表1得出PID控制器參數。
(1)在采用這種方法獲取等幅振蕩曲線時,應使控制系統工作在線性區,不要使控制閥出現開、關的極端狀態,否則得到的持續振蕩曲線可能是“極限循環”,從線性系統概念上說系統早已處于發散振蕩了。
(2)由于被控對象特性的不同,按上表求得的控制器參數不一定都能獲得滿意的結果。對于無自平衡特性的對象,用臨界比例度法求得的控制器參數往住使系統響應的衰減率偏大(ψ>0.75 )。而對于有自平衡特性的高階等容對象,用此法整定控制器參數時系統響應衰減率大多偏小(ψ<0.75 )。為此,上述求得的控制器參數,應針對具體系統在實際運行過程中進行在線校正。
(3) 臨界比例度法適用于臨界振幅不大、振蕩周期較長的過程控制系統,但有些系統從安全性考慮不允許進行穩定邊界試驗,如鍋爐汽包水位控制系統。還有某些時間常數較大的單容對象,用純比例控制時系統始終是穩定的,對于這些系統也是無法用臨界比例度法來進行參數整定的。
(4)只適用于二階以上的高階對象,或一階加純滯后的對象,否則,在純比例控制情況下,系統不會出現等幅振蕩。
1.3 若求出被控對象的靜態放大倍數KP=△y/△u ,則增益乘積KpKu可視為系統的最大開環增益。通常認為Ziegler-Nichols閉環試驗整定法的適用范圍為:
(2)當KpKu < 2時,應使用一些能補償傳輸遲延的控制策略。
(3)當1.5
(4)當KpKu< 1.5時,在對控制精度要求不高的場合仍可使用PI控制器,在這種情況下,微分作用已意義不大。
2、衰減曲線法
(1)在純比例控制器下,置比例增益K為較小值,并將系統投入運行。
(2)系統穩定后,作設定值階躍擾動,觀察系統的響應,若系統響應衰減太快,則減小比例增益K;反之,應增大比例增益K。直到系統出現如下圖(a)所示的4:1衰減振蕩過程,記下此時的比例增益Ks及和振蕩周期Ts數值。
(3)利用Ks和Ts值,按下表給出的經驗公式,計算出控制器的參數整定值。
(4)10:1衰減曲線法類似,只是用Tr帶入計算。
(1)加給定干擾不能太大,要根據生產操作要求來定,一般在5%左右,也有例外的情況。
(2)必須在工藝參數穩定的情況下才能加給定干擾,否則得不到正確得 整定參數。
(3)對于反應快的系統,如流量、管道壓力和小容量的液位調節等,要得到嚴格的4:1衰減曲線較困難,一般以被調參數來回波動兩次達到穩定,就近似地認為達到4:1衰減過程了。
(4)投運時,先將K放在較小的數值,把Ti減少到整定值,把Td逐步放大到整定值,然后把K拉到整定值(如果在K=整定值的條件下很快地把Td放到整定值,控制器的輸出會劇烈變化)。
3、經驗整定法
3.1方法一A:
(1)確定比例增益
使PID為純比例調節,輸入設定為系統允許最大值的60%~70%,由0逐漸加大比例增益至系統出現振蕩;再反過來,從此時的比例增益逐漸減小至系統振蕩消失,記錄此時的比例增益,設定PID的比例增益P為當前值的60%~70%。
(2)確定積分時間常數
比例增益P確定后,設定一個較大的積分時間常數Ti的初值,然后逐漸減小Ti至系統出現振蕩,之后在反過來,逐漸加大Ti至系統振蕩消失。記錄此時的Ti,設定PID的積分時間常數Ti為當前值的150%~180%。
(3)確定積分時間常數Td
積分時間常數Td一般不用設定,為0即可。若要設定,與確定 P和Ti的方法相同,取不振蕩時的30%。
(4)系統帶載聯調,再對PID參數進行微調,直至滿足要求。
(1)PI調節
(a)純比例作用下,把比例度從較大數值逐漸往下降,至開始產生周期振蕩(測量值以給定值為中心作有規則得振蕩),在產生周期性振蕩得情況下,把此比例度逐漸加寬直至系統充分穩定。
(b)接下來把積分時間逐漸縮短至產生振蕩,此時表示積分時間過短,應把積分時間稍加延長,直至振蕩停止。
(2)PID調節
(a)純比例作用下尋求起振點。
(b)加大微分時間使振蕩停止,接著把比例度調得稍小一些,使振蕩又產生,加大微分時間,使振蕩再停止,來回這樣操作,直至雖加大微分時間,但不能使振蕩停止,求得微分時間的最佳值,此時把比例度調得稍大一些直至振蕩停止。
(c)把積分時間調成和微分時間相同的數值,如果又產生振蕩則加大積分時間直至振蕩停止。
3.3 方法二:
另一種方法是先從表列范圍內取Ti的某個數值,如果需要微分,則取Td=(1/3~1/4)Ti,然后對δ進行試湊,也能較快地達到要求。實踐證明,在一定范圍內適當地組合δ和Ti的數值,可以得到同樣衰減比的曲線,就是說,δ的減少,可以用增加Ti的辦法來補償,而基本上不影響調節過程的質量。所以,這種情況,先確定Ti、Td再確定δ的順序也是可以的。而且可能更快些。如果曲線仍然不理想,可用Ti、Td再加以適當調整。
3.4 方法三:
(1)在實際調試中,也可以先大致設定一個經驗值,然后根據調節效果修改。
流量系統:P(%)40--100,I(分)0.1--1
壓力系統:P(%)30--70, I(分)0.4--3
液位系統:P(%)20--80, I(分)1—5
溫度系統:P(%)20--60, I(分)3--10,D(分)0.5--3
(2)以下整定的口訣:
階躍擾動投閉環,參數整定看曲線;先投比例后積分,最后再把微分加;
理想曲線兩個波,振幅衰減4比1;比例太強要振蕩,積分太強過程長;
動差太大加微分,頻率太快微分降;偏離定值回復慢,積分作用再加強。
4、復雜調節系統的參數整定
以串級調節系統為例來說明復雜調節系統的參數整定方法。由于串級調節系統中,有主、副兩組參數,各通道及回路間存在著相互聯系和影響。改變主、副回路的任一參數,對整個系統都有影響。特別是主、副對象時間常數相差不大時,動態聯系密切,整定參數的工作尤其困難。
在整定參數前,先要明確串級調節系統的設計目的。如果主要是保證主參數的調節質量,對副參數要求不高,則整定工作就比較容易;如果主、副參數都要求高,整定工作就比較復雜。下面介紹“先副后主”兩步參數整定法。
第一步:在工況穩定情況下,將主回路閉合,把主控制器比例度放在100%,積分時間放在最大,微分時間放在零。用4:1衰減曲線整定副回路,求出副回路得比例增益K2s和振蕩周期T2s。
第二步:把副回路看成是主回路的一個環節,使用4:1衰減曲線法整定主回路,求得主控制器K1s和T1s。
根據K1s、K2s、T1s、T2s按表2經驗公式算出串級調節系統主、副回路參數。先放上副回路參數,再放上主回路參數,如果得到滿意的過渡過程,則整定工作完畢。否則可進行適當調整。
如果主、副對象時間常數相差不大,按4:1衰減曲線法整定,可能出現“共振”危險,這時,可適當減小副回路比例度或積分時間,以達到減少副回路振蕩周期的目的。同理,加大主回路比例度或積分時間,以期增大主回路振蕩周期,使主、副回路振蕩周期之比加大,避免“共振”。這樣做的結果會降低調節質量。
如果主、副對象特性太相近,則說明確定的方案欠妥當,就不能完全依靠參數整定來提高調節質量了。
實際應用體會:
一是利用數字PID控制算法調節直流電機的速度,方案是采用光電開關來獲得電機的轉動產生的脈沖信號,單片機(MSP430G2553)通過測量脈沖信號的頻率來計算電機的轉速(具體測量頻率的算法是采用直接測量法,定時1s測量脈沖有多少個,本身的測量誤差可以有0.5轉加減),測量的轉速同給定的轉速進行比較產生誤差信號,來產生控制信號,控制信號是通過PWM調整占空比也就是調整輸出模擬電壓來控制的(相當于1位的DA,如果用10位的DA來進行模擬調整呢?效果會不會好很多?),這個實驗控制能力有一定的范圍,只能在30轉/秒和150轉/秒之間進行控制,當給定值(程序中給定的速度)高于150時,實際速度只能保持在150轉,這也就是此系統的最大控制能力,當給定值低于30轉時,直流電機轉軸實際是不轉動的,但由于誤差值過大,轉速會迅速變高,然后又會停止轉動,就這樣循環往復,不能達到控制效果。
根據實測,轉速穩態精度在正負3轉以內,控制時間為4到5秒。實驗只進行到這種程度,思考和分析也只停留在這種深度。
二是利用數字PID控制算法調節直流減速電機的位置,方案是采用與電機同軸轉動的精密電位器來測量電機轉動的位置和角度,通過測量得到的角度和位置與給定的位置進行比較產生誤差信號,然后位置誤差信號通過一定關系(此關系純屬根據想象和實驗現象來擬定和改善的)轉換成PWM信號,作為控制信號的PWM信號是先產生對直流減速電機的模擬電壓U,U來控制直流減速電機的力矩(不太清楚),力矩產生加速度,加速度產生速度,速度改變位置,輸出量是位置信號,所以之間應該對直流減速電機進行系統建模分析,仿真出直流減速電機的近似系統傳遞函數,然后根據此函數便可以對PID的參數進行整定了。
兩次體會都不是特別清楚PID參數是如何整定的,沒有特別清晰的理論指導和實驗步驟,對結果的整理和分析也不夠及時,導致實驗深度和程度都不能達到理想效果。
怎樣形象理解PID算法
拿一個水池水位來說,我們 可以制定一個規則,
穩態誤差(Off set)
通過提供超前控制作用,微分控制能使被控過程趨于穩定。