李福先,楊亮亮
(1.武漢數(shù)字工程研究所,湖北 武漢 430074;2.浙江理工大學,浙江 杭州 310018)
在一個現(xiàn)代化的大型風電場中,有效地監(jiān)視和控制各風力發(fā)電機組的狀態(tài),保證整個風電場安全、可靠、經濟地運行至關重要。近年來在風電行業(yè)得到廣泛應用的監(jiān)控與數(shù)據(jù)采集(SCADA)系統(tǒng)為解決大規(guī)模風電場的發(fā)電機組的系統(tǒng)監(jiān)控提供了基本的技術途徑,但傳統(tǒng)的SCADA系統(tǒng)既存在與不同廠商的硬件設備之間通訊接口協(xié)議不一致的難題,又存在跨平臺和提升網絡通信能力的瓶頸,給系統(tǒng)設計、優(yōu)化、擴展帶來不便。而OPC接口既能通過網絡把風機控制設備的原始數(shù)據(jù)提供給人機接口、歷史數(shù)據(jù)庫等應用程序,也適用于應用程序和物理設備的直接連接,具有接口標準的高度柔軟性,有效地解決了硬件廠商和軟件開發(fā)商之間通訊接口標準兼容的問題。本文提出了一種基于OPC-XML-DA規(guī)范、在Internet環(huán)境下以Web服務層為監(jiān)控系統(tǒng)中間層的B/S(瀏覽器/服務器)模式的風力發(fā)電機組遠程監(jiān)控系統(tǒng)方案,既解決了風機控制硬件設備通訊接口協(xié)議兼容的問題,又增強了風電遠程監(jiān)控系統(tǒng)跨平臺、網絡通信的能力,并在1MW風力發(fā)電機組遠程監(jiān)控系統(tǒng)中成功應用。
OPC是一個用于訪問過程數(shù)據(jù)的標準化接口,它基于微軟的COM/DCOM,并在自動化領域訪問數(shù)據(jù)時根據(jù)需求將其擴展。OPC技術采用C/S模式,用于客戶程序和服務器之間的數(shù)據(jù)通信,把開發(fā)訪問接口的任務放在硬件生產廠家或第三方廠家,以OPC服務器的形式提供給用戶,解決了軟、硬件廠商的矛盾,完成了系統(tǒng)的集成,提高了系統(tǒng)的開放性和可互操作性。它具有語言無關性、代碼重用性、易于集成性等優(yōu)點[1,2]。隨著網絡技術的發(fā)展和風電行業(yè)管理系統(tǒng)對風電機組監(jiān)控要求的提高,基于COM技術的OPC標準開始無法滿足要求。為此,OPC基金會正式發(fā)布了OPC XML-DA規(guī)范1.0版[3]。OPC XML-DA規(guī)范建立在OPC DA基礎上,重點定義在數(shù)據(jù)訪問規(guī)范上,用于將OPC數(shù)據(jù)向Internet上的應用程序開放。OPC XML-DA既兼容了原有OPC DA提供的不用開發(fā)專門通信軟件就可以訪問設備的優(yōu)勢,又能輕松實現(xiàn)遠程和跨平臺數(shù)據(jù)的交換。該規(guī)范基于XML的Web Senrice技術。Web Service主要提供通過網絡直接獲取各種服務的接口,并通過標準的網絡協(xié)議提供給網絡用戶,在Intemet任何節(jié)點、任何平臺上的應用程序只要符合Web Service的標準都可以從它的公共接口獲取服務,便于不同的應用程序在Internet上共享和交換數(shù)據(jù)[4]。
本文提出的基于OPC-XML-DA規(guī)范、以Web服務層為監(jiān)控系統(tǒng)中間層的B/S模式的風力發(fā)電機組遠程監(jiān)控系統(tǒng)框圖如圖1所示。該方案實現(xiàn)了瀏覽器或客戶端應用程序通過Intemet對OPC服務器的訪問,可實時地讀取機組的數(shù)據(jù)、發(fā)布機組控制指令。
圖1 基于OPC-XML-DA的B/S模式風力發(fā)電機組遠程監(jiān)控系統(tǒng)
系統(tǒng)采用三層B/S架構。應用層的OPC DA客戶為基于COM/DCOM的客戶端應用程序,OPC XML-DA客戶為IE瀏覽器,操作者通過HTTP向Web服務器發(fā)送XML文件請求,Web服務器接收到該請求后,將XML文件傳送給客戶瀏覽器,瀏覽器閱讀頁面并顯示出來。
業(yè)務邏輯層的Web服務器主要用來接受客戶端的響應,從實時數(shù)據(jù)庫中讀取風機實時狀態(tài)數(shù)據(jù),發(fā)布到瀏覽器上供監(jiān)控操作者查看,將收到的客戶端的控制信息存入實時數(shù)據(jù)庫,供OPC應用服務器提取;OPC應用服務器主要功能是通過OPC標準接口從OPC服務器采集數(shù)據(jù),根據(jù)用戶需要對數(shù)據(jù)進行處理,既能通過ODBC把數(shù)據(jù)送人實時數(shù)據(jù)庫中,又可以通過ODBC從實時數(shù)據(jù)庫中讀取來自遠程瀏覽器端的控制信息,并對這些控制信息進行判斷,然后通過OPC標準接口將修改的參數(shù)值等控制信息遞交到OPC服務器中,OPC服務器再將控制信息傳遞給風機控制器;OPC服務器既執(zhí)行整個系統(tǒng)的控制策略、協(xié)調管理數(shù)據(jù)服務層,又處理風機控制器向OPC應用服務器的各種請求。
數(shù)據(jù)服務層用于實現(xiàn)風電機組數(shù)據(jù)源查詢更新,事務管理,高速緩存,安全及多用戶存取控制等,并以統(tǒng)一的格式向OPC應用服務器提供訂閱風電機組的實時數(shù)據(jù)和歷史數(shù)據(jù)。
該B/S模式的架構便于遠程監(jiān)控客戶端用Web瀏覽器,向Web服務器發(fā)送各種請求,接收所需的網頁,不需要與后臺數(shù)據(jù)庫連接,而遠程監(jiān)控中心建立的后臺數(shù)據(jù)庫可專門用來存儲、統(tǒng)計、查詢發(fā)電機組歷史數(shù)據(jù),擬合風電參數(shù)歷史曲線、描繪風電系統(tǒng)要求反應的圖形和歷史趨勢。這樣,遠程監(jiān)控系統(tǒng)各層內部的參數(shù)修改、完善不會影響監(jiān)控中心整個系統(tǒng)的使用,提高了系統(tǒng)的可靠性、靈活性和可維護性。
B/S架構中數(shù)據(jù)服務層的OPC服務器主要用來讀取/寫入數(shù)據(jù)從風電機組控制器PLC/到OPC應用服務器,通過它瀏覽器客戶端或客戶端應用程序實現(xiàn)對機組控制器操作指令的下達和緩存區(qū)數(shù)據(jù)的讀取分析。針對風電機組遠程監(jiān)控系統(tǒng)的特點,實現(xiàn)的1 MW風電機組B/S模式遠程監(jiān)控系統(tǒng)的OPC服務器架構如圖2所示。
圖2 1MWB/S模式風電機組遠程監(jiān)控系統(tǒng)OPC服務器架構
風電機組的控制程序被下載到PLC控制器時,會生成一個符號文件,該文件被存入OPC網關服務器。符號文件包含條目信息,一個條目嚴格對應一個風機參數(shù)變量,利用這些條目可調用控制器中的風機參數(shù)變量值。OPC服務器從網關服務器中請求符號文件的內容后生成一個條目列表,條目列表會在控制器定義的時間間隔內被更新。讀取和寫入風機參數(shù)變量值的使用取決于被設為“激活的”條目的數(shù)量。OPC服務器支持數(shù)據(jù)分組,分為由OPC服務器分配的“公共組”和由一個客戶端組成的“私有組”。如果在配置中激活相應的選項,OPC服務器將條目分組成智能塊,每個塊生成一個“公共組”,在客戶端中可按需求將獨立的條目組合成“私有組”,“私有組”可根據(jù)它們是否被訪問這一命令去激活或取消激活特定的變量組,OPC服務器可同時讀取所有變量。OPC服務器不是一個被動的子程序庫,而是一個在客戶端與服務器之間建立連接時被啟動的可執(zhí)行程序[5]。當啟動客戶端瀏覽器或客戶端軟件并建立通訊時,OPC服務器自動啟動,從條目列表中選擇相應的風機參數(shù)變量。設計客戶端軟件時須優(yōu)化通訊,將條目分到獨立的組中,這些組以一種方式定義,且只包含必須同時被更新的條目,這些組只在需要時被激活。瀏覽器客戶端或客戶端應用程序根據(jù)監(jiān)測和控制風機狀態(tài)參數(shù)的需要來指定條目,通過Web服務器、OPC應用服務器和OPC服務器來操作發(fā)電機組控制器,實現(xiàn)對機組的數(shù)據(jù)監(jiān)測和指令控制。
圖3 客戶端應用程序與OPC服務器的部分通訊數(shù)據(jù)
實現(xiàn)的1 MW風電機組遠程監(jiān)控系統(tǒng)與機組控制器通訊成功后,客戶端應用程序與OPC服務器的部分通訊數(shù)據(jù)如圖3所示。該遠程監(jiān)控系統(tǒng)綜合實現(xiàn)了風電機組的數(shù)據(jù)采集、記錄備份,數(shù)據(jù)的組織、數(shù)據(jù)關系的建立,機組的控制,故障報警指示與分類查詢,報表圖形曲線、系統(tǒng)安全、分布式網絡管理等功能。
基于OPC-XML-DA規(guī)范、以Web服務層為監(jiān)控系統(tǒng)中間層的B/S模式的風力發(fā)電機組遠程監(jiān)控系統(tǒng)解決了風機控制設備硬件之間通訊接口協(xié)議不一致的問題,完成了分散在風電場的機組控制系統(tǒng)間的數(shù)據(jù)共享、各子控制系統(tǒng)控制指令的協(xié)調,實現(xiàn)了跨平臺地對風電機組的遠程監(jiān)測控制、數(shù)據(jù)采集、參數(shù)調節(jié)以及事故報警等功能,為風電場的管理者和運營商提供了系統(tǒng)、完整的風電場信息,幫助快速診斷系統(tǒng)故障,提高了生產效率,代表了風電能源監(jiān)控的發(fā)展趨勢。
[1] 唐置玲,汪小澄.基于OPC技術實現(xiàn)INFI—90系統(tǒng)實時數(shù)據(jù)開放[J].電力系統(tǒng)自動化,2004,28(6):88-90.
[2] 陳坤,冷杉,劉哲.基于OPC的虛擬DCS對象調試軟件開發(fā)[J].電力自動化設備,2004,24(10):39-44.
[3] OPC Foundation.OPC XML-DA 1.0 Specification[DB/OL].[2003-7-12].http://www.opcfoundation.org.
[4] 徐進學,胡紅武,劉玉梅.基于OPC技術的遠程監(jiān)控系統(tǒng)方案設計[J].沈陽工業(yè)大學學報,2007,29(5):574-577.
[5] 潘愛明.COM原理和應用[M].北京:清華大學出版社,2006:34-45.