王宏坡等


摘 要:為了進一步推進水產養殖監控手段,以已有的水產養殖系統平臺為基礎,并充分利用養殖戶已有的智能Android設備基礎上,將移動互聯網和物聯網信息技術應用于水產養殖中,設計了能運行在Android平臺上的水產參數遠程監控系統,并介紹了水產養殖客戶端在線監測和遠程控制功能的實現方法和步驟,完成客戶端軟件的設計與開發。它不僅大大便利了水產養殖人員的工作強度,而且還可以對水產養殖異常情況進行預警,從而為養殖漁業的健康生產保駕護航。
關鍵詞:Android 水產養殖 無線監測 控制
中圖分類號:TP273 文獻標識碼:A 文章編號:1674-098X(2015)04(c)-0032-01
Android是一個開源的操作系統,目前廣泛應用于各種移動設備,如智能手機和平板電腦等,它是一個基于Linux的由Google公司開發系統[1]。Android的系統架構主要分為應用程序層、應用程序框架層、系統運行庫層和Linux 內核層[2]。
隨著物聯網的逐漸推進,在水產養殖方面得到不斷推廣[3],該文則在已有物聯網水產養殖監控系統的基礎上,增加Android移動監控平臺。
1 系統設計
根據用戶需求, 系統能夠完成參數設置、在線監測、遠程控制功能。系統功能結構如圖1所示。
(1)參數設置:參數設置主要完成各個監測點設置及各個監控參數限制的設置。
(2)在線監測:在線監測主要完成系統中所有管理區監測設備(傳感器)的管理操作,包括設備開啟或關閉、查看設備運行狀態、監測指標及監測值等。
(3)遠程控制:遠程控制主要完成系統中所有管理區控制設備(控制器)的管理操作,包括設備的開啟或關閉、查看設備運行狀態、設定控制設備的工作方式(控制模式)等。
2 系統實現
2.1 手機端與服務器端的交互
水產養殖的各個監控參數都由服務器存儲到數據庫中,Android客戶端要獲取相應參數或設置參數等,就需要與服務器進行交互。在該文中手機端與服務器端的交互是通過Web Service進行。由于在Android4.0之后不可以在主線程中進行網絡操作,故要調用webservice需要新開線程。
public void onClick(View v){
new Thread(new Runnable(){
public void run(){
}
}).start();
}
2.2 獲取監測設備
準確獲取設備是進行設備遠程控制的重要前提。本程序定義設備變量StateOfDev。賦值代碼為:
StateOfDev=(ImageButton)findViewById(R.id.stateofdev)
int devId =getInt(dev[1],0);
StateOfDev.getDev(devId);
2.3 獲取監測數據
傳感設備監測到的環境數據會通過數傳設備實時傳輸并儲存在服務器端。在使用手機客戶端進行在線監測時,需要使用monitorDataHandler( )方法對服務器端的數據進行實時獲取。
2.4 遠程控制
遠程設備控制分為人工控制和自動控制。人工控制則由用戶根據自己的經驗去控制設備,而自動控制則由系統根據設定值自動調節。其主要代碼如下所示:
switch(v.getId()){
case R.id.ManualControl:
startControl.
setManual(Constants);
break;
case R.id.AutoControl:
startControl.setAuto(Constants);
break;
}
2.5 相關界面
相關界面如圖2所示。
3 聲明
本論文由國家級大學生創新創業訓練計劃項目(201410061038)和(201410061037)及院精品課程“應用軟件開發基礎”資助。
參考文獻
[1] 蔣樹,劉霞.魚塘溶解氧無線監測與控制系統研究[J].漁業現代化,2012,25(2):25-28.
[2] 王宏坡,馬文芝,周紅.基于Android的電子書閱讀器的設計與實現[J].天津農學院學報,2014,21(2):39-41.
[3] 閆宗魁,姜印平,李艷文,等.基GSM短消息的無線智能溶解氧監控系統[J].天津理工大學學報,2006,22(1):69-71.endprint