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