P控制、PI控制與PID控制的差異:穩態誤差、響應速度、過衝、調整比較

三者都是由目標值與控制量的差(誤差)e決定操作量的回授控制,差別在於使用的項數。P控制輸出與誤差成正比的操作量,PI控制再加上誤差的積分,PID控制則進一步加上誤差的微分。P(比例)負責響應速度,I(積分)負責消除穩態誤差,D(微分)負責抑制過衝與振盪。對於不含積分的受控體,只用P控制會殘留誤差。PI控制能消除誤差,但相位落後而容易振盪,加入D就能抑制這種振盪。

項目P控制PI控制PID控制
操作量的式子u = Kp·eu = Kp·e + Ki∫e dtu = Kp·e + Ki∫e dt + Kd·de/dt
對步階目標值的穩態誤差(不含積分的受控體)會殘留。一階系統K/(Ts + 1)時為1/(1 + K·Kp)變為0變為0
響應速度Kp越高越快提高積分增益Ki時上升變快,但過衝增加D增加阻尼,因此容易在抑制過衝的同時提高增益
過衝與振盪Kp太高時響應變得振盪,延遲大的受控體會變得不穩定積分使相位落後90°,因此比P控制容易振盪微分預先抑制誤差的變化,減少振盪
模擬器的例子(含時間延遲的一階系統K = 1、T = 10 s、L = 2 s、Kp = 4)穩態誤差0.2,過衝約30%Ki = 0.4時穩態誤差0,過衝約30%再加上Kd = 4時穩態誤差0,過衝約7%
對雜訊的耐受度雜訊也會乘上Kp倍高頻的增益為Kp,與P控制差不多微分頻率越高放大越多,因此會放大雜訊。搭配低通濾波器做成不完全微分
操作量飽和沒有積分,即使停在上限也不會發生積分累積停在上限期間積分持續累積,發生積分飽和。需要停止積分等對策與PI控制一樣需要積分飽和的對策。也要注意目標值急遽變化造成的微分衝擊
要調整的參數與Ziegler–Nichols極限增益法的參考值只有Kp。Kp = 0.5KuKp與Ti(或Ki)兩個。Kp = 0.45Ku、Ti ≈ 0.83TuKp、Ti、Td三個。Kp = 0.6Ku、Ti = 0.5Tu、Td = 0.125Tu
主要用途可容許少許誤差的控制,以及受控體含積分的位置控制(對步階不會殘留誤差)溫度、流量、壓力、馬達速度、電源電壓等。實際的控制迴路多半是不使用D的PI控制延遲大、想抑制過衝的溫度或位置控制

數值為具代表性的大致參考值,會因世代或產品而異。

適用於什麼情況

P控制
受控體含積分(例如馬達的位置),或可容許少許穩態誤差時。最簡單,只需調整Kp。
PI控制
對固定的目標值或干擾,想讓穩態誤差為0時。對雜訊的耐受度高、也容易調整,因此是溫度、流量、速度、電源電壓等許多控制迴路的標準選擇。
PID控制
時間延遲或其他延遲大,PI控制的過衝或振盪太大時。微分要加上低通濾波器,感測器雜訊大時要把D的增益調低。

常見問題

為什麼只用P控制會殘留穩態誤差?

因為操作量與誤差成正比,要持續輸出操作量就必須保留誤差。以單位回授對一階受控體K/(Ts + 1)做P控制時,最終值為K·Kp/(1 + K·Kp),誤差為1/(1 + K·Kp);K = 1、Kp = 4時最終值為0.8,誤差為0.2。提高Kp誤差會變小但不會為0,調得太高則會振盪。

為什麼PI控制能讓穩態誤差為0?

因為只要還有一點誤差,積分項的值就會持續改變,所以只有在誤差為0時才會穩定下來。即使誤差為0,積分項中累積的值仍會持續輸出所需的操作量。相對地,積分會使相位落後90°,積分太強(積分時間Ti太短)時,過衝與振盪會增加。

加入D(微分)時要注意什麼?

微分對越高頻的成分放大越多,因此會放大感測器的雜訊。所以會搭配一階低通濾波器做成不完全微分,把高頻的增益限制在約N倍(N多取8至20左右)。另外,為了防止目標值步階變化瞬間操作量暴衝的微分衝擊,也常將微分只作用在量測值而非誤差上(PI-D控制)。

增益要依什麼順序調整?

基本流程是先只用P控制,把Kp提高到即將開始振盪之前,再加入I消除穩態誤差,若過衝大再加入D。若已知比例控制產生持續振盪時的增益Ku與週期Tu,可用Ziegler–Nichols極限增益法(PID控制為Kp = 0.6Ku、Ti = 0.5Tu、Td = 0.125Tu)作為起點,但得到的響應偏振盪,因此要再從那裡降低增益來調整。

理解度檢測

以比例(P)控制不含積分元件的(0型)受控體。加大比例增益 Kp 時的一般變化,正確的是下列何者?

  1. A穩態誤差變小但不會變成0,增益太大時響應會變得振盪或不穩定
  2. B穩態誤差正好變成0,無論增益加到多大,響應都不會振盪,一定保持穩定
  3. C響應的快慢不變,只有穩態誤差持續變大
查看答案與解析

正確答案:A. 穩態誤差變小但不會變成0,增益太大時響應會變得振盪或不穩定

比例控制是輸出與誤差成正比的操作量、最基本的控制。加大 Kp 會使響應變快,對步階的穩態誤差 1/(1 + Kp·K)(K 為受控體的穩態增益)也變小,但沒有誤差時操作量也會變成0,因此誤差不會變成0(偏移)。此外,提高增益會使相位邊限減少、過衝變大,延遲大的系統會變得不穩定。要消除穩態誤差,需加入積分動作。

在PI控制中,加入積分(I)動作的主要目的與其副作用的組合,正確的是下列何者?

  1. A目的是去除高頻的雜訊,副作用是穩態誤差變大
  2. B目的是消除對固定目標值或擾動的穩態誤差,副作用是相位落後而容易振盪
  3. C目的是預先察覺誤差的變化以加快響應並抑制超越,副作用是大幅放大高頻的雜訊
查看答案與解析

正確答案:B. 目的是消除對固定目標值或擾動的穩態誤差,副作用是相位落後而容易振盪

積分動作把誤差隨時間累積成操作量,因此只要還殘留一點誤差,就會持續改變操作量,最後使穩態誤差為0。另一方面,積分元件會使相位落後90°,因此相位邊限減少,容易發生過衝與振盪。所以要調整積分時間 Ti,避免設得太短。加快響應、抑制超越並容易放大雜訊,是微分動作的特徵。

  1. PID控制的微分(D)動作的性質與實作上的對策,正確的組合是下列何者?
  2. 在PID控制中,防止目標值以步階改變的瞬間操作量大幅跳升(微分衝擊)的方法,正確的是下列何者?
  3. 在Ziegler–Nichols的極限增益法中,只用比例控制提高增益,由出現持續振盪時的增益 Ku 與振盪週期 Tu,以 Kp = 0.6Ku、Ti = 0.5Tu、Td = 0.125Tu 決定PID控制的參數。Ku = 8、Tu = 2 s 時的值為下列何者?

前往控制工程基礎的練習題

相關名詞的解說

PID控制
把與誤差 e 成正比的項(P)、與誤差的積分成正比的項(I)、與誤差的微分成正比的項(D)相加,以決定操作量的回授控制。寫成 u = Kp(e + (1/Ti)∫e dt + Td·de/dt),Kp 稱為比例增益,Ti 稱為積分時間,Td 稱為微分時間。比例負責速度,積分負責消除穩態誤差,微分負責抑制振盪。結構簡單,用於溫度、馬達、電源、化學製程等大部分的工業控制迴路。
穩態誤差
控制系統的響應穩定下來之後,仍殘留的目標值與受控量之差,也稱為偏移。在單位回授系統中,對步階目標值為 1/(1 + Kp)(Kp = G(0) 為位置誤差常數),在前向路徑不含積分的(0型)系統中不會變成0。在含有1個積分的1型系統中,對步階的穩態誤差為0,對斜坡目標值則殘留 1/Kv(Kv 為速度誤差常數)的誤差。PI控制的積分動作就是用來消除這個誤差的。
過衝
在步階響應等情況下,輸出超過終值的現象,也指其最大的超越量。在控制工程中以相對於終值的比例(%)表示,在沒有零點的二階系統中為只由阻尼比 ζ 決定的 exp(−πζ/√(1 − ζ²))。在回授控制系統中,相位邊限越小,過衝越大。在電子電路中,訊號或電壓的波形因導線電感或反射而暫時超過最終位準的現象,也同樣稱為過衝。
積分飽和
在操作量於致動器的上限或下限飽和的期間,PID控制的積分項仍持續累積誤差而變得過大的現象。即使誤差的正負號改變,在累積的積分值減少之前,操作量仍維持飽和,造成大幅的過衝與長時間的振盪。以抗積分飽和(anti-windup)的方法防止,例如在飽和期間停止積分的條件積分(箝制)、把限制前與限制後的差回饋到積分的反算法(back-calculation),以及使用速度型的PID等。
安定時間
施加步階輸入後,輸出進入終值的指定範圍(±2%或±5%等)並且之後不再離開該範圍所需的時間。它同時表示響應的快慢與穩定程度;二階系統的±2%安定時間約可估計為 4/(ζωn),±5%則約為 3/(ζωn)。一階系統的±2%安定時間約為3.9T(T 為時間常數)。在AD轉換器或運算放大器的規格中,輸出穩定到指定精度所需的時間,也稱為安定時間。
一階系統
轉移函數以 G(s) = K/(1 + Ts) 表示的系統。K 為穩態增益,T 為時間常數。對步階輸入的輸出為 K(1 − e^(−t/T)),在 t = T 時達到終值的約63.2%,3T 時約95%,5T 時約99.3%,沒有過衝。RC電路、熱系統、液位系統等許多常見的系統,都能以這個形式近似。在頻率響應中,以角頻率 1/T 為轉折點,增益以 −20 dB/dec 下降。
回授控制
以感測器量測受控量並與目標值比較,改變操作量使兩者之差(誤差)變小的控制。訊號沿迴路繞行一圈,因此也稱為閉迴路控制。無論原因為何都修正結果的偏差,因此對擾動與受控體的變化很強,但在誤差出現後才修正,因此有延遲,增益太高則會造成振盪或不穩定。PID控制是代表,廣泛用於溫度、速度、電壓、位置等的控制。

相關的比較