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