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