OPC技術在風電場監(jiān)控系統(tǒng)中的應用
目前國內從事風電機組整機開發(fā)和研制的企業(yè)估計約40多家,大型風電場中的風電機組和監(jiān)控系統(tǒng)一般由多個廠商提供,各廠商的監(jiān)控系統(tǒng)互不兼容,對風電場中不同類型風電機組的統(tǒng)一監(jiān)控與管理則缺乏有效研究,難以進行統(tǒng)一維護與管理。針對當前風電場中風機控制系統(tǒng)及電力監(jiān)控系統(tǒng)多系統(tǒng)并存的情況,將OPC技術引入其中,以實現(xiàn)風電場中風機控制系統(tǒng)和電氣控制系統(tǒng)的無縫連接,解決了風電場多系統(tǒng)互聯(lián)問題。
1. OPC的關鍵技術
OPC(OLE for Process Control)是對象鏈接和嵌入技術在過程控制方面的應用,為工業(yè)自動化軟件的開發(fā)提供了統(tǒng)一的標準。OPC技術的目的就是為現(xiàn)場設備或數(shù)據(jù)庫中的大量數(shù)據(jù)源之間的通信提供統(tǒng)一的傳輸標準,使得系統(tǒng)集成更加方便。OPC技術也是微軟公司為了把Windows應用于控制系統(tǒng)而和控制界共同推出的一項技術。它以微軟公司的組件對象模型/分布式組件對象模型(COM/DCOM)技術為基礎,為工業(yè)控制軟件定義了一套標準的對象、接口和屬性,通過這些對象接口,實現(xiàn)了應用程序之間數(shù)據(jù)交換的標準化,從而大大提高自動化設備之間的開放性和互操作性。
A.COM與DCOM技術
隨著軟件技術的迅速發(fā)展,傳統(tǒng)的程序升級已經(jīng)不能滿足技術發(fā)展的需要,解決這個問題的方法就是將應用程序分割成一些小的應用或組件,然后將這些組件在運行時組裝起來形成應用程序。在組件技術規(guī)范方面主要有兩個標準,其中一個是由微軟推出的組件對象模型(Component Object Model,COM)技術。該技術提供了各個軟件部件以標準模式在一起工作的框架和技術規(guī)范,此規(guī)范為了保證能夠互操作、客戶和組件應遵循的一些二進制和網(wǎng)絡標準,任意的兩個組件之間可以在不同的操作環(huán)境下進行通訊,甚至使用不同的開發(fā)語言開發(fā)的組件也能實現(xiàn)。COM是一種軟件組件間相互數(shù)據(jù)交換的有效方法。
COM接口的COM規(guī)范中最重要的部分,COM規(guī)范的核心內容就是對接口的定義,COM都是以接口的形式出現(xiàn)。組件與組件之間、組件與客戶程序之間都要通過接口進行交互。接口成員函數(shù)將負責為客戶過其他組件提供服務。對于COM來說,接口是一個包含一個函數(shù)指針數(shù)組的內存結構。對于客戶來說,一個組件就是一個接口集,任何一個具備相同接口的組件都可對組件都可以對此進行相對于其他組件透明的替換。
B.基于OPC的客戶機/服務器數(shù)據(jù)交換模型
COM技術的出現(xiàn)為控制設備和控制管理系統(tǒng)之間的數(shù)據(jù)交換簡單化提供了技術基礎。但是如果不提供各異標準的化COM接口,各個控制設備廠家的COM組件之間的相互連接仍然是不可能的。
隨著基于OPC標準的控制組件的推廣和普及,不僅使控制系統(tǒng)功能的增減和組件的置換更加簡單,而且使過程數(shù)據(jù)的訪問也變得容易。比如,符合OPC規(guī)范的過程控制程序可以直接和數(shù)據(jù)分析軟件包或電子表格應用程序連接。
2.OPC數(shù)據(jù)采集系統(tǒng)設計
在傳統(tǒng)的數(shù)據(jù)采集系統(tǒng)中,監(jiān)控與數(shù)據(jù)采集系統(tǒng)(SCADA)、人機接口(HMI)、組態(tài)軟件等應用程序都是通過驅動程序與現(xiàn)場設備進行通信的,但驅動程序有著它自身的局限性,如同一設備為適應不同的客戶端應用程序需要開發(fā)不同的驅動程序,造成勞動重復。一旦硬件設備升級,先前開發(fā)的驅動程序也應做相應的修改。驅動程序一般采用動態(tài)鏈接庫(DLL)的形式,動態(tài)數(shù)據(jù)交換(DDE)是其進行數(shù)據(jù)交換的主要方式,但這種方式不允許多個應用程序同時訪問一個設備。
A.風電場前置機數(shù)據(jù)采集系統(tǒng)設計
由于OPC定義了一套基于Microsoft OLE/COM或DCOM的接口訪問方式,符合或支持OPC協(xié)議的應用程序只要基于TCP/IP協(xié)議可以互相訪問,就可以通過OPC協(xié)議交換數(shù)據(jù)。風場前置接口機上安裝多塊網(wǎng)卡,需要和風機生產廠家提供的監(jiān)控系統(tǒng)的工程師站相連,其IP地址設置成與工程師站在
同一網(wǎng)段即可。
由于目前各風機生產廠商開放程度的不同,丹麥的Vestas風機開發(fā)了OPC接口,用于第三方廠商的接入,西班牙歌美薩風機是提供了其數(shù)據(jù)庫的接口軟件(DLL),東汽、華銳等國產風機是與風機控制器進行輪詢,轉發(fā)為MODBUS通訊協(xié)議,提供給第三方,由第三方完成。
B. 風電場OPCSever接口軟件設計
本文以華銳風機1500為例,介紹風電場OPCSever接口軟件的設計方案。
華銳風機是提供與風機控制器的進行通訊的MODBUS數(shù)據(jù)通訊服務器軟件,其軟件實現(xiàn)與現(xiàn)場風機進行實時數(shù)據(jù)交互,我們設計將MODBUS/TCP包裝成OPCSever.在使用MODBUS/TCP協(xié)議規(guī)范時,采用面向連接的方法,在通信時要經(jīng)過建立連接、傳輸數(shù)據(jù)、釋放連接三個步驟。
a. MODBUS/TCP的報文解析
(1)MODBUS/TCP請求報文:00 00 00 00 00 06 01 03 00 01 00 78 16 31
前七位為MBAP頭,分別為事物處理標識符高位(1位),事物處理標識符低位(1位),協(xié)議標識符(2位),長度標識符(2位),單元標識符(1位)。后七位為MODBUS請求報文,03為功能碼,為讀取保持寄存器的內容,00 01為起始地址,00 78為寄存器數(shù)量,16 31為校驗碼,校驗方式為CRC循環(huán)冗余校驗。
(2)MODBUS/TCP接收報文:00 00 00 00 00 F3 01 03 F0 00 00 40 E0…
從第十位開始,采用單浮點型float,每兩位報文為一個寄存器響應數(shù)據(jù),其中高字節(jié)在前,低字節(jié)在后。
b. OPCSever數(shù)據(jù)訪問的實現(xiàn)
OPC數(shù)據(jù)存取服務器的主要功能是完成數(shù)的存取,OPCSever有4種數(shù)據(jù)訪問方法:同步數(shù)據(jù)訪問,異步數(shù)據(jù)訪問,刷新訪問,訂閱方式訪問。在本設計方案中,采用訂閱方式進行訪問,訪問的數(shù)據(jù)在狀態(tài)發(fā)生改變時主動的通知客戶程序刷新數(shù)據(jù)。
報文解析Sockect通訊模塊實現(xiàn)與MODBUS/TCP服務器進行讀寫操作,解析收到的報文。
OPC接口模塊是主要完成OPCSever、OPCGroup和OPCItem的定義、連接、添加和刪除等。其定義了訂閱方式進行數(shù)據(jù)訪問,OPC基金會提供了標準的接口函數(shù)客戶以統(tǒng)一的方式去訪問。
程序管理模塊主要是現(xiàn)場數(shù)據(jù)的監(jiān)視,測點信息的管理和從OPC接口模塊中接收的項信息,包括時間戳和數(shù)據(jù)質量。
3. 結論
本文首先介紹了OPC的關鍵技術——COM和DCOM技術,然后對基于OPC技術的客戶機/服務器數(shù)據(jù)交換模型進行了描述,最后詳細介紹了OPC技術在風電場監(jiān)控系統(tǒng)中的應用——OPC數(shù)據(jù)采集系統(tǒng)的設計。將OPC技術應用與風電場監(jiān)控系統(tǒng)中,從根本上解決了不同型號風機設備之間的通訊問題,使風電場的集群管理更加方便。進而,完善了風電企業(yè)生產信息化管理平臺,提高信息化水平。(