吳仲民,鄭 帥,徐 剛,楊春曦
(昆明理工大學(xué)化學(xué)工程學(xué)院,云南昆明650500)
基于組態(tài)王與Matlab的三容水箱多變量虛擬控制系統(tǒng)
吳仲民,鄭 帥,徐 剛,楊春曦?
(昆明理工大學(xué)化學(xué)工程學(xué)院,云南昆明650500)
基于組態(tài)王和Matlab構(gòu)建了一個三容水箱液位控制的虛擬仿真系統(tǒng).首先利用組態(tài)王搭建了液位控制系統(tǒng)監(jiān)控畫面,其次依據(jù)現(xiàn)代控制理論建立其數(shù)學(xué)模型,并使用Simulink工具箱構(gòu)建多變量控制系統(tǒng),然后通過OPC數(shù)據(jù)通信技術(shù)建立了組態(tài)王界面和Simulink的連接,最終實現(xiàn)了多變量控制系統(tǒng)的動態(tài)監(jiān)控、實時曲線查詢、歷史數(shù)據(jù)查詢和報警等功能.實驗結(jié)果表明,該虛擬仿真系統(tǒng)簡單易操作,動態(tài)畫面效果逼真,可以用于多變量控制系統(tǒng)的學(xué)習(xí)與培訓(xùn).
虛擬仿真技術(shù);三容水箱;多變量控制系統(tǒng)
在工業(yè)生產(chǎn)飛速發(fā)展的今天,液位控制在鋼鐵、石油化工、食品灌裝等過程工業(yè)中應(yīng)用極為普及[1].而三容水箱液位控制系統(tǒng)作為一種典型的物理模擬對象,模擬了工業(yè)現(xiàn)場多種復(fù)雜的液位控制系統(tǒng),在實際生產(chǎn)中有著非常廣泛的應(yīng)用[2-4].在高校自動化方向的實訓(xùn)中,由于購置三容水箱系統(tǒng)價格較高,設(shè)備的安裝場地和正常運(yùn)行所需的保障較復(fù)雜,加上每臺套操作人數(shù)有限和實驗過程的調(diào)節(jié)周期較長的缺陷,給三容水箱系統(tǒng)的算法研究和實訓(xùn)帶來了諸多困難[5].目前,大部分三容水箱的控制器均采用一個PID控制器完成,但是由于三容水箱是非線性大滯后系統(tǒng),且三個水箱的液位存在相互耦合[6],一個PID控制器僅能控制好單個水箱液位,不能任意改變被控變量[7].
目前,虛擬仿真軟件在過程控制中有著廣泛的應(yīng)用[8-9],為解決高校液位控制實訓(xùn)需求,同時兼顧操作逼真和低成本特性,利用組態(tài)王和Matlab軟件構(gòu)建了一個能在計算機(jī)上直接運(yùn)行的三容水箱液位虛擬仿真控制系統(tǒng)[10].即采用組態(tài)王構(gòu)建三容水箱系統(tǒng)的動態(tài)監(jiān)控畫面和功能操作模塊,被控對象模型和能同時控制三個水箱液位的多變量控制系統(tǒng)由Matlab的Simulink工具箱實現(xiàn),而畫面與系統(tǒng)的信息交互由OPC接口完成.該虛擬仿真系統(tǒng)具有操作形象、功能齊全、開發(fā)周期短和成本較低的特點(diǎn)[11-12].仿真實驗結(jié)果也表明該三容水箱虛擬液位控制系統(tǒng)具有很好的實訓(xùn)效果.
本節(jié)考慮如圖1所示的一個三容水箱系統(tǒng),其中高、中、低位水箱的液位分別為h1(t),h2(t),h3(t),高位水箱的入口流量為Qi(t),高、中、低位水箱的出口流量分別為Q1(t),Q2(t),Q3(t).該系統(tǒng)的控制目的是通過調(diào)節(jié)閥對入口流量的調(diào)節(jié),使得三個水箱的液位滿足控制要求.
由物料平衡定理可知每個水箱的進(jìn)料量等于出料量與水箱的物料變化量之和,則可得的公式:其中:S1,S2,S3分別為上、中、下水箱的橫截面積,而液位和出口流量之間的關(guān)系是非線性的,為了簡化問題,并將其線性化后,液位和出口流量之間的關(guān)系定義為液阻[13].考慮出口閥門開度不變,則液阻應(yīng)為一個常數(shù).這里上、中、下水箱的液阻分別為R1,R2,R3.為便于分析,令三個液阻均為常數(shù).通過階躍響應(yīng)方法測得R1,R2,R3.
方程組(1)可以依照現(xiàn)代控制相關(guān)理論整理成線性定常的狀態(tài)空間模型:其中:狀態(tài)向量x(t)=[h1(t)h2(t)h3(t)]Τ;u(t)表示三容水箱系統(tǒng)的控制輸入量;y(t)表示三水箱的液位輸出向量.選定各參數(shù)為R1=293s/m2,R2=187s/m2,R3=477 s/m2和S1=S2=0.20 m2,S3=0.38 m2,則具體的狀態(tài)空間模型為:
圖1 三容水箱系統(tǒng)結(jié)構(gòu)圖Fig.1 Structure diagram of three-tank system
對該模型的能控能觀性進(jìn)行分析,得出該系統(tǒng)是能控不能觀的;求解李雅普洛夫方程可判斷出該系統(tǒng)是漸近穩(wěn)定的[14].而且通過模型看出系統(tǒng)是單輸入多輸出關(guān)系.同時從狀態(tài)矩陣A的取值可以看出液位h1(t)和h2(t)、h2(t)和h3(t)之間存在耦合關(guān)系,所以使用單一的控制器只能能控制其中一個水箱的液位.因此采用了三個PID控制器分別對上、中、下三水箱液位進(jìn)行控制,實現(xiàn)同時控制三個水箱液位的目的.
本節(jié)是利用一種通用的工業(yè)監(jiān)控軟件組態(tài)王對三容水箱液位控制系統(tǒng)的上位機(jī)部分進(jìn)行設(shè)計,其中包括組態(tài)王圖形界面的設(shè)計、數(shù)據(jù)詞典中應(yīng)用工程中定義的變量以及系統(tǒng)變量的存放、組態(tài)王主界面中的管道動畫連接的加入、閥門動畫設(shè)置、建立歷史趨勢曲線畫面、歷史數(shù)據(jù)報表畫面、實時數(shù)據(jù)報表畫面、1分鐘數(shù)據(jù)報表畫面、報警畫面等.圖2為利用組態(tài)王搭建好的三容水箱液位控制系統(tǒng)監(jiān)控畫面.
圖2 三容水箱液位控制系統(tǒng)監(jiān)控畫面Fig.2 Monitoring screens of three-tank level control system
由圖2知,三容水箱液位監(jiān)控畫面分為三大模塊,一是三容水箱液位動態(tài)畫面展示模塊,包含整個三容水箱液位控制系統(tǒng)虛擬過程.二是三容水箱液位實時曲線畫面模塊,可以清晰的看到三水箱液位波動,通過曲線可以對參數(shù)進(jìn)行再調(diào)節(jié),直至找到合適參數(shù)為止.三是功能實現(xiàn)模塊.在其區(qū)域內(nèi)能設(shè)定三水箱液位、PID控制器參數(shù),各個按鈕能實現(xiàn)界面之間的相互切換,游標(biāo)能夠?qū)崟r觀察各個水箱的液位準(zhǔn)確值.
整個三容水箱液位監(jiān)控畫面工作過程:啟動泵,設(shè)定各個水箱液位值及調(diào)節(jié)PID參數(shù),然后在泵的作用下通過入水調(diào)節(jié)閥開關(guān)開始向水箱注水,上水箱液位開始上升,當(dāng)液位達(dá)到液位給定值時閥門開度開始減小.由于存在滯后,液位還會上升,當(dāng)上升到一定位置后水箱液位會在出水閥的作用下開始下降,經(jīng)過一段時間的波動,液位將會穩(wěn)定在給定液位處.中水箱和下水箱液位穩(wěn)定情況與上述一致.而通過三水箱的進(jìn)水?dāng)_動閥和泄水閥就可以觀察三容水箱的克服干擾能力,以及給一個水箱加入擾動對其他水箱液位產(chǎn)生的影響.
本節(jié)主要介紹的是通過Matlab中的Simulink工具箱對控制系統(tǒng)進(jìn)行搭建.為了構(gòu)建狀態(tài)反饋控制系統(tǒng),可以從系統(tǒng)中提取出的三個水箱液位分別加上給定值、控制器、比較器、測量變送等構(gòu)成負(fù)反饋回路,即可達(dá)到三容水箱系統(tǒng)的多變量控制.其中設(shè)定值分別為三個水箱給定的液位值,控制器選用PID控制器,三個PID控制器的輸出送入加法器,用來對執(zhí)行機(jī)構(gòu)(上水箱入水閥)的閥門開度進(jìn)行控制.據(jù)此,構(gòu)建如圖3的系統(tǒng)方框圖.
圖3 三容水箱系統(tǒng)多變量控制模塊組態(tài)圖Fig.3 Configuration graph of three-tank multivariate control models
本節(jié)介紹的是OPC技術(shù),它的出現(xiàn)為基于Windows的應(yīng)用程序和現(xiàn)場過程控制應(yīng)用建立了橋梁,而在本文中,我們利用OPC技術(shù)實現(xiàn)了Matlab與組態(tài)王的數(shù)據(jù)通信.MathWorks公司推出的Matlab7.0以上版本中集成了OPC工具箱Matlab OPC Toolbox,它是一個客戶端軟件,提供了一種服務(wù)器和客戶端互訪的通用機(jī)制.通過OPC工具箱構(gòu)建客戶端數(shù)據(jù)訪問不需了解OPC服務(wù)器的內(nèi)部配置和具體操作,就能連接任何一個OPC數(shù)據(jù)訪問服務(wù)器,可以方便地對連接的OPC服務(wù)器數(shù)據(jù)進(jìn)行讀寫,而借助于Matlab OPC Toolbox可以方便地實現(xiàn)Matlab客戶端與組態(tài)王服務(wù)器端之間的數(shù)據(jù)通信[15],流程圖如圖4所示.通過OPC通訊技術(shù)將控制算法和界面連接起來,并設(shè)置好相應(yīng)的通信參數(shù),即可構(gòu)成構(gòu)成實時監(jiān)控系統(tǒng).
本節(jié)主要介紹虛擬三容水箱液位控制系統(tǒng)的運(yùn)行過程.首先,OPC技術(shù)可以實現(xiàn)將組態(tài)王主界面的液位給定值、PID給定值傳輸至Simulink構(gòu)建的控制系統(tǒng)中,并將控制系統(tǒng)計算得到的仿真液位輸出值返回給組態(tài)主界面,并通過命令語言實現(xiàn)主界面液位的實時顯示.即組態(tài)王界面做數(shù)據(jù)的輸入與輸出操作,Simulink構(gòu)建的控制系統(tǒng)實現(xiàn)實時控制,最終實現(xiàn)了組態(tài)王與Simulink的聯(lián)調(diào).
在啟動程序、設(shè)定好參數(shù)后,虛擬仿真系統(tǒng)運(yùn)行一段時間即可得到這段時間的實時和歷史趨勢曲線.實時趨勢曲線方便在組態(tài)王主界面中觀察液位的變化情況,而歷史趨勢曲線功能可以調(diào)出任意歷史時刻的系統(tǒng)液位變化曲線.以上水箱液位為控制目標(biāo),設(shè)定其PID控制器參數(shù)分別為:比例0.60,積分系數(shù)0.01,微分0.5,其他兩個PID控制器系數(shù)均為零,則曲線變化如圖5所示(穩(wěn)定后中間液位的曲線為上水箱液位曲線,液位最低的為中水箱液位曲線,液位最高的為下水箱液位曲線).由圖5曲線易知,三容水箱系統(tǒng)中上水箱的液位在80s左右達(dá)到穩(wěn)定值200;中水箱的液位在240s左右達(dá)到穩(wěn)定,穩(wěn)態(tài)值133.5;下水箱的液位在660 s左右達(dá)到穩(wěn)定,穩(wěn)態(tài)值為316.1.通過圖5曲線可以看出,作為被控變量的上水箱液位很好地穩(wěn)定在設(shè)定值處,其他兩個水箱液位也能保持穩(wěn)定.如果分別以中水箱或下水箱為控制目標(biāo),通過相應(yīng)的PID參數(shù)設(shè)定,也可以達(dá)到類似的效果.
圖4 Matlab與組態(tài)王通信流程圖Fig.4 Flow chart of communication between Matlab and KingView
圖5 組態(tài)王-Simulink聯(lián)調(diào)曲線Fig.5 Joint debugging curve of Kingview-Simulink
圖6 上水箱進(jìn)水?dāng)_動曲線Fig.6 Curve about input of upper tank suffered disturbance
圖7 上水箱泄水?dāng)_動曲線Fig.7 Curve about output of upper tank suffered disturbance
為驗證仿真系統(tǒng)的抗干擾能力,這里以上水箱為例,通過在主界面上分別打開上水箱的入水?dāng)_動閥和泄水?dāng)_動閥,從圖6和圖7可以看到在兩種擾動分別作用下的上水箱液位的波動,以及對中水箱和下水箱液位產(chǎn)生的影響.圖6中水箱液位向上波動,且波動曲線與上水箱一致,下水箱液位微微升高.圖7中水箱液位先向下波動,波動曲線與上水箱一致,下水箱液位微微下降,都與實際水箱液位情況相一致.我們也對中水箱和下水箱分別加入入水和泄水?dāng)_動,均得到各個水箱的液位都能在較短的時間內(nèi)恢復(fù)至擾動前的穩(wěn)態(tài)值的結(jié)論,這表明該三容水箱液位控制系統(tǒng)具有較好的抗干擾能力.
需要注意的是,由于三個水箱之間的耦合作用,無論如何選取三個PID控制器的參數(shù)均無法使三個水箱的液位同時達(dá)到期望值,只能做到控制其中一個液位準(zhǔn)確達(dá)到期望值的同時放松對另外兩個液位的要求.此外,三個PID控制器參數(shù)匹配最終決定被控變量的響應(yīng)特性.如果PID參數(shù)設(shè)置不合理,被控變量可能會出現(xiàn)劇烈震蕩甚至失穩(wěn).為避免該現(xiàn)象的發(fā)生,我們通常只設(shè)定其中一個被控變量的控制器參數(shù)設(shè)為PID調(diào)節(jié),而其余兩個被控變量只采用比例控制.
本文以三容水箱系統(tǒng)為研究對象,基于組態(tài)王和Matlab構(gòu)建了一個三容水箱虛擬仿真控制系統(tǒng),并利用現(xiàn)代控制理論對三容水箱建立了狀態(tài)空間模型,設(shè)計出狀態(tài)反饋控制器.使得該系統(tǒng)在運(yùn)行過程中調(diào)整PID參數(shù)時不會改變?nèi)菟鋬?nèi)部三組件之間的耦合和時滯特性,卻能夠分別實現(xiàn)上、中、下水箱的液位控制(一組控制器參數(shù)只能控制一個水箱的液位).該方法對液位變化擾動都具有較好的克服能力.最后通過仿真實驗印證了該虛擬仿真系統(tǒng)的多變量控制策略效果,進(jìn)一步說明該虛擬液位仿真系統(tǒng)是一個界面形象、操作簡便、結(jié)論可信、符合高校實訓(xùn)特點(diǎn)的有效仿真實訓(xùn)系統(tǒng).
[1] 張雅婕,楊潔,李智.基于實驗的三容水箱數(shù)學(xué)模型[J].武漢工程職業(yè)技術(shù)學(xué)院學(xué)報,2009,24(3):1-4.
[2] 葉希立,丁強(qiáng),黃國輝,等.三容水箱計算機(jī)控制仿真與實驗系統(tǒng)的研發(fā)[J].實驗室研究與探索,2013(6):81-83.
[3] 陸仲達(dá),沙麗娟.三容水箱實驗系統(tǒng)模型的建立[J].齊齊哈爾大學(xué)學(xué)報,2007(5):67-69.
[4] 劉浩,屈寶存,趙強(qiáng).廣義預(yù)測算法在三容水箱液位過程控制中的應(yīng)用[J].工業(yè)儀表與自動化裝置,2015(5):21-24. [5] 李敏,鄒濤,楊馬英,等.過程控制系統(tǒng)綜合性實驗設(shè)計與教學(xué)實踐[J].實驗技術(shù)與管理,2011,28(6):100-104.
[6] 王志新,谷云東,李洪興.三水箱多變量液位控制實驗設(shè)計[J].實驗技術(shù)與管理,2007,24(1):32-36.
[7] 侯燕.三容水箱液位控制系統(tǒng)的研究[D].武漢:華中科技大學(xué),2005.
[8] 胡學(xué)軍,滕達(dá),胡林文.基于Matlab的時滯對象控制算法仿真分析[J].武漢工程大學(xué)學(xué)報,2010,32(3):92-95.
[9] 王后能,宋杰.LabVIEW嵌入Matlab腳本節(jié)點(diǎn)的電機(jī)轉(zhuǎn)速控制系統(tǒng)仿真[J].武漢工程大學(xué)學(xué)報,2015,37(8):69-74. [10] 李偉.三容水箱液位控制系統(tǒng)[J].黑龍江科技學(xué)院學(xué)報,2004,14(3):160-163.
[11] 徐聯(lián)貴,梁嵐珍.基于OPC技術(shù)的Matlab與組態(tài)王通信模塊設(shè)計[J].工業(yè)控制計算機(jī),2007,20(3):26-27.
[12] 李安伏,崔亞量.基于OPC的Matlab與組態(tài)王的數(shù)據(jù)通信[J].電力自動化設(shè)備,2007,27(7):113-115.
[13] 黃愛元,邵根富,黃國輝.三容水箱液位控制系統(tǒng)建模與仿真[J].實驗室研究與探索,2016,35(1):76-79.
[14] 俞立.現(xiàn)代控制理論[M].北京:清華大學(xué)出版社,2009.
[15] 馮鵬輝,譚兮,劉國營.三容水箱液位控制系統(tǒng)的設(shè)計與仿真[J].湖南工業(yè)大學(xué)學(xué)報,2011,25(6):51-55.
責(zé)任編輯:時 凌
Multivariate Virtual Control Systems Design of Three-h(huán)olding Tank Based on Kingview and Matlab
WU Zhongmin,ZHENG Shuai,XU Gang,YANG Chunxi?
(School of Chemical Engineering,Kunming University of Science and Technology,Kunming 650500,China)
The virtual level simulation system of three-h(huán)olding tank is constructed based on Kingview and Matlab in the paper.Firstly,monitoring screens of levelcontrol system is designed by Kingview.Secondly,its mathematical modelis constructed through moderncontrol theory and then related multivariate control systems are also built using Simulink toolbox of Matlab.Moreover,the communicationbetween monitoring screens and the multivariate control systems is linked via OPC technology.And then,several functions of multivariate control systems are realized including dynamic monitoring,real-time curve,the inquiry of historical data and alarming etc.Finally,the simulation results show that the virtualsimulation system can be appliedto the study of multivariate control algorithm and related training because of its simpleoperation and vivid dynamic effects.
virtual simulation technology;three-h(huán)olding tank;multivariate control systems
TP273
A
1008-8423(2017)01-0088-04
10.13501/j.cnki.42-1569/n.2017.03.020
2016-07-20.
云南省教育廳科學(xué)研究項目(2013Z128);昆明理工大學(xué)教學(xué)改革項目(1096836105;201410674222).
吳仲民(1993-),男,主要從事智能控制的研究;?
楊春曦(1976-),男(苗族),博士,教授,主要從事網(wǎng)絡(luò)控制系統(tǒng)和過程控制的研究.