摘 要: 結(jié)合組態(tài)軟件與PLC之間的應(yīng)用實(shí)例,介紹了基于工業(yè)以太網(wǎng)及OPC技術(shù)的組態(tài)軟件與PLC的通信及數(shù)據(jù)采集的基本原理,設(shè)計(jì)了全新的窯爐溫度控制系統(tǒng)。在VB環(huán)境下,實(shí)現(xiàn)了計(jì)算機(jī)與S7-300系列PLC的實(shí)時(shí)通信,給出了相應(yīng)的軟件流程。實(shí)際應(yīng)用表明,該系統(tǒng)實(shí)現(xiàn)了對(duì)窯爐溫度的監(jiān)控功能,運(yùn)行穩(wěn)定可靠,提高了產(chǎn)品的質(zhì)量。
關(guān)鍵詞: 可編程序邏輯控制器; 組態(tài)軟件; 溫度控制; 通信; 數(shù)據(jù)處理
隨著控制技術(shù)、計(jì)算機(jī)技術(shù)的飛速發(fā)展,采用單回路儀表實(shí)現(xiàn)窯爐生產(chǎn)過程控制已不能滿足生產(chǎn)需要,無法實(shí)現(xiàn)對(duì)窯爐生產(chǎn)過程的有效監(jiān)控。本文分析了“二步法”泡沫玻璃的生產(chǎn)工藝,針對(duì)40 m發(fā)泡窯爐和80 m退火窯爐,研制了上、下位結(jié)構(gòu)的泡沫玻璃生產(chǎn)線窯爐監(jiān)控系統(tǒng)。系統(tǒng)采用工業(yè)以太網(wǎng)、組態(tài)軟件及OPC(OLE for Process Control)技術(shù)實(shí)現(xiàn)了現(xiàn)場(chǎng)的數(shù)據(jù)采集與處理、數(shù)據(jù)存儲(chǔ)、數(shù)據(jù)顯示、打印報(bào)警的功能,并完成了對(duì)窯爐生產(chǎn)過程的實(shí)時(shí)監(jiān)控。實(shí)際運(yùn)行表明,系統(tǒng)設(shè)計(jì)先進(jìn)合理、運(yùn)行穩(wěn)定可靠。
1 生產(chǎn)工藝
泡沫玻璃生產(chǎn)是將廢棄玻璃、粉煤灰等主要原料,添加輔料、發(fā)泡劑、改性劑,經(jīng)過細(xì)碎、粉磨形成混合均勻的配合料,將配合料裝入模具,經(jīng)預(yù)熱、發(fā)泡、定型、退火后制成合格的泡沫玻璃[1-2]。“二步法”是將裝有混合料的模具通過步進(jìn)方式進(jìn)入40 m發(fā)泡窯爐,經(jīng)預(yù)熱、發(fā)泡、定型、降溫、脫模后,再放入80 m退火窯爐進(jìn)行退火,生產(chǎn)出具有防火、防水、保溫隔熱、吸音、防腐等良好性能的泡沫玻璃。
2 系統(tǒng)結(jié)構(gòu)
2.1 系統(tǒng)組成
泡沫玻璃生產(chǎn)線窯爐監(jiān)控系統(tǒng)由工業(yè)控制計(jì)算機(jī)和PLC(Programmable Logic Controller)組成(如圖1所示)。工控機(jī)是基于組態(tài)軟件和OPC技術(shù)的客戶機(jī),實(shí)現(xiàn)對(duì)窯爐生產(chǎn)過程的實(shí)時(shí)監(jiān)控;下位機(jī)采用西門子PLC(S7-300),實(shí)現(xiàn)與現(xiàn)場(chǎng)執(zhí)行機(jī)構(gòu)和檢測(cè)設(shè)備的數(shù)據(jù)交互。上、下位機(jī)通過工業(yè)以太網(wǎng)實(shí)現(xiàn)網(wǎng)絡(luò)互連。
2.2 OPC技術(shù)簡(jiǎn)介
OPC即過程控制的對(duì)象鏈接和嵌入,是將Microsoft對(duì)象的連接和嵌入技術(shù)OLE(Object Link and Embed)應(yīng)用于過程控制[3]。在OPC技術(shù)廣泛應(yīng)用之前,不同廠商的設(shè)備互連要由開發(fā)人員編寫大量的專用驅(qū)動(dòng)程序來實(shí)現(xiàn)通信和存取硬件設(shè)備的數(shù)據(jù)。OPC技術(shù)的出現(xiàn),建立了一套符合工業(yè)控制要求的通信接口規(guī)范,硬件設(shè)備只需要一個(gè)驅(qū)動(dòng)程序按照OPC的標(biāo)準(zhǔn)提供數(shù)據(jù)源,使不同廠商的設(shè)備互連變得非常容易,只需按照OPC接口規(guī)范去存取數(shù)據(jù),便可以實(shí)現(xiàn)應(yīng)用程序與硬件設(shè)備的通信。OPC技術(shù)由OPC服務(wù)器和OPC客戶端兩個(gè)部分組成。OPC服務(wù)器負(fù)責(zé)采集數(shù)據(jù),將現(xiàn)場(chǎng)設(shè)備與驅(qū)動(dòng)程序封裝起來,作為數(shù)據(jù)源,供應(yīng)用程序使用。
2.3 系統(tǒng)的通信原理
系統(tǒng)的通信原理如圖2所示,在讀取現(xiàn)場(chǎng)數(shù)據(jù)的過程中,首先由PLC采集信息,保存在CPU模塊的數(shù)據(jù)塊中。PLC的運(yùn)行包括5個(gè)不斷循環(huán)的過程:內(nèi)部處理、通信服務(wù)、輸入采樣、程序執(zhí)行、輸出刷新[4]。在通信服務(wù)過程中,PLC的CPU模塊經(jīng)過通信模塊和以太網(wǎng)與上位機(jī)建立連接,OPC服務(wù)器通過相應(yīng)的驅(qū)動(dòng)程序獲取CPU模塊中的數(shù)據(jù)。
3 OPC服務(wù)器的配置與開發(fā)
系統(tǒng)的組態(tài)軟件采用圖靈開物(Turing Control以下簡(jiǎn)稱TC)的CONTROX-工具包,提供對(duì)OPC Data Access(簡(jiǎn)稱DA)2.04規(guī)范的支持。工具包并不是一個(gè)OPC服務(wù)器。用戶必須對(duì)它進(jìn)行包裝,使得在工具包基礎(chǔ)上建立的應(yīng)用程序成為一個(gè)OPC服務(wù)器。開發(fā)人員不需要了解COM機(jī)制及OPC數(shù)據(jù)訪問服務(wù)器接口細(xì)節(jié),不需要了解開發(fā)工具中實(shí)現(xiàn)COM的具體技術(shù)。利用開發(fā)工具包進(jìn)行OPC數(shù)據(jù)訪問服務(wù)器的開發(fā)需要調(diào)用工具包接口。其調(diào)用流程圖如圖3所示。
關(guān)于流程的說明:
① 用戶首先調(diào)用initOPCSvr進(jìn)行初始化;
② 初始化成功之后,注冊(cè)回調(diào)函數(shù);
③ 用戶通過createTag向OPC運(yùn)行庫(kù)可添加多個(gè)標(biāo)簽;
④ 通過setTagProperties函數(shù)設(shè)置標(biāo)簽屬性;
⑤ 調(diào)用runSvr函數(shù),運(yùn)行服務(wù)器,這時(shí),服務(wù)器可以向客戶端提供服務(wù);
⑥ 用戶和驅(qū)動(dòng)通信,得到標(biāo)簽數(shù)據(jù)后,調(diào)用updateTag等函數(shù),刷新OPC運(yùn)行庫(kù)中標(biāo)簽的數(shù)據(jù);
⑦ 在服務(wù)器退出時(shí),調(diào)用uninitOPCSvr。
OPC DA服務(wù)器的開發(fā)先要建立應(yīng)用程序,加載OPC運(yùn)行庫(kù)。然后按照工具包提供的接口進(jìn)行正確的函數(shù)調(diào)用。最后實(shí)現(xiàn)與設(shè)備的通信。OPC服務(wù)器作為一個(gè)COM服務(wù)器,提供注冊(cè)與反注冊(cè)的功能。
4 組態(tài)軟件的配置
設(shè)定OPC服務(wù)器的訪問接口為自動(dòng)化接口,其接口是基于腳本編程語言而定義的標(biāo)準(zhǔn)接口,系統(tǒng)使用VB開發(fā)OPC服務(wù)器的客戶應(yīng)用。本系統(tǒng)使用的是TC 7.3版本。
TC作為客戶程序從VB中得到數(shù)據(jù)的操作步驟如下:
① 新建VB應(yīng)用程序,工程名為Server.vbp,添加窗體名為form1,窗體form1的屬性設(shè)置如圖4所示;
② 在form1窗體中添加文本框控件Text1;
③ 在TC的硬件系統(tǒng)中新建一個(gè)DDE設(shè)備;
④ 新建字符串類型標(biāo)簽FromVBtoView,在標(biāo)簽的屬性中配置主設(shè)備為新建的DDE設(shè)備,主地址:VB的工程名|窗體的Linktopic屬性名|文本框控件名;
⑤ 添加文本框以顯示FromVBtoView標(biāo)簽的數(shù)值;
⑥ 啟動(dòng)VB應(yīng)用程序運(yùn)行Server.vbp工程,再運(yùn)行TC,這時(shí)可以在TC中編輯Text1控件中的內(nèi)容。
在讀取OPC服務(wù)器數(shù)據(jù)的程序中,把讀取到的數(shù)據(jù)賦給VB中的全局變量。在此,調(diào)用模塊中的數(shù)據(jù)處理函數(shù),使形參與實(shí)參相結(jié)合,完成數(shù)據(jù)處理過程。處理完成后,把結(jié)果寫入OPC服務(wù)器中,控制現(xiàn)場(chǎng)設(shè)備,調(diào)節(jié)窯爐內(nèi)的溫度。OPC接口開發(fā)及數(shù)據(jù)處理、存儲(chǔ)流程如圖5所示[5]。
每隔一段時(shí)間(時(shí)間長(zhǎng)短可以根據(jù)實(shí)際需要自行設(shè)定)自動(dòng)生成一個(gè)Excel文件的工作薄,記錄窯爐內(nèi)溫度的變化情況,以便于工程技術(shù)人員對(duì)歷史數(shù)據(jù)進(jìn)行分析總結(jié)。
本文介紹了基于工業(yè)以太網(wǎng)及OPC技術(shù)的組態(tài)軟件與PLC的數(shù)據(jù)通信,采用圖靈開物組態(tài)軟件和VB軟件開發(fā)了OPC服務(wù)器,實(shí)現(xiàn)了PLC與工控機(jī)之間的通信,并將此方法應(yīng)用于泡沫玻璃生產(chǎn)線窯爐監(jiān)控系統(tǒng)。系統(tǒng)正常運(yùn)行一年的實(shí)踐表明,采用OPC技術(shù)對(duì)組態(tài)軟件進(jìn)行二次開發(fā)應(yīng)用,實(shí)現(xiàn)了控制系統(tǒng)的無縫集成,取得了滿意的監(jiān)控效果。
參考文獻(xiàn)
[1] 李月明,李華,鄒卓辰.利用廢玻璃研制泡沫玻璃[J].中國(guó)陶瓷工業(yè),2000(2):4-8.
[2] 方榮利,劉敏,周元林.利用粉煤灰研制泡沫玻璃[J].新型建筑材料,2003(6):39-41.
[3] 張竹梅,任慶蓮.iFIX與OPC技術(shù)[J].電氣時(shí)代,2003(6):88-89.
[4] 李建興.可編程序控制器應(yīng)用技術(shù)[M].北京:機(jī)械工業(yè)出版社,2004:49-50.
[5] 寧營(yíng)營(yíng),朱偉興,王東宏.基于OPC技術(shù)的PC與S7-315-PLC實(shí)時(shí)通信與數(shù)據(jù)處理[J].低壓電器,2009(5):36-39.