張重遠,張林康,范偉捷
(1.華北電力大學 電氣與電子學院,河北保定071003;2.北京送變電公司,北京102401)
2009年5月,國家電網公司正式對外界公布了“堅強智能電網”計劃[1-2]。將移動通信技術應用到智能電網的建設中,可以節(jié)省初期建網的巨額投資,無需承擔維護費用,數(shù)據(jù)管理也會更為方便。目前,基于移動通信的遠程監(jiān)測技術已成為研究熱點。國外遠程終端監(jiān)測系統(tǒng)主要是基于嵌入式微處理器,利用GPRS、3G等移動通訊網絡[3],協(xié)助管理系統(tǒng)發(fā)布采集的數(shù)據(jù),例如美國某電氣公司研發(fā)的PowerConirol遠程電力監(jiān)測系統(tǒng)。國內各大公司也在研發(fā)此類產品,例如某科技有限公司開發(fā)的GPRS電力配電監(jiān)測系統(tǒng),冀網某供電公司建設的“3G視頻傳輸系統(tǒng)”。
在電力設備在線監(jiān)測中,將電力設備的運行數(shù)據(jù)引入到信息管理系統(tǒng)(management information system,MIS)[4],為工作人員提供了極大的方便,只是該系統(tǒng)存在只能在計算機上顯示數(shù)據(jù)的局限性,若能將移動終端接入到MIS系統(tǒng),工作人員就能夠在任何地點、任何時間掌握電力設備的工作狀態(tài)和運行數(shù)據(jù),并且依據(jù)運維數(shù)據(jù)及時、迅速地做出反應。
隨著3G網絡的日益成熟和4G網絡的來臨,我國已經進入移動互聯(lián)網的時代,各種新型的智能移動終端呈現(xiàn)幾何式的增長,其中Android系統(tǒng)是基于Linux平臺的手機操作系統(tǒng),對第三方軟件完全開放,代碼全部開源免費[5],打破了其他系統(tǒng)封閉開發(fā)的模式,而且該系統(tǒng)提供了大量的實用庫和開發(fā)工具,使得開發(fā)人員可以很容易地搭建自己的應用。
為此,開發(fā)一種基于3G/4G網絡的配網主設備監(jiān)測平臺,該平臺可以有效整合配網在線監(jiān)測的總體數(shù)據(jù)。工作人員利用手機、平板等智能終端就可以登陸系統(tǒng),實時有效的監(jiān)測配網主設備的工作狀態(tài)和負荷信息,并對相關數(shù)據(jù)做出及時的處理[6],運維人員也可以隨時隨地地查看問題和解決問題,這將是在線監(jiān)測領域的一大發(fā)展趨勢。
在WAMP集成環(huán)境下,使用PHP語言完成應用服務器對數(shù)據(jù)庫的數(shù)據(jù)訪問以及應用服務器與客戶端之間的數(shù)據(jù)交互[7];在 Eclipse開發(fā)環(huán)境下,利用JAVA語言對監(jiān)測平臺客戶端進行整體的設計和軟件功能的實現(xiàn)。監(jiān)測平臺分為數(shù)據(jù)庫服務器模塊,應用服務器模塊,監(jiān)測平臺客戶端模塊,網絡拓撲結構如圖1所示。
圖1 系統(tǒng)結構框圖Fig.1 System structure block diagram
數(shù)據(jù)庫服務器通過系統(tǒng)接口實現(xiàn)監(jiān)測平臺與配電網監(jiān)控系統(tǒng)的數(shù)據(jù)共享,將相關數(shù)據(jù)讀取到數(shù)據(jù)庫,結合設備參數(shù)等信息,進行統(tǒng)一的規(guī)約處理、存儲、集成與融合,建立高效、全面的設備狀態(tài)信息庫。
應用服務器是連接數(shù)據(jù)庫和移動客戶端的中間環(huán)節(jié)。依據(jù)客戶端提交的數(shù)據(jù)對數(shù)據(jù)庫進行數(shù)據(jù)庫連接以及增刪改查等具體操作。然后,將相關設備的運行、預警信息編碼為適合無線傳輸?shù)腏SON格式,通過3G/4G網絡同步地發(fā)送到相關部門和管理人員的Andrioid智能手機、平板等移動終端,實現(xiàn)配網主設備的運行數(shù)據(jù)、離線數(shù)據(jù)、帶電檢測數(shù)據(jù)的融合與共享。
Android客戶端是配網主設備監(jiān)測平臺設計的核心內容。在Eclipse開發(fā)環(huán)境下,使用JAVA語言實現(xiàn)客戶端內部的邏輯功能,利用XML語言實現(xiàn)頁面設計,選定3G/4G網絡作為通信方式,實現(xiàn)客戶端與服務器的數(shù)據(jù)交互,確保監(jiān)測平臺運行的穩(wěn)定性和流暢性。
監(jiān)測平臺服務器端包括數(shù)據(jù)庫服務器、應用服務器兩部分的內容。
2.1.1 MySQL數(shù)據(jù)庫
MySQL是一種關系型數(shù)據(jù)庫管理系統(tǒng)[8],憑借體積小、速度快、成本低,以及開源性等優(yōu)點,成為中小型網站的首選。監(jiān)測平臺以MySQL作為數(shù)據(jù)庫服務器,采用phpMyAdmin做為MySQL的數(shù)據(jù)庫管理工具,建立“jcpt”數(shù)據(jù)庫。依據(jù)監(jiān)測平臺的功能需求,新建用戶信息表—jcpt_infor、預警信息表—jcpt_warning和設備運行表—jcpt_online等。本文以基于頻率響應分析(frequency response analysis,F(xiàn)RA)的10kV配電變壓器繞組變形帶電檢測數(shù)據(jù)為例,將變壓器繞組變形檢測結果實時傳輸?shù)奖O(jiān)測平臺的數(shù)據(jù)庫服務器。
2.1.2 Apache服務器
Apache是一個開放源碼的網頁服務器,憑借操作簡單、速度快、性能穩(wěn)定等優(yōu)勢,已經成為世界使用排名第一的服務器軟件。監(jiān)測平臺采用Apache作為應用服務器,使用PHP語言來處理客戶端的發(fā)來的HTTP請求,并把讀取的數(shù)據(jù)庫內容以及對客戶端的響應封裝成JSON格式,通過HTTP協(xié)議回傳給Android終端,從而實現(xiàn)客戶端與MySQL數(shù)據(jù)庫的通信。
Android作為一個完整、開源的開發(fā)平臺,具有編程簡單、可移植性強、擴展性好及易于維護等特點。因此,選擇Android作為配網主設備監(jiān)測客戶端的開發(fā)平臺。在Eclipse開發(fā)環(huán)境中,引入Android SDK插件,使用XML語言設計客戶端的顯示頁面,采用JAVA語言完成客戶端的內部邏輯。在平臺功能方面,經過對監(jiān)測平臺的需求分析,客戶端可實現(xiàn)用戶登錄、信息預警、數(shù)據(jù)實時顯示、歷史數(shù)據(jù)查詢等功能,客戶端整體工作流程如圖2所示。
圖2 客戶端整體工作流程圖Fig.2 Overall working flow chart of client terminal
2.2.1 登陸功能
在監(jiān)測平臺的數(shù)據(jù)庫服務器中,包含著用戶信息表,該數(shù)據(jù)表已經設置了用戶登錄組。用戶在客戶端登錄頁面輸入指定的用戶名和登錄密碼,點擊登錄按鈕可實現(xiàn)遠程調用相應的登錄函數(shù),與數(shù)據(jù)庫中的用戶信息進行比對,若比對成功,則通過Toast控件提示“登錄成功”并自動轉到客戶端主頁面,否則會提示“帳號或密碼錯誤”如圖3所示。
2.2.2 信息預警功能
預警信息功能根據(jù)配網主設備的運行數(shù)據(jù),通過特定的程序算法判斷設備的運行狀態(tài),一旦超出設定的范圍,就會向數(shù)據(jù)庫預警表中插入預警信息,Android客戶端會每隔3秒輪詢預警信息表。例如,監(jiān)測平臺的數(shù)據(jù)庫預警信息表—jcpt_warning出現(xiàn)“康樂街變壓器T3繞組輕微變形”預警數(shù)據(jù),則客戶端預警信息頁面的變壓器欄馬上由“正?!弊兂伞翱禈方肿儔浩鱐3繞組輕微變形”,預警信息如圖4所示。
圖3 登錄功能頁面Fig.3 Log-in function page
圖4 預警信息功能頁面Fig.4 Warning information function page
2.2.3 數(shù)據(jù)實時顯示功能
實時數(shù)據(jù)功能可以顯示配網主設備實時運行數(shù)據(jù),運行人員通過點擊不同的按鈕,可以分別查看相應設備的運行狀態(tài)。實時數(shù)據(jù)頁面設計了變壓器數(shù)據(jù)、斷路器數(shù)據(jù)、避雷器、輸電線路、隔離開關等設備按鈕,分別點擊不同的按鈕,就會出現(xiàn)相關設備的實時運行數(shù)據(jù)如圖5所示。
2.2.4 歷史數(shù)據(jù)查詢功能
歷史數(shù)據(jù)查詢功能引入 Spinner(下拉列表控件),該控件相當于一個彈出式菜單欄供用戶選擇要查詢的設備;通過DatePicke(日歷選擇控件)和Time-Picker(模擬時鐘控件)來選擇要查詢設備的具體日期和時間段。最后,通過服務器查詢設備的歷史運行數(shù)據(jù),為配網主設備的在線監(jiān)測與故障診斷提供數(shù)據(jù)支持如圖6所示。
圖5 實時數(shù)據(jù)顯示頁面Fig.5 Real-time data display page
圖6 歷史數(shù)據(jù)查詢頁面Fig.6 Historical data query page
客戶端與服務器采用Http Client通信方式,分為Get和Post方法。Get方法是面向服務器讀取信息,而Post方法是帶參數(shù)獲取服務器的內容。因此,客戶端實時訪問服務器頁面時可以采用Get方法;在客戶端進行歷史數(shù)據(jù)查詢等操作時,需要調用Post方法。通過流程圖7進行HttpClient網絡訪問。
在Android開發(fā)中,如果在主線程中進行耗時操作,比如網絡訪問,可能會造成“系統(tǒng)假死”的現(xiàn)象。在Android4.0以后,已經禁止在主線程中進行網絡訪問等耗時操作。在本文中,主線程主要負責管理與用戶界面(User Interface,UI)組件相關的事件,同時創(chuàng)建子線程實現(xiàn)對網絡訪問等耗時操作。針對子線程不能直接傳遞數(shù)據(jù)到主線程的問題,利用消息傳遞機制[9],使用 Looper、Handler和 Message等方法實現(xiàn)子線程與主線程的數(shù)據(jù)傳遞,最后采用定時輪詢的方式,實現(xiàn)UI界面的實時更新功能。
基于FRA的10 kV配電變壓器繞組變形帶電檢測裝置是與某電力公司合作研發(fā)的一項科研項目,應用頻率響應分析的方法,通過注入特定的脈沖信號,并在LABVIEW開發(fā)環(huán)境中實現(xiàn)信號采集、實時調理、數(shù)據(jù)分析等功能[10],可以快速、準確地獲取變壓器繞組的頻響曲線,有效檢測10 kV配電變壓器的繞組變形情況。
圖7 客戶端通信流程圖Fig.7 Flowchart of client terminal communication
TD-SCDMA無線數(shù)據(jù)終端,內部集成了調制解調器,可以實現(xiàn)WEB瀏覽和數(shù)據(jù)傳輸?shù)葮I(yè)務。將該終端與帶電檢測裝置的USB接口相連,利用PHP語言編寫數(shù)據(jù)采集頁面,通過遠程連接監(jiān)測平臺數(shù)據(jù)庫服務器的技術,可以將檢測結果實時插入到設備運行表中,從而實現(xiàn)檢測數(shù)據(jù)向監(jiān)測平臺的數(shù)據(jù)導入,數(shù)據(jù)采集頁面如圖8所示。
變壓器帶電檢測頁面包括基于FRA變壓器繞組變形檢測、紅外成像檢測、局部放電監(jiān)測和變壓器油色譜分析四部分如圖9所示。通過點擊“FRA繞組變形檢測”按鈕可跳轉到“繞組變形檢測頁面”,該頁面包括檢測時間、變壓器位置、銘牌、檢測人員、監(jiān)測結果以及三相圖等內容。該頁面與應用服務器之間采用JSON通信格式,由于JSON比XML具有安全、通用、數(shù)據(jù)量小和通信效率高等特點,很適合移動客戶端與服務器的數(shù)據(jù)交互。該頁面采用AChartEngine框架,這是一個在安卓系統(tǒng)上制作圖表的框架,可實現(xiàn)變壓器繞組變形檢測的三相折線圖。
圖8 檢測結果采集頁面Fig.8 Test results collection page
圖9 繞組變形顯示頁面Fig.9 Winding deformation display page
在監(jiān)測平臺主頁面上,點擊歷史數(shù)據(jù)查詢按鈕,見圖10所示,選擇要查選的配網設備—“配變”和要查詢的具體數(shù)據(jù)—“FRA繞組變形”,同時選擇要查詢的開始時間和結束時間,點擊查詢按鈕,出現(xiàn)歷史數(shù)據(jù)顯示頁面。
圖10 歷史數(shù)據(jù)查詢功能測試Fig.10 Test of historical data query function
基于3G/4G網絡的配網主設備監(jiān)測平臺是從傳統(tǒng)的計算機網、局域網向互聯(lián)網、移動終端的一次拓展。本文給出了基于3G/4G網絡的配網主設備監(jiān)測平臺服務器和客戶端的設計與實現(xiàn)的具體方案,可以實現(xiàn)配網主設備運行數(shù)據(jù)實時共享,并將預警信息實時地發(fā)送到相關管理部門和運行人員的安卓智能手機上。通過引入基于FRA的10 kV配電變壓器繞組變形帶電檢測數(shù)據(jù),驗證了監(jiān)測平臺的可行性和有效性?;?G/4G網絡的配網主設備監(jiān)測平臺對于提高電力設備在線監(jiān)測水平具有一定的工程應用價值。