-
1 # 新能源汽車控制
-
2 # Talk工控白
應用最為廣泛的調節器控制規律就是比例、積分、微分控制,即PID控制也可叫PID調節。其結構簡單、穩定性好、工業可靠、調整方便,則成為工業控制的香餑餑。
PID控制原理
在被控物件結構和引數不能完全掌握或得不到準確的一個數學模型,控制理論的其它技術又難適用,就需要經驗和現場除錯來確定,這時利用PID控制技術最好不過。利用比例、積分、微分來算出控制量而進行控制。
比例控制
比例控制是最簡單的控制方式,比例控制器的輸出與輸入誤差訊號成正比例關係。當只有比例控制,系統輸出有穩態誤差存在,穩態誤差也就是所說的餘差。
積分控制
在積分控制中,積分控制器的輸出與輸入誤差訊號的積分成正比例關係。假如一個自動控制系統,進入穩態後還存在餘差。引入積分控制,而積分項誤差取決於時間的積分。當時間增加,積分項誤差增加。即便誤差很小,積分項誤差隨時間的增加而增加,從而控制器輸出也增加,使餘差進一步減小,直至到零。因此,積分控制作用就是消除餘差。
微分控制
在微分控制中,控制器的輸出與輸入誤差訊號的微分成正比例關係。自動控制系統在克服誤差的調節過程中可能出現振盪甚至失穩,主要是由於慣性元件或滯後元件的存在,因此引入微分控制的目的就是就是超前控制。
比較常見的被控變數PID引數的經驗資料如下圖
-
3 # 縷縷松
PID是一種控制演算法,它的中文名稱是比例積分微分控制。
這種控制的基本思路是根據偏差的大小運用比例、積分、微分計算出一個控制量,將這個控制量輸入被控制的系統,系統接收到該輸入量後會輸出一個相應的輸出量,PID控制器再檢測該輸出量,並再計算偏差,然後再迴圈以上過程,以下就是控制框圖。這裡P,I,D並不是都要加上去的,有時只用P或者只用PI。
上面的描述對初學者可能比較不好理解,下面用一個例子在結合上面的控制框圖做一下說明,可能會對理解有幫助。
這個例子的場景是: 你在用煤氣灶燒一壺水,但是讓人蛋疼的不是讓你把水燒開,而是要你把水加熱到50度,並一直保持在50度。這個場景中給你配了溫度計,你能看到水溫是多少度。你可以控制的只有煤氣灶的閥門開度,從而控制火的大小,並且每隔一定的時間——如一分鐘——調一次閥門開度。
結合上面的控制框圖,把水溫控制在50度,即框圖中的設定值Set point value就是50度;透過溫度計測到的水溫就是被控系統的輸出,即圖中的y(t);Set point value-y(t)就是偏差e(t);你的大腦現在就是PID控制器;你調節的煤氣灶閥門開度就是被控系統的輸入量,即u(t);調節閥門開度的間隔為控制器的取樣時間;
比例控制作用剛開始是你發現水溫接近0度,這時我想你會把閥門開到最大,以便快速的升溫,當水溫慢慢接近50度,閥門的開度也響應的慢慢關小,當水溫達到50度或以上時就把火關了。當火關了後水溫可能就很快又降下來,然後你又開啟煤氣灶,如此反覆操作,水溫在50度上下波動。如果操作的間隔過大,溫度的波動就哎,好累啊,這就是比例控制的作用。
微分控制作用上面的控制法中,你發現雖然水溫可以控制在50度附近,但是溫度在50度上下波動。為了不讓溫度超過50度太多,即不要超調太多,你可能會考慮關注水溫的上升斜率,如果升溫上升的太快,你可能會相應的調小閥門開度,讓火稍小一點,這樣處理的結果可能是水溫超過50度不是很多,但相應的水溫上升時間變長了。這個就是微分控制的作用。
積分控制作用有時有透過以上兩種控制後可能會出現水溫已經穩定了,但精度不是很高,比如穩定在49度或者52度。積分控制的作用是提高控制,積分控制的輸出與偏差的累積和有關,當水溫穩定為50後偏差為零時,積分控制的輸出是一個常數,而比例控制和微分控制的輸出為零。
這些就是我對PID控制的理解
口口木的筆記 2019-5-19
-
4 # 雅帆電子
PID三個字母是比例,積分,微分的英文首字母縮寫。可見這三個功能在系統中都起作用,只是負責的功能不同。
別一看有微積分就嚇的不行,認為比較難,其實不是的,下面我就用大白話給你說一下吧,瞭解原理就行了,我感覺沒必要套用教課書上的模式,弄一大堆公式。我再給你畫幾張圖,很容易就明白的。
一、比例調節P很實際一個例子,比如你跑向一個終點,當你離終點很遠時會全速跑,快接近終點時你會降速,基本上到達終點了,你也停下來了。那麼這個模型用圖畫出來就是這個樣子的。
這裡的100米,10米就是誤差,誤差越大,你跑的就越快,如果用數學建模的話,就是誤差乘以一個係數,這個係數就是PID中的P(比例)。
這個圖中的比例就是100,你看100m時,乘以100你就用10km/h去跑,10m時乘以100你就用1km/h去跑。
二、積分調節I積分調節只有你在快接近目標時才起主要作用。比如說離目標還有1m時。積分是調節誤差的,並且是隨著時間是累計的(時間越大,這個誤差表現的越明顯,因為是誤差乘以時間),這個時候就要考慮傳送帶的因素了。比如現在是1米,你不向前走一步去補償就拿不到沙包,並且隨著時間的流失,你是會向後移動的。誤差會越來越大,1米,2米。。。。
三、微分調節D微分就是調節變化的快慢。比如說這時候有個8級大風,哎呀你老慘了。
注意我說的風是陣風,就是一陣有一陣沒的那種,以體現變化量。8級大的風對你的速度肯定有影響的。
那麼這個時候你就會自動根據風的大小調節速度。風大你就多使點勁,風小你就少使點勁。這個使勁的多少就是微分系數。
回覆列表
PID控制器由比例調節、積分調節、微分調節三部分組成。比例調節根據偏差的大小調節輸出,積分調節根據偏差進行積分累計來調節輸出,微分調節根據偏差的微分來調節輸出。PI控制器的表示式為:u(t) = Kp*e(t) + Ki*∫e(t) dt+Kd*de(t)/dt
對於一個控制系統,我們期望的響應結果是穩(系統穩定不震盪不發散)、快(系統響應快速)、準(系統靜態誤差小)。對PID控制器的調節結果評價也是如此。
比例係數Kp:
三個引數中的絕對主力,不可或缺。Kp增大可以加快系統響應,減小靜差,但系統超調量會加大,穩定性變差。比例控制是一種立即控制,只要有偏差,就立即輸出控制量。大部分系統只需要P控制即可實現基本的穩快準需求。
積分系數Ki:
三個引數中的一般主力,用於消除靜差、Ki減小可以降低超調量,使系統的穩定性增強。積分控制是一種修復控制,只要有偏差,就會逐漸去往消除偏差的方向去控制。
微分系數Kd:
三個引數中的預備人員,一般不用,在反饋量噪聲比較大時可能會使系統震盪。Kd增大可以加快系統響應,減小超調量,適用於遲滯系統或無阻尼系統。微分控制是一種提前控制,以偏差的變化率為基準進行控制。
基本除錯方法:先比例(從中間到兩邊)、後積分(從0到大)、再微分(從0到大)。
下面將以電機的轉速PID控制為例,進行模擬除錯,來具體理解這個除錯過程。
PID控制器模型基於上面的公式,PID控制器Simulink模型可表示為下圖:
直流電機模型我們需要一個被控物件模型,這裡選擇一個12V直流電機作為被控物件。直流電機的數學表示式為:
U=I*R+Ke*φ*w+L*dI/dt
Te=Kt*φ*I
Te-TL=J*dw/dt+B*w
基於上述表示式,直流電機的Simulink模型可表示為下圖所示:
模擬除錯把以上的控制器模型和直流電機模型組合起來,一個透過PI控制器控制電機轉速的模擬模型可表示如下(目標轉速1000rpm):
電機引數設定如下:
準備工作完成,開始除錯。
第一步:先比例,從中間到兩邊。
其實可以先定量計算中間值取多少。
把電機穩定控制在1000rpm(104.7rad/s)±50rpm所對應的電機扭矩:
Te=W*B+TL=104.7*0.01+1=2.047 Nm
電機電流:
I=Te/Kt/φ=2.047/0.9529/0.1=21.482A
電機電壓:
U=I*R+Ke*φ*w=21.482*0.1+0.1*0.1*104.7=3.1952V
比例係數Kp:
Kp=U/e=3.1952/50=0.0639
用Kp=0.0639,Ki=0,Kd=0,模擬結果如下圖,穩態偏差剛好50rpm左右,符合期望。
以Kp=0.06為中間,向兩邊縮小或放大3倍左右觀察。所以我們分別給定Kp=0.02、0.06、0.2,看看模擬結果如下圖:kp為0.02時,雖然穩態誤差較大,但是超調量較小,響應速度不慢,綜合效果最好。kp太大時超調量偏大且響應速度也沒有明顯提高。所以Kp暫定為0.02左右(如果系統不太在意超調量大小,Kp取0.06也可,這個取決於你對控制系統的要求,即對穩、快、準的需求有優先順序)。
第二步:後積分,從0到大。
我們取Ki=0、0.006、0.02、0.06,模擬觀察。隨著Ki的增大,系統達到穩定時間越來越短,所以我們可以暫定Ki=0.06。
第三步,再微分,從0到大。
我們取Kd=0、0.0001、0.001、0.01,模擬觀察。隨著Kd的增大,系統穩定性先變好再變差,Kd為0.001時效果最好,所以我們定Kd=0.001。
到這裡,三個引數都有了,分別是Kp=0.02,Ki=0.06,Kd=0.001,系統響應曲線如下圖,感覺還可以。
但是,實際的反饋訊號往往有噪聲,微分控制有失穩的風險,所以用微分時一定要慎重。
一般實際工程控制中,微分控制使用確實較少。假如我們不能加微分調節,還有沒有其他辦法能讓響應曲線更好呢?答案肯定是有的,先介紹其中一種。
把目標轉速1000rpm進行一個低通濾波後,再給到PID控制器,選取Kp=0.005,Ki=0.015(引數除錯過程同上),模擬結果如下圖,響應雖不及PID控制快速,但是與PI控制器相比,超調量大大減小,穩定性有所提高。
以上,就是個人對PI控制引數調節的部分經驗,下次可以接著繼續聊。