PID控制應(yīng)該算是應(yīng)用非常廣泛的控制算法了。小到控制一個元件的溫度,大到控制無人機的飛行姿態(tài)和飛行速度等等,都可以使用PID控制。這里我們從原理上來理解PID控制。
PID定義
PID=port ID,在STP(生成樹協(xié)議)中,若在端口收到的BPDU中BID和path cost相同時,則比較PID來選擇阻塞端口。數(shù)字電視復(fù)用系統(tǒng)名詞 PID(Packet Identifier) 在數(shù)字電視復(fù)用系統(tǒng)中它的作用好比一份文件的文件名,我們可以稱它為“標(biāo)志碼傳輸包” 。
工程控制和數(shù)學(xué)物理方面 PID(比例積分微分)英文全稱為Proportion Integration Differentiation,它是一個數(shù)學(xué)物理術(shù)語。PID由8位端口優(yōu)先級加端口號組成,端口號占低位,默認(rèn)端口號優(yōu)先級128。
1、PID控制器(比例-積分-微分控制器)是一個在工業(yè)控制應(yīng)用中常見的反饋回路部件。由“比例(proportional)、積分(integral)、微分(derivative)”,是一種很常見的控制算法。
2、PID(比例(proportion)、積分(integral)、導(dǎo)數(shù)(derivative))控制器作為最早實用化的控制器已有近百年歷史,現(xiàn)在仍然是應(yīng)用最廣泛的工業(yè)控制器。PID控制器簡單易懂,使用中不需精確的系統(tǒng)模型等先決條件,因而成為應(yīng)用最為廣泛的控制器。
3、PID控制器由比例單元(P)、積分單元(I)和微分單元(D)組成。其輸入e (t)與輸出u (t)的關(guān)系為 u(t)=kp[e(t)+1/TI∫e(t)dt+TD*de(t)/dt] 式中積分的上下限分別是0和t。
因此它的傳遞函數(shù)為:G(s)=U(s)/E(s)=kp[1+1/(TI*s)+TD*s],其中kp為比例系數(shù); TI為積分時間常數(shù); TD為微分時間常數(shù)。
一、PID控制簡介
PID( Proportional Integral Derivative)控制是最早發(fā)展起來的控制策略之一,由于其算法簡單、魯棒性好和可靠性高,被廣泛應(yīng)用于工業(yè)過程控制,尤其適用于可建立精確數(shù)學(xué)模型的確定性控制系統(tǒng)。
在工程實際中,應(yīng)用最為廣泛的調(diào)節(jié)器控制規(guī)律為比例、積分、微分控制,簡稱PID控制,又稱PID調(diào)節(jié),它實際上是一種算法。PID控制器問世至今已有近70年歷史,它以其結(jié)構(gòu)簡單、穩(wěn)定性好、工作可靠、調(diào)整方便而成為工業(yè)控制的主要技術(shù)之一。當(dāng)被控對象的結(jié)構(gòu)和參數(shù)不能完全掌握,或得不到精確的數(shù)學(xué)模型時,控制理論的其它技術(shù)難以采用時,系統(tǒng)控制器的結(jié)構(gòu)和參數(shù)必須依靠經(jīng)驗和現(xiàn)場調(diào)試來確定,這時應(yīng)用PID控制技術(shù)最為方便。即當(dāng)我們不完全了解一個系統(tǒng)和被控對象,或不能通過有效的測量手段來獲得系統(tǒng)參數(shù)時,最適合用PID控制技術(shù)。PID控制,實際中也有PI和PD控制。PID控制器就是根據(jù)系統(tǒng)的誤差,利用比例、積分、微分計算出控制量進(jìn)行控制的。
從信號變換的角度而言,超前校正、滯后校正、滯后-超前校正可以總結(jié)為比例、積分、微分三種運算及其組合。
PID調(diào)節(jié)器的適用范圍:PID調(diào)節(jié)控制是一個傳統(tǒng)控制方法,它適用于溫度、壓力、流量、液位等幾乎所有現(xiàn)場,不同的現(xiàn)場,僅僅是PID參數(shù)應(yīng)設(shè)置不同,只要參數(shù)設(shè)置得當(dāng)均可以達(dá)到很好的效果。均可以達(dá)到0.1%,甚至更高的控制要求。
PID控制的不足
1. 在實際工業(yè)生產(chǎn)過程往往具有非線性、時變不確定,難以建立精確的數(shù)學(xué)模型,常規(guī)的PID控制器不能達(dá)到理想的控制效果;
2. 在實際生產(chǎn)現(xiàn)場中,由于受到參數(shù)整定方法煩雜的困擾,常規(guī)PID控制器參數(shù)往往整定不良、效果欠佳,對運行工況的適應(yīng)能力很差。
二、PID控制器各校正環(huán)節(jié)
任何閉環(huán)控制系統(tǒng)的首要任務(wù)是要穩(wěn)(穩(wěn)定)、快(快速)、準(zhǔn)(準(zhǔn)確)的響應(yīng)命令。PID調(diào)整的主要工作就是如何實現(xiàn)這一任務(wù)。
增大比例系數(shù)P將加快系統(tǒng)的響應(yīng),它的作用于輸出值較快,但不能很好穩(wěn)定在一個理想的數(shù)值,不良的結(jié)果是雖較能有效的克服擾動的影響,但有余差出現(xiàn),過大的比例系數(shù)會使系統(tǒng)有比較大的超調(diào),并產(chǎn)生振蕩,使穩(wěn)定性變壞。積分能在比例的基礎(chǔ)上消除余差,它能對穩(wěn)定后有累積誤差的系統(tǒng)進(jìn)行誤差修整,減小穩(wěn)態(tài)誤差。微分具有超前作用,對于具有容量滯后的控制通道,引入微分參與控制,在微分項設(shè)置得當(dāng)?shù)那闆r下,對于提高系統(tǒng)的動態(tài)性能指標(biāo),有著顯著效果,它可以使系統(tǒng)超調(diào)量減小,穩(wěn)定性增加,動態(tài)誤差減小。
綜上所述,P—比例控制系統(tǒng)的響應(yīng)快速性,快速作用于輸出,好比”現(xiàn)在”(現(xiàn)在就起作用,快),I—積分控制系統(tǒng)的準(zhǔn)確性,消除過去的累積誤差,好比”過去”(清除過去積怨,回到準(zhǔn)確軌道),D—微分控制系統(tǒng)的穩(wěn)定性,具有超前控制作用,好比”未來”(放眼未來,未雨綢繆,穩(wěn)定才能發(fā)展)。當(dāng)然這個結(jié)論也不可一概而論,只是想讓初學(xué)者更加快速的理解PID的作用。
在調(diào)整的時候,你所要做的任務(wù)就是在系統(tǒng)結(jié)構(gòu)允許的情況下,在這三個參數(shù)之間權(quán)衡調(diào)整,達(dá)到最佳控制效果,實現(xiàn)穩(wěn)快準(zhǔn)的控制特點。
比例控制可快速、及時、按比例調(diào)節(jié)偏差,提高控制靈敏度,但有靜差,控制精度低。積分控制能消除偏差,提高控制精度、改善穩(wěn)態(tài)性能,但易引起震蕩,造成超調(diào)。微分控制是一種超前控制,能調(diào)節(jié)系統(tǒng)速度、減小超調(diào)量、提高穩(wěn)定性,但其時間常數(shù)過大會引入干擾、系統(tǒng)沖擊大,過小則調(diào)節(jié)周期長、效果不顯著。比例、積分、微分控制相互配合,合理選擇PID調(diào)節(jié)器的參數(shù),即比例系數(shù)KP、積分時間常數(shù)τi和微分時間常數(shù)τD,可迅速、準(zhǔn)確、平穩(wěn)的消除偏差,達(dá)到良好的控制效果。
1. 比例環(huán)節(jié)
成比例地反映控制系統(tǒng)的偏差信號e(t),偏差一旦產(chǎn)生,控制器立即產(chǎn)生控制作用,以減小偏差。當(dāng)僅有比例控制時系統(tǒng)輸出存在穩(wěn)態(tài)誤差(Steady-state error)。
P參數(shù)越大比例作用越強,動態(tài)響應(yīng)越快,消除誤差的能力越強。但實際系統(tǒng)是有慣性的,控制輸出變化后,實際y(t)值變化還需等待一段時間才會緩慢變化。由于實際系統(tǒng)是有慣性的,比例作用不宜太強,比例作用太強會引起系統(tǒng)振蕩不穩(wěn)定。P參數(shù)的大小應(yīng)在以上定量計算的基礎(chǔ)上根據(jù)系統(tǒng)響應(yīng)情況,現(xiàn)場調(diào)試決定,通常將P參數(shù)由大向小調(diào),以能達(dá)到最快響應(yīng)又無超調(diào)(或無大的超調(diào))為最佳參數(shù)。
優(yōu)點:調(diào)整系統(tǒng)的開環(huán)比例系數(shù),提高系統(tǒng)的穩(wěn)態(tài)精度,減低系統(tǒng)的惰性,加快響應(yīng)速度。
缺點:僅用P控制器,過大的開環(huán)比例系數(shù)不僅會使系統(tǒng)的超調(diào)量增大,而且會使系統(tǒng)穩(wěn)定裕度變小,甚至不穩(wěn)定。 2. 積分環(huán)節(jié)
控制器的輸出與輸入誤差信號的積分成正比關(guān)系。主要用于消除靜差,提高系統(tǒng)的無差度。積分作用的強弱取決于積分時間常數(shù)T,T越大,積分作用越弱,反之則越強。
為什么要引進(jìn)積分作用?
比例作用的輸出與誤差的大小成正比,誤差越大,輸出越大,誤差越小,輸出越小,誤差為零,輸出為零。由于沒有誤差時輸出為零,因此比例調(diào)節(jié)不可能完全消除誤差,不可能使被控的PV值達(dá)到給定值。必須存在一個穩(wěn)定的誤差,以維持一個穩(wěn)定的輸出,才能使系統(tǒng)的PV值保持穩(wěn)定。這就是通常所說的比例作用是有差調(diào)節(jié),是有靜差的,加強比例作用只能減少靜差,不能消除靜差(靜差:即靜態(tài)誤差,也稱穩(wěn)態(tài)誤差)。
為了消除靜差必須引入積分作用,積分作用可以消除靜差,以使被控的y(t)值最后與給定值一致。引進(jìn)積分作用的目的也就是為了消除靜差,使y(t)值達(dá)到給定值,并保持一致。
積分作用消除靜差的原理是,只要有誤差存在,就對誤差進(jìn)行積分,使輸出繼續(xù)增大或減小,一直到誤差為零,積分停止,輸出不再變化,系統(tǒng)的PV值保持穩(wěn)定,y(t)值等于u(t)值,達(dá)到無差調(diào)節(jié)的效果。
但由于實際系統(tǒng)是有慣性的,輸出變化后,y(t)值不會馬上變化,須等待一段時間才緩慢變化,因此積分的快慢必須與實際系統(tǒng)的慣性相匹配,慣性大、積分作用就應(yīng)該弱,積分時間I就應(yīng)該大些,反之而然。如果積分作用太強,積分輸出變化過快,就會引起積分過頭的現(xiàn)象,產(chǎn)生積分超調(diào)和振蕩。通常I參數(shù)也是由大往小調(diào),即積分作用由小往大調(diào),觀察系統(tǒng)響應(yīng)以能達(dá)到快速消除誤差,達(dá)到給定值,又不引起振蕩為準(zhǔn)。
對一個自動控制系統(tǒng),如果在進(jìn)入穩(wěn)態(tài)后存在穩(wěn)態(tài)誤差,則稱這個控制系統(tǒng)是有穩(wěn)態(tài)誤差的或簡稱有差系統(tǒng)(System with Steady-state Error)。為了消除穩(wěn)態(tài)誤差,在控制器中必須引入“積分項”。積分項對誤差取決于時間的積分,隨著時間的增加,積分項會增大。這樣,即便誤差很小,積分項也會隨著時間的增加而加大,它推動控制器的輸出增大使穩(wěn)態(tài)誤差進(jìn)一步減小,直到等于零。因此,比例+積分(PI)控制器,可以使系統(tǒng)在進(jìn)入穩(wěn)態(tài)后無穩(wěn)態(tài)誤差。PI控制器不但保持了積分控制器消除穩(wěn)態(tài)誤差的“記憶功能”,而且克服了單獨使用積分控制消除誤差時反應(yīng)不靈敏的缺點。
優(yōu)點:消除穩(wěn)態(tài)誤差。
缺點:積分控制器的加入會影響系統(tǒng)的穩(wěn)定性,使系統(tǒng)的穩(wěn)定裕度減小。
3. 微分環(huán)節(jié)
反映偏差信號的變化趨勢,并能在偏差信號變得太大之前,在系統(tǒng)中引入一個有效的早期修正信號,從而加快系統(tǒng)的動作速度,減少調(diào)節(jié)時間。在微分控制中,控制器的輸出與輸入誤差信號的微分(即誤差的變化率)成正比關(guān)系。
為什么要引進(jìn)微分作用?
前面已經(jīng)分析過,不論比例調(diào)節(jié)作用,還是積分調(diào)節(jié)作用都是建立在產(chǎn)生誤差后才進(jìn)行調(diào)節(jié)以消除誤差,都是事后調(diào)節(jié),因此這種調(diào)節(jié)對穩(wěn)態(tài)來說是無差的,對動態(tài)來說肯定是有差的,因為對于負(fù)載變化或給定值變化所產(chǎn)生的擾動,必須等待產(chǎn)生誤差以后,然后再來慢慢調(diào)節(jié)予以消除。
但一般的控制系統(tǒng),不僅對穩(wěn)定控制有要求,而且對動態(tài)指標(biāo)也有要求,通常都要求負(fù)載變化或給定調(diào)整等引起擾動后,恢復(fù)到穩(wěn)態(tài)的速度要快,因此光有比例和積分調(diào)節(jié)作用還不能完全滿足要求,必須引入微分作用。比例作用和積分作用是事后調(diào)節(jié)(即發(fā)生誤差后才進(jìn)行調(diào)節(jié)),而微分作用則是事前預(yù)防控制,即一發(fā)現(xiàn)y(t)有變大或變小的趨勢,馬上就輸出一個阻止其變化的控制信號,以防止出現(xiàn)過沖或超調(diào)等。 D越大,微分作用越強,D越小,微分作用越弱。系統(tǒng)調(diào)試時通常把D從小往大調(diào),具體參數(shù)由試驗決定。
如:由于給定值調(diào)整或負(fù)載擾動引起y(t)變化,比例作用和微分作用一定等到y(tǒng)(t)值變化后才進(jìn)行調(diào)節(jié),并且誤差小時,產(chǎn)生的比例和積分調(diào)節(jié)作用也小,糾正誤差的能力也小,誤差大時,產(chǎn)生的比例和積分作用才增大。因為是事后調(diào)節(jié)動態(tài)指標(biāo)不會很理想。而微分作用可以在產(chǎn)生誤差之前一發(fā)現(xiàn)有產(chǎn)生誤差的趨勢就開始調(diào)節(jié),是提前控制,所以及時性更好,可以最大限度地減少動態(tài)誤差,使整體效果更好。但微分作用只能作為比例和積分控制的一種補充,不能起主導(dǎo)作用,微分作用不能太強,太強也會引起系統(tǒng)不穩(wěn)定,產(chǎn)生振蕩,微分作用只能在P和I調(diào)好后再由小往大調(diào),一點一點試著加上去。
自動控制系統(tǒng)在克服誤差的調(diào)節(jié)過程中可能會出現(xiàn)振蕩甚至失穩(wěn)。其原因是由于存在有較大慣性組件(環(huán)節(jié))或有滯后(delay)組件,具有抑制誤差的作用,其變化總是落后于誤差的變化。解決的辦法是使抑制誤差的作用的變化“超前”,即在誤差接近零時,抑制誤差的作用就應(yīng)該是零。這就是說,在控制器中僅引入“比例”項往往是不夠的,比例項的作用僅是放大誤差的幅值,而目前需要增加的是“微分項”,它能預(yù)測誤差變化的趨勢。這樣,具有比例+微分的控制器,就能夠提前使抑制誤差的控制作用等于零,甚至為負(fù)值,從而避免了被控量的嚴(yán)重超調(diào)。所以對有較大慣性或滯后的被控對象,比例+微分(PD)控制器能改善系統(tǒng)在調(diào)節(jié)過程中的動態(tài)特性。PD控制只在動態(tài)過程中才起作用,對恒定穩(wěn)態(tài)情況起阻斷作用。因此,微分控制在任何情況下都不能單獨使用。
優(yōu)點:使系統(tǒng)的響應(yīng)速度變快,超調(diào)減小,振蕩減輕,對動態(tài)過程有“預(yù)測”作用。
在低頻段,主要是PI控制規(guī)律起作用,提高系統(tǒng)型別,消除或減少穩(wěn)態(tài)誤差;在中高頻段主要是PD規(guī)律起作用,增大截止頻率和相角裕度,提高響應(yīng)速度。因此,控制器可以全面地提高系統(tǒng)的控制性能。
什么是PID控制?
1、 PID 控制的基本概念
PID 控制是一種反饋回路機制,它通過計算當(dāng)前值與期望值之間的誤差,并調(diào)整輸出以最小化該誤差。PID 控制由三個獨立的組成部分構(gòu)成:
比例 § 控制:根據(jù)當(dāng)前誤差的比例來調(diào)整輸出。
積分 (I) 控制:累積過去的誤差,幫助消除穩(wěn)態(tài)誤差。
微分 (D) 控制:基于誤差的變化率,預(yù)測未來的趨勢并進(jìn)行調(diào)整。
這三個部分可以通過下面的公式組合起來:
[ u(t) = K_p e(t) + K_i \int_{0}^{t} e(\tau) d\tau + K_d \frac{de(t)}{dt} ]
其中 (u(t)) 是控制器的輸出,(K_p)、(K_i) 和 (K_d) 分別是比例、積分和微分增益,(e(t)) 是誤差信號。
2、 PID 參數(shù)的作用
比例系數(shù) (K_p):決定了對誤差的即時反應(yīng)強度。較高的 (K_p) 可以加快響應(yīng)速度,但過高的值可能導(dǎo)致系統(tǒng)不穩(wěn)定。
積分時間常數(shù) (T_i) 或 (K_i):用于消除穩(wěn)態(tài)誤差。較小的 (T_i) 或較大的 (K_i) 表示較強的積分作用,可以更快速地減少靜態(tài)偏差,但也可能使系統(tǒng)變得遲緩或不穩(wěn)定。
微分時間常數(shù) (T_d) 或 (K_d):有助于減小超調(diào)量和振蕩,提供預(yù)判性的控制。不過,如果噪聲較大,過強的微分作用可能會放大噪聲影響。
PID的應(yīng)用場景
PID 控制適用于許多需要精確控制的過程,特別是那些具有線性和非線性動態(tài)特性的過程。以下是幾個典型的應(yīng)用領(lǐng)域:
溫度控制:如恒溫箱、烤箱、空調(diào)等設(shè)備中的溫度維持。
流量控制:例如液體或氣體的流速調(diào)節(jié)。
壓力控制:包括液壓系統(tǒng)和氣動系統(tǒng)的壓力穩(wěn)定。
位置控制:如機械臂的位置定位、伺服電機的位置控制。
速度控制:電機轉(zhuǎn)速控制、傳送帶速度控制等。
化學(xué)過程控制:pH 值調(diào)節(jié)、濃度控制等。
硬件平臺的選擇
選擇合適的硬件平臺對于成功實施PID控制至關(guān)重要。不同類型的單片機(MCU)和其他嵌入式處理器各有特點,適用于不同的應(yīng)用場景:
1、8位單片機
優(yōu)點:成本低,易于編程,適合簡單的應(yīng)用。
例子:PIC、AVR、8051系列。
適用場合:溫度控制器、簡單電機控制等。
2、16位單片機
優(yōu)點:性能介于8位和32位之間,性價比高。
例子:dsPIC、STM8S。
適用場合:復(fù)雜一點的電機控制、數(shù)據(jù)采集系統(tǒng)等。
3、32位單片機
優(yōu)點:處理速度快,內(nèi)存大,支持復(fù)雜的算法。
例子:STM32、ESP32、Raspberry Pi Pico。
適用場合:高性能要求的控制系統(tǒng),如無人機飛控、智能家電等。
4、FPGA/CPLD
優(yōu)點:高度可定制化,能夠?qū)崿F(xiàn)高速并行處理。
例子:Xilinx Spartan、Altera Cyclone。
適用場合:實時性強且計算密集型任務(wù),如圖像處理、通信協(xié)議實現(xiàn)等。
5、DSP(數(shù)字信號處理器)
優(yōu)點:擅長浮點運算,特別適合音頻和視頻處理。
例子:TI C2000系列、ADSP-BF系列。
適用場合:音頻/視頻編碼解碼、電機驅(qū)動控制等。