鄧曉剛,陳衛(wèi)紅,楊明輝
(中國(guó)石油大學(xué)(華東) 信息與控制工程學(xué)院,山東 青島 266580)
過程控制實(shí)驗(yàn)裝置實(shí)時(shí)監(jiān)控軟件開發(fā)
鄧曉剛,陳衛(wèi)紅,楊明輝
(中國(guó)石油大學(xué)(華東) 信息與控制工程學(xué)院,山東 青島 266580)
針對(duì)現(xiàn)有過程控制實(shí)驗(yàn)裝置系統(tǒng)存在實(shí)時(shí)數(shù)據(jù)難以保存、復(fù)雜控制算法難以實(shí)現(xiàn)等問題,設(shè)計(jì)并開發(fā)了基于Matlab軟件和OPC(OLE for process control) 通信技術(shù)的實(shí)時(shí)監(jiān)控軟件。該軟件通過OPC技術(shù)與過程控制實(shí)驗(yàn)裝置集散控制系統(tǒng)進(jìn)行通信,實(shí)時(shí)采集裝置的運(yùn)行數(shù)據(jù),利用Matlab軟件GUIDE工具開發(fā)GUI界面,實(shí)現(xiàn)數(shù)據(jù)的實(shí)時(shí)顯示、保存和控制算法編程。該監(jiān)控軟件為學(xué)生充分挖掘?qū)嶒?yàn)裝置功能和開展創(chuàng)新性研究提供了技術(shù)平臺(tái)。
過程控制實(shí)驗(yàn)裝置;監(jiān)控軟件;Matlab軟件;OPC通信
過程控制實(shí)驗(yàn)裝置在高校自動(dòng)化類專業(yè)學(xué)生培養(yǎng)過程中具有重要意義,是其學(xué)習(xí)自動(dòng)控制原理、計(jì)算機(jī)控制與過程控制等專業(yè)課程的基本實(shí)驗(yàn)條件[1-2]。過程控制實(shí)驗(yàn)室中常見的工藝對(duì)象有雙容/三容水箱系統(tǒng)、加熱爐系統(tǒng)、鍋爐系統(tǒng),這些對(duì)象是工業(yè)過程設(shè)備的縮型,具有代表性和典型性,能夠反映現(xiàn)場(chǎng)工業(yè)過程設(shè)備的基本特征[3-4]。
雖然,現(xiàn)有的過程控制實(shí)驗(yàn)裝置可以很好地還原工業(yè)情景,為專業(yè)課程實(shí)驗(yàn)提供有利條件,但往往存在二次開發(fā)過程中實(shí)時(shí)數(shù)據(jù)難以利用、復(fù)雜控制算法難以實(shí)現(xiàn)等問題,不利于開展課程設(shè)計(jì)、綜合實(shí)踐等學(xué)生獨(dú)立自主性較高的創(chuàng)新性環(huán)節(jié)。為此,本文設(shè)計(jì)并開發(fā)了基于Matlab軟件和OPC (OLE for process control)通信技術(shù)的實(shí)時(shí)監(jiān)控軟件,為學(xué)生進(jìn)行過程控制實(shí)驗(yàn)裝置的深入分析和二次功能開發(fā)提供了實(shí)驗(yàn)平臺(tái),有助于創(chuàng)新性專業(yè)人才培養(yǎng)。
中國(guó)石油大學(xué)自動(dòng)化專業(yè)過程控制實(shí)驗(yàn)室經(jīng)過多年的發(fā)展和建設(shè),已形成較為完整的綜合過程控制實(shí)驗(yàn)裝置體系。該體系由8套北京華晟A3000過程控制系統(tǒng)、8套青島金博士GK06過程控制實(shí)驗(yàn)裝置和浙大中控SUPCON 集散控制系統(tǒng)(distributed control system,DCS)組成,其中,前兩者用于工藝裝置對(duì)象模擬,后者用于工業(yè)控制系統(tǒng)教學(xué)。
A3000過程控制系統(tǒng)包括三個(gè)實(shí)驗(yàn)水箱、一個(gè)鍋爐、一個(gè)強(qiáng)制換熱器、兩個(gè)水泵、一個(gè)電動(dòng)調(diào)節(jié)閥和儲(chǔ)水箱;GK06過程控制實(shí)驗(yàn)裝置包括兩個(gè)方形水箱、四個(gè)空心球形水箱、兩個(gè)變頻泵、一個(gè)電動(dòng)調(diào)節(jié)閥和儲(chǔ)水箱構(gòu)成;SUPCON DCS系統(tǒng)組成采用浙大中控自動(dòng)化有限公司推出的SUPCON JX-300XP系統(tǒng),包括工程師站、操作站、控制站和通信網(wǎng)絡(luò),是應(yīng)用較為廣泛的國(guó)產(chǎn)DCS系統(tǒng),實(shí)驗(yàn)室現(xiàn)有的監(jiān)控軟件采用其配套上位機(jī)軟件Advantrol Pro。
上述綜合實(shí)驗(yàn)裝置在自動(dòng)化專業(yè)課程實(shí)驗(yàn)教學(xué)過程中發(fā)揮了很大作用,然而,仍然存在一些需要解決的問題:
1)DCS上位機(jī)配套監(jiān)控軟件可以方便地監(jiān)控實(shí)驗(yàn)裝置的運(yùn)行情況,但學(xué)生難以采集裝置的實(shí)時(shí)運(yùn)行數(shù)據(jù),實(shí)驗(yàn)中依靠圖形拷貝等方式保存結(jié)果,不利于深入地控制系統(tǒng)性能分析和二次功能開發(fā)。
2)上述裝置可以很好地完成基本的實(shí)驗(yàn)教學(xué)任務(wù),但在課程設(shè)計(jì)、綜合實(shí)踐等自主性和創(chuàng)新性較強(qiáng)的實(shí)踐教學(xué)環(huán)節(jié)中的功能略顯不足,無法與學(xué)生常用的軟件(如Matlab)融合,難以實(shí)現(xiàn)復(fù)雜的和先進(jìn)的控制算法。因此,需要開發(fā)一個(gè)學(xué)生可以開展自主編程和算法創(chuàng)新研究的軟件平臺(tái)。
2.1 監(jiān)控軟件開發(fā)思路
為解決上述問題,我們提出使用Matlab軟件和OPC通信技術(shù),開發(fā)一個(gè)過程控制實(shí)驗(yàn)裝置監(jiān)控軟件。該軟件基于學(xué)生熟悉的Matlab軟件環(huán)境,可以將裝置運(yùn)行過程中的實(shí)時(shí)測(cè)量數(shù)據(jù)保存為Matlab數(shù)據(jù)文件格式,此外,開發(fā)圖形用戶接口(graphical user interface,GUI)為學(xué)生進(jìn)行裝置功能二次開發(fā)和實(shí)現(xiàn)先進(jìn)控制算法提供平臺(tái)。
該系統(tǒng)的設(shè)計(jì)思路如圖1所示,實(shí)驗(yàn)室SUPCON DCS系統(tǒng)與A3000、GK06實(shí)驗(yàn)裝置構(gòu)成一個(gè)完整的控制系統(tǒng)。首先,在上位機(jī)上安裝SUPCON DCS系統(tǒng)提供的OPC服務(wù)器(OPC server),用于采集裝置實(shí)時(shí)運(yùn)行數(shù)據(jù);然后,在Matlab環(huán)境中利用OPC通信技術(shù)讀取OPC Server的數(shù)據(jù);最后,設(shè)計(jì)Matlab GUI界面,實(shí)時(shí)顯示并保存裝置測(cè)量數(shù)據(jù),構(gòu)建監(jiān)控軟件平臺(tái)。
圖1 監(jiān)控軟件設(shè)計(jì)思路圖
2.2 Matlab環(huán)境下的OPC通信技術(shù)
OPC是一個(gè)工業(yè)數(shù)據(jù)通信標(biāo)準(zhǔn),它建立了Windows應(yīng)用程序與現(xiàn)場(chǎng)控制設(shè)備之間的數(shù)據(jù)橋梁。在OPC出現(xiàn)以前,應(yīng)用軟件的開發(fā)商都必須編寫專用的接口函數(shù)存取現(xiàn)場(chǎng)數(shù)據(jù)信息。由于現(xiàn)場(chǎng)設(shè)備種類多、數(shù)據(jù)通信規(guī)范不一致,用戶和軟件開發(fā)商往往需要耗費(fèi)很大精力設(shè)計(jì)數(shù)據(jù)通信模塊,因此,迫切需要一種可靠的、統(tǒng)一的標(biāo)準(zhǔn)數(shù)據(jù)通信規(guī)范?;谶@種需求,人們建立了OPC標(biāo)準(zhǔn),以微軟公司對(duì)象連接與嵌入(object linking and embedding,OLE)技術(shù)作為基礎(chǔ),為工業(yè)控制系統(tǒng)提供了一種標(biāo)準(zhǔn)的數(shù)據(jù)訪問機(jī)制,提高了系統(tǒng)開放性和互操作性[5-6]。
OPC采用客戶端—服務(wù)器模式,一般由硬件生產(chǎn)商或者第三方廠家開發(fā)提供OPC服務(wù)器,軟件開發(fā)商只需開發(fā)符合OPC標(biāo)準(zhǔn)的客戶端,即可訪問不同廠商的硬件,為工業(yè)應(yīng)用程序開發(fā)提供了極大便利。
SUPCON DCS系統(tǒng)提供了OPC服務(wù)器軟件,安裝后可以將DCS實(shí)時(shí)數(shù)據(jù)以O(shè)PC位號(hào)的形式提供給客戶端進(jìn)行訪問。該服務(wù)器交互性能好,通信速度快,可以同時(shí)與多個(gè)OPC客戶端程序進(jìn)行連接。
Matlab軟件是美國(guó)MathWorks公司出品的商業(yè)數(shù)學(xué)軟件,可用于算法開發(fā)、數(shù)據(jù)可視化、數(shù)據(jù)分析以及數(shù)值計(jì)算,已經(jīng)在我國(guó)高校教學(xué)、科研中得到廣泛應(yīng)用。Matlab 提供的OPC Tool可以實(shí)現(xiàn)對(duì)OPC Server的數(shù)據(jù)訪問[7]。
基于Matlab OPC Tool工具箱的OPC Server訪問格式如下:
……
2.3 基于Matlab GUIDE的GUI界面開發(fā)
GUI界面是包含圖形對(duì)象(如窗口、圖標(biāo)、菜單和文本)的人機(jī)交互圖形界面。Matlab 為用戶開發(fā)GUI圖形界面提供了一個(gè)方便高效的集成開發(fā)環(huán)境GUIDE,能夠非常直觀地讓用戶生成GUI界面,大大減少了開發(fā)程序源碼的工作量[8]。
使用GUIDE創(chuàng)建GUI 時(shí),GUI界面保存為一個(gè)FIG資源文件,同時(shí)自動(dòng)生成對(duì)應(yīng)的M文件。FIG文件包含對(duì)GUI組件的完整描述,而M文件包含控制GUI的代碼和組件的回調(diào)代碼[9]。
依據(jù)軟件開發(fā)的一般原則,開發(fā)Matlab GUI界面的過程包括三個(gè)步驟:(1)明確系統(tǒng)主要功能,構(gòu)思軟件模塊組成;(2)利用Matlab GUIDE制作用戶操作界面以及其他菜單項(xiàng)目;(3)編寫界面及其菜單里的每個(gè)功能的回調(diào)程序,并且逐項(xiàng)進(jìn)行功能檢測(cè)。
在Matlab GUI界面中,需要連續(xù)實(shí)時(shí)地采集OPC Server的數(shù)據(jù),必須在Matlab中使用定時(shí)器函數(shù)Timer,其常用格式如下:
按照上述步驟,我們初步開發(fā)形成的Matlab GUI界面包括登錄界面、開環(huán)特性測(cè)試平臺(tái)、閉環(huán)控制算法測(cè)試平臺(tái)。圖2為系統(tǒng)登錄界面,在該界面中輸入設(shè)備編號(hào),選擇 “進(jìn)入開環(huán)系統(tǒng)”或者“進(jìn)入閉環(huán)系統(tǒng)”,后臺(tái)程序?qū)⒆詣?dòng)使用OPC通信連接OPC服務(wù)器上對(duì)應(yīng)設(shè)備的監(jiān)控變量,并進(jìn)入后續(xù)操作界面。
圖2 監(jiān)控系統(tǒng)登錄界面
以閉環(huán)控制算法測(cè)試平臺(tái)為例,其界面如圖3所示。圖3中左側(cè)為工藝流程示意簡(jiǎn)圖,該圖為實(shí)驗(yàn)室GK06裝置的雙容水箱控制系統(tǒng)示意圖;圖3中右上方為數(shù)據(jù)實(shí)時(shí)趨勢(shì)曲線圖,通過勾選上方的選擇框,可以配置不同曲線顯示效果。圖3中右下方為控制器主要參數(shù)配置圖,包括控制器設(shè)定值、測(cè)量值、閥位開度等顯示和手動(dòng)、自動(dòng)設(shè)置。
此外,本軟件的功能之一是可以實(shí)時(shí)保存實(shí)驗(yàn)裝置運(yùn)行曲線和數(shù)據(jù),這是常規(guī)DCS監(jiān)控系統(tǒng)所不具有的。在圖3中右下方點(diǎn)擊“圖片快照”按鈕,可以保存當(dāng)前實(shí)時(shí)曲線效果圖;點(diǎn)擊“保存數(shù)據(jù)”按鈕,可以將數(shù)據(jù)保存為Matlab軟件可以識(shí)別的mat數(shù)據(jù)格式文件,對(duì)于學(xué)生進(jìn)行后續(xù)的數(shù)據(jù)分析和處理具有很大幫助。
圖3 閉環(huán)控制算法測(cè)試平臺(tái)運(yùn)行示意圖
2.4 系統(tǒng)功能特點(diǎn)與應(yīng)用分析
上文描述了基于Matlab軟件和OPC通信技術(shù)開發(fā)實(shí)驗(yàn)室裝置實(shí)時(shí)監(jiān)控軟件的主要流程。該軟件有效拓展了實(shí)驗(yàn)室DCS監(jiān)控系統(tǒng)的功能,彌補(bǔ)了傳統(tǒng)監(jiān)控軟件的功能不足之處,其優(yōu)勢(shì)體現(xiàn)在以下三個(gè)方面:
1)開發(fā)思路簡(jiǎn)潔實(shí)用
該軟件使用Matlab軟件開發(fā)上層人機(jī)交互界面,基于OPC通信技術(shù)完成對(duì)DCS系統(tǒng)運(yùn)行數(shù)據(jù)的直接訪問,思路簡(jiǎn)潔實(shí)用,為類似軟件開發(fā)提供了技術(shù)參考。
2)實(shí)驗(yàn)裝置運(yùn)行數(shù)據(jù)的實(shí)時(shí)顯示和保存
傳統(tǒng)的DCS監(jiān)控軟件雖然可以很好地實(shí)時(shí)監(jiān)視數(shù)據(jù)運(yùn)行狀態(tài),但是在保存數(shù)據(jù)圖像和數(shù)據(jù)文件方面的功能比較薄弱。本軟件可以非常方便地把主要的圖像和數(shù)據(jù)保存為Matlab 易于識(shí)別的文件,后續(xù)分析非常方便。
3)易于學(xué)生進(jìn)行二次功能開發(fā)和復(fù)雜控制算法研究
Matlab軟件具有在學(xué)生中普及廣泛的優(yōu)勢(shì),易于為學(xué)生接受。通過自行編制定時(shí)器函數(shù)Timer的調(diào)用函數(shù),學(xué)生可以實(shí)現(xiàn)不同的功能,如數(shù)據(jù)采集、復(fù)雜控制算法、預(yù)測(cè)控制算法等,方便了后續(xù)的二次開發(fā),有利于開展課程設(shè)計(jì)、綜合實(shí)踐等學(xué)生獨(dú)立自主性較高的創(chuàng)新性環(huán)節(jié)。
該軟件的基本版本已經(jīng)在自動(dòng)控制課程設(shè)計(jì)教學(xué)環(huán)節(jié)中得到應(yīng)用。學(xué)生使用該軟件采集實(shí)際裝置實(shí)驗(yàn)數(shù)據(jù),進(jìn)行裝置開環(huán)特性測(cè)試,從而建立裝置的實(shí)驗(yàn)辨識(shí)模型。應(yīng)用結(jié)果表明,該軟件為學(xué)生開展課程設(shè)計(jì)提供了便利條件,能夠有效地幫助學(xué)生進(jìn)行實(shí)驗(yàn)裝置功能的二次開發(fā)。
針對(duì)綜合過程控制實(shí)驗(yàn)裝置使用中的特點(diǎn)和問題,我們?cè)贛atlab環(huán)境下利用OPC通信技術(shù)開發(fā)了實(shí)驗(yàn)裝置的實(shí)時(shí)監(jiān)控軟件。該軟件實(shí)現(xiàn)DCS系統(tǒng)數(shù)據(jù)在Matlab平臺(tái)下的實(shí)時(shí)通信、顯示和保存,實(shí)現(xiàn)了實(shí)驗(yàn)裝置功能的二次開發(fā),有助于學(xué)生開展控制算法的測(cè)試和創(chuàng)新性研究。
[1]王華忠,程華,姚俊.基于Internet的過程控制遠(yuǎn)程實(shí)驗(yàn)系統(tǒng)開發(fā)[J].實(shí)驗(yàn)室研究與探索,2009,28(7):72-74.
[2]張琳,尤一匡,劉雪東,等.過程裝備控制實(shí)驗(yàn)裝置的開發(fā)與應(yīng)用[J].實(shí)驗(yàn)室研究與探索,2003,22(5):98-100.
[3]王斌,余玲玲,包金明,等.過程控制實(shí)驗(yàn)裝置遠(yuǎn)程監(jiān)控的設(shè)計(jì)與實(shí)現(xiàn)[J].工業(yè)控制計(jì)算機(jī),2010,23(7):4-5.
[4]劉振東,梁秀滿,朱翔.過程控制實(shí)驗(yàn)裝置仿真軟件的研制[J].河北理工大學(xué)學(xué)報(bào):自然科學(xué)版,2008,30(3):78-82.
[5]吳杰,湯偉.基于OPC和Matlab的模糊PID在DCS中的應(yīng)用[J].計(jì)算機(jī)測(cè)量與控制,2010,18(10):2275-2276.
[6]劉承倩.基于OPC技術(shù)的工業(yè)實(shí)時(shí)監(jiān)控系統(tǒng)[J].自動(dòng)化應(yīng)用,2012(7):49-51.
[7]李二超,李煒,李戰(zhàn)明,等.基于OPC技術(shù)的網(wǎng)絡(luò)控制系統(tǒng)仿真平臺(tái)設(shè)計(jì)[J].實(shí)驗(yàn)技術(shù)與管理,2012,29(6):90-93.
[8]羅華飛.Matlab GUI設(shè)計(jì)學(xué)習(xí)手記[M].北京: 北京航空航天大學(xué)出版社,2011.
[9]褚丹雷,薛小龍,胡國(guó)清.基于Matlab-GUI界面的計(jì)算機(jī)控制系統(tǒng)設(shè)計(jì)及Simulink動(dòng)態(tài)仿真[J].探測(cè)與控制學(xué)報(bào),2002,24(1):48-52.
Monitoring Software for Process Control Experiment Device
DENG Xiaogang, CHEN Weihong,YANG Minghui
(College of Information and Control Engineering, China University of Petroleum (East China), Qingdao 266580, China)
The present process control experiment device monitoring system has the problems that real-time running data is difficult to save and complex control algorithm is hard to implement. Aiming at these problems, real monitoring software is designed and built based on Matlab software and OPC (OLE for Process Control) communication technique. OPC technique is used to communicate with the distributed control system (DCS) system of process control experiment device and the running data are real-time collected. Then Matlab GUIDE tool is utilized to develop GUI interface for real-time data displaying, data saving and control algorithm programming. Lastly the monitoring software provides a platform for students to well develop the utilities of experiment device and perform the innovation studies.
process control experiment device; monitoring software; Matlab software; OPC communication
2014-01-03;修改日期: 2014-01-25
中國(guó)石油大學(xué)(華東)重點(diǎn)教改基金資助項(xiàng)目(SY-A201207); 中國(guó)石油大學(xué)(華東)青年教師教改基金資助項(xiàng)目。
鄧曉剛(1981-),男,博士,副教授,主要從事工業(yè)過程控制技術(shù)研究與教學(xué)工作。
TP273
A
10.3969/j.issn.1672-4550.2014.06.020