摘 要:隨著實時數(shù)據(jù)在流程行業(yè)的應用和企業(yè)對信息化要求的不斷提高,實時數(shù)據(jù)的集成和深度開發(fā)已成為一個迫切需要解決的問題。在深入分析當前工業(yè)自動化實時數(shù)據(jù)集成的一些關鍵技術(shù)的基礎上,探討構(gòu)造實時數(shù)據(jù)集成平臺RTDI,其中包括體系結(jié)構(gòu)、實時數(shù)據(jù)集成策略、平臺構(gòu)建、桌面工具等環(huán)節(jié)的實現(xiàn)方法與解決策略,解決了實時數(shù)據(jù)的應用問題。目前,RTDI已應用在石油行業(yè)的生產(chǎn)一線,且效果良好。
關鍵詞:OPC;消息中間件;數(shù)據(jù)集成;實時數(shù)據(jù)
中圖分類號:TP311 文獻標識碼:A
文章編號:1004-373X(2008)10-045-02
A Novel OPC and Message Middleware-based Integration Technology on
Real-Time Data and Its Application
ZHANG Yongqiang,YANG Feng,LIU Haiquan
(School of Computer Information,Xi′an Technological University,Xi′an,710032,China)
Abstract:With the application of technologies on real-time data in the process industry,and the increase of enterprise′s requirement on information,it becomes an urgent issue that is how to integrate and/or further develop real-time data. Based on this consideration,some key techniques are firstly studied for real-time data integration,and then a novel platform for such kind of purpose of RTDI is provided,including its system architecture,construction methods,desktop tools.Up to now,RTDI is applied to the petroleum industry,and some good results have been received.
Keywords:OPC;message middleware;data integration;real-time data
隨著企業(yè)信息化進程的推進,流程行業(yè)普遍采用WinCC、RSView32等監(jiān)控組態(tài)軟件對工業(yè)現(xiàn)場實時數(shù)據(jù)進行采集和監(jiān)測,這些傳統(tǒng)的監(jiān)控軟件可以處理來自現(xiàn)場設備所采集的生產(chǎn)數(shù)據(jù)。但是,原有專用監(jiān)控軟件存在幾個方面的缺陷:首先不能提供隨時隨地的監(jiān)控服務;其次無法為企業(yè)內(nèi)部的其他信息系統(tǒng)提供原始數(shù)據(jù);而且各監(jiān)控系統(tǒng)互相獨立,不具備統(tǒng)一性。因此,在保證現(xiàn)有監(jiān)控系統(tǒng)正常運行的情況下,急需對其功能進行延伸和擴展,以達到有效利用的目的。本文提出一種基于過程控制的對象連接和嵌入技術(shù)(Object linking and embedding for Process Control,OPC)和消息中間件的實時數(shù)據(jù)集成系統(tǒng),(Real-Time Data Integration System,RTDI)以實現(xiàn)這樣的目標。經(jīng)實踐應用證明,該系統(tǒng)已經(jīng)明顯改善了原有系統(tǒng)的不足。充分體現(xiàn)了系統(tǒng)便利性、集成性和擴展性的優(yōu)點。
1 RTDI系統(tǒng)體系結(jié)構(gòu)
RTDI實時監(jiān)控系統(tǒng)采用多層C/S和B/S的混合結(jié)構(gòu)?;谶@種模式下的系統(tǒng)結(jié)構(gòu)如圖1所示。消息中間件層是整個系統(tǒng)的核心,他由OPC數(shù)據(jù)讀取發(fā)送客戶端、Microsoft 消息隊列(Microsoft Message Queuing,MSMQ)服務器、OPC數(shù)據(jù)轉(zhuǎn)發(fā)程序組成。
其中,OPC數(shù)據(jù)讀取發(fā)送客戶端負責讀取OPC服務器發(fā)布的實時數(shù)據(jù),打包成消息并發(fā)送到目標消息隊列;MSMQ服務器管理進出消息隊列的消息;OPC數(shù)據(jù)轉(zhuǎn)發(fā)程序?qū)⒛繕讼㈥犃械南φ瘴惶枖?shù)據(jù)字典進行解析,存放到對應的數(shù)據(jù)表中。
消息中間件實現(xiàn)異步通信,在網(wǎng)絡通暢的情況下,保證消息通信的實時性;在網(wǎng)絡線路不穩(wěn)定或斷連的情況下,消息發(fā)送方保證不會因此而阻塞系統(tǒng)運行,已發(fā)送消息不會因此丟失。
2 基于OPC和消息中間件的實時數(shù)據(jù)集成策略
本文提出的基于標準化的實時數(shù)據(jù)獲取及傳送策略,他保證了實時數(shù)據(jù)的規(guī)范化獲取和可靠傳輸。
2.1 OPC技術(shù)及數(shù)據(jù)獲取策略
OPC是Microsoft公司的對象鏈接和嵌入技術(shù)在過程控制方面的應用,他為工業(yè)自動化軟件面向?qū)ο蟮拈_發(fā)提供了統(tǒng)一的標準。本文的RTDI系統(tǒng)結(jié)構(gòu)中, OPC Server位于數(shù)據(jù)源層上,并發(fā)布從現(xiàn)場設備獲取的實時數(shù)據(jù);OPC Client以中間件的形式位于消息中間件層,其任務是從OPC接口獲取OPC Server發(fā)布的實時數(shù)據(jù),然后打包發(fā)送到消息隊列。這些接口定義符合OPC基金會數(shù)據(jù)訪問用戶接口標準 [1,2]。
2.2 消息中間件及數(shù)據(jù)傳輸
實時數(shù)據(jù)集成平臺應當保證消息通信的實時性、準確性以及平臺可擴展性。本文開發(fā)的面向消息的中間件,他使用MSMQ作為消息的緩沖存儲,具有高度的可靠性;消息中間件進行消息轉(zhuǎn)發(fā)時支持斷點續(xù)傳,避免了在較差網(wǎng)絡環(huán)境下消息傳輸?shù)摹岸秳訂栴}”;傳輸由操作日志控制,保證同一消息不會多次重復發(fā)送[3]。RTDI平臺采用圖2所示的通信框架。
采用持久遠程隊列傳送實時數(shù)據(jù),OPC數(shù)據(jù)讀取發(fā)送程序只需與本地的MSMQ服務器相連,然后將消息存放到遠程隊列中。MSMQ負責將遠程隊列中的消息送到遠程目的地的隊列上。接收方即OPC數(shù)據(jù)轉(zhuǎn)發(fā)程序與當?shù)氐腗SMQ服務器相連,從本地專用隊列中獲取消息。這樣,即使目標隊列的MSMQ服務器未啟動,OPC數(shù)據(jù)讀取發(fā)送程序也可以成功地向目標隊列發(fā)送數(shù)據(jù),而且保證向目標隊列發(fā)送的數(shù)據(jù)不丟失,保證實時數(shù)據(jù)傳輸?shù)目煽啃?sup>[4]。
3 RTDI系統(tǒng)平臺的構(gòu)建
基于Web的B/S系統(tǒng)結(jié)構(gòu),采用模擬控制現(xiàn)場的圖示、在位查詢和智能提示等多種手段,向用戶提供易于使用的信息獲取方式。這種劃分方式的好處是將不同的功能在頁面上以模塊化分開,便于功能頁面的調(diào)換,使各個區(qū)域各負其責,也便于系統(tǒng)維護。RTDI系統(tǒng)的Web結(jié)構(gòu)如圖3所示:
實時數(shù)據(jù)監(jiān)控需要進行頻繁的數(shù)據(jù)刷新,本文的做法是把數(shù)據(jù)獲取和數(shù)據(jù)展示用不同的頁面操作。刷新設置區(qū)定時獲取當前功能區(qū)內(nèi)所有位號的實時點數(shù)據(jù),通過JavaScript腳本將數(shù)據(jù)賦值給功能區(qū)內(nèi)相應的位號層。用戶只看到刷新設置區(qū)內(nèi)系統(tǒng)時間和功能區(qū)內(nèi)實時數(shù)據(jù)在變動,整個系統(tǒng)界面也相對穩(wěn)定,從而達到系統(tǒng)設計的標準。
4 桌面工具
狀態(tài)發(fā)布工具可以設置和顯示3種類型的圖:PFD圖(過程流程圖)、趨勢圖和報警圖。在狀態(tài)發(fā)布工具中,用戶可以把過程數(shù)據(jù)按照他內(nèi)在的物理或邏輯關系編輯、組織成PFD圖顯示來自不同實時數(shù)據(jù)庫的實時數(shù)據(jù)。用戶通過PFD圖可以對企業(yè)的過程數(shù)據(jù)進行實時監(jiān)控。狀態(tài)發(fā)布工具可以定義和顯示趨勢圖,用戶可查看來自一個/多個實時數(shù)據(jù)庫的一個/多個點的數(shù)據(jù),可任意放大、縮小趨勢圖,借助過程數(shù)據(jù)的趨勢圖,用戶對實時數(shù)據(jù)進行分析和跟蹤。
5 結(jié) 語
基于本文所述的實時數(shù)據(jù)集成技術(shù)所構(gòu)造的RTDI平臺引入了松耦合型的、基于消息隊列中間件的分布式體系結(jié)構(gòu),并采用工業(yè)OPC標準和消息隊列中間件技術(shù)實現(xiàn)了實時數(shù)據(jù)的規(guī)范獲取和可靠傳輸。該系統(tǒng)解決了實時數(shù)據(jù)的應用問題,保證分布實時數(shù)據(jù)的可達性和一致性。該平臺現(xiàn)已應用到石油行業(yè)的生產(chǎn)一線,能實現(xiàn)對實時數(shù)據(jù)的遠程監(jiān)控和設備的遠程維護,為進一步提高企業(yè)安全管理、生產(chǎn)管理、預測分析和決策支持能力提供了良好的實時數(shù)據(jù)監(jiān)控平臺。
參 考 文 獻
[1]OPC Foundation.OPC Data Access Specification Version 3.00,2003.
[2]OPC Foundation.Product Catalog/OPC Specification,2000.
[3]秦軍.基于MSMQ消息通信的研究與實現(xiàn)\\[J\\].計算機與現(xiàn)代化,2004(5):22-24.
[4]徐凱聲.基于MSMQ的網(wǎng)絡通信的研究\\[J\\].武漢交通科技大學學報,2000,24(6):647-650.
作者簡介 張永強 男,1978年出生,陜西西安人,講師。研究方向為數(shù)據(jù)庫應用、計算機網(wǎng)絡與通信。