999精品在线视频,手机成人午夜在线视频,久久不卡国产精品无码,中日无码在线观看,成人av手机在线观看,日韩精品亚洲一区中文字幕,亚洲av无码人妻,四虎国产在线观看 ?

基于Web的光伏電站監控與故障診斷系統

2016-01-18 03:39:04紀昌青李曉念李朝偉
自動化與儀表 2016年10期
關鍵詞:頁面故障診斷故障

海 濤 ,紀昌青 ,李曉念 ,李朝偉 ,王 路

(1.廣西大學 電氣工程學院,南寧 530004;2.廣西交通職業技術學院,南寧 530004)

發展可再生能源已經成為全球能源發展的重要方向,太陽能是可再生能源中的重要組成部分,光伏、光熱、光化學是太陽能利用的3種主要形式。當前,光伏產業蒸蒸日上,已被廣泛應用于人們的生活中。我國將會持續大力發展光伏產業,因此未來越來越多的光伏電站將會被建立起來。由于太陽能的特點,大型光伏電站一般都建立在偏遠地區,小型電站多建立在城市樓宇等建筑物的上方,這樣就給電站的運行維護造成一定的困難,因此設計基于B/S結構Web形式的光伏電站監控系統十分有必要。

本文設計了一種基于.NET平臺的光伏電站監控系統,利用GPRS公共無線網絡進行數據的傳輸;采用三層架構軟件設計方法,方便日后的維護和擴展;使用Ajax技術實現網頁局部刷新,優化用戶體驗;運用BP神經網絡對光伏組件進行故障診斷,方便維護人員及時檢修,預防因故障引起不良后果。

1 系統設計方案

1.1 B/S結構和C/S結構

目前使用最廣泛的監控結構是C/S(Client/Server)結構。但是C/S結構對客戶端的操作系統有限制,不同的操作系統需要不同的客戶端軟件,這樣就加大了開發的工作量;C/S結構難以適應上百臺電腦以局域網的方式同時使用,代價高、效率低;C/S結構的維護成本非常高并且需要復雜的技術支持。

隨機互聯網的發展,人們越來越多地使用B/S(Browser/Server)結構[1-2]。 B/S結構相比 C/S結構不需要給每一種操作系統專門制作客戶端軟件,不同操作系統的用戶只需要通過瀏覽器就可以訪問服務器內容;B/S結構完全可以適應大批量用戶同時訪問服務器;B/S結構相比C/S結構最大的優點就是維護成本低,工作人員只需要擴展或升級服務器即可,大大降低了工作量,因此本文采用B/S結構進行設計。

1.2 系統總體結構

本文所采用的B/S結構如圖1所示,各自的光伏電站有各自的數據采集模塊,使用RS485總線將光伏電站傳感器的數據傳送至現場控制器。現場控制器將接收到的數據通過GPRS移動通信技術[3]以Socket連接方式發送至遠程服務器端。

圖1 系統總體結構Fig.1 System general structure

在服務器端編寫WinForm窗體程序,開啟Socket偵聽,每接入一個站點都要創建一個新的線程去接收數據,然后解析接收到的數據,將其存入SQL Server數據庫中。在服務器端用.NET平臺設計WebForm光伏電站監控界面,監控人員通過瀏覽器即可觀察電站的實時運行情況。

當需要檢測故障時,用戶在Web頁面發出故障檢測命令,修改數據庫對應表中的標志位為“1”,WinForm服務器軟件通過檢索數據庫中的標志位,如果為“1”則向光伏電站控制器發送命令,控制器接收命令后采集故障診斷所需要的數據。

1.3 三層架構模型

Web監控服務器端采用經典的三層架構模型,即表現層(UI)、業務邏輯層(BLL)、數據訪問層(DAL),三層架構模型如圖2所示。

圖2 三層架構模型Fig.2 Three tier architecture model

表現層用來提供與用戶交互的界面,本系統的表現層將以Web方式呈現。

業務邏輯層對數據進行邏輯處理,實現不同的業務需求;降低表現層和數據訪問層之間的聯系,避免在表現層出現冗余邏輯代碼。

數據訪問層實現與數據庫的交互,拼寫sql語句,利用ADO.NET直接操作數據庫,對數據做增刪改查等操作。

通用類庫通用的輔助工具類,包含SQLHelper、MD5 加密等。

業務實體這個類同數據庫中的表一一對應,類名對應表名,類成員對應表中的字段,方便處理數據。

不同類庫之間的引用關系如下:

①DAL 引用:Common、Model

②BLL 引用:Common、DAL、Model

③UI引用:Common、BLL、Model

采用三層架構是為了實現面向對象的高內聚低耦合原則。在表現層和數據訪問層中間加一層業務邏輯層,能夠有效隔離表現層和數據訪問層的聯系,可以使開發人員只關注其中某一層的設計,結構更加清晰,有利于代碼復用,如果需要更改Web頁面的UI層,不會影響BLL層和DAL層,添加或刪除功能模塊不影響已有模塊的代碼,可以極大地降低維護成本和維護時間。

1.4 Web程序的功能模塊

使用.NET平臺設計Web程序,做好三層架構的框架后,就需要根據不同的業務需求填充三層架構。經過分析,設計的監控系統的功能模塊如圖3所示。

圖3 系統功能模塊Fig.3 System function module diagram

管理員權限高于普通用戶,普通用戶只能查看光伏電站運行參數狀況,獲取各設備運行信息,但管理員可以增加或刪除設備,而且可以設置普通用戶的權限。

實時數據模塊實時顯示采集到的數據,采集的信息有設備信息、光伏電池陣列輸出電壓和電流、逆變器輸出電壓和電流及其相位、逆變器輸出功率、溫度、日照強度、各開關器件的狀態等。

系統可生成日、月綜合報表,用戶根據報表可對電站的運行狀況進行分析。

1.5 Ajax技術

Ajax(Asynchronous JavaScript and XML),即異步JavaScript和XML[4]。如果不使用Ajax,用戶獲取不同頁面信息需要刷新整個Web頁面,使得瀏覽器與服務器之間需要交互較多的數據,同時也會降低用戶使用舒適度,尤其當用戶數量增多時會增加服務器訪問壓力,Web頁面將出現卡頓現象。使用Ajax實現Web頁面局部刷新,減少了Web頁面與后臺交互的數據量。考慮實際情況,普通用戶訪問界面使用較多的Ajax請求,管理員用戶則沒有使用Ajax請求,因為管理員比較少,與服務器交互數據量小,且主要是對網站進行維護工作,對訪問的舒適感要求較低。

C#的WebForm中有專門的Aajx控件,但這種控件仍然需要與服務器交互大量的數據,所以本系統并沒有使用,而是使用jQuery寫Ajax,讓它請求一般處理程序,效果很好。

2 故障診斷

由于光伏電站安裝地點多位于樓頂或偏遠地帶,很難經常性的在電站現場對其進行檢查和維護,因此十分有必要對光伏陣列進行智能故障診斷。本系統采用高效且易用的BP神經網絡算法對光伏陣列進行故障診斷。

2.1 光伏陣列故障類型

已有研究表明[5-6],光伏陣列開路電壓Voc、短路電流Isc、最大功率點電壓Vmp、最大功率點電流Imp會因為不同的故障而發生改變,不同的故障現象對應不同的故障類型。表1列出了故障現象及其對應的類型。

表1 故障現象及對應類型Tab.1 Fault phenomena and corresponding types

2.2 BP神經網絡算法

BP 算法(error back propagation algorithm),即誤差反向傳播算法,是一種在分類、函數擬合、系統仿真、圖像處理等方面都有廣泛應用的神經網絡算法。

BP神經網絡包括輸入層、隱藏層和輸出層,其拓撲結構如圖4所示。

圖4 BP神經網絡拓撲結構Fig.4 BP neural network topology

本系統中,BP網絡輸入層節點數為4,輸出層節點數也為4。輸入輸出的相關描述如表2所示。

表2 輸入輸出相關描述Tab.2 Input and output correlation

隱藏層的節點數可根據經驗公式來確定:

式中:M為隱藏層節點數;n為輸入層節點數;m為輸出層節點數;a為0~10之間的常數。因此,本文BP網絡隱藏層的結點數應在2~13之間。

由于4個輸入變量的單位不一樣,量級也不一樣,直接輸入到BP網絡中會影響收斂效果,因此需要對輸入數據作歸一化處理:

式中:xn為原數據;xmin為原輸入數據中的最小值;xmax為原輸入數據中的最大值;Xn為歸一化后的數據。

BP神經網絡的學習算法有很多,從最初的梯度下降法到動量BP算法、學習率可變的BP算法、彈性BP算法、變梯度BP算法、牛頓法、LM算法[7]等等。本系統采用的LM(levenberg-marquardt)算法是對牛頓法的改進,不需要計算二階導數,收斂速度非常快,權值和偏置由下式更新:

式中:w(n)為第n次迭代各層之間的連接權值向量或偏置向量;J為包含網絡誤差函數對權值和偏置一階導數的雅可比矩陣;I為單位矩陣;e為網絡的誤差向量;μ為很小的系數。

在編寫Matlab程序的時候,網絡訓練函數設為trainlm,其訓練終止條件為到達設定的最大迭代次數;超出設定的迭代時間;進行仿真的誤差性能連續增加的次數超過設定值;梯度值小于設定最小梯度值;μ值超過設定最大值。

2.3 BP神經網絡測試

在實驗中所用的光伏模塊型號為SFM-50的小型光伏板, 其標稱參數是 Voc:21.6 V、Isc:3.2 A、Vmp:17.28 V、Imp:2.9 A,采集不同溫度(15 ℃~39 ℃)、日照強度(300 W/m2~800 W/m2)條件下的不同故障,共采集了300組數據,正常、短路、開路、老化、熱斑5種狀態各60組,每個狀態取40組共200組數據作為訓練樣本,另外每個狀態20組共100組數據作為測試樣本。

使用Matlab神經網絡工具函數net=feedforwardnet(8,‘trainlm’)得到 BP 網絡 net,其中設置的隱藏層節點數為8,訓練函數為trainlm,設置最大迭代次數2000,學習率0.01,目標誤差,使用test_out=sim(net,testInput)語句進行網絡仿真測試,得到 BP網絡誤差性能如圖5所示。

圖5 BP網絡誤差性能Fig.5 Error performance of BP network

如圖5,經過18次迭代,訓練誤差已經小于目標誤差,學習過程停止。經過多次修改網絡訓練目標誤差,再也不能減小網絡的測試誤差,說明在該樣本下網絡訓練已經達到最優。圖6所示為100組測試數據的診斷結果,其中2個老化故障和1個熱斑故障診斷錯誤,其余均正確,診斷正確率為97%,證明使用的BP神經網絡算法高效可行。

圖6 BP網絡測試結果Fig.6 BP network test results

2.4 C#語言調用Matlab動態鏈接庫

用C#語言調用Matlab自定義函數實現混合編程,要先將Matlab自定義函數編譯生成動態鏈接庫dll文件,然后在C#項目中添加該動態鏈接庫。操作步驟為

①保存訓練好的 BP 網絡:save('D:LM.mat','net'),前一個參數是路徑,后一個參數是BP網絡的名稱,注意:其他需要用到的中間向量也應當保存;

②新建一個.m文件,加載上一步中的網絡及所需數據,將測試過程編寫成函數接口,輸入為4個節點的真實值組成的向量,輸出為輸出節點組成的向量,保存.m文件;

③在Matlab命令窗口中輸入deploytool調出編譯選擇窗口,并選擇Library Compiler;

④配置窗口中TYPE選擇.NET Assembly,選擇待編譯的.m文件,寫上類庫名myLM,并添加類名及方法名,設置好后點擊Package按鈕,等待編譯完成;

⑤在C#服務器項目中添加兩個dll文件的引用,MWArray.dll文件(在Matlab根目錄下的toolboxdotnetbuilderinwin64v2.0中)和上一步中生成的myLM.dll文件;

⑥在C#項目中將生成目標平臺修改為x64(因為使用的Matlab為x64版本);

⑦添加命名空間

using MathWorks.MATLAB.NET.Arrays;

using MathWorks.MATLAB.NET.Utility;

using myLM。

完成以上步驟之后,即可在C#項目中調用Matlab使用的BP神經網絡函數,實現混合編程。

3 網站運行測試

為了更美觀地展示實時數據,使用了一個名為highcharts的圖庫,該圖庫使用純JavaScript語言編寫,支持絕大多數瀏覽器,支持曲線圖、柱狀圖、餅狀圖等各種圖表的繪制。使用post方式發送ajax請求,從SQLServer數據庫讀取剛由Winform程序插入的數據,顯示在圖表中。

如圖7所示,實時顯示2016年4月15日位于綜合樓1區的光伏電站的概況,3個圖表都設為同時顯示30條數據,每隔10 s圖表右邊無刷新添加一條數據,同時圖表最左邊的一條數據被移除。經長時間測試,Web頁面運行良好。

圖7 實時數據Web運行頁面Fig.7 Real-time data Web run page

圖8為故障監測頁面,如果發生故障,則在Web頁面展示所有故障的詳細信息,用戶對故障進行處理后,經故障診斷程序判斷,若數據恢復正常,則記為已處理,否則記為未處理。

圖8 監控系統故障監測頁面Fig.8 Monitor and control system fault monitoring page

4 結語

本文采用.NET平臺設計B/S結構,使用C#作為編程語言、SQL Server 2008作為數據庫,在VS2013開發工具上開發出一套Web監控系統,該系統故障診斷部分采用BP神經網絡算法,使用Matlab和C#混合編程,取得很好的診斷效果,極大地降低了光伏電站的安全性隱患。由于使用了面向對象設計方法和三層架構軟件模型,使得該Web監控系統具有良好的拓展性能,大大降低了系統的維護成本,提高了光伏電站的維護效率。

[1]王娜.基于.NET平臺的光伏電站視頻監控系統的設計與實現[D].北京:北京交通大學,2015.

[2]趙宏偉,秦昌明.基于B/S 3層體系結構的軟件設計方法研究[J].實驗室研究與探索,2011,30(7):64-66.

[3] 陳天華,唐海濤.基于ARM和GPRS的遠程土壤墑情監測預報系統[J].農業工程學報,2012,28(3):162-166.

[4]譚力,楊宗源,謝瑾奎.Ajax技術的數據響應優化[J].計算機工程,2010,36(7):52-54.

[5]王元章,李智華,吳春華,等.基于BP神經網絡的光伏組件在線故障診斷[J].電網技術,2013(8):2094-2100.

[6]王元章,李智華,吳春華.一種四參數的光伏組件在線故障診斷方法[J].中國電機工程學報,2014,34(13):2078-2087.

[7]錢華明,姜波,夏全喜.基于LM算法的組合導航系統的故障診斷[J].中國造船,2009,50(4):102-108.

猜你喜歡
頁面故障診斷故障
大狗熊在睡覺
刷新生活的頁面
保健醫苑(2022年1期)2022-08-30 08:39:14
故障一點通
奔馳R320車ABS、ESP故障燈異常點亮
因果圖定性分析法及其在故障診斷中的應用
故障一點通
江淮車故障3例
基于LCD和排列熵的滾動軸承故障診斷
基于WPD-HHT的滾動軸承故障診斷
機械與電子(2014年1期)2014-02-28 02:07:31
高速泵的故障診斷
河南科技(2014年3期)2014-02-27 14:05:48
主站蜘蛛池模板: 亚洲第一精品福利| 国产精品久久自在自2021| 国产精品浪潮Av| 精品国产三级在线观看| Jizz国产色系免费| 国产在线观看成人91| 91精品最新国内在线播放| 丁香婷婷久久| 国产成人精品高清在线| 国产污视频在线观看| 91麻豆国产精品91久久久| 亚洲日产2021三区在线| 无码精品福利一区二区三区| 丰满人妻被猛烈进入无码| 亚洲精品卡2卡3卡4卡5卡区| 国产玖玖视频| 久久综合干| 91麻豆精品国产91久久久久| 欧美伦理一区| 色香蕉影院| 夜夜爽免费视频| 亚洲综合激情另类专区| 国产手机在线ΑⅤ片无码观看| 亚洲国产在一区二区三区| 无码精品国产dvd在线观看9久| 国产色爱av资源综合区| 韩日无码在线不卡| 熟女成人国产精品视频| 国产99视频精品免费视频7| 欧美精品在线观看视频| 好久久免费视频高清| a亚洲天堂| 欧美三级自拍| 91久久偷偷做嫩草影院| 亚洲国产欧美国产综合久久| 精品天海翼一区二区| 青青青国产精品国产精品美女| 日韩精品久久久久久久电影蜜臀| 国产成人亚洲综合A∨在线播放| 亚洲国产91人成在线| 最新痴汉在线无码AV| 国产精品入口麻豆| 97免费在线观看视频| 蜜桃视频一区二区三区| 成人av专区精品无码国产| 青青热久麻豆精品视频在线观看| 国产精品成人观看视频国产| 亚洲无码91视频| 91在线高清视频| 亚洲国产av无码综合原创国产| 色婷婷色丁香| 国产精品中文免费福利| 精品精品国产高清A毛片| 在线观看国产网址你懂的| 国产草草影院18成年视频| 免费看的一级毛片| 亚洲国产成人综合精品2020| 无码aⅴ精品一区二区三区| 国产99热| 人妻免费无码不卡视频| 超薄丝袜足j国产在线视频| 久久男人资源站| 婷婷色婷婷| 精品一区二区三区波多野结衣| 中日韩一区二区三区中文免费视频| 九色在线视频导航91| 亚洲性日韩精品一区二区| 国产99在线| 亚洲欧美日韩久久精品| 国产乱人乱偷精品视频a人人澡 | 午夜精品一区二区蜜桃| 在线观看视频一区二区| 狠狠做深爱婷婷综合一区| 综合网天天| 免费一极毛片| 亚洲丝袜中文字幕| 国产伦片中文免费观看| 欧美亚洲香蕉| 99偷拍视频精品一区二区| 无码一区18禁| 国产精品一区二区在线播放| 久久香蕉国产线看观看式|