PID演算法知識點博文收藏記錄
https://blog.csdn.net/Uncle_GUO/article/details/51367764
https://blog.csdn.net/HandsomeHong/article/details/72528869
一個故事讀懂PID控制絕對經典
一文看懂舵機硬體pid電路原理-電子發燒友網
《從新手到高手 自動調節系統解析與PID整定》
PID控制器的數字實現及C語法講解 - free_稀飯 - 部落格園
有的時候書本上的僅僅是理論,讀起來會比較深奧。反倒是部落格上的有些文章是比較不錯的。所以記錄下。
mcu實現的有位置式PID和增量PID,但是通常用的多是增量式PID,這樣可以減少mcu的記憶體佔用,效果也可以達到,因此在多數場景中,都用增量式PID控制的方法。
兩者的優缺點
a) 增量式演算法優點:①算式中不需要累加。控制增量Δu(k)的確定僅與最近3次的取樣值有關,容易通過加權處理獲得比較好的控制效果;②計算機每次只輸出控制增量,即對應執行機構位置的變化量,故機器發生故障時影響範圍小、不會嚴重影響生產過程;③手動—自動切換時衝擊小。當控制從手動向自動切換時,可以作到無擾動切換。
b) 位置式PID控制演算法的缺點:當前取樣時刻的輸出與過去的各個狀態有關,計算時要對e(k)進行累加,運算量大;而且控制器的輸出u(k)對應的是執行機構的實際位置,如果計算機出現故障,u(k)的大幅度變化會引起執行機構位置的大幅度變化。
區別於聯絡:
1、其實是位置式和增量式是一樣的,增量式最後那個輸出化解完和位置式一樣。增量式PID可以通過 u(k) = u(k-1) + Δu(k) 得到位置式輸出
2、增量型演算法與位置型演算法比較:
(1)增量型演算法不需做累加,計算誤差後產生的計算精度問題,對控制量的計算影響較小。位置型演算法用到過去的誤差的累加,容易產生較大的累加誤差。
(2)增量型演算法得出的是控制的增量,誤動作影響小,必要時通過邏輯判斷限制或禁止本次輸出,不會影響系統的工作。位置型演算法的輸出是控制量的全部輸出,誤動作影響大。
(3)增量式演算法的主要優勢體現在對積分環節的處理上,積分作用的累加效果會影響到輸出的準確性。
(4)樓上的說法讓我獲益不少,一直沒理解“避免誤動作”的原因。另外,增量式演算法易於實現手、自動的無擾動切換。
增量式PID調教總結
1.負反饋
自動控制理論也被稱為負反饋控制理論。首先檢查系統接線,確定系統的反饋為負反饋。例如電機調速系統,輸入訊號為正,要求電機正轉時,反饋訊號也為正(PID演算法時,誤差=輸入-反饋),同時電機轉速越高,反饋訊號越大。其餘系統同此方法。
2.PID除錯一般原則
a.在輸出不振盪時,增大比例增益P。
b.在輸出不振盪時,減小積分時間常數Ti。
c.在輸出不振盪時,增大微分時間常數Td。
調整方法現在一般採用的是臨界比例法。
部分來源於網路。。
控制系統中應用最為廣泛的一種控制規律。
PID調節器之所以經久不衰,主要有以下優點:
(1)技術成熟,通用性強
(2)原理簡單,易被人們熟悉和掌握
(3)控制效果較好
(一)、PID的形式:
P:Proportion(比例),就是輸入偏差乘以一個常數。I :Integral(積分),就是對輸入偏差進行積分運算。D:Derivative(微分),對輸入偏差進行微分運算。
注:輸入偏差=讀出的被控制物件的值-設定值。比如說我要把溫度控制在26度,但是現在我從溫度感測器上讀出溫度為28度。則這個26度就是”設定值“,28度就是“讀出的被控制物件的值”。
KP為比例增益;TI為積分時間常數;TD為微分時間常數;u(t)為控制
量(控制器輸出);e(t)為被控量與給定值的偏差。
(二)PID引數對控制性能的影響
1.隨著比例係數Kp的增加,超調量增大,系統響應速度加快,
2.積分時間常數Ti對控制性能的影響
積分作用的強弱取決於積分常數Ti。Ti越小,積分作用就越強,反之
Ti大則積分作用弱。積分控制的主要作用是改善系統的穩態效能,消除
系統的穩態誤差。當系統存在控制誤差時,積分控制就進行,直至無
差,積分調節停止,積分控制輸出一常值。
加入積分控制可使得系統的相對穩定性變差。Ti值的減小可能導致
系統的超調量增大,Ti值的增大可能使得系統響應趨於穩態值的速度減
慢。
3.微分時間常數Td對控制性能的影響
隨著微分時間常數Td的增加,閉環系統響應的響應速度加快,調節
時間減小。微分環節的主要作用是提高系統的響應速度。由於該環節對
誤差的導數(即誤差變化率發生作用),它能在誤差較大的變化趨勢時施加
合適的控制。
但是過大的Kd值會因為系統造成或者受控物件的大時間延遲而出現
問題。微分環節對於訊號無變化或變化緩慢的系統不起作用。
總結:
*比例控制能迅速反映誤差,從而減小誤差,但比例控制不能消除穩態誤
差,KP的加大會引起系統的不穩定;
*積分控制的作用是,只要系統存在誤差,積分控制作用就不斷地積累,
輸出控制量以消除誤差。因此只要有足夠的時間,積分控制將能完全消
除誤差,但是積分作用太強會使系統超調加大,甚至使系統出現振盪;
*微分控制可以減小超調量,克服振盪,使系統的穩定性提高,同時加快
系統的動態響應速度,減小調整時間,從而改善系統的動態效能。