趙磊 王蓬 鄭志強(qiáng) 李廣 畢鑒首
[摘 ? ?要]設(shè)計(jì)油氣田SCADA系統(tǒng)軟件,包括實(shí)時(shí)數(shù)據(jù)庫(kù)模塊、組態(tài)配置模塊、數(shù)據(jù)監(jiān)控模塊、關(guān)系數(shù)據(jù)庫(kù)模塊,實(shí)現(xiàn)了對(duì)油氣田工業(yè)設(shè)備和工業(yè)傳感器進(jìn)行數(shù)據(jù)采集、存儲(chǔ)、處理、組態(tài)、監(jiān)測(cè)、控制等功能,具有內(nèi)核精簡(jiǎn)、配置簡(jiǎn)單、組態(tài)靈活、交互容易、接口豐富等特點(diǎn),為滿足油氣田生產(chǎn)的數(shù)據(jù)采集與監(jiān)視控制需求提供了一種新的軟件設(shè)計(jì)方案。
[關(guān)鍵詞]油氣田;SCADA;配置;組態(tài)
[中圖分類號(hào)]TP368.5 [文獻(xiàn)標(biāo)志碼]A [文章編號(hào)]2095–6487(2022)05–00–03
Software Design of SCADA System for Oil and Gas Fields
Zhao Lei,Wang Peng,Zheng Zhi-qiang,Li Guang,Bi Jian-shou
[Abstract]This paper designs oil and gas field SCADA system software, including real-time database module, configuration configuration module, data monitoring module, relational database module, and realizes data acquisition, storage, processing, configuration, monitoring, Control and other functions have the technical characteristics of simplified kernel, simple configuration, flexible configuration, easy interaction, and rich interfaces. It provides a new software design to meet the data acquisition and monitoring and control requirements of oil and gas field production.
[Keywords]oil and gas field; SCADA; configuration; configuration
油氣田生產(chǎn)企業(yè)在進(jìn)行數(shù)字化、信息化、自動(dòng)化改造和應(yīng)用時(shí),面臨著生產(chǎn)對(duì)象種類繁多、參數(shù)測(cè)量點(diǎn)數(shù)目龐大、應(yīng)用配置頻繁變更等諸多挑戰(zhàn)。為了達(dá)到調(diào)度管理的靈活應(yīng)用效果,在已有技術(shù)中,通常使用SCADA系統(tǒng)對(duì)分布距離遠(yuǎn)及生產(chǎn)單元分散的井、站、線設(shè)備進(jìn)行監(jiān)控,利用有線或無(wú)線的方式實(shí)現(xiàn)數(shù)據(jù)傳輸。但該類系統(tǒng)往往關(guān)注于通用性和普適性,在運(yùn)行性能、應(yīng)用便捷性、產(chǎn)品價(jià)格方面不具備太強(qiáng)競(jìng)爭(zhēng)力。使用通用SCADA系統(tǒng)進(jìn)行大規(guī)模項(xiàng)目實(shí)施的油氣田企業(yè),通常存在著企業(yè)自運(yùn)維困難、服務(wù)器冗余過(guò)多、經(jīng)費(fèi)耗資較大等問(wèn)題。所以,本文設(shè)計(jì)了一種油氣田企業(yè)專用的SCADA系統(tǒng),在精簡(jiǎn)產(chǎn)品內(nèi)核的同時(shí),進(jìn)一步提高組件應(yīng)用水平,從而大幅降低系統(tǒng)使用難度,輔助油氣田企業(yè)提高信息系統(tǒng)的投入產(chǎn)出比。
1 系統(tǒng)架構(gòu)設(shè)計(jì)
油氣田SCADA系統(tǒng)軟件架構(gòu)(圖1)主要包括:實(shí)時(shí)數(shù)據(jù)庫(kù)模塊、組態(tài)配置模塊、數(shù)據(jù)監(jiān)控模塊和關(guān)系數(shù)據(jù)庫(kù)模塊。
1.1 實(shí)時(shí)數(shù)據(jù)庫(kù)模塊
(1)實(shí)時(shí)數(shù)據(jù)庫(kù)rtdb:油氣田SCADA系統(tǒng)的實(shí)時(shí)數(shù)據(jù)存儲(chǔ)、消息推送模塊。
(2)采集服務(wù)IOServer:與前端RTU、PLC等系統(tǒng)進(jìn)行數(shù)據(jù)采集、交互的服務(wù)模塊。
(3)數(shù)據(jù)轉(zhuǎn)儲(chǔ)DataRouter:實(shí)時(shí)數(shù)據(jù)向第三方系統(tǒng)傳輸?shù)哪K。
1.2 組態(tài)配置模塊
(1)組態(tài)軟件:提供第三方可掛載的組態(tài)服務(wù)的插件。
(2)配置軟件:系統(tǒng)初始化、項(xiàng)目搭建、系統(tǒng)運(yùn)維的插件。
1.3 數(shù)據(jù)監(jiān)控模塊
數(shù)據(jù)監(jiān)控DataView:實(shí)時(shí)數(shù)據(jù)監(jiān)測(cè)、控制、報(bào)警處理、閾值設(shè)置及組態(tài)展示等功能的應(yīng)用插件。
1.4 關(guān)系數(shù)據(jù)庫(kù)模塊
應(yīng)用第三方關(guān)系數(shù)據(jù)庫(kù)完成系統(tǒng)配置數(shù)據(jù)和歷史數(shù)據(jù)存儲(chǔ)。
2 系統(tǒng)詳細(xì)設(shè)計(jì)
2.1 實(shí)時(shí)數(shù)據(jù)庫(kù)模塊設(shè)計(jì)說(shuō)明
實(shí)時(shí)數(shù)據(jù)庫(kù)rtdb負(fù)責(zé)油氣田SCADA系統(tǒng)的實(shí)時(shí)數(shù)據(jù)存儲(chǔ)和消息推送服務(wù),是系統(tǒng)各模塊之間實(shí)時(shí)數(shù)據(jù)交互的橋梁。rtdb與IOServer交互,作為數(shù)據(jù)“接收方”存在,由IOServer向rtdb寫入數(shù)據(jù)流,主要用于更新rtdb最新數(shù)據(jù);rtdb與DataRouter交互,作為數(shù)據(jù)“提供方”存在,DataRouter根據(jù)配置從rtdb中獲取最新數(shù)據(jù),用于向第三方系統(tǒng)按照格式轉(zhuǎn)發(fā)數(shù)據(jù);rtdb與組態(tài)軟件交互,作為數(shù)據(jù)“提供方”存在,組態(tài)軟件根據(jù)配置從rtdb中獲取最新數(shù)據(jù)進(jìn)行頁(yè)面展示,用于向第三方系統(tǒng)發(fā)布無(wú)插件的組態(tài)鏈接服務(wù)頁(yè)面;rtdb與DataView交互,作為數(shù)據(jù)“提供方”存在,DataView從rtdb中獲取最新數(shù)據(jù)進(jìn)行數(shù)據(jù)展示、報(bào)警、報(bào)表分析等應(yīng)用;rtdb與配置軟件無(wú)數(shù)據(jù)流交互。
采集服務(wù)IOServer主要負(fù)責(zé)對(duì)安裝于油井、氣井、注水井、摻水井、計(jì)量站、配水間、接轉(zhuǎn)站、注水站、注聚站、聯(lián)合站等各類生產(chǎn)單元的工業(yè)傳感器和工業(yè)設(shè)備進(jìn)行數(shù)據(jù)采集、處理、存儲(chǔ)等功能,涉及的參數(shù)主要包括溫度、壓力、載荷、位移、電參、液位、頻率、流量、振動(dòng)、轉(zhuǎn)速等。同時(shí),報(bào)警是采集服務(wù)IOServer的重要功能,系統(tǒng)的遙測(cè)、遙信變量支持報(bào)警功能,其中遙信變量支持的報(bào)警類型有:SOE報(bào)警、故障報(bào)警和遙信變位報(bào)警。遙測(cè)變量支持的報(bào)警類型為超上上限報(bào)警、超上限報(bào)警、超下限報(bào)警、超下下限報(bào)警四種越限報(bào)警類型。
數(shù)據(jù)轉(zhuǎn)儲(chǔ)DataRouter負(fù)責(zé)油氣田SCADA系統(tǒng)與第三方系統(tǒng)的數(shù)據(jù)交互,從而完成數(shù)據(jù)轉(zhuǎn)發(fā)、報(bào)警推送、數(shù)據(jù)補(bǔ)錄等功能。DataRouter的運(yùn)行流程為:首先進(jìn)行數(shù)據(jù)初始化,然后啟動(dòng)實(shí)時(shí)數(shù)據(jù)轉(zhuǎn)儲(chǔ)、報(bào)警信息轉(zhuǎn)儲(chǔ)、曲線數(shù)據(jù)轉(zhuǎn)儲(chǔ)、操作記錄轉(zhuǎn)儲(chǔ)、數(shù)據(jù)補(bǔ)錄轉(zhuǎn)儲(chǔ)。其中,實(shí)時(shí)數(shù)據(jù)轉(zhuǎn)儲(chǔ)為多線程按固定時(shí)間間隔轉(zhuǎn)儲(chǔ)數(shù)據(jù),報(bào)警信息轉(zhuǎn)儲(chǔ)和曲線數(shù)據(jù)轉(zhuǎn)儲(chǔ)訂閱rtdb監(jiān)聽數(shù)據(jù)進(jìn)行轉(zhuǎn)儲(chǔ),操作記錄轉(zhuǎn)儲(chǔ)通過(guò)WebService接口監(jiān)聽并轉(zhuǎn)儲(chǔ)數(shù)據(jù),數(shù)據(jù)補(bǔ)錄在異常情況發(fā)生時(shí)處理異常數(shù)據(jù)補(bǔ)錄轉(zhuǎn)儲(chǔ)。
2.2 組態(tài)配置模塊設(shè)計(jì)說(shuō)明
組態(tài)配置模塊是油氣田SCADA系統(tǒng)搭建的核心模塊,主要負(fù)責(zé)項(xiàng)目基礎(chǔ)數(shù)據(jù)錄入、組態(tài)繪制和數(shù)據(jù)轉(zhuǎn)儲(chǔ)配置等工作。
2.2.1 組態(tài)軟件設(shè)計(jì)
組態(tài)軟件將數(shù)據(jù)以工藝流程圖的方式讓用戶更直觀地查看數(shù)據(jù)是油氣田SCADA系統(tǒng)的一項(xiàng)重要功能,組態(tài)軟件主要包括組態(tài)設(shè)計(jì)和組態(tài)展示兩個(gè)功能。
組態(tài)設(shè)計(jì)功能是使用基礎(chǔ)的油氣田SVG進(jìn)行工藝流程圖繪制,繪制完成后的圖片保存為JPG或SVG格式并存放軟件指定目錄下,將圖片與相應(yīng)的油氣田生產(chǎn)單元關(guān)聯(lián),同時(shí)設(shè)計(jì)與工藝流程圖相關(guān)聯(lián)的監(jiān)測(cè)變量及坐標(biāo)信息,其中路徑信息、關(guān)聯(lián)信息以及變量坐標(biāo)信息等存入關(guān)系數(shù)據(jù)庫(kù)中。
組態(tài)展示功能是將組態(tài)設(shè)計(jì)好的工藝流程圖以Web鏈接的方式展示到DataView或其他系統(tǒng),自適應(yīng)瀏覽器大小以及兼容主流瀏覽器,可以查詢到監(jiān)測(cè)變量的實(shí)時(shí)數(shù)據(jù)以及歷史曲線數(shù)據(jù),運(yùn)行的流程如圖2所示。
2.2.2 配置軟件設(shè)計(jì)
配置軟件主要為管理員用戶提供項(xiàng)目快速搭建、復(fù)用、工程備份等管理類功能。油氣田生產(chǎn)業(yè)務(wù)會(huì)經(jīng)常面臨生產(chǎn)單元的不定期變更,這將導(dǎo)致工程項(xiàng)目頻繁的新增、刪除、移動(dòng)等配置,平臺(tái)提供便捷、簡(jiǎn)單、模板化的管理功能,將大幅提高用戶應(yīng)對(duì)項(xiàng)目變更速度的及時(shí)、高效管理。配置軟件主要功能包括工程管理、變量配置、監(jiān)控設(shè)備配置、監(jiān)控對(duì)象配置、數(shù)據(jù)轉(zhuǎn)儲(chǔ)配置等。
工程管理功能主要包括數(shù)據(jù)源的初始化及工程的初始化,數(shù)據(jù)源初始化是配置rtdb及關(guān)系數(shù)據(jù)庫(kù)的用戶名、密碼、地址等信息;工程初始化主要是對(duì)項(xiàng)目表結(jié)構(gòu)、基礎(chǔ)數(shù)據(jù)以及用戶等信息的初始化。
變量配置功能主要是變量模板的構(gòu)建、導(dǎo)入和導(dǎo)出,以及不同分組下變量的本地歷史數(shù)據(jù)存儲(chǔ)間隔的配置,變量的具體屬性配置包括變量類型、子類型、變量分組、變量標(biāo)志、功能碼、數(shù)據(jù)地址、字節(jié)長(zhǎng)度、字節(jié)偏移量、位偏移量、值類型、基數(shù)、系數(shù)、存儲(chǔ)規(guī)則等。
監(jiān)控設(shè)備配置功能主要是對(duì)監(jiān)控設(shè)備及采集通道進(jìn)行配置。監(jiān)控設(shè)備的配置主要包括設(shè)備地址、通信超時(shí)時(shí)間、重發(fā)次數(shù)、生產(chǎn)廠家、型號(hào)、安裝日期等;采集通道配置主要包括通信協(xié)議、通信鏈路、通信幀、幀間隔、通道編號(hào)等。
監(jiān)控對(duì)象配置功能主要是索引對(duì)象及監(jiān)控對(duì)象導(dǎo)航樹搭建、采集通道關(guān)聯(lián)、組態(tài)關(guān)聯(lián)配置等功能。索引對(duì)象為樹形菜單,按照油氣田的管理層級(jí)進(jìn)行設(shè)置;監(jiān)控對(duì)象即油井、水井、氣井等生產(chǎn)單元,按照工藝流程和組織單位配置到索引對(duì)象下;監(jiān)控對(duì)象需關(guān)聯(lián)監(jiān)控設(shè)備的采集通道,為IOServer采集數(shù)據(jù)及組織數(shù)據(jù)做準(zhǔn)備;有工藝流程的監(jiān)控對(duì)象需要和組態(tài)軟件的工藝流程圖關(guān)聯(lián),為DataView或其他系統(tǒng)展示工藝流程圖做準(zhǔn)備。
數(shù)據(jù)轉(zhuǎn)儲(chǔ)配置功能主要是將油氣田SCADA系統(tǒng)的數(shù)據(jù)轉(zhuǎn)儲(chǔ)給其他生產(chǎn)管理系統(tǒng),包括轉(zhuǎn)儲(chǔ)對(duì)象、轉(zhuǎn)儲(chǔ)變量、轉(zhuǎn)儲(chǔ)模板的配置。轉(zhuǎn)儲(chǔ)對(duì)象為第三方系統(tǒng)定義的對(duì)象編號(hào),轉(zhuǎn)儲(chǔ)變量為第三方系統(tǒng)定義的變量名稱,轉(zhuǎn)儲(chǔ)模板為油氣田SCADA系統(tǒng)中的數(shù)據(jù)與第三方系統(tǒng)轉(zhuǎn)儲(chǔ)對(duì)象和轉(zhuǎn)儲(chǔ)變量的映射關(guān)系,配置好之后DataRouter將進(jìn)行系統(tǒng)間數(shù)據(jù)轉(zhuǎn)儲(chǔ)。
2.3 數(shù)據(jù)監(jiān)控模塊設(shè)計(jì)說(shuō)明
數(shù)據(jù)監(jiān)控模塊DataView 是專門針對(duì)油氣田開發(fā),集實(shí)時(shí)數(shù)據(jù)展示、歷史數(shù)據(jù)查詢、工藝流程圖呈現(xiàn)、遠(yuǎn)程調(diào)節(jié)/控制、報(bào)警閾值設(shè)置/推送、操控記錄查詢、交接班等功能于一身的油氣田SCADA系統(tǒng)監(jiān)控終端軟件。數(shù)據(jù)監(jiān)控模塊用于對(duì)生產(chǎn)單元提供列表化、單位化、模型化的監(jiān)視和控制,便于監(jiān)控職工、生產(chǎn)管理經(jīng)理等角色實(shí)時(shí)查看現(xiàn)場(chǎng)狀態(tài),精準(zhǔn)跟蹤生產(chǎn)過(guò)程。
數(shù)據(jù)監(jiān)控模塊DataView功能包括以下內(nèi)容。
(1)實(shí)時(shí)監(jiān)控:用于監(jiān)控油井、氣井、水井、站庫(kù)等生產(chǎn)單元的實(shí)時(shí)數(shù)據(jù)、歷史數(shù)據(jù)、組態(tài)數(shù)據(jù),功能主要包括油井實(shí)時(shí)監(jiān)控、集輸實(shí)時(shí)監(jiān)控、注水實(shí)時(shí)監(jiān)控。
(2)報(bào)警處置:用于對(duì)現(xiàn)場(chǎng)數(shù)據(jù)異常的處置,功能主要包括實(shí)時(shí)報(bào)警查詢、歷史報(bào)警查詢、實(shí)時(shí)報(bào)警推送、報(bào)警處置。
(3)參數(shù)設(shè)置:主要用于對(duì)現(xiàn)場(chǎng)工業(yè)儀表的運(yùn)行參數(shù)進(jìn)行實(shí)時(shí)設(shè)置,功能主要包括設(shè)備參數(shù)下置、SOE報(bào)警設(shè)置、軟件報(bào)警設(shè)置及相關(guān)操控日志查看。
(4)遠(yuǎn)程調(diào)參:SCADA系統(tǒng)的遙調(diào)、遙控操作,將參數(shù)下發(fā)至下位機(jī)設(shè)備,實(shí)現(xiàn)遠(yuǎn)程調(diào)整設(shè)備調(diào)節(jié)及控制參數(shù)的功能。
(5)通信診斷:判斷出遠(yuǎn)端傳感器、監(jiān)控設(shè)備、路由器、服務(wù)器等所有鏈路的通信在線狀態(tài),并初步給出離線原因及位置等信息。
(6)生產(chǎn)報(bào)表:油氣田生產(chǎn)相關(guān)的日?qǐng)?bào)、月報(bào)、年報(bào)表信息,具有查詢、對(duì)比、導(dǎo)出及打印功能。
(7)用戶管理:用戶管理、角色管理、切換用戶、交接班功能。
2.4 關(guān)系數(shù)據(jù)庫(kù)模塊設(shè)計(jì)說(shuō)明
關(guān)系數(shù)據(jù)庫(kù)作為油氣田SCADA系統(tǒng)配置數(shù)據(jù)和歷史數(shù)據(jù)的存儲(chǔ)單元,是系統(tǒng)的核心組成模塊。作為系統(tǒng)配置數(shù)據(jù)庫(kù),組態(tài)配置模塊將系統(tǒng)的采集配置數(shù)據(jù)、轉(zhuǎn)儲(chǔ)配置數(shù)據(jù)、組態(tài)配置數(shù)據(jù)等寫入關(guān)系數(shù)據(jù)庫(kù)。關(guān)系數(shù)據(jù)庫(kù)為IOServer提供采集配置數(shù)據(jù),IOServer將采集到的數(shù)據(jù)定期寫入關(guān)系數(shù)據(jù)庫(kù)作為歷史數(shù)據(jù)存儲(chǔ);關(guān)系數(shù)據(jù)庫(kù)為DataRouter提供轉(zhuǎn)儲(chǔ)配置數(shù)據(jù),為組態(tài)軟件提供查詢功能需要的數(shù)據(jù)集合,同時(shí)組態(tài)軟件在發(fā)生遠(yuǎn)程操控等功能時(shí)也向關(guān)系數(shù)據(jù)庫(kù)回寫部分業(yè)務(wù)數(shù)據(jù);關(guān)系數(shù)據(jù)庫(kù)為DataView提供查詢功能需要的數(shù)據(jù)集合,同時(shí)DataView在發(fā)生遠(yuǎn)程操控、閾值設(shè)置、登錄等事件時(shí)也向關(guān)系數(shù)據(jù)庫(kù)回寫部分業(yè)務(wù)數(shù)據(jù)。關(guān)系數(shù)據(jù)庫(kù)模塊與其他模塊交互數(shù)據(jù)流如圖3所示。
3 結(jié)語(yǔ)
本文設(shè)計(jì)的油氣田SCADA系統(tǒng)軟件,提出了一種全新的軟件架構(gòu),解決了油氣田生產(chǎn)在數(shù)據(jù)采集與監(jiān)視控應(yīng)用上的眾多問(wèn)題,在油氣田SCADA系統(tǒng)領(lǐng)域具有很好的推廣前景和應(yīng)用價(jià)值。
參考文獻(xiàn)
[1] 賈勇.SCADA系統(tǒng)在油氣集輸管道中的應(yīng)用研究[J].石化技術(shù),2017,24(10):41.
[2] 李小寧.SCADA系統(tǒng)在油田生產(chǎn)中的應(yīng)用[J].中國(guó)科技信息,2014(12):72-73.
[3] 楊再霖.油氣集輸系統(tǒng)自動(dòng)控制技術(shù)[J].建筑工程技術(shù)與設(shè)計(jì),2020(30):3810.
[4] 楊斌,仝望斐.論SCADA系統(tǒng)在長(zhǎng)輸管道中的應(yīng)用[J].山西電子技術(shù),2014(6):15-17.
[5] 張洋.SCADA系統(tǒng)在油田中的應(yīng)用研究[J].中國(guó)管理信息化,2015,18(16):89.