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