謝光華 韓菲 任靜思 張富利
[摘 要] 隨著石油行業(yè)中數(shù)字油田發(fā)展,SCADA 系統(tǒng)在油田中的建設規(guī)模不斷擴大?;赟CADA在油田生產(chǎn)過程監(jiān)控與調(diào)度中應用廣泛和重要性,豐富的實時自動化數(shù)據(jù)與其他應用系統(tǒng)安全共享應用,可以促進提升企業(yè)油氣生產(chǎn)管理水平。文章以某油田為例,介紹了一種基于SCADA系統(tǒng)組態(tài)軟件數(shù)據(jù)訪問接口,實現(xiàn)與其他分析應用系統(tǒng)之間數(shù)據(jù)實時交換的方法,并應用于視頻圖像與監(jiān)測數(shù)據(jù)綜合分析中取得良好效果,可推廣應用到油田SCADA系統(tǒng)數(shù)據(jù)治理等領域。
[關鍵詞] 油田SCADA;數(shù)據(jù)采集;安全共享
doi : 10 . 3969 / j . issn . 1673 - 0194 . 2018. 23. 028
[中圖分類號] F270.7;TN914 [文獻標識碼] A [文章編號] 1673 - 0194(2018)23- 0069- 02
1 前 言
數(shù)據(jù)采集與監(jiān)控系統(tǒng)(Supervisory Control And Data Acquisition,SCADA)廣泛應用于電力調(diào)度、油氣調(diào)度、軌道交通綜合監(jiān)控等工業(yè)控制領域,在提高系統(tǒng)運行效率,保障生產(chǎn)系統(tǒng)安全,輔助分析事故發(fā)生原因等方面起著重要作用[1]。隨著網(wǎng)絡、面向?qū)ο?、?shù)據(jù)庫等技術協(xié)同發(fā)展,SCADA數(shù)據(jù)與其他系統(tǒng)集成應用,滿足綜合、安全、經(jīng)濟運行以及商業(yè)化運營的需要。
運用SCADA系統(tǒng)組態(tài)軟件支持的數(shù)據(jù)接口,根據(jù)具體應用需求,選擇合適的傳輸協(xié)議,通過程序開發(fā)數(shù)據(jù)采集工具,將自動化實時數(shù)據(jù)采集任務與數(shù)據(jù)應用分析任務分離,監(jiān)測數(shù)據(jù)實時轉發(fā),第三方系統(tǒng)分析結果信息及時回寫,實現(xiàn)自動化數(shù)據(jù)安全、快速、經(jīng)濟共享,一體化應用。
2 油田SCADA系統(tǒng)數(shù)據(jù)實時交互方法設計
2.1 油田SCADA系統(tǒng)架構簡介
油田SCADA 系統(tǒng)是一個將生產(chǎn)過程控制與遠程調(diào)度相互結合的自動化系統(tǒng)。通過對油田生產(chǎn)過程中的流量、溫度、設備狀態(tài)、密度、壓力、液位、管道系統(tǒng)等相關信息采集,異常預警報警,從而有效地監(jiān)控與管理整個油田生產(chǎn)過程[2]。
某油田SCADA系統(tǒng)常采用三層架構設計[3],分為數(shù)據(jù)采集層、數(shù)據(jù)監(jiān)控層、數(shù)據(jù)應用層?,F(xiàn)場采集層,是系統(tǒng)的數(shù)據(jù)源,包括儀表、PLC/RTU站庫系統(tǒng),由油氣水井、計量站、接轉站、供汽站、油氣水管網(wǎng)站控系統(tǒng),以及原油、污水、清水處理站DCS系統(tǒng)等構成。單井、管網(wǎng)站控系統(tǒng)通過無線方式與監(jiān)控層通訊;重點站場、DCS系統(tǒng)通過有線光纖與監(jiān)控層通訊。數(shù)據(jù)監(jiān)控層是系統(tǒng)核心部分,數(shù)據(jù)采集、分析、管理在此層實現(xiàn),起承上啟下作用。由SCADA冗余主備服務器、實時數(shù)據(jù)服務器、歷史數(shù)據(jù)服務器組成。也是人機接口部分,系統(tǒng)監(jiān)視、調(diào)控、預警、策略調(diào)配等功能通過客戶層實現(xiàn)。數(shù)據(jù)應用層,通過單向隔離網(wǎng)閘將自動化數(shù)據(jù)發(fā)送到油田辦公網(wǎng)上,實現(xiàn)自動化數(shù)據(jù)的安全共享,在遠端通過IE瀏覽器實現(xiàn)數(shù)據(jù)的管理與綜合應用。
2.2 組態(tài)軟件數(shù)據(jù)訪問方式選擇
SCADA系統(tǒng)采用美國GE公司旗下的IFIX軟件作為上位機監(jiān)控平臺組態(tài)軟件。IFIX 組態(tài)軟件支持ODBC 方式和DAO 、RDO 、ADO 等VBA數(shù)據(jù)訪問方式,可以與企業(yè)自動化管理系統(tǒng)無縫連接。
IFIX ODBC由SQL任務、觸發(fā)塊SQT、數(shù)據(jù)塊SQD三部分組成。建立一個SQL任務,需要通過關系數(shù)據(jù)庫SQL命令、IFIX軟件SQL任務選項一系列配置操作。觸發(fā)塊SQT掃描周期和相位,根據(jù)系統(tǒng)設計規(guī)劃嚴格設置和跟蹤測試。采集任務不斷增多時,若一個掃描相位設置不合理,將可能影響一組SQL任務不能正常執(zhí)行完成數(shù)據(jù)轉儲[4]。IFIX ODBC方式操作過程復雜,安全風險高,主要限于系統(tǒng)管理員或?qū)I(yè)維護工程師采用,并以實現(xiàn)向關系數(shù)據(jù)庫周期推送數(shù)據(jù)功能為主。IFIX VBA設計中可采用ADO組件,通過配置和編程實現(xiàn)實時數(shù)據(jù)向關系數(shù)據(jù)庫、Excel文件等的推送以及回寫。此方法建立一項新的數(shù)據(jù)交互任務,需要定制大量代碼,專業(yè)技術較高,同樣主要限于專業(yè)人員應用。
IFIX提供開發(fā)工具包(FIX Integration Toolkit)可訪問實時和歷史數(shù)據(jù),包括實時數(shù)據(jù)訪問接口(EDA)和歷史數(shù)據(jù)訪問接口(HDA)以及其他功能函數(shù),允許用C語言和VB.NET語言編寫的程序使用相同的.NET程序集進行訪問數(shù)據(jù)。工具包運行以iFIX 5.5運行為基礎。采用數(shù)據(jù)訪問開發(fā)工具包,設計在iFIX節(jié)點上運行的數(shù)據(jù)采集服務端程序,通過一定機制與非IFIX節(jié)點上運行的客戶端程序進行數(shù)據(jù)交互。將采集客戶端程序封裝成函數(shù)供其他應用系統(tǒng)快速、簡單、高效調(diào)用,實現(xiàn)SCADA系統(tǒng)數(shù)據(jù)實時交互。
2.3 數(shù)據(jù)交互服務/客戶端傳輸協(xié)議選擇
采用網(wǎng)絡協(xié)議實現(xiàn)數(shù)據(jù)采集客戶與服務端之間的數(shù)據(jù)交互。TCP/IP傳輸控制協(xié)議是Internet采用的一種標準網(wǎng)絡協(xié)議。TCP/IP是協(xié)議組可分為四個層次:網(wǎng)絡接口層、網(wǎng)絡層、傳輸層和應用層。TCP協(xié)議與UDP協(xié)議是傳輸層協(xié)議。TCP(Transmission Control Protocol,傳輸控制協(xié)議)是面向連接的協(xié)議,在收發(fā)數(shù)據(jù)前,必須和對方建立可靠的連接,TCP建立連接要進行3次握手,而斷開連接要進行4次。UDP(User Data Protocol,用戶數(shù)據(jù)報協(xié)議)是一種非連接協(xié)議,傳輸數(shù)據(jù)前發(fā)送端和接收端不建立連接。發(fā)送端UDP傳送數(shù)據(jù)的速度僅受應用程序生成數(shù)據(jù)的速度、計算機的能力和傳輸帶寬的限制;接收端UDP將每個消息段放入隊列,應用程序每次從隊列中讀一個消息段。一臺服務機可同時向多個客戶機傳輸相同的消息。
油田SCADA監(jiān)控系統(tǒng)物理節(jié)點(服務器、監(jiān)控機),有實時數(shù)據(jù)應用需求的系統(tǒng)服務器均部署在油田生產(chǎn)專用網(wǎng)絡內(nèi)部,網(wǎng)絡通訊鏈路相對穩(wěn)定、安全。UDP協(xié)議與TCP協(xié)議相比,具有資源消耗小,處理速度快的優(yōu)點。同時鑒于分析對監(jiān)控數(shù)據(jù)有時效性要求,選擇UPD協(xié)議進行數(shù)據(jù)采集客戶與服務端通訊,實現(xiàn)分析系統(tǒng)與監(jiān)控系統(tǒng)之間的數(shù)據(jù)交互。
2.4 SCADA系統(tǒng)與分析系統(tǒng)通信設計
運用Visual Studio 2010開發(fā)環(huán)境用C#程序語言,采用對象和模塊方法設計,實現(xiàn)UPD通信和系統(tǒng)數(shù)據(jù)實時交互。建立通信管道,客戶端和服務器端通信進程通過Socket進行通信。Socket 類為網(wǎng)絡通信提供了一套豐富的方法和屬性。通信規(guī)則采用指定協(xié)議。基于UDP協(xié)議和數(shù)據(jù)操作需求,定義讀、寫操作信息編碼、解碼函數(shù),統(tǒng)一約定客戶端與和服務器端通訊信息編碼、解碼方式。通信進程中首先創(chuàng)建一個Socket對象,使用SendTo()和ReceiveFrom()方法進行通訊。SendTo()方法指定要發(fā)送的數(shù)據(jù)和目標機器IP地址。IP地址、通信端口號通過程序配置文件定義。當網(wǎng)絡環(huán)境改變,修改配置文件中的IP和端口號,快速完成系統(tǒng)移植與部署。
通信客戶端、服務端程序流程如圖1所示。
服務端程序調(diào)用工具包(iFixToolkit.Adapter2.dll)函數(shù),以組態(tài)軟件運行為基礎,實現(xiàn)數(shù)字、字符、Ascii等類型數(shù)據(jù)的讀取或?qū)懭氲炔僮?。客戶端與服務端UDP通信,將相關函數(shù)封裝成接口,應用功能函數(shù)直接調(diào)用,完成數(shù)據(jù)讀寫任務。應用功能函數(shù)不依賴組態(tài)軟件運行,降低開發(fā)難度,非SCADA系統(tǒng)管理員或?qū)I(yè)維護工程師可以完成。
3 數(shù)據(jù)實時交互方法應用
運用上文數(shù)據(jù)實時交互方法,研發(fā)采集工具成功應用于某油田的注汽鍋爐視頻圖像分析與數(shù)據(jù)一體化監(jiān)控管理[5]。將視頻圖像分析過程任務分解,運用UDP網(wǎng)絡通信實現(xiàn)數(shù)據(jù)采集任務分離,一臺數(shù)據(jù)采集服務器與多臺分析服務器通訊,一個采集工具與多個圖像分析任務實時數(shù)據(jù)交互,解決了視頻分析軟件只能部署在SCADA節(jié)點上的問題,減少了對SCADA節(jié)點的操作,降低了系統(tǒng)部署安全風險。同時應用系統(tǒng)軟件統(tǒng)一開發(fā),通過文件參數(shù)定制方法,實現(xiàn)系統(tǒng)快速、經(jīng)濟部署。如圖2所示。
4 結 論
運用SCADA系統(tǒng)組態(tài)軟件提供的數(shù)據(jù)訪問接口,根據(jù)應用需求選擇合適的網(wǎng)絡傳輸協(xié)議,通過程序編程設計一種自動化數(shù)據(jù)實時交互方法,將自動化數(shù)據(jù)采集、分析任務分離,減少分析系統(tǒng)直接對監(jiān)控組態(tài)軟件運行的依賴,實現(xiàn)分析系統(tǒng)服務器經(jīng)濟靈活部署。運用此方法開發(fā)的數(shù)據(jù)采集工具軟件,應用于某油田鍋爐視頻圖像、監(jiān)測數(shù)據(jù)實時綜合分析,實現(xiàn)視頻報警信息寫回數(shù)據(jù)監(jiān)測系統(tǒng)和一體化監(jiān)控,優(yōu)化了數(shù)據(jù)、視頻監(jiān)控處理操作步驟和相應的崗位設置,提高了油田生產(chǎn)過程監(jiān)控管理效率。此數(shù)據(jù)實時交互方法和數(shù)據(jù)采集軟件工具可應用于SCADA系統(tǒng)數(shù)據(jù)標簽信息治理等領域,具有良好的推廣應用價值。
主要參考文獻
[1]陳曦,周峰,郝鑫,等.我國SCADA系統(tǒng)發(fā)展現(xiàn)狀、挑戰(zhàn)與建議[J].工業(yè)技術創(chuàng)新,2015(1):103-114.
[2]王尊天.SCADA系統(tǒng)在油田中的應用探析[J].中國管理信息化,2016,19(15):147-148.
[3]謝光華.稠油油田生產(chǎn)物聯(lián)網(wǎng)設計與建設[J].信息系統(tǒng)工程,2017(7):23-24.
[4]蔣能記,謝光華,李家燕.自動化實時數(shù)據(jù)轉儲優(yōu)化[J].油氣田地面工程,2010,29(7):61-62.
[5]韓菲,謝光華,姚逸龍.油田注汽鍋爐視頻圖像分析系統(tǒng)設計[J].信息系統(tǒng)工程,2018(5):45-46.