5.位置式PID的參數(shù)整定分析和實驗研究
在前述介紹中,我們的控制是圍繞Ek來控制,Ek等于目標值-實際值,它描述的是一種系統(tǒng)的位置變化,所以前述的算法我們稱之為位置式PID。
?
位置式PID的輸出公式為:
? ? ? ? ? ? ? ? ? ? ? u(t) = Kp[e(t)? +1/Ti ∫_0^t?〖e(t)dt + Td (de(t))/dt〗? ? (1)
式(1)中,u(t)為輸出,也就是前面我們介紹的有效加熱時間, Kp為比例項,Ti為積分時間系數(shù),Td為微分時間系數(shù),e(t) = 目標值 - 測量值,也就是前面介紹的Ek。
?
將PID公式離散化,得
? ? ? ? ? ? ? ? ? ?u(t) = Kp[e(t)? +dt/Ti ∑_(j = 0)^k?e_j + Td? (e(k) - e(k-1))/dt? ]? ? (2)
結(jié)合前面的分析,可以看到
Ki? = Kp * dt/Ti
Kd? = Kp * Td/dt
離散后dt為前后兩次溫度采樣時間間隔(也是PID計算執(zhí)行的間隔),實際上就是采樣周期(對于前面的討論,就是500ms),用T來表示,所以又有:
????? Ki? =? Kp? * T/Ti????? (3)
???? Kd? = kp? * Td/T????? (4)
由于T是設定好的,所以對于位置式PID,最重要的是確定好Kp,Ti和Td。
?
我們在用Z-N整定法來整定。采用Z-N整定法來整定時要先將系統(tǒng)起振,然后通過振蕩信號來確定臨界周期Tc,然后再根據(jù)臨界周期計算Ti和Td,它們的關系為:
Ti = 0.5 * Tc?? (5)
Td = 0.12 * Tc? (6)
?
要想讓系統(tǒng)起振,往往需要比較大的Kp,通常在溫度較低時,將臨界點設置為目標溫度的80%即可讓系統(tǒng)起振,在溫度較高時則需要將臨界點設置為目標溫度的90%以上系統(tǒng)才能起振。
Kp設置較大會引起非常嚴重的超調(diào),所以可以在溫升的時候使用微分項進行抑制,到系統(tǒng)達到目標溫度附近后將微分項去掉,讓Kp單獨作用,使得系統(tǒng)振蕩,然后記錄振蕩的周期作為臨界周期Tc,然后利用式(5)和式(6)來計算Ti和Td。然后將Kp降為原來的60%,即可得到位置式PID的三個參數(shù)。
?
參數(shù)整定實驗
下面我們在上節(jié)課的微分實驗的基礎上來做參數(shù)整定實驗。實驗的相關點如下:
1.目標溫度設置為60°。
2.Kp的取值。在距離目標值的80%時的值設為臨界值,由此計算出Kp,如下:
1000 = Kp * ( 600 - 600*80%)
得Kp = 8.33。
3.在加熱過程中使能微分項,去掉積分項。微分項中的Kd 設置為3000。當距離目標溫度小于1°時去掉微分項,只保留Kp的作用。
實驗的結(jié)果如下:

整定結(jié)果為 Kp = 8.33*0.6 = 5; Ti = 0.5* Tc = 118.75s, Td = 0.12 *Tc = 28.5s
?
下面我們將Kp = 8.33*0.6 = 5; Ti = 0.5* Tc = 118.75s, Td = 0.12 *Tc = 28.5s應用于位置式PID算法。應用中注意如下事項:
1.在Ek ≤±5°時才使用積分。
2.在升溫的過程中加大Td,將Td加大10倍,在第一次到達55°C后,將Td恢復為28.5S。
實驗結(jié)果如圖2所示。

此時仍然有約4.3°的超調(diào),但可以繼續(xù)加大啟動時的微分效果,或者針對Ek,分段使用不同的微分時間系數(shù)來抑制。由圖2可以看到,整定后的結(jié)果非常理想,穩(wěn)定后溫度的精度可達±0.5°。
?
關于PID介紹的更多內(nèi)容,我們將在近期正點原子平臺的第三期教學給大家分享。在這一期的教學中,我們將推出自整定方法和PID模糊控制,關于PID的模糊控制,應該是全網(wǎng)第一個實戰(zhàn)的項目,結(jié)果也不錯。至此,關于PID的相關介紹我們就結(jié)束了,如果需要源碼等資料,請跟作者聯(lián)系。
?
如果大家有興趣,可以關注公眾號:?? O老師講32?
或者直接掃碼添加
