摘 要:隨著實時數據在流程行業的應用和企業對信息化要求的不斷提高,實時數據的集成和深度開發已成為一個迫切需要解決的問題。在深入分析當前工業自動化實時數據集成的一些關鍵技術的基礎上,探討構造實時數據集成平臺RTDI,其中包括體系結構、實時數據集成策略、平臺構建、桌面工具等環節的實現方法與解決策略,解決了實時數據的應用問題。目前,RTDI已應用在石油行業的生產一線,且效果良好。
關鍵詞:OPC;消息中間件;數據集成;實時數據
中圖分類號: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
隨著企業信息化進程的推進,流程行業普遍采用WinCC、RSView32等監控組態軟件對工業現場實時數據進行采集和監測,這些傳統的監控軟件可以處理來自現場設備所采集的生產數據。但是,原有專用監控軟件存在幾個方面的缺陷:首先不能提供隨時隨地的監控服務;其次無法為企業內部的其他信息系統提供原始數據;而且各監控系統互相獨立,不具備統一性。因此,在保證現有監控系統正常運行的情況下,急需對其功能進行延伸和擴展,以達到有效利用的目的。本文提出一種基于過程控制的對象連接和嵌入技術(Object linking and embedding for Process Control,OPC)和消息中間件的實時數據集成系統,(Real-Time Data Integration System,RTDI)以實現這樣的目標。經實踐應用證明,該系統已經明顯改善了原有系統的不足。充分體現了系統便利性、集成性和擴展性的優點。
1 RTDI系統體系結構
RTDI實時監控系統采用多層C/S和B/S的混合結構。基于這種模式下的系統結構如圖1所示。消息中間件層是整個系統的核心,他由OPC數據讀取發送客戶端、Microsoft 消息隊列(Microsoft Message Queuing,MSMQ)服務器、OPC數據轉發程序組成。
其中,OPC數據讀取發送客戶端負責讀取OPC服務器發布的實時數據,打包成消息并發送到目標消息隊列;MSMQ服務器管理進出消息隊列的消息;OPC數據轉發程序將目標消息隊列的消息對照位號數據字典進行解析,存放到對應的數據表中。

消息中間件實現異步通信,在網絡通暢的情況下,保證消息通信的實時性;在網絡線路不穩定或斷連的情況下,消息發送方保證不會因此而阻塞系統運行,已發送消息不會因此丟失。
2 基于OPC和消息中間件的實時數據集成策略
本文提出的基于標準化的實時數據獲取及傳送策略,他保證了實時數據的規范化獲取和可靠傳輸。
2.1 OPC技術及數據獲取策略
OPC是Microsoft公司的對象鏈接和嵌入技術在過程控制方面的應用,他為工業自動化軟件面向對象的開發提供了統一的標準。本文的RTDI系統結構中, OPC Server位于數據源層上,并發布從現場設備獲取的實時數據;OPC Client以中間件的形式位于消息中間件層,其任務是從OPC接口獲取OPC Server發布的實時數據,然后打包發送到消息隊列。這些接口定義符合OPC基金會數據訪問用戶接口標準 [1,2]。
2.2 消息中間件及數據傳輸
實時數據集成平臺應當保證消息通信的實時性、準確性以及平臺可擴展性。本文開發的面向消息的中間件,他使用MSMQ作為消息的緩沖存儲,具有高度的可靠性;消息中間件進行消息轉發時支持斷點續傳,避免了在較差網絡環境下消息傳輸的“抖動問題”;傳輸由操作日志控制,保證同一消息不會多次重復發送[3]。RTDI平臺采用圖2所示的通信框架。

采用持久遠程隊列傳送實時數據,OPC數據讀取發送程序只需與本地的MSMQ服務器相連,然后將消息存放到遠程隊列中。MSMQ負責將遠程隊列中的消息送到遠程目的地的隊列上。接收方即OPC數據轉發程序與當地的MSMQ服務器相連,從本地專用隊列中獲取消息。這樣,即使目標隊列的MSMQ服務器未啟動,OPC數據讀取發送程序也可以成功地向目標隊列發送數據,而且保證向目標隊列發送的數據不丟失,保證實時數據傳輸的可靠性[4]。
3 RTDI系統平臺的構建
基于Web的B/S系統結構,采用模擬控制現場的圖示、在位查詢和智能提示等多種手段,向用戶提供易于使用的信息獲取方式。這種劃分方式的好處是將不同的功能在頁面上以模塊化分開,便于功能頁面的調換,使各個區域各負其責,也便于系統維護。RTDI系統的Web結構如圖3所示:

實時數據監控需要進行頻繁的數據刷新,本文的做法是把數據獲取和數據展示用不同的頁面操作。刷新設置區定時獲取當前功能區內所有位號的實時點數據,通過JavaScript腳本將數據賦值給功能區內相應的位號層。用戶只看到刷新設置區內系統時間和功能區內實時數據在變動,整個系統界面也相對穩定,從而達到系統設計的標準。
4 桌面工具
狀態發布工具可以設置和顯示3種類型的圖:PFD圖(過程流程圖)、趨勢圖和報警圖。在狀態發布工具中,用戶可以把過程數據按照他內在的物理或邏輯關系編輯、組織成PFD圖顯示來自不同實時數據庫的實時數據。用戶通過PFD圖可以對企業的過程數據進行實時監控。狀態發布工具可以定義和顯示趨勢圖,用戶可查看來自一個/多個實時數據庫的一個/多個點的數據,可任意放大、縮小趨勢圖,借助過程數據的趨勢圖,用戶對實時數據進行分析和跟蹤。
5 結 語
基于本文所述的實時數據集成技術所構造的RTDI平臺引入了松耦合型的、基于消息隊列中間件的分布式體系結構,并采用工業OPC標準和消息隊列中間件技術實現了實時數據的規范獲取和可靠傳輸。該系統解決了實時數據的應用問題,保證分布實時數據的可達性和一致性。該平臺現已應用到石油行業的生產一線,能實現對實時數據的遠程監控和設備的遠程維護,為進一步提高企業安全管理、生產管理、預測分析和決策支持能力提供了良好的實時數據監控平臺。
參 考 文 獻
[1]OPC Foundation.OPC Data Access Specification Version 3.00,2003.
[2]OPC Foundation.Product Catalog/OPC Specification,2000.
[3]秦軍.基于MSMQ消息通信的研究與實現\\[J\\].計算機與現代化,2004(5):22-24.
[4]徐凱聲.基于MSMQ的網絡通信的研究\\[J\\].武漢交通科技大學學報,2000,24(6):647-650.
作者簡介 張永強 男,1978年出生,陜西西安人,講師。研究方向為數據庫應用、計算機網絡與通信。