PLC的PID功能介紹 三菱PLC控制系統設計
1. PID控制
在工業控制中,PID控制(比例-積分-微分控制)得到了廣泛的應用,這是因為PID控制具有以下優點:
1)不需要知道被控對象的數學模型。實際上大多數工業對象準確的數學模型是無法獲得的,對于這一類系統,使用PID控制可以得到比較滿意的效果。據日本統計,目前PID及變型PID約占總控制回路數的90%左右。
2)PID控制器具有典型的結構,程序設計簡單,參數調整方便。
3)有較強的靈活性和適應性,根據被控對象的具體情況,可以采用各種PID控制的變種和改進的控制方式,如 PI、PD、帶死區的PID、積分分離式PID、變速積分PID等。隨著智能控制技術的發展,PID控制與模糊控制、神經網絡控制等現代控制方法相結合,可以實現PID控制器的參數自整定,使PID控制器具有經久不衰的生命力。
2. PLC實現PID控制的方法
如圖6-35所示為采用PLC對模擬量實行PID控制的系統結構框圖。用PLC對模擬量進行PID控制時,可以采用以下幾種方法:
圖6-35 用PLC實現模擬量PID控制的系統結構框圖
1)使用PID過程控制模塊。這種模塊的PID控制程序是PLC生產廠家設計的,并存放在模塊中,用戶在使用時只需要設置一些參數,使用起來非常方便,一塊模塊可以控制幾路甚至幾十路閉環回路。但是這種模塊的價格昂貴,一般在大型控制系統中使用。如三菱的A系列、Q系列PLC的PID控制模塊。
2)使用PID功能指令。現在很多中小型 PLC都提供PID控制用的功能指令,如FX2N系列PLC的PID指令。它們實際上是用于PID控制的子程序,與A/D、D/A模塊一起使用,可以得到類似于使用PID過程控制模塊的效果,價格卻便宜得多。
3)使用自編程序實現PID閉環控制。有的PLC沒有有PID過程控制模塊和 PID控制指令,有時雖然有PID控制指令,但用戶希望采用變型PID控制算法。在這些情況下,都需要由用戶自己編制PID控制程序。
3. FX2N的PID指令
PID指令的編號為FNC88,如圖6-36所示源操作數[S1]、[S2]、[S3]和目標操作數[D]均為數據寄存器D,16位指令,占9個程序步。[S1]和[S2]分別用來存放給定值SV和當前測量到的反饋值PV,[S3]~[S3]+6用來存放控制參數的值,運算結果MV存放在[D]中。源操作數[S3]占用從[S3]開始的25個數據寄存器。
圖6-36 PID指令
PID指令是用來調用PID運算程序,在PID運算開始之前,應使用MOV指令將參數(見表6-3)設定值預先寫入對應的數據寄存器中。如果使用有斷電保持功能的數據寄存器,不需要重復寫入。如果目標操作數[D]有斷電保持功能,應使用初始化脈沖M8002的常開觸點將其復位。
表6-3 PID控制參數及設定
源操作數 | 參 數 | 設定范圍或說明 | 備 注 |
[S3] | 采樣周期(Ts) | 1~32767ms | 不能小于掃描周期 |
[S3]+ 1 | 動作方向(ACT) | Bit0: 0為正作用、1為反作用 Bit1: 0為無輸入變化量報警 1為有輸入變化量報警 Bit2: 0為無輸出變化量報警 1為有輸出變化量報警 | Bit3 ~ Bit15不用 |
[S3]+ 2 | 輸入濾波常數(L) | 0~99(%) | 對反饋量的一階慣性數字濾波環節 |
[S3]+ 3 | 比例增益(Kp) | 1~32767(%) |
|
[S3]+ 4 | 積分時間(TI) | 0~32767(×100ms) | 0與∝作同樣處理 |
[S3]+ 5 | 微分增益 (K D) | 0~100(%) |
|
[S3]+ 6 | 微分時間(TD) | 0~32767(×10ms) | 0為無微分 |
[S3]+ 7 ~ [S3]+ 19 | — | — | PID運算占用 |
[S3]+ 20 | 輸入變化量(增方)警報設定值 | 0~32767 | 由用戶設定ACT([S3]+ 1)為K2~K7時有效,即ACT的Bit1和Bit2至少有一個為1時才有效; 當ACT的Bit1和Bit2都為0時,[S3]+ 20 ~[S3]+ 24無效 |
[S3]+ 21 | 輸入變化量(減方)警報設定值 | 0~32767 | |
[S3]+ 22 | 輸出變化量(增方)警報設定值 | 0~32767 | |
[S3]+ 23 | 輸出變化量(減方)警報設定值 | 0~32767 | |
[S3]+ 24 | 警報輸出 | Bit0: 輸入變化量(增方)超出 Bit1: 輸入變化量(減方)超出 Bit2: 輸出變化量(增方)超出 Bit3: 輸出變化量(減方)超出 |
PID指令可以同時多次使用,但是用于運算的[S3]、[D]的數據寄存器元件號不能重復。
PID指令可以在定時中斷、子程序、步進指令和轉移指令內使用,但是應將[S3]+7清零(采用脈沖執行的MOV指令)之后才能使用。
控制參數的設定和 PID運算中的數據出現錯誤時,“運算錯誤”標志M8067為 ON,錯誤代碼存放在D8067中。
PID指令采用增量式PID算法,控制算法中還綜合使用了反饋量一階慣性數字濾波、不完全微分和反饋量微分等措施,使該指令比普通的PID算法具有更好的控制效果。
PID控制是根據“動作方向”([S3]+1)的設定內容,進行正作用或反作用的PID運算。PID運算公式如下:
以上公式中:△MV是本次和上一次采樣時PID輸出量的差值,MVn是本次的PID輸出量;EVn和 EVn-1分別是本次和上一次采樣時的誤差,SV為設定值;PVn是本次采樣的反饋值,PVnf、PVnf-1和PVnf-2分別是本次、前一次和前兩次濾波后的反饋值,L是慣性數字濾波的系數;Dn和Dn-l分別是本次和上一次采樣時的微分部分;Kp是比例增益,TS是采樣周期,TI和TD分別是積分時間和微分時間,αD是不完全微分的濾波時間常數與微分時間TD的比值。
4.PID參數的整定
PID控制器有4個主要的參數K p、T I、T D和T S需整定,無論哪一個參數選擇得不合適都會影響控制效果。在整定參數時應把握住PID參數與系統動態、靜態性能之間的關系。
在P(比例)、I(積分)、D(微分)這三種控制作用中,比例部分與誤差信號在時間上是一致的,只要誤差一出現,比例部分就能及時地產生與誤差成正比的調節作用,具有調節及時的特點。比例系數Kp越大,比例調節作用越強,系統的穩態精度越高;但是對于大多數系統,Kp過大會使系統的輸出量振蕩加劇,穩定性降低。
積分作用與當前誤差的大小和誤差的歷史情況都有關系,只要誤差不為零,控制器的輸出就會因積分作用而不斷變化,一直要到誤差消失,系統處于穩定狀態時,積分部分才不再變化。因此,積分部分可以消除穩態誤差,提高控制精度,但是積分作用的動作緩慢,可能給系統的動態穩定性帶來不良影響。積分時間常數TI增大時,積分作用減弱,系統的動態性能(穩定性)可能有所改善,但是消除穩態誤差的速度減慢。
微分部分是根據誤差變化的速度,提前給出較大的調節作用。微分部分反映了系統變化的趨勢,它較比例調節更為及時,所以微分部分具有超前和預測的特點。微分時間常數TD增大時,超調量減小,動態性能得到改善,但是抑制高頻干擾的能力下降。
選取采樣周期T S時,應使它遠遠小于系統階躍響應的純滯后時間或上升時間。為使采樣值能及時反映模擬量的變化,TS越小越好。但是TS太小會增加CPU的運算工作量,相鄰兩次采樣的差值幾乎沒有什么變化,所以也不宜將TS取得過小。
文章版權歸西部工控xbgk所有,未經許可不得轉載。