摘 要: 結(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)了對窯爐溫度的監(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)對窯爐生產(chǎn)過程的有效監(jiān)控,。本文分析了“二步法”泡沫玻璃的生產(chǎn)工藝,針對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)場的數(shù)據(jù)采集與處理,、數(shù)據(jù)存儲(chǔ)、數(shù)據(jù)顯示,、打印報(bào)警的功能,,并完成了對窯爐生產(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)對窯爐生產(chǎn)過程的實(shí)時(shí)監(jiān)控,;下位機(jī)采用西門子PLC(S7-300),,實(shí)現(xiàn)與現(xiàn)場執(zhí)行機(jī)構(gòu)和檢測設(shè)備的數(shù)據(jù)交互。上,、下位機(jī)通過工業(yè)以太網(wǎng)實(shí)現(xiàn)網(wǎng)絡(luò)互連,。
2.2 OPC技術(shù)簡介
OPC即過程控制的對象鏈接和嵌入,是將Microsoft對象的連接和嵌入技術(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)場設(shè)備與驅(qū)動(dòng)程序封裝起來,作為數(shù)據(jù)源,,供應(yīng)用程序使用,。
2.3 系統(tǒng)的通信原理
系統(tǒng)的通信原理如圖2所示,在讀取現(xiàn)場數(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以下簡稱TC)的CONTROX-工具包,,提供對OPC Data Access(簡稱DA)2.04規(guī)范的支持,。工具包并不是一個(gè)OPC服務(wù)器。用戶必須對它進(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)行初始化;
② 初始化成功之后,,注冊回調(diào)函數(shù),;
③ 用戶通過createTag向OPC運(yùn)行庫可添加多個(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)行庫中標(biāo)簽的數(shù)據(jù),;
⑦ 在服務(wù)器退出時(shí),調(diào)用uninitOPCSvr,。
OPC DA服務(wù)器的開發(fā)先要建立應(yīng)用程序,,加載OPC運(yùn)行庫。然后按照工具包提供的接口進(jìn)行正確的函數(shù)調(diào)用,。最后實(shí)現(xiàn)與設(shè)備的通信,。OPC服務(wù)器作為一個(gè)COM服務(wù)器,提供注冊與反注冊的功能,。
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)場設(shè)備,,調(diào)節(jié)窯爐內(nèi)的溫度。OPC接口開發(fā)及數(shù)據(jù)處理,、存儲(chǔ)流程如圖5所示[5],。
每隔一段時(shí)間(時(shí)間長短可以根據(jù)實(shí)際需要自行設(shè)定)自動(dòng)生成一個(gè)Excel文件的工作薄,記錄窯爐內(nèi)溫度的變化情況,,以便于工程技術(shù)人員對歷史數(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ù)對組態(tài)軟件進(jìn)行二次開發(fā)應(yīng)用,,實(shí)現(xiàn)了控制系統(tǒng)的無縫集成,取得了滿意的監(jiān)控效果,。
參考文獻(xiàn)
[1] 李月明,李華,鄒卓辰.利用廢玻璃研制泡沫玻璃[J].中國陶瓷工業(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] 寧營營,朱偉興,王東宏.基于OPC技術(shù)的PC與S7-315-PLC實(shí)時(shí)通信與數(shù)據(jù)處理[J].低壓電器,2009(5):36-39.