在工業(yè)應(yīng)用中PID及其衍生算法是應(yīng)用最廣泛的算法之一,是當(dāng)之無愧的萬能算法,如果能夠熟練掌握PID算法的設(shè)計與實(shí)現(xiàn)過程,對于一般的研發(fā)人員來講,應(yīng)該是足夠應(yīng)對一般研發(fā)問題了,而難能可貴的是,在很多控制算法當(dāng)中,PID控制算法又是最簡單,最能體現(xiàn)反饋思想的控制算法,可謂經(jīng)典中的經(jīng)典。經(jīng)典的未必是復(fù)雜的,經(jīng)典的東西常常是簡單的,而且是最簡單的。
PID算法通過誤差信號控制被控量,而控制器本身就是比例、積分、微分三個環(huán)節(jié)的加和。這里我們規(guī)定(在t時刻):
1.輸入量為
假設(shè)采樣間隔為T,則在第K個T時刻:
偏差=?
其中式中:
比例參數(shù):控制器的輸出與輸入偏差值成比例關(guān)系。系統(tǒng)一旦出現(xiàn)偏差,比例調(diào)節(jié)立即產(chǎn)生調(diào)節(jié)作用以減少偏差。
特點(diǎn):過程簡單快速、比例作用大,可以加快調(diào)節(jié),減小誤差;但是使系統(tǒng)穩(wěn)定性下降,造成不穩(wěn)定,有余差。
PID 的重要性應(yīng)該無需多說了,這個控制領(lǐng)域的應(yīng)用最廣泛的算法了。本篇文章的目的是希望通過一個例子展示算法過程,并解釋以下概念:
(1)簡單描述何為PID?為何需要PID?PID 能達(dá)到什么作用?
(2)理解P(比例環(huán)節(jié))作用:基礎(chǔ)比例環(huán)節(jié)。
缺點(diǎn):產(chǎn)生穩(wěn)態(tài)誤差。
疑問:何為穩(wěn)態(tài)誤差 為什么會產(chǎn)生穩(wěn)態(tài)誤差。
(3)理解I(積分環(huán)節(jié))作用:消除穩(wěn)態(tài)誤差。
缺點(diǎn):增加超調(diào)
疑問:積分為何能消除穩(wěn)態(tài)誤差?
(4)理解D(微分環(huán)節(jié))作用:加大慣性響應(yīng)速度,減弱超調(diào)趨勢
疑問:為何能減弱超調(diào)?
(5)理解各個比例系數(shù)的作
以下即PID控制的整體框圖,過程描述為:
設(shè)定一個輸出目標(biāo),反饋系統(tǒng)傳回輸出值,如與目標(biāo)不一致,則存在一個誤差,PID根據(jù)此誤差調(diào)整輸入值,直至輸出達(dá)到設(shè)定值
疑問:那么我們?yōu)槭裁葱枰狿ID呢,比如我控制溫度,我不能監(jiān)控溫度值,溫度值一到就停止嗎?
那這樣大家應(yīng)該就明白,如果使用溫度一到就停止的辦法,當(dāng)然如果要求不高可能也行,但肯定達(dá)不到圖1這樣的要求,因?yàn)闇囟鹊搅撕笥鄿匾矔寽囟壤^續(xù)升高。而且溫度自身也會通過空氣散熱的。
系統(tǒng)輸出的響應(yīng)目標(biāo)
下面將常用的各種控制規(guī)律的控制特點(diǎn)簡單歸納一下:
(1)比例控制規(guī)律P:采用P控制規(guī)律能較快地克服擾動的影響,它的作用于輸出值較快,但不能很好穩(wěn)定在一個理想的數(shù)值,不良的結(jié)果是雖較能有效的克服擾動的影響,但有余差出現(xiàn)。它適用于控制通道滯后較小、負(fù)荷變化不大、控制要求不高、被控參數(shù)允許在一定范圍內(nèi)有余差的場合。如:金彪公用工程部下設(shè)的水泵房冷、熱水池水位控制;油泵房中間油罐油位控制等。
(2)比例積分控制規(guī)律(PI):在工程中比例積分控制規(guī)律是應(yīng)用最廣泛的一種控制規(guī)律。積分能在比例的基礎(chǔ)上消除余差,它適用于控制通道滯后較小、負(fù)荷變化不大、被控參數(shù)不允許有余差的場合。如:在主線窯頭重油換向室中F1401到F1419號槍的重油流量控制系統(tǒng);油泵房供油管流量控制系統(tǒng);退火窯各區(qū)溫度調(diào)節(jié)系統(tǒng)等。
(3)比例微分控制規(guī)律(PD):微分具有超前作用,對于具有容量滯后的控制通道,引入微分參與控制,在微分項(xiàng)設(shè)置得當(dāng)?shù)那闆r下,對于提高系統(tǒng)的動態(tài)性能指標(biāo),有著顯著效果。因此,對于控制通道的時間常數(shù)或容量滯后較大的場合,為了提高系統(tǒng)的穩(wěn)定性,減小動態(tài)偏差等可選用比例微分控制規(guī)律。如:加熱型溫度控制、成分控制。需要說明一點(diǎn),對于那些純滯后較大的區(qū)域里,微分項(xiàng)是無能為力,而在測量信號有噪聲或周期性振動的系統(tǒng),則也不宜采用微分控制。如:大窯玻璃液位的控制。
(4)例積分微分控制規(guī)律(PID):PID控制規(guī)律是一種較理想的控制規(guī)律,它在比例的基礎(chǔ)上引入積分,可以消除余差,再加入微分作用,又能提高系統(tǒng)的穩(wěn)定性。它適用于控制通道時間常數(shù)或容量滯后較大、控制要求較高的場合。如溫度控制、成分控制等。
鑒于D規(guī)律的作用,我們還必須了解時間滯后的概念,時間滯后包括容量滯后與純滯后。其中容量滯后通常又包括:測量滯后和傳送滯后。測量滯后是檢測元件在檢測時需要建立一種平衡,如熱電偶、熱電阻、壓力等響應(yīng)較慢產(chǎn)生的一種滯后。而傳送滯后則是在傳感器、變送器、執(zhí)行機(jī)構(gòu)等設(shè)備產(chǎn)生的一種控制滯后。純滯后是相對與測量滯后的,在工業(yè)上,大多的純滯后是由于物料傳輸所致,如:大窯玻璃液位,在投料機(jī)動作到核子液位儀檢測需要很長的一段時間。
總之,控制規(guī)律的選用要根據(jù)過程特性和工藝要求來選取,決不是說PID控制規(guī)律在任何情況下都具有較好的控制性能,不分場合都采用是不明智的。如果這樣做,只會給其它工作增加復(fù)雜性,并給參數(shù)整定帶來困難。當(dāng)采用PID控制器還達(dá)不到工藝要求,則需要考慮其它的控制方案。如串級控制、前饋控制、大滯后控制等。
Kp、Ti、Td三個參數(shù)的設(shè)定是PID控制算法的關(guān)鍵問題。一般說來編程時只能設(shè)定他們的大概數(shù)值,并在系統(tǒng)運(yùn)行時通過反復(fù)調(diào)試來確定最佳值。因此調(diào)試階段程序必須得能隨時修改和記憶這三個參數(shù)。
(1)模擬PID控制規(guī)律的離散化 ?
(2)數(shù)字PID控制器的差分方程
在某些應(yīng)用場合,比如通用儀表行業(yè),系統(tǒng)的工作對象是不確定的,不同的對象就得采用不同的參數(shù)值,沒法為用戶設(shè)定參數(shù),就引入?yún)?shù)自整定的概念。實(shí)質(zhì)就是在首次使用時,通過N次測量為新的工作對象尋找一套參數(shù),并記憶下來作為以后工作的依據(jù)。具體的整定方法有三種:臨界比例度法、衰減曲線法、經(jīng)驗(yàn)法。
1、臨界比例度法(Ziegler-Nichols)
1.1 ?在純比例作用下,逐漸增加增益至產(chǎn)生等副震蕩,根據(jù)臨界增益和臨界周期參數(shù)得出PID控制器參數(shù),步驟如下:
(1)將純比例控制器接入到閉環(huán)控制系統(tǒng)中(設(shè)置控制器參數(shù)積分時間常數(shù)Ti =∞,實(shí)際微分時間常數(shù)Td =0)。
(2)控制器比例增益K設(shè)置為最小,加入階躍擾動(一般是改變控制器的給定值),觀察被調(diào)量的階躍響應(yīng)曲線。
(3)由小到大改變比例增益K,直到閉環(huán)系統(tǒng)出現(xiàn)振蕩。
(4)系統(tǒng)出現(xiàn)持續(xù)等幅振蕩時,此時的增益為臨界增益(Ku),振蕩周期(波峰間的時間)為臨界周期(Tu)。
(5) 由表1得出PID控制器參數(shù)。
表1
(1)在采用這種方法獲取等幅振蕩曲線時,應(yīng)使控制系統(tǒng)工作在線性區(qū),不要使控制閥出現(xiàn)開、關(guān)的極端狀態(tài),否則得到的持續(xù)振蕩曲線可能是“極限循環(huán)”,從線性系統(tǒng)概念上說系統(tǒng)早已處于發(fā)散振蕩了。
(2)由于被控對象特性的不同,按上表求得的控制器參數(shù)不一定都能獲得滿意的結(jié)果。對于無自平衡特性的對象,用臨界比例度法求得的控制器參數(shù)往住使系統(tǒng)響應(yīng)的衰減率偏大(ψ>0.75 )。而對于有自平衡特性的高階等容對象,用此法整定控制器參數(shù)時系統(tǒng)響應(yīng)衰減率大多偏?。é祝?.75 )。為此,上述求得的控制器參數(shù),應(yīng)針對具體系統(tǒng)在實(shí)際運(yùn)行過程中進(jìn)行在線校正。
(3) 臨界比例度法適用于臨界振幅不大、振蕩周期較長的過程控制系統(tǒng),但有些系統(tǒng)從安全性考慮不允許進(jìn)行穩(wěn)定邊界試驗(yàn),如鍋爐汽包水位控制系統(tǒng)。還有某些時間常數(shù)較大的單容對象,用純比例控制時系統(tǒng)始終是穩(wěn)定的,對于這些系統(tǒng)也是無法用臨界比例度法來進(jìn)行參數(shù)整定的。
(4)只適用于二階以上的高階對象,或一階加純滯后的對象,否則,在純比例控制情況下,系統(tǒng)不會出現(xiàn)等幅振蕩。
1.3 ?若求出被控對象的靜態(tài)放大倍數(shù)KP=△y/△u ,則增益乘積KpKu可視為系統(tǒng)的最大開環(huán)增益。通常認(rèn)為Ziegler-Nichols閉環(huán)試驗(yàn)整定法的適用范圍為:
(1) 當(dāng)KpKu > 20時,應(yīng)采用更為復(fù)雜的控制算法,以求較好的調(diào)節(jié)效果。
(2)當(dāng)KpKu < 2時,應(yīng)使用一些能補(bǔ)償傳輸遲延的控制策略。
(3)當(dāng)1.5(4)當(dāng)KpKu< 1.5時,在對控制精度要求不高的場合仍可使用PI控制器,在這種情況下,微分作用已意義不大。
2、衰減曲線法
衰減曲線法與臨界比例度法不同的是,閉環(huán)設(shè)定值擾動試驗(yàn)采用衰減振蕩(通常為4:1或10:l),然后利用衰減振蕩的試驗(yàn)數(shù)據(jù),根據(jù)經(jīng)驗(yàn)公式求取控制器的整定參數(shù)。整定步驟如下:(1)在純比例控制器下,置比例增益K為較小值,并將系統(tǒng)投入運(yùn)行。
(2)系統(tǒng)穩(wěn)定后,作設(shè)定值階躍擾動,觀察系統(tǒng)的響應(yīng),若系統(tǒng)響應(yīng)衰減太快,則減小比例增益K;反之,應(yīng)增大比例增益K。直到系統(tǒng)出現(xiàn)如下圖(a)所示的4:1衰減振蕩過程,記下此時的比例增益Ks及和振蕩周期Ts數(shù)值。
(3)利用Ks和Ts值,按下表給出的經(jīng)驗(yàn)公式,計算出控制器的參數(shù)整定值。? ? ?
(4)10:1衰減曲線法類似,只是用Tr帶入計算。
采用衰減曲線法必須注意幾點(diǎn):
(1)加給定干擾不能太大,要根據(jù)生產(chǎn)操作要求來定,一般在5%左右,也有例外的情況。
(2)必須在工藝參數(shù)穩(wěn)定的情況下才能加給定干擾,否則得不到正確得整定參數(shù)。
(3)對于反應(yīng)快的系統(tǒng),如流量、管道壓力和小容量的液位調(diào)節(jié)等,要得到嚴(yán)格的4:1衰減曲線較困難,一般以被調(diào)參數(shù)來回波動兩次達(dá)到穩(wěn)定,就近似地認(rèn)為達(dá)到4:1衰減過程了。
(4)投運(yùn)時,先將K放在較小的數(shù)值,把Ti減少到整定值,把Td逐步放大到整定值,然后把K拉到整定值(如果在K=整定值的條件下很快地把Td放到整定值,控制器的輸出會劇烈變化)。
3、經(jīng)驗(yàn)整定法
3.1方法一A:(1)確定比例增益
使PID為純比例調(diào)節(jié),輸入設(shè)定為系統(tǒng)允許最大值的60%~70%,由0逐漸加大比例增益至系統(tǒng)出現(xiàn)振蕩;再反過來,從此時的比例增益逐漸減小至系統(tǒng)振蕩消失,記錄此時的比例增益,設(shè)定PID的比例增益P為當(dāng)前值的60%~70%。
(2)確定積分時間常數(shù)
比例增益P確定后,設(shè)定一個較大的積分時間常數(shù)Ti的初值,然后逐漸減小Ti至系統(tǒng)出現(xiàn)振蕩,之后在反過來,逐漸加大Ti至系統(tǒng)振蕩消失。記錄此時的Ti,設(shè)定PID的積分時間常數(shù)Ti為當(dāng)前值的150%~180%。
(3)確定積分時間常數(shù)Td
積分時間常數(shù)Td一般不用設(shè)定,為0即可。若要設(shè)定,與確定 P和Ti的方法相同,取不振蕩時的30%。
(4)系統(tǒng)帶載聯(lián)調(diào),再對PID參數(shù)進(jìn)行微調(diào),直至滿足要求。
(1)PI調(diào)節(jié)
(a)純比例作用下,把比例度從較大數(shù)值逐漸往下降,至開始產(chǎn)生周期振蕩(測量值以給定值為中心作有規(guī)則得振蕩),在產(chǎn)生周期性振蕩得情況下,把此比例度逐漸加寬直至系統(tǒng)充分穩(wěn)定。
(b)接下來把積分時間逐漸縮短至產(chǎn)生振蕩,此時表示積分時間過短,應(yīng)把積分時間稍加延長,直至振蕩停止。
(2)PID調(diào)節(jié)
(a)純比例作用下尋求起振點(diǎn)。
(b)加大微分時間使振蕩停止,接著把比例度調(diào)得稍小一些,使振蕩又產(chǎn)生,加大微分時間,使振蕩再停止,來回這樣操作,直至雖加大微分時間,但不能使振蕩停止,求得微分時間的最佳值,此時把比例度調(diào)得稍大一些直至振蕩停止。
(c)把積分時間調(diào)成和微分時間相同的數(shù)值,如果又產(chǎn)生振蕩則加大積分時間直至振蕩停止。
3.3 方法二:
另一種方法是先從表列范圍內(nèi)取Ti的某個數(shù)值,如果需要微分,則取Td=(1/3~1/4)Ti,然后對δ進(jìn)行試湊,也能較快地達(dá)到要求。實(shí)踐證明,在一定范圍內(nèi)適當(dāng)?shù)亟M合δ和Ti的數(shù)值,可以得到同樣衰減比的曲線,就是說,δ的減少,可以用增加Ti的辦法來補(bǔ)償,而基本上不影響調(diào)節(jié)過程的質(zhì)量。所以,這種情況,先確定Ti、Td再確定δ的順序也是可以的。而且可能更快些。如果曲線仍然不理想,可用Ti、Td再加以適當(dāng)調(diào)整。
3.4 方法三:
(1)在實(shí)際調(diào)試中,也可以先大致設(shè)定一個經(jīng)驗(yàn)值,然后根據(jù)調(diào)節(jié)效果修改。
流量系統(tǒng):P(%)40--100,I(分)0.1--1
壓力系統(tǒng):P(%)30--70,?? I(分)0.4--3
液位系統(tǒng):P(%)20--80,?? I(分)1—5
溫度系統(tǒng):P(%)20--60,?? I(分)3--10,D(分)0.5--3
(2)以下整定的口訣:
階躍擾動投閉環(huán),參數(shù)整定看曲線;先投比例后積分,最后再把微分加;理想曲線兩個波,振幅衰減4比1;比例太強(qiáng)要振蕩,積分太強(qiáng)過程長;
動差太大加微分,頻率太快微分降;偏離定值回復(fù)慢,積分作用再加強(qiáng)。
4、復(fù)雜調(diào)節(jié)系統(tǒng)的參數(shù)整定
以串級調(diào)節(jié)系統(tǒng)為例來說明復(fù)雜調(diào)節(jié)系統(tǒng)的參數(shù)整定方法。由于串級調(diào)節(jié)系統(tǒng)中,有主、副兩組參數(shù),各通道及回路間存在著相互聯(lián)系和影響。改變主、副回路的任一參數(shù),對整個系統(tǒng)都有影響。特別是主、副對象時間常數(shù)相差不大時,動態(tài)聯(lián)系密切,整定參數(shù)的工作尤其困難。
在整定參數(shù)前,先要明確串級調(diào)節(jié)系統(tǒng)的設(shè)計目的。如果主要是保證主參數(shù)的調(diào)節(jié)質(zhì)量,對副參數(shù)要求不高,則整定工作就比較容易;如果主、副參數(shù)都要求高,整定工作就比較復(fù)雜。下面介紹“先副后主”兩步參數(shù)整定法。
第一步:在工況穩(wěn)定情況下,將主回路閉合,把主控制器比例度放在100%,積分時間放在最大,微分時間放在零。用4:1衰減曲線整定副回路,求出副回路的比例增益K2s和振蕩周期T2s。
第二步:把副回路看成是主回路的一個環(huán)節(jié),使用4:1衰減曲線法整定主回路,求得主控制器K1s和T1s。
根據(jù)K1s、K2s、T1s、T2s按表2經(jīng)驗(yàn)公式算出串級調(diào)節(jié)系統(tǒng)主、副回路參數(shù)。先放上副回路參數(shù),再放上主回路參數(shù),如果得到滿意的過渡過程,則整定工作完畢。否則可進(jìn)行適當(dāng)調(diào)整。
如果主、副對象時間常數(shù)相差不大,按4:1衰減曲線法整定,可能出現(xiàn)“共振”危險,這時,可適當(dāng)減小副回路比例度或積分時間,以達(dá)到減少副回路振蕩周期的目的。同理,加大主回路比例度或積分時間,以期增大主回路振蕩周期,使主、副回路振蕩周期之比加大,避免“共振”。這樣做的結(jié)果會降低調(diào)節(jié)質(zhì)量。
如果主、副對象特性太相近,則說明確定的方案欠妥當(dāng),就不能完全依靠參數(shù)整定來提高調(diào)節(jié)質(zhì)量了。
一是利用數(shù)字PID控制算法調(diào)節(jié)直流電機(jī)的速度,方案是采用光電開關(guān)來獲得電機(jī)的轉(zhuǎn)動產(chǎn)生的脈沖信號,單片機(jī)(MSP430G2553)通過測量脈沖信號的頻率來計算電機(jī)的轉(zhuǎn)速(具體測量頻率的算法是采用直接測量法,定時1s測量脈沖有多少個,本身的測量誤差可以有0.5轉(zhuǎn)加減),測量的轉(zhuǎn)速同給定的轉(zhuǎn)速進(jìn)行比較產(chǎn)生誤差信號,來產(chǎn)生控制信號,控制信號是通過PWM調(diào)整占空比也就是調(diào)整輸出模擬電壓來控制的(相當(dāng)于1位的DA,如果用10位的DA來進(jìn)行模擬調(diào)整呢?效果會不會好很多?),這個實(shí)驗(yàn)控制能力有一定的范圍,只能在30轉(zhuǎn)/秒和150轉(zhuǎn)/秒之間進(jìn)行控制,當(dāng)給定值(程序中給定的速度)高于150時,實(shí)際速度只能保持在150轉(zhuǎn),這也就是此系統(tǒng)的最大控制能力,當(dāng)給定值低于30轉(zhuǎn)時,直流電機(jī)轉(zhuǎn)軸實(shí)際是不轉(zhuǎn)動的,但由于誤差值過大,轉(zhuǎn)速會迅速變高,然后又會停止轉(zhuǎn)動,就這樣循環(huán)往復(fù),不能達(dá)到控制效果。
根據(jù)實(shí)測,轉(zhuǎn)速穩(wěn)態(tài)精度在正負(fù)3轉(zhuǎn)以內(nèi),控制時間為4到5秒。實(shí)驗(yàn)只進(jìn)行到這種程度,思考和分析也只停留在這種深度。
二是利用數(shù)字PID控制算法調(diào)節(jié)直流減速電機(jī)的位置,方案是采用與電機(jī)同軸轉(zhuǎn)動的精密電位器來測量電機(jī)轉(zhuǎn)動的位置和角度,通過測量得到的角度和位置與給定的位置進(jìn)行比較產(chǎn)生誤差信號,然后位置誤差信號通過一定關(guān)系(此關(guān)系純屬根據(jù)想象和實(shí)驗(yàn)現(xiàn)象來擬定和改善的)轉(zhuǎn)換成PWM信號,作為控制信號的PWM信號是先產(chǎn)生對直流減速電機(jī)的模擬電壓U,U來控制直流減速電機(jī)的力矩(不太清楚),力矩產(chǎn)生加速度,加速度產(chǎn)生速度,速度改變位置,輸出量是位置信號,所以之間應(yīng)該對直流減速電機(jī)進(jìn)行系統(tǒng)建模分析,仿真出直流減速電機(jī)的近似系統(tǒng)傳遞函數(shù),然后根據(jù)此函數(shù)便可以對PID的參數(shù)進(jìn)行整定了。
兩次體會都不是特別清楚PID參數(shù)是如何整定的,沒有特別清晰的理論指導(dǎo)和實(shí)驗(yàn)步驟,對結(jié)果的整理和分析也不夠及時,導(dǎo)致實(shí)驗(yàn)深度和程度都不能達(dá)到理想效果。
小明接到這樣一個任務(wù):
有一個水缸點(diǎn)漏水(而且漏水的速度還不一定固定不變)要求水面高度維持在某個位置一旦發(fā)現(xiàn)水面高度低于要求位置,就要往水缸里加水。?
小明接到任務(wù)后就一直守在水缸旁邊,時間長就覺得無聊,就跑到房里看小說了,每30分鐘來檢查一次水面高度。水漏得太快,每次小明來檢查時,水都快漏完了,離要求的高度相差很遠(yuǎn),小明改為每3分鐘來檢查一次,結(jié)果每次來水都沒怎么漏,不需要加水,來得太頻繁做的是無用功。
幾次試驗(yàn)后,確定每10分鐘來檢查一次。這個檢查時間就稱為采樣周期。
開始小明用瓢加水,水龍頭離水缸有十幾米的距離,經(jīng)常要跑好幾趟才加夠水,于是小明又改為用桶加,一加就是一桶,跑的次數(shù)少了,加水的速度也快了,
但好幾次將缸給加溢出了,不小心弄濕了幾次鞋,小明又動腦筋,我不用瓢也不用桶,老子用盆,幾次下來,發(fā)現(xiàn)剛剛好,不用跑太多次,也不會讓水溢出。這個加水工具的大小就稱為比例系數(shù)。
小明又發(fā)現(xiàn)水雖然不會加過量溢出了,有時會高過要求位置比較多,還是有打濕鞋的危險。他又想了個辦法,在水缸上裝一個漏斗,
每次加水不直接倒進(jìn)水缸,而是倒進(jìn)漏斗讓它慢慢加。這樣溢出的問題解決了,但加水的速度又慢了,有時還趕不上漏水的速度。
于是他試著變換不同大小口徑的漏斗來控制加水的速度,最后終于找到了滿意的漏斗。漏斗的時間就稱為積分時間 。
小明終于喘了一口,但任務(wù)的要求突然嚴(yán)了,水位控制的及時性要求大大提高,一旦水位過低,必須立即將水加到要求位置,而且不能高出太多,否則不給工錢。
小明又為難了!于是他又開動腦筋,終于讓它想到一個辦法,常放一盆備用水在旁邊,一發(fā)現(xiàn)水位低了,不經(jīng)過漏斗就是一盆水下去,這樣及時性是保證了,但水位有時會高多了。
他又在要求水面位置上面一點(diǎn)將水鑿一孔,再接一根管子到下面的備用桶里這樣多出的水會從上面的孔里漏出來。這個水漏出的快慢就稱為微分時間。
拿一個水池水位來說,我們 可以制定一個規(guī)則:
把水位分為超高、高、較高、中、較低、低、超低幾個區(qū)段;
再把水位波動的趨勢分為甚快、快、較快、慢、停幾個區(qū)段,并區(qū)分趨勢的正負(fù);
把輸出分為超大幅 度、大幅度、較大幅度、微小幾個區(qū)段。
當(dāng)水位處于中值、趨勢處于停頓的時候,不調(diào)節(jié);
當(dāng)水位處于中值、趨勢緩慢變化的時候,也可以暫不調(diào)節(jié);
當(dāng)水位處于較高、趨勢緩慢變化 的時候,輸出一個微小調(diào)節(jié)量就夠了;
當(dāng)水位處于中值、趨勢較快變化的時候,輸出進(jìn)行叫大幅度調(diào)節(jié)……
如上所述,我們需要制定一個控制規(guī)則表,然后制定參數(shù)判斷水位區(qū)段的界值、波動趨 勢的界值、輸出幅度的界值。
比例帶與比例控制(P)輸出的關(guān)系如圖所示。用MVp運(yùn)算式的設(shè)定舉例
穩(wěn)態(tài)誤差(Off set)
僅用比例控制的時候,根據(jù)負(fù)載的變動及設(shè)備的固有特性不同,會出現(xiàn)不同的穩(wěn)態(tài)誤差。
負(fù)載特性與控制特性曲線的交點(diǎn)和設(shè)定值不一致是產(chǎn)生穩(wěn)態(tài)誤差的原因。
比例帶小時不會產(chǎn)生。為消除穩(wěn)態(tài)誤差,我們設(shè)定手動復(fù)位值--manual reset值(MR),以消除控制誤差。
手動復(fù)位(Manual reset)
如前所述,僅用比例控制不能消除穩(wěn)態(tài)誤差。
為此,將MR(manual reset值)設(shè)為可變,則可自由整定(即調(diào)整)調(diào)節(jié)器的輸出。只要手動操作輸出相當(dāng)于offset的量,就能與目標(biāo)值一致。
這就叫做手動復(fù)位(manual reset),通常比例調(diào)節(jié)器上配有此功能。
在實(shí)際的自動控制中,每次發(fā)生off set時以手動進(jìn)行reset的話,這樣并不實(shí)用。在后面將敘述的積分控制功能,能自動消除穩(wěn)態(tài)誤差。
為此,將MR(manual reset值)設(shè)為可變,則可自由整定(即調(diào)整)調(diào)節(jié)器的輸出。只要手動操作輸出相當(dāng)于offset的量,就能與目標(biāo)值一致。
這就叫做手動復(fù)位(manual reset),通常比例調(diào)節(jié)器上配有此功能。
在實(shí)際的自動控制中,每次發(fā)生off set時以手動進(jìn)行reset的話,這樣并不實(shí)用。在后面將敘述的積分控制功能,能自動消除穩(wěn)態(tài)誤差。
所謂積分控制(I),就是在出現(xiàn)穩(wěn)態(tài)誤差時自動的改變輸出量,使其與手動復(fù)位動作的輸出量相同,達(dá)到消除穩(wěn)態(tài)誤差的目的。
當(dāng)積分項(xiàng)和比例項(xiàng)對于控制器的輸出的貢獻(xiàn)相同,即積分作用重復(fù)了一次比例作用時所花費(fèi)的時間,就是積分時間。
微分控制(D)的功能是通過誤差的變化率預(yù)報誤差信號的未來變化趨勢。
通過提供超前控制作用,微分控制能使被控過程趨于穩(wěn)定。
因此,它經(jīng)常用來抵消積分控制產(chǎn)生的不穩(wěn)定趨勢。
因此,它經(jīng)常用來抵消積分控制產(chǎn)生的不穩(wěn)定趨勢。
當(dāng)輸入量持續(xù)的以一定速率變化時,微分項(xiàng)和比例項(xiàng)對于控制器的輸出的貢獻(xiàn)相同,即微分作用重復(fù)了一次比例作用時所花費(fèi)的時間,就是微分時間。
我們看一個生活例子,冬天洗熱水澡,需要先放掉一段時間的冷水,因?yàn)樗芾镉幸欢卫渌?,熱水器也需要一個加熱過程,等過了這段時間之后水溫有些接近目標(biāo)值后,開始調(diào)節(jié)水龍頭來調(diào)節(jié)冷、熱水之間的比例及出水量,之后再慢慢的微調(diào),在洗浴過程中感覺溫度不合適,再一點(diǎn)點(diǎn)的調(diào)節(jié)。這個過程,其實(shí)就是PID算法過程。我們之所以微調(diào),是因?yàn)樗疁氐淖兓俣扰c我調(diào)節(jié)的速度不相匹配,存在一個滯后效應(yīng),我們需要調(diào)節(jié)一點(diǎn)點(diǎn),等一下再感覺一下溫度,不夠再調(diào)節(jié)一點(diǎn)點(diǎn),再感覺,這個過程就叫PID算法,也可以說,滯后效應(yīng)是引入PID的原因。
失去的能否找回來?能!只是我找回了紐扣,卻發(fā)現(xiàn)衣服已經(jīng)不再了。這個就是滯后效應(yīng)。
負(fù)反饋系統(tǒng),都有滯后效應(yīng),但為什么運(yùn)放、電源這類的卻從來不提PID算法呢?這是因?yàn)檫@類系統(tǒng)的滯后延時時間非常短,若考慮這個延時,負(fù)反饋引入180度相位,延時恰好引入180度相位,則完全可能引起振蕩。問題在于這個延時時間足夠短,它的諧振頻率點(diǎn)比較高,以運(yùn)放為例,加入延時加上負(fù)反饋引起的諧振點(diǎn)為10MHz,但這片運(yùn)放的頻率響應(yīng)是1MHz,則在10MHz下完全不可能導(dǎo)致振蕩,因?yàn)檫@個芯片的頻響特性只有1MHz。我們常用的線性電源IC,比如SOT23封裝的LDO,假如輸出不加電容,就會輸出一個振蕩的波形,相對來說電源IC的滯后效應(yīng)比運(yùn)放要大,但是,因?yàn)殡娫匆话愫竺娑家哟箅娙莸模念l響特性很低,接近直流0Hz,所以當(dāng)有電容時候,就無法振蕩了。
而工業(yè)控制領(lǐng)域,比如溫度等,都是滯后效應(yīng)很嚴(yán)重的,往往都是mS,甚至是10mS級別的,若直接用負(fù)反饋,因?yàn)榧钆c反饋的不同步,必然導(dǎo)致強(qiáng)烈的振蕩,所以為了解決這個問題,我們需要引入PID算法,來實(shí)現(xiàn)這類滯后效應(yīng)嚴(yán)重系統(tǒng)的負(fù)反饋控制,我們以高頻感應(yīng)加熱設(shè)備加熱工件,從常溫25度加熱到700度為例做說明:
1、25~600度,100%的全功率加熱工件,這是因?yàn)闇夭钐?,前期要全功率,先加熱到靠近目?biāo)溫度。之所以考慮在600度,是因?yàn)闇笮?yīng),若設(shè)定太高,當(dāng)發(fā)現(xiàn)接近700度再停下來,但實(shí)際上,溫度會沖過700度。當(dāng)然,600度是一個經(jīng)驗(yàn)值,以下幾個溫度點(diǎn)都是經(jīng)驗(yàn)值,根據(jù)實(shí)際情況而來。
2、600以上,開啟P算法,P就是根據(jù)測量值與目標(biāo)值的誤差來決定負(fù)反饋的大小。P算法公式:反饋=P*(當(dāng)前溫度-目標(biāo)溫度)。但因?yàn)樨?fù)反饋是基于存在誤差為前提的,所以P算法導(dǎo)致一個問題,永遠(yuǎn)到不了想要的值:700度。因?yàn)榈搅?00度,反饋值就沒有了。P算法的開啟,進(jìn)一步逼近了目標(biāo)溫度,假設(shè)穩(wěn)態(tài)下可以達(dá)到650度,這樣就算因?yàn)闇笮?yīng)導(dǎo)致的延時,也不會超過700度太多。
3、當(dāng)達(dá)到P算法的穩(wěn)態(tài)極限650度附近的時候,比如640度,就應(yīng)該開啟另外一個算法解決P算法引起的極限誤差,那就是I算法。I算法就是為了消除這個P算法導(dǎo)致的誤差值,畢竟我們想要的是700度,而不是650度。I算法,本質(zhì)上講就是獲取一個700度下對應(yīng)的一個驅(qū)動值,之后用這個驅(qū)動值來取代P算法,那么我們怎么得到這個驅(qū)動值呢,唯一的手段就是把之前的誤差都累加起來,最后得到一個期望值,這個期望值就是我們想要的驅(qū)動值。因?yàn)橹灰c目標(biāo)值存在誤差,那么把這些誤差值積累起來再去反饋控制,就能一步步的逼近目標(biāo)值,這如同水溫不夠高,再加一點(diǎn)點(diǎn)熱水,不夠高再加,這樣總能達(dá)到想要的水溫。值得注意的是,I算法不能接入太高,必須要在P算法的后期介入,不然很容易積累過大。這個時候可以引入一個誤差門限,比如誤差為60,當(dāng)作6來處理,誤差為50,當(dāng)作5來處理,消除大的誤差值,具體根據(jù)項(xiàng)目情況決定。
4、當(dāng)I算法把工件溫度加熱到很接近目標(biāo)溫度后,那么可以調(diào)節(jié)的范圍就很小了,最后一點(diǎn)點(diǎn)的微動,讓調(diào)節(jié)的每一次的變化,不要太大,這就是D算法。D算法本質(zhì)上講就是反對劇烈的變化,所以適用于達(dá)到目標(biāo)溫度的時候。
PID算法其實(shí)不復(fù)雜,但從目前看,很多人都是因?yàn)閷@三者的使用條件不了解導(dǎo)致的問題,都是從加熱一開始,三個要素都上,結(jié)果可想而知。P算法是溫度接近目標(biāo)值的時候用,I算法是在P算法到穩(wěn)態(tài)極限的時候用,D算法是達(dá)到目標(biāo)值附近的時候用。實(shí)際項(xiàng)目中,D算法一般不用,效果不大。假如非要找一個現(xiàn)實(shí)中對應(yīng)的實(shí)物,那么以開關(guān)電源為例,TL431基準(zhǔn)電源比較器可以認(rèn)為是P,輸出濾波電容C是I,輸出濾波電感是D,兩者完全等價。它們各自的應(yīng)用工作點(diǎn)可以認(rèn)為:假設(shè)目標(biāo)溫度700度,600~800度:P算法;640~760度:I算法;690~710度:D算法。具體值,以實(shí)驗(yàn)為準(zhǔn),數(shù)據(jù)僅供參考。
最后給出一個PID最通俗的解讀:我們設(shè)計一樣?xùn)|西,一般都是先打個樣,這個樣跟我們想要的接近,但細(xì)節(jié)沒到位,這就是P,樣有差異,所以就要修改,擬合逼近,這就是I,到了定稿,就不允許隨便修改了,就算要修改,也是有限制的修改,這就是D。
飛機(jī)上一般是什么操作系統(tǒng)?
高速CAN、容錯CAN、LIN總線有什么區(qū)別?
大佬終于把鴻蒙OS講明白了,收藏了!
免責(zé)聲明:本文內(nèi)容由21ic獲得授權(quán)后發(fā)布,版權(quán)歸原作者所有,本平臺僅提供信息存儲服務(wù)。文章僅代表作者個人觀點(diǎn),不代表本平臺立場,如有問題,請聯(lián)系我們,謝謝!