上一節中,我論述了PID算法的基本形式,並對其控制過程的實現有了一個簡要的說明,通過上一節的總結,基本已經可以明白PID控制的過程。這一節中先繼續上一節內容補充說明一下。
1.說明一下反饋控制的原理,通過上一節的框圖不難看出,PID控制其實是對偏差的控制過程;
2.如果偏差為0,則比例環節不起作用,只有存在偏差時,比例環節才起作用。
3.積分環節主要是用來消除靜差,所謂靜差,就是系統穩定后輸出值和設定值之間的差值,積分環節實際上就是偏差累計的過程,把累計的誤差加到原有系統上以抵消系統造成的靜差。
4.而微分信號則反應了偏差信號的變化規律,或者說是變化趨勢,根據偏差信號的變化趨勢來進行超前調節,從而增加了系統的快速性。
好了,關於PID的基本說明就補充到這里,下面將對PID連續系統離散化,從而方便在處理器上實現。下面把連續狀態的公式再貼一下:
假設采樣間隔為T,則在第K T時刻:
偏差err(K)=rin(K)-rout(K);
積分環節用加和的形式表示,即err(K)+err(K+1)+„„;
微分環節用斜率的形式表示,即[err(K)-err(K-1)]/T;
從而形成如下PID離散表示形式:
至於說Kp、Ki、Kd三個參數的具體表達式,我想可以輕松的推出了,這里節省時間,不再詳細表示了。
其實到這里為止,PID的基本離散表示形式已經出來了。目前的這種表述形式屬於位置型PID,另外一種表述方式為增量式PID,由U上述表達式可以輕易得到:
這就是離散化PID的增量式表示方式,由公式可以看出,增量式的表達結果和最近三次的偏差有關,這樣就大大提高了系統的穩定性。需要注意的是最終的輸出結果應該為
u(K)+增量調節值;
PID的離散化過程基本思路就是這樣,下面是將離散化的公式轉換成為C語言,從而實現微控制器的控制作用。