摘要:為了解決生產中蔬菜大棚種植區域不集中、種植人員掌握科技能力欠缺、傳統有線監控操作復雜組網困難、監控距離受限制、采集數據不科學和不準確的問題,以及能實時對蔬菜大棚中環境參數信息進行監控,結合無線傳感網絡和Android系統,設計了基于Android系統的蔬菜大棚環境參數監控系統;對系統中傳感器終端節點和協調器、GPRS模塊、Android軟件進行了設計說明。各個傳感器終端節點采集數據信息,以igBee無線傳送技術發送到協調器,協調器經過串口通信與Android平板電腦進行通信,同時經GPRS模塊把相應數據信息發送到移動設備終端,實現環境參數的實時檢測,并與預設的參數范圍進行比較,超出范圍能實時報警,并向控制器發送命令自動打開安裝在蔬菜大棚中的機電設備,使蔬菜大棚內的環境參數適合蔬菜生長。系統經過測試,可實時監測到數據信息,各種傳感器數據精確度達到生產要求,機電設備控制良好。該系統擴展性強、設計靈活,具有一定實用價值和良好應用空間。
關鍵詞::監測系統;Android系統;GPRS;蔬菜大棚;環境參數
中圖分類號:TP273;S126文獻標志碼: A
文章編號:1002-1302(201412-0423-03[HS][HT9SS]
收稿日期:2014-03-14
基金項目:廣西高校科研項目(編號:2013LX233;廣西高校優秀中青年骨干教師培養工程培養對象項目。
作者簡介:黃鶯(1980—,男,廣西武宣人,碩士,副教授,研究領域為智能檢測與控制技術、物聯網技術。E-mail:huangying800816@163com。
我國的蔬菜大棚已經形成規模化和產業化,大棚管理水平直接影響著蔬菜的產量和質量,在生產過程中對大棚環境參數的監控具有重要的意義[1-2]。及時了解蔬菜大棚的溫度、濕度、可燃氣體濃度、火焰有無、CO2濃度、光照等數據信息是非常必要的,通過手工采集大棚中的環境參數數據費時費力。傳統的有線監控方式操作復雜,不能滿足實際的需要。目前基本上是通過人工干預的方式,對蔬菜大棚指定區域內的環境參數進行調控,使之適合所培養作物生長的需求。
傳統的管理和監控過程中監測點都是有線接入,過程繁瑣、建置和維護成本較高,系統的可擴展性和移動性較差[5-7]。無線傳感器網絡的數據采集系統可以實現對多個監測點的數據采集,采集后的數據通過無線收發模塊傳送到主控端[8-10],以便能實時監測和更好管理。王建平等采用物聯網技術和Internet技術實現溫室大棚的智能化[11]。石建飛等以PLC為核心對育秧棚的空氣溫濕度、土壤溫度、土壤水分等參數進行實時采集和監控,并利用無線通信方式把數據上傳上位機,達到遠程實時監控的目的[12]。
Android系統基于Linux內核,是一款先進的、流行的嵌入式操作系統。選擇Android具有技術先進成熟、開發周期短、實用性強的特點,符合嵌入式發展方向,已廣泛應用在各行業,同時Android系統本身支持眾多的傳感器,易于開發。隨著智能手機的普及,并且有可能人手一臺,網絡覆蓋廣,不受距離限制[1,13]。陳剛闡述了在Android 驅動程序中對傳感器數據進行轉換的方法[14],吳振深等設計了基于Android 智能手機的移動式環境監控系統[15],郭志偉等利用GSM技術對農田氣象信息進行遠程監控[16],徐巧年等設計了利用GSM無線傳輸技術的溫室環境監測系統[17]。為了能夠實時監測生產過程中大棚蔬菜環境數據信息,利用GSM網絡覆蓋面廣,不受距離限制的特點,可以以短消息的方式實現實時無線通信[18-19],因此使用當前的智能手機進行傳感器數據收集及傳輸可以達到實時監控的目的。
為了解決生產過程中蔬菜大棚種植區域不集中、種植人員掌握科技能力欠缺、傳統有線監控操作復雜組網困難、監控距離受限制、采集數據不科學和不準確的問題,設計了基于Android手機的蔬菜大棚環境參數監控系統,利用手機實現對蔬菜大棚環境參數監測、處理與控制。該系統可以實時檢測蔬菜大棚中環境溫度、濕度、光照強度、CO2 濃度、火焰參數以及人體感應檢測,并與系統中預設的參數范圍進行比較,如果超出范圍,則發送相應命令到控制器模塊自動打開控制設備,如燈光、風扇、加熱器、加濕器等,使蔬菜大棚內的環境參數適合蔬菜生長。
1系統工作原理
監測系統由傳感器終端節點、協調器、GPRS模塊和 Android 監測軟件組成。把傳感器終端節點安裝在需要采集數據的地方,對蔬菜大棚內的溫度、濕度、可燃氣體濃度、光照強度、CO2 濃度、火焰感測和人體感應進行監測,各個監測節點把采集的數據信息通過igBee無線傳輸技術傳送到協調器,協調器通過串口通信與Android平板電腦或GPRS模塊進行通信,發送到智能手機上;點擊智能手機上的按鈕,協調器傳送命令到控制器,通過I/O口驅動繼電器動作,控制機電設備工作狀態。同時,在手機上可以設置各個參數的范圍,當采集到的數據超過設置范圍,實現報警;也可能通過點擊手機上的按鍵去控制相應設備工作。
2系統硬件設計
傳感器終端節點和控制器節點都是采用CC2530作為核心,配合傳感器完成數據信息的采集,并把信息發送到協調器。控制器接收協調器發送過來的信號,經過繼電器電路控制與之連接的機電設備,系統可以快速地擴展其他傳感器終端節點和控制器節點,只要設置好地址、頻道等,就可以與協調器組成網絡,進行通信。
網絡的建立維護和數據的中轉是協調器的主要職責,主要是給傳感器終端節點分配地址和完成與各個傳監測節點間的數據通信,并與平板電腦、GPRS模塊結合完成信息的處理和控制。
借助GPRS無線數據傳輸技術,實現了對蔬菜大棚內數據的實時性、準確性、高效性管理[20]。系統中采用RS232標準實現協調器與GPRS的通信。
3系統軟件設計
31GPRS功能實現
GPRS模塊控制的方法是使用AT 命令[21]。程序首先對串口、串口波特率、DCB、奇偶校驗、流量控制、以及創建線程、發送數據格式等進行設置。設置完成后,手機進入監聽狀態,當有數據寫入緩沖時,就發送到指定手機上。
32傳感器終端節點功能實現
由于系統中存有多個傳感器終端節點和控制器節點,程序定義一個參數SENSOR_TYPE用來標記使用傳感器終端節點,還定義了igBee的頻道、網絡id、主控器地址、傳感器終端節點地址和控制器地址等信息,以實現協調器能正常與多個傳感器終端節點和控制器節點通信,而不發生數據傳輸沖突。傳感器終端節點向協調器發送數據格式如下:
FF FD 00 04 30 30 00 00 hh hh hh(byte1-byte11
其中數據格式說明如表1所示。
[F(W14][HT6H][J]表1發送數據格式[HTSS][STB]
[HJ5][BG(!][BHDFG12,W9,W20W] 數據符號數據格式說明
byte1 byte2傳感器端數據發送的固定頭,固定為 FF FD
byte3數據類型的標志
00 光電感測器的數據
01 溫濕度感測器的數據
03 火焰感測器的數據
04 CO2感測器的數據
05 可燃感測器的數據
06 人體感測器的數據
byte4傳感數據長度(統一為04
byte5-byte8傳感器數據
byte9-byte10保留
byte11byte1-byte10 校驗值(相加取低8位[HJ][BG)F][F)]
33控制器節點功能實現
協調器在接收到相應信息后會向控制器節點發送數據,通過I/O口驅動繼電器動作,控制機電設備工作狀態。協調器向控制器送數據格式如下:
FA FB 06 06 01 00 00 00 00 00 chk(byte1-byte11
其中數據格式說明如表2所示。
[F(W15][HT6H][J]表2發送數據格式說明[HTSS][STB]
[HJ5][BG(!][BHDFG12,W6,W23W]數據符號數據格式說明
byte1 byte2協調器端數據發送控制繼電器命令的固定頭FA FB
byte3協調器數據發送對象
06:發送命令給繼電器1端
07:發送命令給繼電器2端
08:發送命令給繼電器3端
09:發送命令給繼電器4端
0A:發送命令給繼電器5端
0B:發送命令給繼電器6端
byte4命令長度,固定為6
byte5發送給繼電器的命令內容
02為關閉繼電器命令
01為開啟繼電器命令
byte6-yte10保留
byte11byte1-byte10 校驗值(相加取低8位[HJ][BG)F][F)]
34Android監控軟件設計
由于Android系統是開源性、集成操作的系統,提供了豐富的用戶界面中間件和重要應用程序,用戶可以快速進行二次開發,廣泛應用在智能手機中。Android監控軟件主要由底層通信模塊和界面設計模塊組成。
341底層通信模塊
底層通信模塊主要實現與igBee模塊間的通信,包括串口操作和讀取數據2部分。在串口操作文件(linuxsjava中對打開串口、關閉串口、設置串口信息、發送串口信息和接收串口信息進行了功能函數定義。通過異步讀取傳感器值文件(ReceiveThreadjava在后臺實時讀取傳感器數據,并儲存在相關數據類中。具體定義如下:
(1打開串口。函數格式為:public static native int openUart(int I,int j。
其中i是串口值,如com3值為3;j是串口形式,0表示是COM,1表示USB。
(2關閉串口。函數格式為:public static native int ocloseUart(int fd。
其中fd是串口數值。
(3設置串口。函數格式為:public static native int setUart(int fd,int burd,int returntimeout,int returnminlen。
其中fd是串口數值;burd是波特率,默認值是38 400,數值為5;returntimeout是返回超時時間,設置成0是立即返回;returnminlen是最小返回長度,設置成0不管長度多少立即返回。此函數返回0值表示設置出錯,返回大于0數值表示設置成功。
(4發送串口信息。函數格式為:public static native int sendMsgUartHex(int fd,String msg,int len。
其中fd是串口數值;msg是十六進制格式數據;len是數據長度。
(5接收串口。信息函數格式為:public static native int receiveMsgUartHex(int fd。
其中fd是串口數值;返回十六進制的傳感器數值。
342界面設計模塊
使用XML文件生成方法進行界面設計,每一個界面都有唯一的XML文件與之相對應,如主界面mainframexml,設置參數范圍settingxml。界面主要是由一系列的控件來組成。文本控件TextView負責文本顯示,比如主界面的溫度、濕度、可燃氣體、光照強度、CO2 濃度、火焰感測和人體感應的文本顯示。圖像按鈕ImageButton主要負責用戶的請求輸入,通過點擊屏幕上的按鈕去控制對應的機電設備工作狀態。編輯文本EditText負責用戶對各個參數范圍的數值輸入。按鈕控件Button負責用戶點擊請求的輸入,如設置參數界面中的數值的保存和取消功能等按鈕。
4系統的測試
根據設計的要求,系統設計完成并搭建。
41硬件連接
在DMA-210XP類型的平板電腦上安裝好協調器(B2530-03 模塊,接好天線。其他傳感器終端節點上插好傳感器模塊,并接上天線。并把所有模塊、平板電腦電源線接好。
42軟件安裝
將IAR軟件編寫好的 “協調器程序”燒錄到DMA-210XP上插入的B2530-03模塊中;把各個傳感器節點采集程序的HEX文件燒錄到相應的傳感器節點中;同時也把控制各個機電設備的控制器程序燒錄到相應控制器中,并標志好6個繼電器,后面要求對應。并且把使用android-sdk和 eclipse 開發環境生成的監測軟件安裝到平板電腦上。接通電源后,協調器上的指示燈會亮起并閃爍,各個傳感器上的指示燈常亮,說明各個模塊能正常工作。
43結果測試
[JP2]在平板電腦上點擊安裝好的監測軟件圖標進入監測界面,對系統各個功能進行測試,各個傳感器能夠傳回正確數據。通過點擊繼電器按鈕,控制器節點工作正常,相應的機電設備能正確響應。系統測試結果說明,系統實現相應功能,成功讀取各個傳感器終端節點數據,點擊界面上的按鈕,可以成功打開斷電器電路,控制機電設備的工作狀態。系統運行正常、穩定,所有功能都能實現。相關界面如圖1-a和圖1-b所示。
主界面運行顯示圖中左面是各個傳感器終端節點采集發送回來的數值。右面是控制器通過繼電器電路控制機電設備工作狀態,OFF說明機電設備不工作,ON說明機電設備正在運行。不同的繼電器控制不同的機電設備。
5結論
[JP2]本試驗設計了一種基于Android手機的蔬菜大棚環境參數監控系統,介紹了系統的整體架構和軟件設計。在系統開發過程中解決了Android客戶端傳感器數據收集及傳輸技術。同時,對所開發的系統進行了測試,并取得了滿意的結果。
[HS2][HT85H]參考文獻:[HT8SS]
[1][(#]鄭爭兵 基于GSM網絡的蔬菜大棚環境參數監測系統[J] 廣東農業科學,2012,39(1:158-159
[2]陳大鵬,毛罕平,左志宇 基于Android手機的溫室環境遠程監控系統設計[J] 江蘇農業科學,2013,41(9:375-379
[3]畢玉革,麻碩士 我國現代溫室環境控制硬件系統的應用現狀及發展[J] 農機化研究,2009,31(3:223-225
[4]褚向前,朱武 溫室溫度多傳感器數據融合[J] 農機化研究,2008(4:180-181,185
[5]蔣耘晨 基于校園網和igBee技術的實驗室監控管理系統[J] 實驗技術與管理,2010,27(7:104-106
[6]劉煥強,顧曉峰,補雅晶,等 基于igBee的智能桑蠶養殖監控系統的設計與實現[J] 江蘇農業科學,2013,41(8:382-386
[7]楊順,章毅,陶康 基于igBee和以太網的無線網關設計[J] 計算機系統應用,2010,19(1:194-197
[8]趙輝,王躍禮,王紅君,等 日光溫室無線傳感節點的設計[J] 江蘇農業科學,2013,41(3:382-384
[9]尚亞蕾,劉磊 基于FPGA的氣井數據采集終端設計[J] 油氣田地面工程,2013(6:83-84
[10][(#]徐亞峰,劉煥強,顧曉峰,等 基于igBee和GPRS的遠程水質監測系統的設計與實現[J] 江蘇農業科學,2013,41(3:328-331
[11]王建平,房振宏,焦翠玲 基于物聯網技術的智能蔬菜大棚構建[J] 廣東農業科學,2011,38(5:200-201
[12]石建飛,曹洪軍,田芳明,等 基于PLC的寒地水稻育秧大棚無線監控系統設計[J] 廣東農業科學,2012,39(24:199-201,204
[13]大衛·塔爾博特移動設備新時代——人手一臺電腦[J] 科技創業,2011(6:79
[14]陳剛 在Android驅動程序中對傳感器數據進行轉換[J] 中國電子商情:基礎電子,2012(4:52-55
[15]吳振深,吳俊,鄧惠燕,等 基于Android智能手機的移動式環境監控系統開發[J] 三明學院學報,2013,30(2:32-37
[16]郭志偉,張云偉,李霜,等 基于GSM的農田氣象信息遠程監控系統設計[J] 農業機械學報,2009,40(3:161-166
[17]徐巧年,張海輝,胡強 基于GSM無線傳輸的溫室環境因子監測系統設計[J] 安徽農業科學,2009,37(28:13845-13847
[18]李建東,郭梯云,鄔國揚 移動通信[M] 西安:西安電子科學大學出版社,2006
[19]張榮標,馮友兵,沈卓,等 溫室動態星型無線傳感器網絡通信方法研究[J] 農業工程學報,2008,24(12:107-110
[20]潘夕威 GPRS油井數據采集系統設計與實現[J] 油氣田地面工程,2010(9:62-64
[21]孫瑩 基于AT89 C52 單片機的短信息收發系統設計[J] 儀器儀表用戶,2009,16(5:19-20