文獻標識碼: A
DOI:10.16157/j.issn.0258-7998.2016.08.023
中文引用格式: 孫智權,周煒彬,趙不賄. 基于云存儲的農業環境參數監控系統設計[J].電子技術應用,2016,42(8):94-97.
英文引用格式: Sun Zhiquan,Zhou Weibin,Zhao Buhui. Design of monitoring system for agricultural environment parameters based on cloud technology[J].Application of Electronic Technique,2016,42(8):94-97.
0 引言
云存儲作為一種新興的網絡存儲手段,為人們提供方便的數據在線服務[1],它具有成本低、效率高、多應用環境以及高安全性的特點[2]。433 MHz比2.4 GHz傳播距離遠、抗干擾性強,因而被廣泛應用于多個領域。WiFi速率快、傳輸量大,能夠通過無線連接的方式與公網通信。在農業生產中,將WiFi與433 MHz通信結合使用,不僅可以遠距離傳輸數據,也能將其上傳至云服務器進行存儲和使用,因此特別適合于遠程監控。
課題以51單片機、溫濕度傳感器、433 MHz通信模塊組成數據采集節點,即從節點;以STM32、433 MHz通信模塊、WiFi模塊組成數據傳輸節點,即主節點。主、從節點組成無線傳感器網絡(Wireless Sensor Network,WSN),從節點將傳感器測量的數據通過433 MHz通信模塊發送給主節點,主節點匯總處理后通過WiFi模塊與云服務器建立通信,實現云存儲和遠程監控。
1 系統模型及關鍵問題分析
1.1 系統應用模型
整個農業環境參數遠程監控系統應用模型如圖1所示。系統分為4部分,分別是主節點、從節點、路由器及云服務器。其中從節點分布在農田區域內,負責測量環境參數(溫濕度),隨后通過433 MHz通信模塊發送。主節點通過433 MHz通信模塊接收數據,根據寫入的程序算法處理數據并通過WiFi發送給路由器,最后由路由器將數據發送至云服務器存儲并處理,結果反映到手機或Web上,實現農戶對農田的監控。農戶可隨時查看云服務器上的實時數據或通過云服務器發送的短信或郵件進行跟蹤,即時了解農作物的生長狀況并做出應對措施,以此避免不必要的損失。
圖1 系統應用模型
1.2 系統關鍵問題分析
在大面積農田種植的應用背景中,利用射頻通信組成的無線傳感器網絡用以測量農業環境參數,其中涉及到的一個主要技術問題是如何克服通信距離障礙。
首先,根據無線通信自由空間損耗可以得出通信距離、通信頻率與傳播損耗的關系:
其中,傳播損耗Los又可由通信模塊的發射功率P(dBm)以及接收靈敏度Sin(dBm)計算得來:
查看系統所用的433 MHz通信模塊的技術參數并帶入式(2),得出傳播損耗Los為135 dBm,帶入式(1)可得最大理論通信距離約為300 km。然而在實際應用中,由于大氣以及障礙物對無線電波的阻擋,實際傳播損耗要遠低于理論值。根據式(1)可知,大氣以及障礙物對無線電波每增加6 dBm的損耗,通信距離便會減小1倍,因此要保證遠距離傳輸有兩種可行性方案:一為增加通信芯片的發射功率,但會增加系統功耗;二為配備增益天線,將電磁波集中輻射,此種方法更適合低功耗通信系統的設計。
經試驗測得,在實際情況下,系統的433 MHz通信在空曠條件以最大發射功率下配備5 dBi增益天線能夠達到3.69 km的通信距離,完全滿足大面積農田的通信距離要求。
2 系統硬件設計
系統整體硬件結構如圖2所示。從節點以51單片機為核心,主要連接傳感器和433 MHz通信模塊。主節點以STM32為核心,主要連接433 MHz通信模塊、WiFi模塊。主、從節點各有電源電路,提供DC5V/3.3V。其中,433 MHz通信模塊用以建立主、從節點之間的數據通信,51單片機可以通過模擬SPI總線控制該模塊;WiFi模塊用以與路由器建立無線通信,從而間接建立主節點與云服務器的通信,STM32可以通過串口和AT指令控制該模塊,串口波特率為115 200 b/s。
圖2 系統硬件結構圖
電源電路如圖3所示,采用電源管理芯片RT7272B進行設計。該電路使用電源適配器輸入DC 9 V,輸出DC 5 V,再經AMS1117穩壓芯片最終輸出DC 3.3 V。
圖3 電源電路原理圖
電源電路中,輸出電壓Vout與R64、R65有關,三者滿足的關系式為:
在電路中,需要注意保險絲(Fuse,FU)和瞬態抑制二極管(Transient Voltage Suppression,TVS)的選型。FU的額定電壓等于或者大于電源的額定電壓,額定電流應為電源流額定電流的75%。TVS的額定電壓與電源的額定電壓滿足關系式1.2Vout≤VTVS≤1.5Vout。
3 系統軟件設計
3.1 系統通信軟件的設計
在由主節點與從節點構成的WSN中,主節點與從節點互相發送命令/應答數據包。主節點與從節點的系統通信程序如圖4所示。
圖4 系統通信程序流程圖
首先主節點與從節點硬件初始化,隨后主節點進行廣播,等待相應的從節點接收校驗,錯誤則任務結束,成功則進行測量任務。主節點接收并校驗數據包,成功則處理數據包,失敗則要求從節點重新發送數據包,重發超過5次則主節點放棄該從節點。
系統使用超文本傳輸協議(Hyper Text Transport Protocol,HTTP)與云服務器通信。當系統設置完畢WiFi模塊的通信參數后,即準備發送包含溫濕度數據的HTTP請求至云服務器。云服務器接收到HTTP請求后,當即發送HTTP回復給WiFi模塊,主節點通過解析HTTP回復來判斷數據是否上傳,同時視情況做出容錯措施。
3.2 通信分時復用程序的設計
通信分時復用(Time Division Multiple Access,TDMA)[3],即在網絡通信中采用分時原理,避免由于信道沖突而造成的網絡延時過大、網絡丟包問題。系統TDMA程序流程圖如圖5所示。
圖5 分時復用程序流程圖
系統分時復用程序采用STM32的定時器來完成。定時器可以將時間分段,每一個時間段相互獨立,分別歸屬于每一個從節點。在一個時間段中從節點可以與主節點互相通信,然后進行下一個時間段并統計已完成通信的節點數量。當所有節點通信完畢后,分時復用過程結束,等待下一段分時通信的到來。
3.3 數據處理算法
從節點分布在農田各處。由于每一處小區域的環境差異,造成從節點測量的數據差距較大,如若不做處理,將會嚴重影響數據的真實性與可靠性。為了解決這一問題,系統引進了基于加權平均數[4]的數據處理思想。使用加權平均數思想處理數據的理由有:
(1)減少因傳感器故障和小區域環境不同而帶來的測量異常值的影響。
(2)統計出非正常節點的個數。
(3)更為精確地反映出農田的環境狀況。
加權平均數的計算思想如下:假設若干區間[A1,An],[B1,Bn]…[N1,Nn],統計數據落在每一個區間的個數分別是a,b…n。按照式(4)計算整體樣本加權平均值S:
根據上述思想,系統進行數據處理的算法流程圖如圖6所示。STM32首先對數據進行區間劃分,統計出處于區間中的樣本數據個數。隨后算法設定閾值判斷數據,統計出非正常數據的個數。對于正常的數據則采用加權平均數用以估計整片農田的環境參數并上傳至云服務器。
圖6 系統數據處理流程圖
4 實驗結果和驗證
實驗場地選定為室內,系統使用了8個從節點分布在各個角落,每隔30 s采集一次溫濕度并顯示在主節點的LCD屏幕上,同時處理數據并上傳至云服務器,最終通過Web以折線圖的方式推送在網頁上。
4.1 數據對比試驗
表1給出了系統所測得的實驗場地溫度與溫度計實際測得的溫度的對比,檢測時間間隔為6 h。由此看出系統所測數據相比于實際數據略低,但總體相差不大。因此農戶可以通過該系統了解農作物生長環境的大致情況并酌情做出判斷。
4.2 云服務器上傳與報警實驗
圖7所示為云服務器上系統所測連續一周的溫濕度數據的折線圖。
圖7 云服務器Web端折線圖
為了驗證報警功能,在實驗過程中將室內濕度調高,云服務器報警。報警郵件如圖8所示。
圖8 云服務器報警郵件
5 結語
本文研究討論了一種基于433 MHz通信的監控系統,并結合WiFi將現場數據實時上傳至云服務器并存儲。配合系統的通信程序、分時復用程序、數據處理算法使得通信和數據穩定可靠,同時云服務器處理數據并將數據推送至Web和移動端方便實時監控。
參考文獻
[1] 孔陶茹.云存儲應用的現狀、挑戰、展望、創新及探討[J].物聯網技術,2014(2):69-71.
[2] 周可,王樺,李春花.云存儲技術及其應用[J].中興通信技術,2010,16(4):24-27.
[3] 高強,李英濤,孫大洋,等.WSN中滿足公平性的時分復用調度算法[J].計算機工程與設計,2015,36(5):1126-1130.
[4] 劉樹婷.改進型加權平均算法與疊加算法在超市系統中的應用與研究[D].大連:大連交通大學,2014.