PID回路控制的原理與調(diào)試
在本章中將重點(diǎn)介紹如何使用GForce-200PLCCPU222進(jìn)行PID回路控制。
2. PID控制概述
GForce-200系列PLC能夠進(jìn)行PID控制,其CPU最多可支持8個(gè)PID控制回路。PID是閉環(huán)控制系統(tǒng)中比例-積分-微分控制算法,它可以看作是這三項(xiàng)之和,根據(jù)設(shè)定值與被控對(duì)象實(shí)際值的差值,按PID方式計(jì)算出控制輸出量,使反饋跟隨設(shè)定值變化,因此PID控制是負(fù)反饋閉環(huán)控制。其中比例項(xiàng)是增益(Kc)與偏差的乘積,積分項(xiàng)與偏差的和成正比,而微分項(xiàng)與偏差的變化成正比。
PID控制功能是通過(guò)PID指令功能塊實(shí)現(xiàn)的。在S7-200中,PID回路指令運(yùn)用回路表中的輸入信息和組態(tài)信息,進(jìn)行PID運(yùn)算,交換數(shù)據(jù),編程極其簡(jiǎn)便,該指令影響特殊存儲(chǔ)器標(biāo)志位SM1.1 (溢出)。只有在邏輯堆棧棧頂值為1時(shí),才能進(jìn)行PID運(yùn)算。本指令有兩個(gè)操作數(shù):TBL和LOOP(如下圖所示)。其中TBL 是回路表的起始地址,操作數(shù)限用VB區(qū),數(shù)據(jù)類型是BYTE型;LOOP 是回路號(hào)可以是 0 到 7 的整數(shù),因此在程序中最多可以用 8 條PID 指令。如果有兩個(gè)或兩個(gè)以上的 PID 指令用了同一個(gè)回路號(hào),即使這些指令的回路表不同,那么這些 PID 運(yùn)算之間也會(huì)產(chǎn)生不可預(yù)料的結(jié)果。在直接使用PID 指令功能塊之前,必須把增益(Kc)、采樣時(shí)間(Ts)、積分時(shí)間(Ti)、微分時(shí)間(Td)等等這些實(shí)數(shù)全部轉(zhuǎn)換成0.0-1.0之間的實(shí)數(shù),以便PID 指令功能塊接受,也就是說(shuō)把外界實(shí)際物理量轉(zhuǎn)換成PID 指令可以接收的數(shù)據(jù),即輸入/輸出的轉(zhuǎn)換與標(biāo)準(zhǔn)化處理。
3. PID控制編程調(diào)試
在本套系統(tǒng)中,為了生產(chǎn)需求,鍋爐內(nèi)蒸汽壓力應(yīng)維持在0.85-1.0MPa之間,壓力的大小由壓力變送器檢測(cè),變送器壓力量程0-2.5MPa,輸出DC4-20mA。因此在0.85MPa時(shí),相應(yīng)的電流輸出是9.44Ma,同樣1.0MPa時(shí)輸出為10.4mA,其標(biāo)準(zhǔn)化刻度值如下圖所示。
過(guò)程變量值是壓力變送器檢測(cè)的單極性模擬量,回路輸出值也是一個(gè)單極性模擬量用來(lái)控制鼓風(fēng)機(jī)的速度。這兩個(gè)模擬量的范圍是 0.0 -1.0 ,分辨率為1/32000 (標(biāo)準(zhǔn)化)??梢猿醪酱_定Kc=0.06,Ts=0.2,Ti=10.0,在這里不用微分作用,程序編輯如下圖。
程序上采用了主程序,子程序,中斷程序的結(jié)構(gòu)模式,程序清晰,明了,大大縮短了周期掃描時(shí)間。
4. 調(diào)試程序
選擇PID的參數(shù),以及相互間的配合,可以影響PID控制的穩(wěn)定性。如采樣時(shí)間過(guò)短對(duì)外部信號(hào)的變化有可能檢測(cè)不到,而過(guò)長(zhǎng)的采樣時(shí)間顯然不能滿足控制精度的要求。又如過(guò)大的增益又會(huì)造成控制的震蕩。在調(diào)試程序時(shí)要注意這些參數(shù)的設(shè)置,慢慢調(diào)試以至達(dá)到穩(wěn)定的PID控制。
5. 結(jié)束語(yǔ)
PID控制在閉環(huán)控制中有著重要的作用,這里僅以控制鼓風(fēng)機(jī)的速度來(lái)保持鍋爐內(nèi)蒸汽壓力的恒定,介紹PID控制。同樣鍋爐內(nèi)負(fù)壓的維持,也是類似與此,這里不在詳細(xì)介紹。
評(píng)論