金蔚霄
(上海電氣自動(dòng)化設(shè)計(jì)研究所有限公司軟件中心,上海 200023)
基金項(xiàng)目:本項(xiàng)研究工作得到了上海市科學(xué)技術(shù)委員會(huì)的資助,資助課題項(xiàng)目(17DZ2283400)
太陽(yáng)能作為一種清潔能源,其光伏發(fā)電規(guī)??纱罂尚。瓤梢元?dú)立發(fā)電,也可并網(wǎng)發(fā)電,因此在未來(lái)具有較好的發(fā)展前景[1]。隨著光伏發(fā)電在全球范圍的普及,如何對(duì)發(fā)電系統(tǒng)進(jìn)行有效的監(jiān)控也越來(lái)越受到廣泛關(guān)注。光伏發(fā)電監(jiān)控系統(tǒng)一方面可以實(shí)時(shí)統(tǒng)計(jì)查看基本發(fā)電參數(shù),為業(yè)主方效益計(jì)算提供有效的依據(jù);另一方面可以實(shí)時(shí)監(jiān)控發(fā)電系統(tǒng)實(shí)時(shí)運(yùn)行情況,做到及時(shí)發(fā)現(xiàn)故障,從而快速處理故障,盡量減少系統(tǒng)故障帶來(lái)的損失。傳統(tǒng)光伏發(fā)電監(jiān)控系統(tǒng)上位機(jī)監(jiān)控軟件大多應(yīng)用.NET、VB等技術(shù)進(jìn)行設(shè)計(jì)開(kāi)發(fā)[2],對(duì)于開(kāi)發(fā)人員編程能力要求比較高,且設(shè)計(jì)實(shí)施較復(fù)雜,開(kāi)發(fā)周期一般較長(zhǎng)。Netcontrol組態(tài)軟件是基于.NET Framework的自動(dòng)化過(guò)程監(jiān)視、控制和管理的平臺(tái)軟件,結(jié)合了計(jì)算機(jī)、網(wǎng)絡(luò)、通信、控制和軟件技術(shù)[3],以該軟件為基礎(chǔ)進(jìn)行監(jiān)控系統(tǒng)的二次開(kāi)發(fā),可減少涉及到基礎(chǔ)技術(shù)的開(kāi)發(fā)任務(wù),使得監(jiān)控系統(tǒng)軟件開(kāi)發(fā)能夠快速高效的完成。本文提出了應(yīng)用Netcontrol組態(tài)軟件進(jìn)行上位機(jī)監(jiān)控軟件開(kāi)發(fā)的方法,以在某1.25 MWp分布式光伏發(fā)電項(xiàng)目實(shí)際應(yīng)用為例,在介紹光伏發(fā)電系統(tǒng)架構(gòu)的基礎(chǔ)上,重點(diǎn)對(duì)上位機(jī)監(jiān)控系統(tǒng)軟件的功能及設(shè)計(jì)實(shí)現(xiàn)進(jìn)行介紹。
太陽(yáng)能光伏發(fā)電及監(jiān)控系統(tǒng)一般由以下幾部分組成[4]:
(1)太陽(yáng)能電池板陣列:通過(guò)太陽(yáng)能電池板將太陽(yáng)能轉(zhuǎn)化為電能,并通過(guò)太陽(yáng)能板串并聯(lián)的方式增大單路輸出的電壓電流。
(2)逆變器:將太陽(yáng)能電池板陣列輸出的直流電轉(zhuǎn)化為符合并網(wǎng)要求或?qū)嶋H使用的交流電,用于并網(wǎng)輸出或就地使用。
(3)儲(chǔ)能裝置:一般用蓄電池作為儲(chǔ)能裝置,一方面可在無(wú)陽(yáng)光時(shí)持續(xù)供電,另一方面可對(duì)太陽(yáng)能輸出交流電的質(zhì)量進(jìn)行一定的調(diào)節(jié)。
(4)監(jiān)控系統(tǒng):監(jiān)控系統(tǒng)主要用于檢測(cè)和控制整個(gè)光伏發(fā)電系統(tǒng),保證系統(tǒng)正常運(yùn)行。根據(jù)實(shí)際數(shù)據(jù)采集傳輸設(shè)計(jì)方案的不同,所配置的裝置設(shè)備也不盡相同,本文結(jié)合實(shí)際設(shè)計(jì),配置了數(shù)據(jù)采集器、數(shù)字通信管理機(jī)和監(jiān)控計(jì)算機(jī)。
整體光伏發(fā)電及監(jiān)控系統(tǒng)結(jié)構(gòu)如圖1所示。
如圖1所示,光伏發(fā)電監(jiān)控系統(tǒng)由數(shù)據(jù)采集器、數(shù)字管理機(jī)和監(jiān)控計(jì)算機(jī)三部分組成。
(1)數(shù)據(jù)采集器:負(fù)責(zé)采集逆變器及環(huán)境監(jiān)測(cè)儀中的實(shí)時(shí)數(shù)據(jù),并下發(fā)對(duì)逆變器的控制指令,包括實(shí)時(shí)發(fā)電量、累計(jì)發(fā)電量、逆變器狀態(tài)、實(shí)時(shí)電流、電壓、環(huán)境參數(shù)等數(shù)據(jù)以及逆變器開(kāi)關(guān)機(jī)指令。
(2)數(shù)字管理機(jī):集成連接下位設(shè)備所需的多種驅(qū)動(dòng)及接口,用于接收數(shù)據(jù)采集器上發(fā)的數(shù)據(jù)、各配電柜中斷路器狀態(tài)數(shù)據(jù)、儲(chǔ)能系統(tǒng)上發(fā)的儲(chǔ)能系統(tǒng)相關(guān)數(shù)據(jù)以及下發(fā)對(duì)逆變器、斷路器、儲(chǔ)能系統(tǒng)相關(guān)設(shè)備等的控制指令。
(3)監(jiān)控計(jì)算機(jī):其上位機(jī)監(jiān)控軟件負(fù)責(zé)對(duì)采集到的模擬量數(shù)據(jù)進(jìn)行顯示存儲(chǔ)、對(duì)報(bào)警信息進(jìn)行報(bào)警輸出、對(duì)控制指令進(jìn)行下發(fā)等工作。
基于Netcontrol的上位機(jī)監(jiān)控軟件的功能如圖1所示,包括用戶管理、通信IO管理、光伏發(fā)電監(jiān)控界面、設(shè)備遠(yuǎn)程操控、數(shù)據(jù)曲線顯示和數(shù)據(jù)庫(kù)管理六大功能模塊。
圖1 太陽(yáng)能光伏發(fā)電及監(jiān)控系統(tǒng)結(jié)構(gòu)圖
用戶管理模塊主要功能是管理用戶操作權(quán)限,Netcontrol中“用戶”與“安全區(qū)”配合使用,安全區(qū)是Netcontrol工程中有關(guān)操作控制安全的一種邏輯劃分單位。同一個(gè)安全區(qū)的安全控制要求是相同的,不同的安全區(qū)有不同的安全要求。用戶分“一般用戶”和“系統(tǒng)管理員”。“一般用戶”具有對(duì)指定安全區(qū)的操作權(quán)限,“系統(tǒng)管理員”除了具有對(duì)指定安全區(qū)的操作權(quán)限外,還可以管理一般用戶,在工程運(yùn)行期間增加、刪除和修改用戶。
本監(jiān)控系統(tǒng)中設(shè)定兩級(jí)操控權(quán)限:一般用戶通過(guò)設(shè)定,權(quán)限只限于查看畫(huà)面、數(shù)據(jù)等操作;高級(jí)用戶在一般用戶功能權(quán)限的基礎(chǔ)上增加對(duì)下位設(shè)備的操控權(quán)限,包括斷路器開(kāi)合閘、逆變器開(kāi)關(guān)機(jī)和儲(chǔ)能系統(tǒng)充放電切換開(kāi)關(guān)操作等功能。通過(guò)設(shè)定兩個(gè)權(quán)限不同的安全區(qū),再給對(duì)應(yīng)用戶指定安全區(qū)即可實(shí)現(xiàn)權(quán)限的劃分。設(shè)計(jì)流程如下:①建立兩級(jí)安全區(qū);②為監(jiān)控界面操控按鈕分別指定安全區(qū);③建立用戶并分別指定對(duì)應(yīng)級(jí)別的安全區(qū)。
工程中的IO管理又稱設(shè)備管理,是Netcontrol工程與下位設(shè)備進(jìn)行連接設(shè)置模塊,通過(guò)不同方式進(jìn)行通信從而實(shí)現(xiàn)數(shù)據(jù)讀寫(xiě)的功能。
該光伏發(fā)電監(jiān)控系統(tǒng)中,與上位計(jì)算機(jī)直接通信的設(shè)備為數(shù)字管理機(jī),上位計(jì)算機(jī)和數(shù)字管理機(jī)與以太網(wǎng)連接,上位機(jī)監(jiān)控軟件與下位數(shù)字管理機(jī)以IEC104規(guī)約進(jìn)行通信,數(shù)字管理機(jī)以Modbus、IEC103/104等規(guī)約與下位設(shè)備進(jìn)行通信。數(shù)據(jù)通信鏈路如圖2所示。
圖2 IO數(shù)據(jù)通信鏈路
在Netcontrol中通過(guò)對(duì)通道參數(shù)與設(shè)備參數(shù)進(jìn)行設(shè)置,并建立好數(shù)據(jù)點(diǎn)表后即可進(jìn)行數(shù)據(jù)傳輸通信。通道參數(shù)與設(shè)備參數(shù)設(shè)置界面如圖3所示。
圖3 通信參數(shù)設(shè)置
人機(jī)界面是工程運(yùn)行人員了解和控制監(jiān)控系統(tǒng)的主要途經(jīng)。界面的開(kāi)發(fā)就是繪制圖形畫(huà)面,來(lái)模擬工業(yè)現(xiàn)場(chǎng)。畫(huà)面的基本構(gòu)成元素稱為“圖形”或“圖形對(duì)象”。
光伏發(fā)電監(jiān)控界面是用于查看光伏發(fā)電系統(tǒng)運(yùn)行狀態(tài)最直觀的方式,監(jiān)控界面包括系統(tǒng)原理結(jié)構(gòu)圖、實(shí)時(shí)發(fā)電參數(shù)、實(shí)時(shí)狀態(tài)指示模塊(指示燈)、畫(huà)面切換按鈕和設(shè)備操控按鈕等。從系統(tǒng)原理結(jié)構(gòu)圖上可直觀地看出整個(gè)光伏發(fā)電系統(tǒng)的原理架構(gòu)。實(shí)時(shí)發(fā)電參數(shù)顯示光伏發(fā)電系統(tǒng)實(shí)時(shí)發(fā)電情況,狀態(tài)指示模塊指示當(dāng)前各設(shè)備運(yùn)行狀態(tài),一般包括開(kāi)狀態(tài)、關(guān)狀態(tài)、正常狀態(tài)和故障狀態(tài)四種模式。畫(huà)面切換按鈕用于在各監(jiān)控畫(huà)面之間進(jìn)行切換查看。設(shè)備操控按鈕用于對(duì)設(shè)備進(jìn)行遠(yuǎn)程操控,如逆變器開(kāi)關(guān)機(jī)、斷路器分合閘等。監(jiān)控畫(huà)面設(shè)計(jì)開(kāi)發(fā)流程如下:①新建畫(huà)面并調(diào)整尺寸、背景;②畫(huà)面布局劃分;③添加圖形對(duì)象;④配置圖形對(duì)象屬性。根據(jù)開(kāi)發(fā)流程所設(shè)計(jì)監(jiān)控畫(huà)面如圖4所示。
圖4 光伏發(fā)電監(jiān)控界面
本光伏發(fā)電系統(tǒng)中主要可以遠(yuǎn)程操控的設(shè)備有逆變器、斷路器和儲(chǔ)能系統(tǒng)充放電開(kāi)關(guān),針對(duì)逆變器與斷路器開(kāi)關(guān)操作,采用直接在監(jiān)控界面點(diǎn)擊對(duì)應(yīng)按鈕進(jìn)行遠(yuǎn)程手動(dòng)開(kāi)關(guān)機(jī)。儲(chǔ)能系統(tǒng)充放電開(kāi)關(guān)則采用了遠(yuǎn)程手動(dòng)開(kāi)關(guān)與自動(dòng)開(kāi)關(guān)兩種模式:手動(dòng)模式下,需操作員在監(jiān)控界面上以開(kāi)關(guān)逆變器和斷路器同樣的方法進(jìn)行開(kāi)關(guān)操作;自動(dòng)模式下,無(wú)需人員干預(yù),軟件自動(dòng)根據(jù)當(dāng)前光照指數(shù)以及蓄電池現(xiàn)有電量進(jìn)行判斷,根據(jù)判斷結(jié)果進(jìn)行充放電開(kāi)關(guān)指令下發(fā),手動(dòng)遠(yuǎn)程操控的實(shí)現(xiàn)方式是在按鈕事件中的左鍵點(diǎn)擊屬性中寫(xiě)入指定的變量賦值程序,給所要開(kāi)關(guān)的設(shè)備對(duì)應(yīng)工程變量賦值。自動(dòng)控制實(shí)現(xiàn)方法是在用戶程序的工程程序中根據(jù)控制邏輯寫(xiě)入對(duì)應(yīng)程序進(jìn)行控制。
光伏發(fā)電系統(tǒng)監(jiān)控軟件中數(shù)據(jù)曲線主要用于對(duì)歷史發(fā)電量進(jìn)行顯示分析,可按日、月、年進(jìn)行顯示,也可按所屬子系統(tǒng)支路進(jìn)行顯示分析。曲線數(shù)據(jù)顯示原理為將數(shù)據(jù)庫(kù)中數(shù)據(jù)根據(jù)指定條件進(jìn)行查詢,并將查詢結(jié)果以曲線的形式顯示到監(jiān)控畫(huà)面,設(shè)計(jì)流程如下:①添加數(shù)據(jù)曲線插件;②鏈接對(duì)應(yīng)變量;③調(diào)整曲線顯示屬性。
數(shù)據(jù)庫(kù)管理模塊具有保存實(shí)時(shí)數(shù)據(jù)到數(shù)據(jù)庫(kù)、查詢歷史數(shù)據(jù)、刪除歷史數(shù)據(jù)和導(dǎo)出歷史數(shù)據(jù)等幾大功能。
數(shù)據(jù)保存:數(shù)據(jù)保存主要用于在系統(tǒng)運(yùn)行過(guò)程中,保存光伏發(fā)電相關(guān)數(shù)據(jù),以備后期查詢、統(tǒng)計(jì)和分析。數(shù)據(jù)保存設(shè)計(jì)流程如下:①在sqlserver中建立數(shù)據(jù)庫(kù)與表單;②Netcontrol 變量表中添加數(shù)據(jù)庫(kù)鏈接;③設(shè)定數(shù)據(jù)存儲(chǔ)規(guī)則。
歷史數(shù)據(jù)查詢:歷史數(shù)據(jù)查詢用于操作員與管理人員查看分析歷史發(fā)電數(shù)據(jù)與系統(tǒng)運(yùn)行相關(guān)數(shù)據(jù)。歷史數(shù)據(jù)查詢界面設(shè)計(jì)流程如下:①添加查詢條件輸入、選擇控件;②添加數(shù)據(jù)庫(kù)顯示插件;③添加操控按鈕;④配置操控按鈕事件屬性。配置操控按鈕事件屬性:在操控按鈕事件左鍵點(diǎn)擊程序中寫(xiě)入結(jié)合查詢條件選擇和輸入框中相關(guān)條件的數(shù)據(jù)庫(kù)數(shù)據(jù)查詢操控指令程序,添加將輸出結(jié)果指定到所添加的數(shù)據(jù)庫(kù)查詢界面的相關(guān)程序。
歷史數(shù)據(jù)刪除與導(dǎo)出:數(shù)據(jù)庫(kù)運(yùn)行一定時(shí)間后,由于數(shù)據(jù)不斷增多,磁盤(pán)可用空間將不斷減少,因此需設(shè)計(jì)相應(yīng)的歷史數(shù)據(jù)刪除策略,從而手動(dòng)或定期對(duì)歷史數(shù)據(jù)進(jìn)行刪除操作,釋放磁盤(pán)空間。該光伏發(fā)電監(jiān)控系統(tǒng)中根據(jù)實(shí)際需要,分別設(shè)置了手動(dòng)刪除歷史數(shù)據(jù)與定期自動(dòng)刪除歷史數(shù)據(jù),并且通過(guò)程序設(shè)定,在刪除之前進(jìn)行數(shù)據(jù)導(dǎo)出操作。數(shù)據(jù)庫(kù)相關(guān)管理界面如圖5所示。
圖5 數(shù)據(jù)庫(kù)管理界面
光伏發(fā)電監(jiān)控系統(tǒng)對(duì)于系統(tǒng)運(yùn)行狀態(tài)與數(shù)據(jù)統(tǒng)計(jì)來(lái)說(shuō),都是必不可少的一部分,本文結(jié)合實(shí)際項(xiàng)目介紹了基于Netcontrol組態(tài)軟件的光伏發(fā)電監(jiān)控系統(tǒng)的相關(guān)功能以及設(shè)計(jì)與實(shí)現(xiàn)的方法步驟,基于組態(tài)軟件的監(jiān)控軟件二次開(kāi)發(fā)具有方便與高效的優(yōu)點(diǎn),經(jīng)實(shí)際運(yùn)行測(cè)試,所開(kāi)發(fā)的光伏發(fā)電監(jiān)控系統(tǒng)運(yùn)行穩(wěn)定。