翟 巖
華電滕州新源熱電有限公司 山東 滕州 277599
OSIsoft開發(fā)的OSI PI實時數(shù)據(jù)庫系統(tǒng)是一種廣泛應用于能源電力行業(yè)的實時數(shù)據(jù)庫系統(tǒng),通常用于聯(lián)通底層的生產(chǎn)控制系統(tǒng)和頂層的管理信息系統(tǒng),在現(xiàn)代工業(yè)管理中起著重要的作用。
OSI PI系統(tǒng)采用C/S結(jié)構(gòu),客戶端通常由熱工和信息人員依據(jù)現(xiàn)場生產(chǎn)流程及其控制系統(tǒng),使用OSIsoft ProcessBook軟件繪制PDI流程圖。相關(guān)管理人員借助OSIsoft ActiveView ActiveX 控件,在Windows系統(tǒng)的IE瀏覽器端,查看生產(chǎn)流程及其實時數(shù)據(jù)。在這種模式下,生產(chǎn)管控不能離開PC機,數(shù)據(jù)監(jiān)控也通常需要人員自行監(jiān)視PDI畫面。
較新版本的ProcessBook軟件中,提供了將PDI流程圖文件轉(zhuǎn)換為SVG 格式矢量圖形的功能。SVG 矢量圖形,理應可以用大多數(shù)較新的瀏覽器打開,而使用ProcessBook軟件生成的SVG 文件,在瀏覽器中無法正常顯示圖形,只能在ProcessBook軟件中正常使用。
SVG 的含義是可縮放矢量圖形,是基于可擴展標記語言用于描述二維矢量圖形的一種圖形格式。它由萬維網(wǎng)聯(lián)盟制定,是一個開放標準。根據(jù)SVG 的定義,SVG 文件是一種特殊的XML文件,可以使用一般文本編輯器編輯。使用文本編輯器打開PI SVG 文件,文件頭與通常SVG 文件比照,缺少“xmlns”“命名空間”屬性,只有“xmlns:svg”等“命名空間”,編輯文件,加入“xmlns=‘http://www.w3.org/2000/svg’”,即可使用瀏覽器打開PI SVG 文件。
PISVG 文件圖元的分析也可以對照標準的SVG 文件進行。通常,每個G 元素代表了一個圖形組合,對應PDI文件中的一個對象,觀察每個G元素,其ID屬性分類如下表:
G 的ID頭 對應顯示的元素 G 的ID頭 對應顯示的元素Line線 線段 Value值 數(shù)值Text 文本標簽 Bar 柱狀圖、條狀圖Polyline 曲線 Arrow 箭頭Ellipse 橢圓
從PISVG 文件引用的PI測點的TAG 名來分析其結(jié)構(gòu)。通常SVG文件中一個或多個G 元素其本身或子元素含有PBD:Pt Tag Name 參數(shù),其屬性類似“\服務器名PI測點名”的結(jié)構(gòu)。SVG 標簽的第一個子元素為defs標簽,其子元素為PBD:Tag Uses,可推定此處為SVG 文件所有PI測點表,各PBD:Tag Uses元素子元素PBI:Symbol觀察后可推定為每個PI點關(guān)聯(lián)的圖形列表,可以快速整理出文件引用的全部PI測點及其關(guān)聯(lián)的圖形元素。
綜上,PI SVG 文件結(jié)構(gòu)可以概括為:
1 <?xml version="1.0"encoding="UTF-8"?> xml文件頭2 <svg xmlns=view Box="0 0 1251 947"……> 命名空間 畫布大小等3 <defs>……</defs> 圖像引用PI測點列表;PI測點影響圖像中元素列表4 G 元素 圖形表達5 <g id="Trend A1"PB:Type="10">……</g> PDI文件中趨勢圖6 <script language="JavaScript">……</script> 原有JavaScript腳本7 </svg> 圖像結(jié)尾
文件內(nèi)含JavaScript腳本,說明可以自行編寫腳本用于操作PI SVG 圖像中的元素。
根據(jù)PI SVG 文件格式的研究成果,采用B/S架構(gòu),自建WEB 應用程序。
1)使用Jquery操作SVG 文件PI測點列表段XML 對象,讀取PBD:Tag Uses元素的tag屬性,實現(xiàn)流程圖各測點的檢出。
2)將各PBD:Tag Uses元素對應包含的各種元素檢出,獲取其“name”屬性,作為各測點對應的圖素列表。
3)將檢出的PI測點(tag)及其對應圖素(name)對應的關(guān)系傳入WEB服務器后端。
4)將前端傳入的PI測點(tag)及其對應圖素(name)的對應關(guān)系存入關(guān)系數(shù)據(jù)庫。
5)設計后端程序,對應傳入SVG 文件參數(shù)取得關(guān)系數(shù)據(jù)庫中PI測點(tag)及其對應圖素(name)的對應關(guān)系,調(diào)用PISDK 從PISnapshot服務器讀取PI測點(tag)對應實時值(value),將數(shù)據(jù)構(gòu)建為JSON 格式。
6)設計前端程序,讀取服務器后端回傳的JSON 格式數(shù)據(jù),按對應圖素(name)的分類,將返回的PI測點(tag)的實時值(value)直接顯示到Value圖素的pb TextEl子元素內(nèi)。
在數(shù)值的提取與展示的基礎上,通過操作Line、Rect、Polyline等元素的MSS2子元素的color屬性實現(xiàn)變色效果等更進一步實現(xiàn)柱狀圖、閥門狀態(tài)的動態(tài)展示,并在流程展示的基礎上加入自定義時間區(qū)間歷史曲線查詢、實時曲線監(jiān)視、用戶測點收藏等功能。
經(jīng)過完善后的WEB應用程序可實現(xiàn)PC 端Active View 控件80%的功能,建成了較完善的移動端生產(chǎn)監(jiān)控平臺,通過應用HTML5和AJAX技術(shù),可使用任一支持HTML5和JavaScript技術(shù)的瀏覽器訪問,解決了現(xiàn)有PI流程圖因依賴IE瀏覽器插件Active View 而存在的無法跨平臺使用、易白屏、易出錯、易崩潰等問題,實現(xiàn)了流程圖的跨平臺訪問,使生產(chǎn)人員和管理人員可以通過移動設備隨時隨地檢查生產(chǎn)設備的運行狀況,基本滿足全天候生產(chǎn)狀況監(jiān)控的需求。
流程圖取數(shù)不再依賴客戶端PISDK 組件,全部由服務器端完成,簡化了各崗位生產(chǎn)實時系統(tǒng)的部署過程,信息管理人員不必為所有用戶安裝PISDK 套件。
H5應用匯集了原本由各終端對PIArchive服務器的訪問流,將訪問權(quán)限統(tǒng)一到應用WEB服務器,降低了PIArchive數(shù)據(jù)庫服務器的信息安全風險。