孟亞男,張振懷
(吉林化工學(xué)院 信息與控制工程學(xué)院,吉林 吉林 132022)
液位的控制是非常普遍的,比如酒精精餾塔的液位控制,鍋爐的液位控制以及化工等眾多領(lǐng)域的液位控制[1].在此領(lǐng)域,常用的控制算法是PID.有開環(huán)控制和閉環(huán)控制,開環(huán)控制往往精度較低、無自動(dòng)糾偏能力;而閉環(huán)精度較高,對外部擾動(dòng)和系統(tǒng)參數(shù)變化不敏感,但是也存在一些缺點(diǎn):存在不穩(wěn)定、振蕩、超調(diào)等問題.因此在閉環(huán)的基礎(chǔ)上提出更先進(jìn)的控制算法,由于液位的高度調(diào)節(jié)對象通常存在單純滯后、強(qiáng)大慣性,使得液位的高度改變速度較慢,而控制系統(tǒng)也通常呈現(xiàn)非線性,很難找到理想的PID參數(shù)[2].比如水箱液位內(nèi)模PID控制對外部擾動(dòng)變化不敏感[3];水箱液位模糊控制信息簡單的模糊處理將導(dǎo)致系統(tǒng)控制精度降低和動(dòng)態(tài)品質(zhì)變差[4];水箱液位神經(jīng)PID控制不能向用戶提出必要的詢問,而且當(dāng)數(shù)據(jù)不充分時(shí),神經(jīng)網(wǎng)絡(luò)就無法進(jìn)行工作[5];水箱液位多模型自適應(yīng)預(yù)測控制解決優(yōu)化問題計(jì)算量大、耗時(shí)長[6].因此在傳統(tǒng)PID的基礎(chǔ)上引進(jìn)自抗擾控制技術(shù),增強(qiáng)整個(gè)閉環(huán)系統(tǒng)的魯棒性和抗干擾能力,計(jì)算量小、反應(yīng)調(diào)節(jié)迅速、耗時(shí)短,使控制效果更加理想.
下位機(jī)STEP7中的PID控制功能模塊很容易實(shí)現(xiàn)建立自抗擾PID控制器,處理設(shè)定值和過程反饋值以及滯后控制裝置的輸入輸出值[7].本文中以PLC和WinCC組態(tài)技術(shù)為基礎(chǔ),對水箱液位高度控制系統(tǒng)展開了深入研究,建立了液位高度控制系統(tǒng)的PLC控件模塊、控制系統(tǒng)的組態(tài)技術(shù),用WinCC完成了現(xiàn)場監(jiān)測.使用WinCC不但能夠完成對閉環(huán)控制流程的監(jiān)控,同時(shí)還能夠利用WinCC的組態(tài)用戶界面完成自動(dòng)設(shè)置和調(diào)整PID技術(shù)參數(shù).系統(tǒng)還具有直觀的圖像顯示,因此,PLC可以與組態(tài)技術(shù)相結(jié)合,在工業(yè)控制中應(yīng)用比較普遍[8].
圖1為水箱液位過程控制系統(tǒng)的現(xiàn)場圖.
液位控制系統(tǒng)的機(jī)構(gòu)主要是利用PLC來調(diào)整電動(dòng)機(jī)的控制系統(tǒng),也就是利用電動(dòng)調(diào)節(jié)閥限制閥門的開度(OP)來控制液位的[9].PC機(jī)配有STEP7編程軟件和WinCC組態(tài)配置管理軟件.該系統(tǒng)是由變頻器、執(zhí)行器、水箱、壓力變送器(測量液位)、A/D轉(zhuǎn)換器、自抗擾控制器和D/A變換器等組成的一套液位系統(tǒng).自抗擾控制器、D/A和A/D變換器用西門子的S7-300來實(shí)現(xiàn),水箱液位的控制系統(tǒng)使用西門子的SIMATIC S7-300,S7-315 2DP作為控制器,子程序OB35循環(huán)中斷設(shè)為1 000;電源選擇的是PS 307 5A,模擬量輸入模塊選擇AI8×12Bit,模擬量輸出選擇AO4×12Bit.
自抗擾控制器是由PID控制器演變過來,采取了PID誤差反饋控制的核心理念.傳統(tǒng)PID控制直接取參考給定與輸出反饋之差作為控制信號(hào),導(dǎo)致出現(xiàn)響應(yīng)快速性與超調(diào)性的矛盾.自抗擾控制器主要由3部分組成:跟蹤微分器,擴(kuò)展?fàn)顟B(tài)觀測器和非線性狀態(tài)誤差反饋控制器.
為解決PID控制器中響應(yīng)速度和超調(diào)制量之間的矛盾而設(shè)計(jì)的跟蹤微分器如下.
(1)
a為速度因子,也叫輸出信號(hào)的最大加速度;h為步長;r為快速因子;d為穩(wěn)定參考值;y為輸出信號(hào);fsg(x,d)=(sign(x+d)-sign(x-d))/2.
擴(kuò)展?fàn)顟B(tài)觀測器將整個(gè)系統(tǒng)輸出的擾動(dòng)作為擴(kuò)增的系統(tǒng)狀態(tài),利用系統(tǒng)輸入u和輸出y來跟蹤估計(jì)系統(tǒng)的狀態(tài)和擾動(dòng).建立與之對應(yīng)的擴(kuò)張狀態(tài)觀測器如下:
(2)
狀態(tài)誤差反饋控制律的作用是對擴(kuò)張狀態(tài)觀測器中的擾動(dòng)估計(jì)值進(jìn)行補(bǔ)償,這里采用PID控制形式對誤差進(jìn)行調(diào)節(jié),表達(dá)形式如下:
(3)
β1是比例系數(shù);β2是微分系數(shù);δ是區(qū)間寬度.fal的函數(shù)形式如下:
(4)
對于系統(tǒng)擾動(dòng)補(bǔ)償過程形式如下:
(5)
自抗擾控制器原理如圖2所示.
在下位機(jī)軟件中構(gòu)建一個(gè)項(xiàng)目,接著生成一個(gè)S7-300站點(diǎn).轉(zhuǎn)到HWConfig頁面,插入機(jī)架、PS、CPU、I/O模塊等[10],按照硬件安裝依次進(jìn)行.進(jìn)入CPU屬性頁面,MPI ID為2.
對于模擬量輸入模塊,輸入?yún)?shù)為:E.測量范圍:1~5 V;干擾頻段為50 Hz;地址為256-271.
對于模擬量輸出模塊,輸出參數(shù)為:I.測量范圍4~20 mA,響應(yīng)模式OCV,地址為272-279.
控制系統(tǒng)的地址分配如表1所示.
表1 控制系統(tǒng)的地址分配
創(chuàng)建了一組共用的數(shù)據(jù)信息塊DB3,內(nèi)容如表2所示.
表2 數(shù)據(jù)塊DB3的參數(shù)分配
用于存儲(chǔ)完成PID控制的所有流程參數(shù).WinCC也可通DB3存取并編輯PID的實(shí)時(shí)數(shù)據(jù).DB3.DBD0主要用于存儲(chǔ)測量的液位(mm);DB3.DBD4用于存儲(chǔ)手動(dòng)狀況下的液位設(shè)定值(mm);DB3.DBD8存儲(chǔ)執(zhí)行器變頻器的頻率值(Hz);DB3.DBD12可以用來存儲(chǔ)自動(dòng)情況下的液位設(shè)定值(mm);DB3.DBD16存儲(chǔ)增益值,都是REAL類型.DB3.DBD20存儲(chǔ)積分時(shí)間的常數(shù);DB3.DBD24主要用于存儲(chǔ)微分時(shí)間常數(shù),它們的類型是TIME.
模塊FC105用于將模擬I/O格式的整數(shù)值轉(zhuǎn)換為實(shí)數(shù)值.PIW256是液位高度的輸入通道.頻率量程為0~50 Hz,壓力變送器的量程為1~5 V,依次對應(yīng)上限HI_LIM和下限LO_LIM,都是實(shí)數(shù)類型.當(dāng)BIPOLAR輸入為零,意味著信號(hào)輸入值都是單極性.DB3.DBD0 是存儲(chǔ)實(shí)值結(jié)果,為實(shí)際液位高度測量值(mm).
功能模塊FC106用來將模擬量實(shí)型值轉(zhuǎn)換為I/O格式的整數(shù)型值.依次對應(yīng)上限HI_LIM和下限LO_LIM.BIPOLAR的輸入通常是零,為單極性轉(zhuǎn)換.PQW272是I/O格式的輸出,范圍為0~27 468,對應(yīng)4~20 mA,如圖3所示.
功能模塊FB41是一種PID控制器,是一種連續(xù)控制器.應(yīng)將其設(shè)置為后臺(tái)數(shù)據(jù)塊,令其為DB10.圖4是FB41程序.M0.0用作置位PID功能;M0.1是用來控制該控制器的啟停;M0.2和M0.3分別為比例和積分的控制開關(guān),由上位機(jī)的比例開關(guān)和積分開關(guān)控制;SP_INT是液位設(shè)定值;PV_IN是現(xiàn)場反饋的實(shí)際液位;DB3.DBD4為手動(dòng)情況下的液位設(shè)定值;GAIN為增益;TI是積分時(shí)間常數(shù);TD是微分時(shí)間常數(shù);LMN_HLM上限值為100 Hz,LMN_LLM下限值為0 Hz.LMN 輸出實(shí)型數(shù)據(jù)的信號(hào)頻率保存到DB3.DBD8中.液位高度的采用周期取1 000 ms.其他技術(shù)參數(shù)在DB10中為默認(rèn)值.
本系統(tǒng)使用WINCC作為上位機(jī)進(jìn)行組態(tài),其主要因素在于WINCC是目前各種組態(tài)應(yīng)用軟件中功能較全的一個(gè);二是充分考慮到下位機(jī)使用的是S7-300PLC的程序設(shè)計(jì)開發(fā)工具.它和WINCC都是SIEMENS有限公司的軟件產(chǎn)品,所以WINCC自身增加了S7-300PLC的驅(qū)動(dòng)系統(tǒng)應(yīng)用軟件,從而使得PLC和上位計(jì)算機(jī)系統(tǒng)的連接能夠更加直接而且有效簡單[11].
開啟WinCCExplorer窗口,創(chuàng)建名稱為223單個(gè)用戶項(xiàng).在變量管理器中,添加驅(qū)動(dòng)“SIMATIC S7 PROTOCOL SUITE”.在MPI下生成名為“123”的新驅(qū)動(dòng)程序的連接,將站點(diǎn)ID設(shè)置為2,機(jī)架編號(hào)為零,插槽編號(hào)為2.上位機(jī)和下位機(jī)MPI均為2的PLC站點(diǎn)間的通信.通過名為“123”里的信息,按表1和表2建立創(chuàng)建WinCC的所有外部數(shù)據(jù)變量,與PLC的通訊相連.如5所示.
建立了4種圖像畫面,分別為主圖像畫面、歷史曲線圖像畫面、實(shí)時(shí)曲線圖像畫面、歷史數(shù)據(jù)圖像畫面.利用圖像編輯器可以創(chuàng)建一個(gè)名為“主圖象畫面”的液位監(jiān)控過程圖像畫面,可以任意修改畫面窗口,并增加相應(yīng)的輸入輸出設(shè)備顯示和各種功能和操作按鍵.有現(xiàn)場畫面、實(shí)時(shí)數(shù)據(jù)、歷史數(shù)據(jù),數(shù)據(jù)報(bào)表和參數(shù)整定3大部分組成,具體如圖6所示.
傳統(tǒng)的控制方案仿真曲線為黑色線,加入自抗擾控制器仿真曲線為紅色線,兩者進(jìn)行對比分析,仿真運(yùn)行當(dāng)液位穩(wěn)定到40 mm時(shí)給定一個(gè)設(shè)定值為60 mm的值,然后液位穩(wěn)定在60 mm左右.由仿真結(jié)果可知,加入自抗擾控制器控制使系統(tǒng)調(diào)節(jié)時(shí)間縮短,反應(yīng)速度加快,震蕩超調(diào)特別小,增強(qiáng)整個(gè)閉環(huán)系統(tǒng)的魯棒性和抗干擾能力,使控制效果更加理想.能達(dá)到方便和自動(dòng)的效果.設(shè)計(jì)的自抗擾控制器在水箱液位控制系統(tǒng)中具有比較理想的動(dòng)態(tài)性能和穩(wěn)態(tài)性能.
以PLC控制技術(shù)和WinCC的組態(tài)技術(shù)為基礎(chǔ),對水箱液位高度控制系統(tǒng)展開了研究,構(gòu)建了液位高度控制系統(tǒng)的PLC控制模型,并建立了控制系統(tǒng)的組態(tài),用WinCC技術(shù)完成了現(xiàn)場監(jiān)測.利用WinCC不但能夠進(jìn)行對閉環(huán)控制流程的監(jiān)控,同時(shí)還能夠利用WinCC的組態(tài)界面進(jìn)行設(shè)定和調(diào)整PID參數(shù).系統(tǒng)主要是PLC結(jié)合自抗擾控制器對液位進(jìn)行自動(dòng)控制,可以使被控對象保持在我們所希望位置的一個(gè)允許范圍內(nèi)上下波動(dòng),達(dá)到一定的自動(dòng)化控制程度.然后對系統(tǒng)的大部分硬件設(shè)備完成方案設(shè)計(jì)和選型,最后經(jīng)過試驗(yàn)結(jié)果分析,證明該設(shè)計(jì)系統(tǒng)實(shí)現(xiàn)了對水箱液位的自動(dòng)監(jiān)控管理.此控制系統(tǒng)具有智能化、易于控制、操作穩(wěn)定,設(shè)計(jì)的控制器能夠無超調(diào)、無靜差地對液位進(jìn)行控制,且抗干擾能力強(qiáng)、魯棒性好等特點(diǎn).