PID控制原理

 PID控制原理
 現在只是在應用,所以沒有必要在數學上去證明
1. PID只是一個控制理論,沒有多麼神奇的(在心理上先藐視他)
2.一些約定:{

     Kp比例係數

     Ki:積分系數;

     Kd:微分系數;
     O:輸出
     X:現在的溫度**
     E:誤差   E=80-X;
     }
     
假設我現在想要實現恆溫的加熱器,設定一個溫度是80℃;背景就是這樣,那麼聰明的Mr.Ding接到這任務,發現現在室溫是24℃,於是他打開加熱器的開關,開始加熱,只要沒有到80℃,就一直加熱(加熱功率恆定),很快就到了80℃,而且馬上就超過了80℃,這是Mr.Ding就把加熱器關了,很快溫度就下降了,而且還小於了80℃,這樣來回了300回合,聰(S)明(B)的Mr.Ding受不了了,於是就去問他的師傅Mr.Mr.Ding。還是師傅聰明啊,先給Mr.Ding一頓揍,然後說這麼簡單的問題還還有臉來問,你用一個可調功率的加熱器,當溫度接近80℃的時候就把功率調小就好了。
                         也就是:O=Kp*(E)=Kp*(80-X);
Mr.Ding發現還真是好使啊,他拿了一個溫度計測量實時的溫度,現在室溫是24℃;他打開加熱器功率  O=Kp*(80-X);當溫度接近目標溫度80℃的時候,輸出功率就非常小了,可是在時間的過程中他發現始終溫度徘徊在接近80的附近而到達不了80度,愛思考的他發現
                         O=Kp*(80-X)
                         X與O是正相關的,假設X=1*O
                         於是: O=Kp*(80-O);
                         O=【Kp/(1+Kp)】*80;
                         當Kp→∞   O纔會等於80;就是X纔會等於80 ,But  這是工科,是工程沒有數學系那些個矯情的理想情況,所以也就是說用Kp乘以E永遠無          法準確的到達目標,(Btw 這就是所謂的穩態誤差);所以說Mr.Mr.Ding也是會出錯的,馬克思說得好實踐纔是檢驗真理的唯一標準 ,老鳥也會出錯,不要看他們裝逼覺得很屌,不要迷信他們
     那麼遇到這個穩態誤差該怎麼辦呢?
聰明的Mr.Ding想有一個誤差,那我要是把他積分一下,然後反饋到輸出,那麼隨着時間的增長就會導致最終等於目標值
                    O=Kp*(E)+Ki*( ∫E dt)
               即:O=Kp*(80-X)+Ki*[∫(80-X) dt]
                    這樣就消除了穩態誤差,但是CPU中無法積分,那麼就用和來代替
                    O=Kp*(E)+Ki*(ΣE)
     Mr.Ding趕快把這個理論用於實踐,現在可以很快的調節到80℃,但是調節的過程中一開始那個過調的毛病又出現了,這可怎麼辦呢?
Mr.Ding認爲出現這種問題主要是對誤差的反應太慢 ;之前的比例和積分都是對誤差產生了,然後做出調節,如果有一個工具能夠預測撿來的誤差,提前調節,那麼早一步做準備,這樣就可以彌補一下反應太慢的缺點。數學不錯的Mr.Ding很快找到了:微分 ;衆所周知微分反映的曲線變化的趨勢,所以選擇微分來提前預測誤差的變化是科學的
                   O=Kp*(E)+Ki*( ∫E dt)+Kd*(dE/dt)
               同樣計算機無法微分,那就拿後向差分來代替

於是Mr.Ding打開加熱器,隔一段固定的時間T就按照上面的公式計算一下下一次的功率(也是蠻拼的,不過我們有單片機這貨來代替)

終於從24℃到目標80℃的過程又快,又穩定





               (圖片來自 http://ctms.engin.umich.edu/CTMS/index.php?example=Introduction&section=ControlPID)

爲了搞懂PID,也是拼了Mr.Ding一晚上的時間。上面那個鏈接裏的PID介紹完爆了國內各大論壇關於PID的講解



















     
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章