,,
(中國石油大學(北京) 地球物理與信息工程學院,北京 102249)
隨著數字化油田不斷推進,油田現場部署的數字化設備不斷增多,設備規模越來越大,分布范圍也越來越廣,故障率也隨之上升,因此需要對這些數字化油田設備進行更加完備的數據化管理[1]。
本系統實現對油田現場終端設備進行全方位﹑全生命周期的動態信息管理。動態信息數據包括油田現場設備所采集到的實時數據。通過對包括設備的工作電壓、電流等參數的油田現場設備生產數據進行比較,確定設備是否運行正常。通過本系統能夠全方位的對油田設備進行實時管理,能夠方便決策者對油田現場物資狀況全方位掌握。
本系統由Oracle數據庫和WEB發布系統組成。上位機通過控制數字化終端設備將采集到的油田現場實時數據存入數據庫。WEB發布系統通過對數據庫中油田生產數據實時讀取,以實現對油田設備生產狀況的實時監控。具體包括如下功能模塊:地圖總覽模塊、動態信息模塊、故障診斷模塊、統計分析模快、工況分析模塊、用戶反饋模塊。通過WEB發布系統各個模塊,實現對現場設備的全生命周期的管理。對比采集到的數據,通過生產過程電壓、電流等參數判斷設備是否正常運行,以便維修人員能夠及時維修。系統的框架如圖1所示。

圖1 系統框架圖
數據庫是整個系統的中心,隨著數字化油田推行,數字化信息也越來越多,信息存儲成為當前油田的一大問題。數據庫用來存儲遠程終端設備實時采集到的數據并可以做到永久保存,實時查看和調用。
本系統采用的Oracle數據庫。數據庫不但用來存儲遠程終端設備采集到的油田生產數據,并且包括了油田設備的實時狀態和設備的一些基本信息,用來對設備進行實時查看和管理。本系統引入數據庫的目的是為了存儲油田現場設備的生產數據,實現對油田現場設備的管理,因此需要對油田現場設備的數據接口進行統一的規范,方便數據存儲。
WEB發布系統運行于Windows操作系統,其使用Eclipse作為系統開發工具、Oracle9I版本作為系統數據庫、Tomcat作為系統Web服務器。本系統采用B/S架構[2],軟件總體上采用Spring框架,使用JSP作為網站頁面開發語言。
分析系統功能需求,分為如下模塊:
1)地圖總覽模塊。地圖總覽模塊包括RTU基本信息﹑RTU實時數據﹑視頻監控等三大功能顯示模塊,因為RTU上傳數據中包含其經緯度數據,所以在百度地圖中RTU的地理位置均被標注清楚,方便用戶和管理人員查看。視頻監控可以使得管理人員快速掌握燃氣設備的運行狀況。
2)動態信息模塊。設備動態信息展示的是設備運行過程中的一些電量參數,如設備的工作電壓﹑電流﹑設備通訊狀態等信息,通過每隔一定時間讀取數據庫中設備的最新狀態信息,顯示到界面供客戶查詢。
3)故障診斷模塊。設備故障信息是通過對設備狀態的原始數據進行分析和判斷的基礎上得出的。軟件后臺會每隔十分鐘,會讀取數據庫中設備狀態表中最新更新的數據,根據狀態表中一些電壓、電流、電池電量等參數判斷設備是否運行正常。若設備出現故障,將相關故障信息寫入設備故障表,同時顯示設備警報。
4)統計分析模塊。設備統計分析可對不同類型﹑不同廠家的設備故障情況進行統計展示和上線設備的數目進行統計,提供如折線圖﹑柱狀圖﹑餅狀圖等多種圖表展示。
5)工況分析模塊。該模塊是通過對故障維修表進行查詢,對比故障發生的時間和工作人員維修的時間以及故障結束的時間,判斷工作人員的維修效率,方便決策者做出判斷。
6)用戶反饋模塊。用戶在Web發布系統頁面填寫完用戶反饋后,系統會將反饋信息﹑填寫日期以及反饋用戶手機號碼存儲到數據庫中,使管理人員可以更快捷的查看用戶反饋信息,并迅速作出對策,提升用戶滿意度。
系統的功能模塊結構圖如圖2所示。

圖2 系統功能模塊結構圖
系統采用B/S架構的WEB系統,整體框架采用SSH架構,SSH即Spring、Hibernate、Struts。采用HTML和JavaScript進行web頁面的編寫。最后,通過Tomcat服務器進行發布[3]。
此外為使數據更好地展示,還引入了JFreeChart、HighChart等圖表制作工具。
如圖3所示是整個軟件的系統框架。

圖3 系統技術框架圖
由圖中可看出,系統采用Hibernate框架實現對數據庫表到Java類的映射[4],然后使用Spring框架對系統進行整合,使系統進行分層。將系統分為四層,最上層為UI界面,用HTML語言和JavaScript相結合,與用戶進行交互。用戶在UI界面點擊查詢,界面就會將表單傳送給服務器。Restlet風格將所有的資源封裝成URL[5],服務器根據界面提交的URL找到對應的Resource進行處理。Resource類中有很多依賴對象,Spring框架使類創建時依賴類自動加載進來,不用自行去創建。底層Oracle數據庫采用Hibernate框架進行封裝,通過操作對象實現數據持久化,以實現對象操作來修改數據庫表中的數據。
本系統采用的是以Struts、Spring、Hibernate即SSH為核心的B/S架構系統。
系統選用Hibernate技術對Oracle數據庫進行訪問,實現數據庫表與面向對象中對象的連接,將數據庫中的表轉化成程序中的對象,以實現對數據庫的操作。
3.4.1 Spring框架
本系統進入Spring框架,軟件請求處理原理:頁面發送請求→接收請求→根據配置的規則,分配至對應的資源處理→處理完返回結果數據至頁面→頁面顯示。
3.4.2 STRUTS框架
本系統選用的STRUTS版本是Struts2,Struts2是在傳統的Struts1和WebWork上發展起來的,是一個非常優秀的MVC框架。MVC將WEB應用程序分為3個模塊:模型(Model)、視圖(View)、控制器(Controller)。這3個模塊相輔相成,雖然各自執行不同的任務,但是彼此之間又緊密聯系在一起,構成MVC的整體。
3.4.3 HIBERNATE框架
本系統采用的DataSource數據源如下所示。將DataSource數據源封裝成Bean容器。DriverClassName提供了數據庫連接所需要的驅動,url提供了遠程數據庫服務器的地址,username提供了數據庫連接的用戶名,password提供了數據庫連接的密碼。通過以上數據庫參數,應用程序能夠通過Hibernate框架連接到數據庫。
數據庫連接完成以后對數據庫中表進行操作,需要實現關系型數據庫到Java對象的映射。Hibernate通過XML配置文件實現這一目的,將數據庫中表與Java對象建立連接。如下所示,要實現關系型數據庫到Java對象的映射[6],必須要將數據庫表中字段和Java對象中屬性一一對應,并且兩者的數據類型要完全一致。
name=”devid” Column=”devid” Class=”com.table.device” Not-null=”true” Lazy=”false”/ > 4.1.1 地圖總覽模塊 地圖總覽模塊包括RTU基本信息﹑RTU實時數據﹑視頻監控等三大功能展示模塊。RTU基本信息包括RTU單元編號﹑RTU單元用戶表號﹑RTU單元用戶表名﹑RTU編號﹑RTU區域﹑RTU類型﹑RTU負責人員手機號碼﹑RTU負責人員姓名﹑RTU緯度﹑RTU經度﹑RTU安裝時間﹑RTU最近更新時間。因為上傳數據中包含RTU經緯度數據,所以在百度地圖中RTU的地理位置均被標注清楚,方便用戶和管理人員快速查看。RTU實時數據包括RTU門禁狀態﹑RTU狀態位﹑RTU內部時鐘時間﹑RTU內部溫度﹑RTU內部濕度﹑RTU錯誤信息﹑RTU電池電壓﹑RTU電池剩余電量﹑RTU電池可用時間﹑RTUGPRS是否有SIM卡﹑RTU GPRS信號強度。上位機將RTU實時數據上傳給Web發布系統,數據直接顯示在地圖總覽模塊客戶端頁面。視頻監控模塊可以使得管理人員快速掌握燃氣設備的運行狀況,方便管理人員進行檢查與維護。 4.1.2 動態信息模塊 設備動態信息展示的是設備運行過程中的一些電量參數,通過每隔一定時間讀取數據庫中設備的最新狀態信息,如設備的工作電壓,電流,設備通訊狀態等信息,顯示到界面供客戶查詢。設備動態信息是由上位機采集到現場遠程終端設備的實時參數,然后將數據存儲到數據庫中。WEB系統從數據庫中讀取設備的動態信息,通過設備的動態信息中電流,電壓等參數可以判斷出設備是否運行正常。 設備狀態信息展示的設備運行的實時狀態信息如圖4所示,上位機會實時將現場數據保存到ORACLE數據庫中,WEB系統從數據庫中讀取到的就是設備的實時數據。同時提供信息的分類查詢功能,支持按時間、設備類型、設備廠家查詢。 圖4 設備狀態信息管理 4.1.3 故障診斷模塊 設備故障信息是在對設備狀態信息的原始數據分析和判斷的基礎上得出的。軟件后臺會每隔十分鐘,會讀取數據庫中設備狀態表中最新更新的數據,根據狀態表中一些電壓、電流、電池電量等參數判斷設備是否運行正常,若設備出現故障,將相關故障信息寫入設備故障表,同時顯示設備警報。設備管理軟件的首要目的就是能對設備的實時參數進行判斷,并進行故障報警,方便現場人員能及時做出處理,不影響油田生產。 故障出現以后,維修人員可以根據故障信息找到對應的故障模塊,然后進行維修,維修完成以后需要寫維修記錄,如果故障排除,故障信息就自動寫為已處理,同時記錄下這次維修記錄到維修記錄表里,以便于以后進行查詢。查詢結果如圖5所示。 圖5 故障維護信息 設備維護包括日常維護和故障維護,日常維護是指對設備進行定期的保養和監測,以提高設備的使用壽命。故障維護是由工作人員對設備故障處理完成后,手動記錄故障維護的基本信息,當故障處理完成且維護記錄被錄入后,設備報警就會自動消除。如圖6所示。 圖6 設備維護信息錄入(故障維護) 自動觸發事件的間隔時間可在配置文件中設置,方便根據實際需求更改,下圖代碼配置的間隔時間為十分鐘。相關配置如下所示: 設備警報是對當前有故障的設備發出的,當對設備維護成功后,設備警備就會自動消除,而設備故障是對設備整個生命周期出現故障的記錄,設備維修好正常運行后,以前的故障記錄不會消除。同時為了方便用戶觀察,同一設備同一種警報只出現一條警報信息。 4.1.4 統計分析模塊 統計展示采用Highcharts工具,在后臺頁面發送URL請求,通過配置文件映射到相應資源處理后,返回處理的數據,在頁面調用Highcharts函數顯示,返回數據格式為Json,折線圖如圖7所示。 圖7 統計分析示意圖(折線圖) 設備統計除了對設備的數目進行了統計,還對設備的故障率進行了統計,方便管理者對設備的質量有整體的認識,設備故障率的統計可以針對各個設備在一定時間的故障次數,可以統計不同廠家設備的故障率,還可以查看各個類型的設備的故障情況,從而使管理者對設備的運行情況和質量有一個清晰的認識,來判斷是否繼續使用該設備,是否繼續選取該廠家的設備。設備的故障率如圖8所示。 圖8 設備的故障率 4.1.5 工況分析模塊 工況分析可以根據故障發生的時間和維修的時間來分析維修人員的工作狀況,維修效率,方便決策者做出判斷,也可以分析出不同故障維修所用的時間,如圖9所示。 圖9 維修人員的維修效率 工況分析是本系統中重要的部分,工況分析對決策者尤為重要,可以使管理人員不用時刻監督員工的工作狀態,只需要查詢報表中人員處理故障所花費的時間就可以對工作人員的工作效率有一定的判斷,從而做出合理的人事安排,如圖10所示。 圖10 故障的維護率 4.1.6 用戶反饋模塊 用戶在Web發布系統中用戶反饋頁面填寫完用戶反饋信息后提交,系統會將反饋信息﹑反饋信息提交日期以及反饋用戶手機號碼存儲到數據庫中,當管理人員查看用戶反饋信息時,系統會快速將反饋信息從數據庫中提取出來并顯示到用戶反饋頁面,使系統管理人員能迅速對用戶的看法作出對策,提升用戶滿意度。 研發基于B/S架構的油田生產數據管理系統,并在華北油田現場布控,實現對整個油田現場生產設備的實時監控,做到油田生產現場的監控、管理一體化。現場工作人員不用實時去現場讀取設備參數,只需要坐在中控室讀取系統參數,根絕設備參數和故障報表查看設備是否有故障,以便做到及時維修。本系統極大程度的降低了油田工人的勞動強度,提高了工人的工作效率,同時增強了生產安全性,使油田生產﹑管理邁入自動化﹑數據化的模式。4 主要界面及運行效果
4.1 WEB發布系統功能模塊及其頁面







5 結束語