山東濰坊工程職業學院 吳慧君 陳金艷
供水系統在現在生產和生活中都是不可缺少的重要環節。傳統供水方式水壓不能保持恒定且水質易污染,容易造成能源浪費。隨著可編程控制技術和變頻調速技術的發展,基于PLC的PID控制應用越來越廣泛,特別是供水行業中。本設計用PLC編程,采用PID對水箱水位進行閉環控制,以達到恒壓供水的目的。
PID控制,即調節器控制規律為比例、積分、微分的控制。PID控制廣泛應用于各種過程控制系統中。過程控制系統先對模擬量進行采樣,再對采樣值進行PID運算,根據運算結果控制模擬量的大小變化,使模擬量的值保持在一定范圍內。其控制結構如圖1所示。PID運算中積分用來消除系統的靜態誤差,提高系統精度;微分用來克服慣性滯后,提高系統穩定性和抗干擾能力;比例可對偏差做出及時響應。三種作用配合,使PID回路快速、準確、平穩運行,從而獲得良好的控制效果。

圖1 PID控制系統結構
恒壓供水箱的結構如圖2所示,系統要求開機后,先手動控制電動機,使水位上升到滿水位的70%,再轉換到PID自動調節,用變頻器驅動水泵維持水位。過程變量PVn 表示水箱水位,由水位檢測傳感器提供,變量經A/D轉換送入PLC;控制信號由PLC執行PID指令后,經D/A轉換后送出,用來驅動變頻器,以達到通過控制電動機轉速來維持水位的目的。
系統控制由S7-200 CPU224 PLC來完成,PLC需擴展A/D轉換模塊EM231和D/A轉換模塊EM232。

圖2 供水系統整體結構
系統PID回路參數表如表1所示。表中過程變量當前值PVn和水位給定值SPn是PID算法的輸入值,可由PID指令讀取但不能更改,根據設計要求,設計給定值SPn數值為0.7;表中PID回路輸出值是由PID指令計算得出的,不用設定,當PID指令執行完后自動更新,但該值需要通過編程轉換為16位數字值,再送往PLC的模擬量輸出寄存器AQWx;表中的增益KC、采樣時間TS、積分時間TI和微分時間TD,根據本設計實際需要,分別設置為0.3、0.1、0.3和關閉微分;表中的上一次積分值MX由PID更新。

表1 PID回路參數表
S7-200 PLC編程軟件STEP7-Micro/WIN提供了PID指令向導,可以方便地完成一個PID閉環控制過程算法。點擊編程軟件指令樹中的“向導PID”圖標,在出現的對話框中設置PID回路編號,根據參數表設定值的范圍、增益、積分時間、采樣周期和微分時間,設置輸入輸出量為單極性變化,完成向導。
完成設置后,軟件自動生成子程序PID0_INIT和中斷程序PID_EXE。軟件還會生成一個PID向導符號表,在表中可以找到各參數的地址。
PLC程序由主程序、子程序和中斷程序組成。主程序用來調用初始化子程序;子程序主要用來建立PID回路初始化參數表和設置定時中斷,中斷程序用于執行PID運算。
初始化子程序首先需寫入給定值、回路增益、采樣時間和積分時間,然后關閉微分;再寫入定時中斷時間為100ms,開定時中斷INT_0,最后全局開中斷。
中斷程序分三部分,標準化數據、執行PID指令和模擬輸出。標準化數據首先將A/D轉換的整數數據AIW0轉換為雙整數,再將雙整數轉換為實數,將數值除以32000標準化后,將標準數值寫入回路參數表過程量當前值存儲器VD100中。執行PID指令只需調用由向導生成的PID子函數。模擬輸出部分首先將PID運算結果與32000相乘,得到工程量,再將工程量取整,將雙整數化為整數,最后將數值寫入模擬量輸出單元AQW0。
[1]王芹.可編程控制器技術及應用(西門子S7-200系列)[M].天津:天津大學出版社,2012
[2]周梅芳,金向平,陳偕雄.基于PLC的智能PID控制方法及其應用[J].化工自動化及儀表, 2003,30(6).
[3]王述彥,師宇,馮忠緒.基于模糊PID控制器的控制方法研究[J].機械科學與技術, 2011,30 (1).