曹靜 王衛陣 邢海燕 黃金暉
摘要:在石化行業中,廣泛采用了自動化的生產裝置和設備,并通過自動化技術實現了對生產裝置及設備運行狀態的實時監控。由自動化設備采集到的實時數據是大量的,其中通常含有一些“噪音”數據,從而在一定程度上影響了對設備運行狀態的判斷,并進一步影響了設備維護管理及使用效率。作者通過對實時數據的深入分析,重新定義了設備運行狀態的判別指標,利用PHD數據庫及其接口進行了二次開發,提高了對裝置及設備實時監測的準確性和可靠性。
關鍵詞:設備狀態;實時數據;采集;監測
1引言
隨著MES系統(Manufacturing Execution System,生產運行系統)在石化行業應用的成熟,其在生產過程中發揮的管理作用日益顯現。為確保企業主要生產設備以最佳狀態、長時期地實現安全可靠運行,可以通過運用關鍵設備狀態監測技術,對企業重要機泵設備實施運行狀態監測,實時了解掌握機泵運行狀態,以提升企業設備管理水平。
關鍵設備狀態監測系統是利用DCS系統(Distributed Control System,離散控制系統)中現有的對重要機泵的狀態進行自動監測、判斷和存儲的數據信息,通過企業MES系統中PHD(Process History Database)實時數據庫采集到的DCS系統的實時數據,實現報表生成及網頁瀏覽功能。該系統的主要目的是充分利用現有數據,通過信息技術手段進行加工和處理,使設備管理人員一方面可以實時、準確地掌握設備運行狀態,同時又可以掌握各機泵的運行時間及停機次數,保障生產的安全、可靠和穩定運行。
2系統設計與實現
利用實時數據對主要設備的運行狀態實施監測,需要從實時位號的選取、實時數據的采集、邏輯判斷、服務器自動執行、網頁展示、計算統計及后臺數據庫等幾個方面考慮。
2.1 PHD實時數據庫訪問方法
在Honeywell的PHD實時數據庫中提供了可供應用程序調用的動態鏈接庫Phdapinet.dll,該動態鏈接庫包含了Uniformance.PHD基類[1],利用該基類下的子類可以實現對PHD的訪問、實時數據的讀寫以及PHD服務器狀態參數信息與RDI(Real-time Data Interface,實時數據庫接口)信息的查詢,并能實現實時數據點的新建、歷史數據的修改和刪除等操作,還可以實現與DCS的通信。調用該動態鏈接庫訪問PHD時需要注意以下幾點:
(1)訪問PHD的可選參數有:ServerVersion (PHD版本)、HostName(PHD服務器IP地址)、UserName (PHD服務器用戶名)、Password (PHD服務器密碼)、WindowsUsername (PHD服務器登錄用戶名)、WindowsPassword (PHD服務器登錄密碼)、Port(服務器端口)。
(2)如果應用程序與PHD服務器同處于本地網絡段,那么訪問PHD時只需要提供ServerVersion、HostName、UserName、Password以及Port五個參數,本地網絡訪問PHD服務器的端口號默認為3100。
(3)如果應用程序與PHD服務器處于不同的網絡段,那么訪問PHD時除了需要提供ServerVersion、HostName、UserName、Password以及Port這五參數以外還必須提供WindowsUsername和WindowsPassword,遠程訪問PHD服務器的端口號默認為3150。
利用PHD實時數據庫實現主要設備運行狀態監測時,將主要設備運行狀態相關的各項控制點通過實時數據位號對應,沒有位號的,采用替代位號與設備對應;根據業務人員提供的設備位號,對應到MES系統的實時數據的位號,將用于判斷設備停機還是啟用的邏輯關系等數據進行收集、存儲并加工成新的信息資源,在Web上展示以供設備管理人員進行統計分析。PHD實時數據庫的數據來自各生產裝置的DCS系統的實時信息,以網頁形式展現各個裝置的關鍵設備運行狀況,例如機泵的當前運行狀態、停機次數、停機時間等,幫助設備管理人員實時掌握第一手現場信息,指導生產。
2.2系統實現方法
主要設備運行狀態監測系統采用兩種方式來實現對設備運行狀態信息的監測,一種方式是定制WINDOWS服務,這種方式是將實時數據從PHD服務中提取出來,通過位號的配置信息實現位號值的判斷,得出當前狀態是停用還是啟動狀態;另一種方式是定制Web頁面,數據結果通過Web頁方式展示。
(1)定制WINDOWS服務,開發設備運行狀態服務程序,定時從后臺數據庫讀取設備信息,提取PHD服務器實時采集值,根據配置信息,獲取計算邏輯,判斷出當前設備是運行/停用狀態,與數據庫表對照,看設備狀態是否相同,如果狀態不同則更新記錄信息,并做出相應處理;如果狀態相同,則保持原狀態不變。
(2)定制Web頁面瀏覽,軟件架構采用B/S模式,利用成熟的Web瀏覽器技術在Web頁面上給出用戶查詢界面,為管理員用戶提供數據維護、用戶權限及位號配置等功能。
2.3身份認證
系統要求用戶使用統一的PTR域進行單一認證。用戶在登錄信息系統運行監測平臺時,用戶權限配置所用的用戶名統一使用公司郵箱,可以避免用戶在多個系統之間切換時產生用戶名和密碼混淆的問題,與企業信息門戶、MES系統等公司推廣使用的信息化建設系統保持一致。
3關鍵技術與實現
3.1設備運行狀態判別
企業的設備監測數據很多,表1中僅列出有代表性的位號。
通過表1中的數據可以看出:
(1)在監測主要設備的運行情況時,一部分設備有監測位號(如表中的2、3、4、5、8、9),對于有監測位號的設備,又可分為采集值設備與采集開關量設備這兩種。對于采集值設備,根據設備的采集值與該設備位號所對應的設備啟用和停用的臨界值進行比較來判斷此設備的啟用或停用狀態;對于開關量設備,將采集到的值與配置信息中的狀態值進行對比,即可判斷出設備的啟用或停用狀態。
(2)位號屬性一般可分為正邏輯位號和負邏輯位號,如正常運行狀態值為ON、OPEN、1、2,故障停機狀態值為OFF、0的位號,屬于正邏輯位號(如表中2、4、5、8、9);如正常運行狀態值為0,故障停機狀態值為1的位號,則屬于負邏輯位號(如表中3)。
(3)還有一部分設備沒有監測位號,需要通過替代位號來監測機泵的狀態,這些位號大部分是采集值位號(如表中1、6、7)。判斷方法是:當屬于正邏輯位號值時(如表中1、7),當采集值大于等于啟動設置值時,則判斷此設備是啟用狀態,相反,當采集值小于停用狀態設置值時,則判斷此設備為停用狀態;當屬于負邏輯位號值時(如表中6),當采集值小于等于啟動設備值時,則判斷此設備是啟用狀態,相反,當采集值大于停用狀態設置值時,則判斷此設備為停用狀態。
3.2采集數據處理
主要設備運行狀態監測的位號大多數是開關邏輯變量(即0,1值)。實時數據庫中的數據是由各裝置點的BUFFER機上的實時數據同步而來的,如果BUFFER機發生異常,那么BUFFER機上的實時數據就不能有效地同步到實時數據庫中;同時,如果實時數據庫發生異常,則數據庫中會產生一個默認值(這個默認值可能并不是實際值,只有待數據同步后,才能變換成實際值)。這期間的位號采集值會發生波動,而這個波動是無效的,不能進行統計,需要把這部分的數據剔除掉。因此,在系統設計時,需要將這部分數據進行處理。具體處理方法如下。
首先設置一個表,表里面存放一個閾值,這個閾值設定了系統采集的次數,系統會按照這個閾值所設定的次數來提取實時數據(每隔三分鐘自動采集一次),將這些數據信息放到緩存表中(緩存表的表結構與記錄表信息的表結構一致)。
記錄表中記錄了每個位號的當前運行狀態、狀態變更的次數以及狀態標志等信息。
根據系統每三分鐘一次采集的數據,將每次采集的數據情況往緩存表中寫入設備狀態值信息(運行或停機)。當系統取到閾值設定的次數時,對緩存表中的數據進行統計與分析,并得出設備的當前狀態是運行或停機的結論,即如果這幾次取得的數據都顯示停機狀態,則需要在記錄表中將狀態信息由運行狀態變更為停機狀態,并在設備記錄表中記錄設備停機時間;如果這幾次寫入緩存表的數據為運行狀態,則不改變記錄表中的設備狀態信息;當運行和停機這兩種狀態都有時,則判斷哪種狀態出現的次數多,以出現次數多的狀態作為設備的當前狀態。當記錄表中的前次狀態值與本次的狀態值不同時,更新當前記錄表的標志信息。記錄表的設備狀態信息完成更新后,清除緩存表中所記錄的停機或運行狀態波動信息。每重新更新一次記錄表的狀態標志,即完成了一次數據處理。
3.3機泵停用情況判別及次數統計方法
按照用戶的要求,機泵從運行狀態轉變成停用狀態,算一次停機,而機泵如果一直處于停機狀態,則不能算一次停機,同時機泵如果從停用狀態變成運行狀態時,也不能算一次停機。因此,只有當機泵在統計時間范圍內,由運行狀態轉變成停用狀態時,才計算出有效次數。在主要設備運行狀態監測平臺中,機泵停機次數的統計分三種情況:即在主界面上顯示的當月停機次數和全年停機次數統計,以及在歷史停機查詢中的累計停機次數的統計。
在了解用戶需求的前提下,數據庫表結構的設計方案對數據的統計也起到了十分關鍵的作用。系統在記錄表中記錄了每個設備的每次狀態變更的時間點、當前狀態等信息,這樣當月停機次數的統計、全年停機次數的統計以及累計停機次數的統計很容易實現。
系統在最初運行時,統計結果總是與現場的實際情況不甚相符,這可能與數據采集過程的諸多環節出現異常而導致數據準確性下降有關。當開發人員在系統中設計并實現數據處理后,數據統計的準確率得到大大的提高。
4應用效果
利用實采數據實現對設備運行狀態的監測,與其他一些實時數據庫的應用開發有所不同,無論是實時數據采集技術還是設計方案都做了很大的改進,主要體現在:
(1)數采連接機制不同。一般的實時數據采集是借助于Oracle數據庫技術及PHD實時數據庫接口所提供的函數包來實現實時數據的提取,而本監測系統則是通過PHD提供的PHDAPINET動態鏈接庫訪問實現實時數據采集,后者通過直接訪問PHD實時數據庫,減少了Oracle數據庫服務器、Applications應用服務器等訪問環節,同時動態鏈接庫中對采集數據失敗所給出的判斷更加完善,返回信息更直接、迅速,采數效率高。
(2)采數頻率實現方法不同。一般的數據采集頻率借助Oracle數據庫的定時任務作業調度【2】方法實現,而本監測系統采用了制作WINDOWS服務的方法實現,將采集實時數據部分專門做成WINDOWS服務,時鐘自動包含其中,安裝在服務器上,這樣做無論是程序的安全性、環境依賴性還是運行效率都做了改進。
通過采用動態鏈接庫方式與WINDOWS服務技術實現實時數據采集和設備狀態監測,可以使系統維護工作量大大減少。同時,這些技術在后續的其他實時數據庫類的應用開發中得到持續應用,減少了開發成本,提高了研發效率。
參考文獻
[1]黃永松等.基于HoneyWell PHD的應用開發技術研究.軟件.2011年32卷第4期.
[2]路川等.oracle 10g寶典.北京.電子工業出版社.2006.