張曉芬1,薛國新1,張宸銘2,陸柯彤1,梅 宇1
(1.常州大學(xué)信息科學(xué)與工程學(xué)院,江蘇常州 213164;2.常州同步軟件技術(shù)有限公司,江蘇常州 213022)
基于Android的逆變器管理系統(tǒng)的設(shè)計與實現(xiàn)
張曉芬1,薛國新1,張宸銘2,陸柯彤1,梅 宇1
(1.常州大學(xué)信息科學(xué)與工程學(xué)院,江蘇常州 213164;2.常州同步軟件技術(shù)有限公司,江蘇常州 213022)
光伏發(fā)電是一種可再生能源,逆變器是光伏并網(wǎng)發(fā)電系統(tǒng)中的關(guān)鍵部件;針對要對逆變器的實時狀態(tài)進行查詢,提出了一個基于安卓(Android)的逆變器管理系統(tǒng),首先介紹了整個管理系統(tǒng)結(jié)構(gòu)框架,然后詳細分析了每個模塊的具體實現(xiàn),根據(jù)網(wǎng)站后臺提供的接口,通過GPRS(通用分組無線服務(wù)技術(shù))或WIFI(無線網(wǎng))和接口交互后獲得數(shù)據(jù),對獲取到的字符串數(shù)據(jù)進行字符串解析,并顯示在對應(yīng)模塊的控件上,最后分別在模擬機和真機設(shè)備上運行;實現(xiàn)了Android手機對逆變器的系統(tǒng)狀態(tài)一覽、設(shè)備狀態(tài)一覽進行瀏覽和查詢,在后臺能夠得到數(shù)據(jù)曲線功能模塊的數(shù)據(jù)。運行結(jié)果表明,基于Android的逆變器管理系統(tǒng),能夠在Android手機上實時地觀察逆變器發(fā)電情況,做到及時地發(fā)現(xiàn)錯誤設(shè)備并解決問題。
逆變器;安卓;模塊
隨著科學(xué)技術(shù)的發(fā)展,手機的功能已經(jīng)不再是打電話、發(fā)短信這么簡單,智能手機為移動終端用戶帶來了更方便的使用平臺,Android最大的有點在于,具有很多開源平臺,具備非常好的開發(fā)和調(diào)試環(huán)境,并且支持隨時安裝應(yīng)用,不用像IOS(蘋果公司的移動操作系統(tǒng))一樣必須越獄后才能安裝多種應(yīng)用。
本文介紹了一種基于Android的逆變器管理系統(tǒng),在系統(tǒng)中Android開啟一個子線程,利用GPRS或者WIFI聯(lián)網(wǎng),與服務(wù)器接口交互,獲取設(shè)備數(shù)據(jù),并進行解析,然后通知UI(用戶界面)更改界面數(shù)據(jù)[1-2]。
系統(tǒng)的總體設(shè)計思路是:部署一臺電腦作為服務(wù)器,負責提供接口服務(wù)與用戶的Android手機通信,Android手機作為管理逆變器的管理器,提供管理界面,例如:登錄、系統(tǒng)狀態(tài)一覽、設(shè)備狀態(tài)一覽、設(shè)備曲線。這是一個C/S結(jié)構(gòu)系統(tǒng),電腦作為服務(wù)器,Android手機作為客戶端[3]。系統(tǒng)的總體結(jié)構(gòu)如圖1所示。
圖1 系統(tǒng)總體結(jié)構(gòu)
1.1 測試環(huán)境的搭建
為完成系統(tǒng)各個功能模塊的開發(fā),先建立了Android SDK +Java JDK 6+Intellij Idea 15.0的開發(fā)環(huán)境,基于Android 4.4.4版本 (APILEVEL19)開發(fā)。
本系統(tǒng)測試環(huán)境為:服務(wù)器為戴爾Vostro 3900,操作系統(tǒng)為Windows 7旗艦版64位SP1(Direct X 11),數(shù)據(jù)庫為SQL Server 2008??蛻舳酥悄苁謾C采用小米MI4LTE-CMCC (Android4.4.4系統(tǒng),硬件配置為:機身存儲為16 GB,運行內(nèi)存為3.00 GB,處理器為四核2.5 GHz),測試用的是WIFI網(wǎng)絡(luò)。
1.2 Android手機客戶端
Android智能手機主要起到的作用是:在手機上運行客戶端的APK程序,手機通過GPRS或者WIFI與服務(wù)器連接,進行系統(tǒng)和設(shè)備數(shù)據(jù)的傳輸,并在客戶端顯示。
1.3 服務(wù)器端
服務(wù)器端主要負責的是用戶登錄、系統(tǒng)狀態(tài)一覽、設(shè)備狀態(tài)一覽、設(shè)備曲線等信息的提供。用戶通過輸入用戶名和密碼可以登錄到手機客戶端主界面,可以將數(shù)據(jù)從接口上下載下來,解析并顯示到客戶端界面,進行數(shù)據(jù)重繪顯示[4]。
2.1 登錄模塊的設(shè)計
對登錄按鈕loginBtn進行點擊事件的處理,當用戶名和密碼框有字符輸入的時候,開啟一個子線程,進行網(wǎng)絡(luò)操作,等待有返回結(jié)果,使用handler通知UI[5 6]。
具體核心代碼如下:
2.2 系統(tǒng)狀態(tài)一覽模塊的設(shè)計
要對逆變器系統(tǒng)狀態(tài)一覽進行瀏覽,要在側(cè)滑菜單“系統(tǒng)狀態(tài)一覽”進行事件監(jiān)聽,跳轉(zhuǎn)到對應(yīng)的SystemStatus Activity界面,使用http協(xié)議進行網(wǎng)絡(luò)通信。
具體核心代碼如下:
2.3 設(shè)備狀態(tài)一覽模塊的設(shè)計
點擊側(cè)滑菜單“設(shè)備狀態(tài)一覽”,設(shè)置監(jiān)聽事件,跳轉(zhuǎn)到對應(yīng)DeviceStatus Activity界面,在點擊事件監(jiān)聽的時候,就與服務(wù)器接口進行交互,獲得一條數(shù)據(jù),并解析此數(shù)據(jù)為兩個數(shù)組,分別作為“設(shè)備狀態(tài)一覽”的分組名、子項名。
具體核心代碼如下:
由此可以得出一個具體的分組和子項界面,點擊子項,跳轉(zhuǎn)到“設(shè)備狀態(tài)一覽詳細”界面,要對子項設(shè)置事件監(jiān)聽,具體實現(xiàn)代碼如下:
2.4 設(shè)備曲線模塊的設(shè)計
界面中要調(diào)用日歷功能,來選擇開始日期和結(jié)束日期,具體代碼如下[7-8]:
點擊“查詢”按鈕后,開啟一個子線程,進行網(wǎng)絡(luò)連接,等待有返回結(jié)果,使用handler通知UI,具體代碼如下:
//開啟一個子線程,進行網(wǎng)絡(luò)操作,等待有返回結(jié)果,使用handler通知UI
系統(tǒng)采用了C/S的結(jié)構(gòu)來進行實現(xiàn),客戶端與服務(wù)器端通過Http協(xié)議來進行網(wǎng)絡(luò)通信,具有很高的性能,實現(xiàn)環(huán)境為Intellij Idea 15.0。Android手機端的啟動、登錄、瀏覽如圖所示。
圖2 登錄界面
圖3 “系統(tǒng)狀態(tài)一覽”界面
圖4 “設(shè)備狀態(tài)一覽”界面
圖5 “設(shè)備狀態(tài)一覽詳細”界面
圖6 “設(shè)備曲線”界面
圖7 “設(shè)備曲線”控制臺結(jié)果
綜上所述,基于Android的逆變器管理系統(tǒng),具備“系統(tǒng)狀態(tài)一覽”、“設(shè)備狀態(tài)一覽”、“設(shè)備曲線”等功能,安裝、攜帶、運行方便,操作簡單易會,數(shù)據(jù)傳輸速度快,能夠隨時隨地查詢逆變器發(fā)電狀態(tài)和數(shù)據(jù),實現(xiàn)安卓手機終端和現(xiàn)場的雙保險監(jiān)測[9],當設(shè)備不發(fā)電的時候,及時查詢是哪些設(shè)備出現(xiàn)了故障。采用的Android系統(tǒng)具有較好的開源性的特點,在用戶交互時具有友好的界面[10]。
在“設(shè)備曲線”功能部分,有待完善,查詢到了數(shù)據(jù),接下來該做的就是把解析到的數(shù)據(jù),繪制成坐標軸曲線,以便觀察所要觀察的設(shè)備的發(fā)電量的趨勢。
[1]邁 耶,佘建偉,趙 凱.Android 4高級編程[M].北京:清華大學(xué)出版社,2013.
[2]李 剛.瘋狂Android講義[M].北京:電子工業(yè)出版社,2013.
[3]耿東久,索 岳,陳 渝,等.基于Android手機的遠程訪問和控制系統(tǒng)[J].計算機應(yīng)用,2011,31(2):559-561.
[4]王 峰,宣伯凱,楊 鵬.基于Android的家庭移動醫(yī)療監(jiān)護系統(tǒng)的設(shè)計[J].計算機測量與控制,2015,23(5):1586-1588.
[5]董 密,羅 安.光伏并網(wǎng)發(fā)電系統(tǒng)中逆變器的設(shè)計與控制方法[J].電力系統(tǒng)自動化,2006,30(20):97-102.
[6]公 磊,Zhou C.基于Android的移動終端應(yīng)用程序開發(fā)與研究[J].計算機與現(xiàn)代化,2008(8):85-89.
[7]廖志賢,羅曉曙,何婷婷.一種光伏并網(wǎng)逆變器的數(shù)字化同步控制方法[J].計算機測量與控制,2012,20(8):2121-2123.
[8]曾愛林.基于Android的心電實時監(jiān)護系統(tǒng)設(shè)計與實現(xiàn)[J].計算機測量與控制,2013,21(11).
[9]蔣麗華,密君英,張 亮.基于Android的網(wǎng)上訂餐系統(tǒng)的設(shè)計與實現(xiàn)[J].電腦知識與技術(shù),2014(5X):3288-3290.
[10]尚明華,秦磊磊,王風云,等.基于Android智能手機的小麥生產(chǎn)風險信息采集系統(tǒng)[J].農(nóng)業(yè)工程學(xué)報,2011,27(5):178 -182.
Design and Implementation of Inverter Management System Based on Android
Zhang Xiaofen1,Xue Guoxin1,Zhang Chenming2,Lu Ketong1,Mei Yu1
(1.School of Information Science&Engineering,Changzhou University,Changzhou 213164,China;2.Changzhou Tonbu Software Technology Co.,Ltd.,Changzhou 213022,China)
Photovoltaic power generation is a kind of renewable energy,inverter is the key components of grid-connected photovoltaic power generation system.To querry the real-time status of inverter,putting forward a inverter control system based on Android.Firstly introduced the whole management system framework,then analyzed the concrete realization of each module,according to the interfaces provided by website backstage,get the data through GPRS or WIFI to interact with the interface,do string parsing with the string data and display on the corresponding control module,F(xiàn)inally,run on simulator and real machine equipment respectively.Realized to browse and query the system status and device status,get the data of data curves in the background.Running result shows that,Inverter management system based on Android,can observe the inverter real-time power on the Android mobile phone,and find error devices then deal with the problems.
inverter;Android;module
1671-4598(2016)08-0154-03
10.16526/j.cnki.11-4762/tp.2016.08.041
:TP311
:A
2016-03-01;
:2016-03-24。
國家自然科學(xué)基金資助項目(61103172)。
張曉芬(1991-),女,江蘇溧陽人,碩士研究生,主要從事三維動畫方向的研究。