《電子技術應用》
您所在的位置:首頁 > 通信與網(wǎng)絡 > 設計應用 > 基于物聯(lián)網(wǎng)的農(nóng)業(yè)大棚氣象數(shù)據(jù)監(jiān)測系統(tǒng)設計
基于物聯(lián)網(wǎng)的農(nóng)業(yè)大棚氣象數(shù)據(jù)監(jiān)測系統(tǒng)設計
2018年電子技術應用第12期
崔麗珍,徐錦濤,丁福星,史明泉,胡海東
內(nèi)蒙古科技大學 信息工程學院,內(nèi)蒙古 包頭014010
摘要: 農(nóng)業(yè)大棚種植技術對現(xiàn)代化農(nóng)業(yè)生產(chǎn)具有重大意義,為解決農(nóng)業(yè)大棚環(huán)境信息實時采集、監(jiān)測問題,設計了基于物聯(lián)網(wǎng)的農(nóng)業(yè)大棚氣象環(huán)境數(shù)據(jù)監(jiān)測系統(tǒng)。該設計以CC2530射頻模塊為終端采集設備的核心芯片,通過布置光照、土壤濕度、空氣溫濕度等傳感器搭建農(nóng)業(yè)大棚氣象觀測站;基于Z-Stack協(xié)議棧完成短距離無線通信,并建立相應的數(shù)據(jù)傳輸規(guī)范;基于MQTT對采集數(shù)據(jù)進行信息推送和拉取。該系統(tǒng)的軟硬件開發(fā)保證了系統(tǒng)實用性高、成本低以及研發(fā)周期短等特點。實際運行結果表明,該農(nóng)業(yè)氣象環(huán)境監(jiān)測系統(tǒng)技術先進、設計靈活、成本低、布置簡便、性價比高,能夠有效地完成對農(nóng)業(yè)大棚氣象數(shù)據(jù)的實時監(jiān)測,也可以為其他農(nóng)業(yè)系統(tǒng)提供氣象監(jiān)測依據(jù)。
中圖分類號: TN925;TP27
文獻標識碼: A
DOI:10.16157/j.issn.0258-7998.183033
中文引用格式: 崔麗珍,徐錦濤,丁福星,等. 基于物聯(lián)網(wǎng)的農(nóng)業(yè)大棚氣象數(shù)據(jù)監(jiān)測系統(tǒng)設計[J].電子技術應用,2018,44(12):73-76,80.
英文引用格式: Cui Lizhen,Xu Jintao,Ding Fuxing,et al. Design of meteorological data monitoring system for agricultural greenhouse based on Internet of Things[J]. Application of Electronic Technique,2018,44(12):73-76,80.
Design of meteorological data monitoring system for agricultural greenhouse based on Internet of Things
Cui Lizhen,Xu Jintao,Ding Fuxing,Shi Mingquan,Hu Haidong
School of Information Engineering,Inner Mongolia University of Science & Technology,Baotou 014010,China
Abstract: Agricultural greenhouse cultivation technology is of great significance to modern agricultural production. In order to solve the problem of on-line collection and monitoring of environmental information in agricultural greenhouses, a meteorological environmental data monitoring system for agricultural greenhouses based on Internet of Things was designed. The design used CC2530 RF module as the core chip of the terminal acquisition device. Agricultural greenhouse meteorological observation station was set up by arranging sensors such as light, soil moisture, air temperature and humidity. Short-range wireless communication was developed and corresponding specifications was established based on Z-Stack protocol stack. Collected data was based on MQTT to do push and pull of information. The system′s practicability, low cost and short development cycle was ensured by the software and hardware development of the system.After the actual use of agricultural greenhouses, advanced technology, flexible design, low cost, simple layout and high cost performance were owned by the system designed in this paper, which can effectively complete the on-line monitoring of meteorological data in agricultural greenhouses as well as provide meteorological monitoring basis for other agricultural systems.
Key words : agricultural greenhouses;meteorological data monitoring;MQTT;ZigBee;Internet of Things(IoT)

0 引言

    近年來,內(nèi)蒙古自治區(qū)農(nóng)業(yè)和農(nóng)村經(jīng)濟取得了快速的發(fā)展。然而,水資源匱乏、土地鹽堿重、氣候條件惡劣易變等自然條件下,對自治區(qū)大棚農(nóng)業(yè)及反季節(jié)產(chǎn)品的種植提出了更高的要求。大棚內(nèi)空氣溫濕度、土壤濕度及光照強度都會對農(nóng)作物生長和生產(chǎn)產(chǎn)生很大影響,需要在適宜的綜合環(huán)境因素下,才能實現(xiàn)最大化的農(nóng)作物產(chǎn)值。因此,大棚內(nèi)環(huán)境數(shù)據(jù)變化的實時采集監(jiān)視尤為重要,以便及時地做出相應的應變措施,讓農(nóng)作物在適宜的環(huán)境中生長和生產(chǎn)。傳統(tǒng)農(nóng)業(yè)氣象環(huán)境監(jiān)測方式主要是人工依據(jù)生產(chǎn)經(jīng)驗使用測量工具實地獲取數(shù)據(jù),或使用傳統(tǒng)的有線通信傳輸方式進行相關測量。人工經(jīng)驗性監(jiān)測方式存在時效性低、工作量大、生產(chǎn)成本高、隨機取點誤差大等問題;而有線傳輸方式有很多的不足之處,如功耗較高、布線成本大、適應性差、可擴展性不強,且增加新的種植面積需要再次布線施工。因此,為滿足溫室大棚氣象環(huán)境數(shù)據(jù)采集要求,設計了基于物聯(lián)網(wǎng)的溫室大棚環(huán)境實時監(jiān)測系統(tǒng),主要監(jiān)測大棚內(nèi)空氣溫濕度、土壤濕度及光照強度等氣象環(huán)境信息。本系統(tǒng)氣象數(shù)據(jù)的傳輸是利用開發(fā)成本低、組網(wǎng)性能優(yōu)良的ZigBee通信協(xié)議,其通信技術特點主要是:高可靠性、低成本、時延短、高安全性、低傳輸速率等。然后通過MQTT協(xié)議將網(wǎng)關上接收到的數(shù)據(jù)與手機客戶端、PC端鏈接起來,實現(xiàn)數(shù)據(jù)到上位機的傳輸。將ZigBee技術、MQTT技術及傳感技術相結合,構成了系統(tǒng)的整體技術框架,能夠低成本、高可靠性地實現(xiàn)對大棚氣象環(huán)境數(shù)據(jù)的采集和傳輸。

1 系統(tǒng)體系結構設計

    系統(tǒng)的實現(xiàn)主要由CC2530采集終端、網(wǎng)關(ZigBee協(xié)調(diào)器)、NodeMCU平臺開發(fā)等部分組成[1]。其中,基于CC2530的環(huán)境采集終端通過空氣溫濕度、土壤濕度、數(shù)字光照等采集模塊獲取大棚的溫度、濕度、光照等數(shù)據(jù),通過ZigBee網(wǎng)絡發(fā)送給物聯(lián)網(wǎng)(Internet of Things,IoT)網(wǎng)關,網(wǎng)關將接收到的數(shù)據(jù)根據(jù)地址封包,通過串口發(fā)送給網(wǎng)關的NodeMCU模塊。氣象環(huán)境數(shù)據(jù)通過MQTT進行數(shù)據(jù)幀的發(fā)送(發(fā)布)和接收(訂閱),保存在數(shù)據(jù)庫中并基于Web開發(fā)在PC、智能手機等設備中進行顯示。系統(tǒng)體系結構設計如圖1所示。

ck7-t1.gif

1.1 基于CC2530的環(huán)境采集終端設計

    終端采集部分主要實現(xiàn)對大棚氣象環(huán)境數(shù)據(jù)采集,以及通過ZigBee協(xié)議將數(shù)據(jù)上傳到IoT網(wǎng)關。在本設計中采用CC2530射頻模塊做采集終端硬件的核心芯片,該芯片是TI公司推出的支持ZigBee協(xié)議的單片機;在軟件方面相對應的協(xié)議棧為Z-Stack。CC2530微控制器內(nèi)部使用業(yè)界標準的增強型8051內(nèi)核,采用QFN40封裝,有40個引腳。其中,有21個數(shù)字I/O端口,均可通過編程進行配置,同時集成了UART和A/D等外設。采用內(nèi)置增強型PCB天線,通信距離可以滿足大棚環(huán)境采集終端節(jié)點布置坐標[2]。

    采集設備核心芯片CC2530的外圍電路設計主要分為射頻板模塊、電源模塊、外設I/O口模塊以及程序下載模塊等。射頻板模塊采用支持IEEE802.15.4 2.4 GHz物理層協(xié)議,可搭載ZigBee協(xié)議棧(Z-Stack),支持用戶二次開發(fā);發(fā)送功率在可編程范圍內(nèi)輸出功率最高達4.5 dBm;射頻工作頻率在2.4 GHz~2.405 GHz。電源模塊設計了兩種供電方式,一種采用兩節(jié)五號電池進行供電2.7~3.3 V,另一種采用USB供電即外接電源供電,可根據(jù)大棚內(nèi)不同的電力設施選擇合適的供電方式。外接I/O口模塊為保證硬件安全性及使用壽命,在確定各個傳感器功能引腳配置端口后,對外設I/O口進行封裝處理。程序下載模塊采用專用仿真器用于下載程序和在線仿真調(diào)試,硬件部分設計有CC Debugger仿真器接口。

    設計中光照強度測量采用BH1750FVI傳感器,是一種用于兩線式串行總線接口的16位數(shù)字輸出型環(huán)境光強度傳感器集成電路,利用它的高分辨率可以在1 lx~65 535 lx范圍內(nèi)測量光強度變化,并且能夠滿足直接輸出精度較高的數(shù)字信號??諝鉁貪穸戎禍y量采用DHT11,是一種具有已校準數(shù)字信號輸出的溫濕度復合傳感器,專用的數(shù)字模塊技術和溫濕度傳感技術保證了其具備很好的可靠性與長期穩(wěn)定性;其內(nèi)部包含一個電阻時式感濕元件和一個NTC測溫元件,并和一個高性能8位單片機相連接,使得DHT11具備成本低、長期穩(wěn)定、相對濕度和溫度測量及響應迅速、抗干擾能力強、較長的信號傳輸距離、數(shù)字信號輸出、校準精確等顯著特點。土壤濕度值測量采用4線制土壤濕度傳感器模塊,其表面采用鍍鎳處理,具有加寬的感應面積,可以提高導電性能,防止發(fā)生接觸土壤容易生銹的問題,進而延長使用壽命;并且可以主動調(diào)整測量土壤濕度的范圍,通過電位器調(diào)節(jié)控制相應閾值,即濕度低于預設值時D0輸出高電平,高于預設值時D0輸出低電平,比較器采用LM393芯片,工作穩(wěn)定[3]。

1.2 網(wǎng)關硬件設計

    網(wǎng)關(ZigBee協(xié)調(diào)器)屬于接入設備,橋接了無線傳感器網(wǎng)絡和公共通信網(wǎng)絡,并提供了多種通信途徑,確保終端節(jié)點采集的數(shù)據(jù)傳輸?shù)接脩羝脚_上。它主要功能是通過構建的ZigBee網(wǎng)絡接收來自終端設備采集的氣象環(huán)境數(shù)據(jù),并根據(jù)設備類型分配地址進行封包處理,然后通過串口通信發(fā)送給IoT網(wǎng)關的NodeMCU模塊。

    網(wǎng)關設備的設計是基于CC2530和NodeMCU之間的串口通信以及WiFi傳輸數(shù)據(jù)功能。硬件部分主要包括CC2530射頻板模塊、電源模塊、程序下載模塊、NodeMCU模塊。CC2530芯片與NodeMCU芯片在電路設計中通過排針連接,如圖2所示。利用UART與CC2530通信引腳連接,接收終端環(huán)境數(shù)據(jù)采集設備上傳的數(shù)據(jù)。然后通過對基于ESP8266芯片的NodeMCU的開發(fā),利用MQTT將數(shù)據(jù)發(fā)布到服務器上。網(wǎng)關設計是ZigBee技術與NodeMCU技術的結合,在保證數(shù)據(jù)傳輸效率和安全的情況下,降低了開發(fā)成本,非常適合在農(nóng)業(yè)大棚等經(jīng)濟產(chǎn)業(yè)中使用。

ck7-t2.gif

2 系統(tǒng)軟件設計

    系統(tǒng)軟件設計主要包括終端環(huán)境數(shù)據(jù)采集設備驅(qū)動程序、網(wǎng)關驅(qū)動程序、Arduino開發(fā)、MQTT應用開發(fā)和大棚環(huán)境監(jiān)測物聯(lián)網(wǎng)平臺等部分。

2.1 終端環(huán)境數(shù)據(jù)采集設備軟件設計

    終端環(huán)境數(shù)據(jù)采集設備主要任務是加入網(wǎng)關建立ZigBee網(wǎng)絡實現(xiàn)組網(wǎng)通信,并周期性輪詢訪問傳感器讀取函數(shù),對空氣溫濕度、土壤濕度、光照強度的數(shù)據(jù)進行采集和上傳?;赯-Stack協(xié)議棧的軟件設計流程如下:

    (1)根據(jù)系統(tǒng)設計需求設定傳感器采集特定的初始化設備ID號、消息發(fā)送ID號、任務ID號和串口分配等;

    (2)協(xié)議棧中選擇數(shù)據(jù)發(fā)送模式為afAdder 16 bit,即16位短地址的點對點發(fā)送模式;

    (3)在協(xié)議棧應用層目錄樹下添加傳感器驅(qū)動程序的C文件;

    (4)在協(xié)議棧消息發(fā)送函數(shù)中寫入傳感器數(shù)據(jù)采集讀取函數(shù)。

    終端設備通電后首先對協(xié)議棧配置進行初始化處理,包括初始化設備ID號、消息發(fā)送ID號、任務ID號和串口分配等,然后選擇通信區(qū)域內(nèi)的網(wǎng)關節(jié)點完成組網(wǎng)。終端節(jié)點會向網(wǎng)關發(fā)送“心跳包”檢驗是否通信成功以及傳感器是否處于在線狀態(tài),定時發(fā)送結束后終端節(jié)點會進入休眠狀態(tài)采用“TIMER sleep”模式(即系統(tǒng)需要一個預定的延時后被喚醒執(zhí)行下一個任務)。然后就可以驅(qū)動傳感器讀取數(shù)據(jù)函數(shù)采集環(huán)境實時數(shù)據(jù),并且對不同氣象環(huán)境數(shù)據(jù)采集時間也有所區(qū)別,其中空氣溫濕度、土壤濕度、光照強度采集節(jié)點分別每隔5 min、20 min、10 min時間結束休眠完成數(shù)據(jù)采集,封裝后上傳到網(wǎng)關。每當數(shù)據(jù)上傳后,傳感器會繼續(xù)維持休眠的狀態(tài)等待下一次的采集工作,這種方式能夠很大地降低功耗,提高電池的使用壽命。終端環(huán)境采集設備功能實現(xiàn)基本流程如圖3所示[4]。

ck7-t3.gif

2.2 網(wǎng)關軟件設計

    網(wǎng)關在系統(tǒng)的整體實現(xiàn)中屬于中樞的位置,主要是允許終端采集設備入網(wǎng)、接收氣象環(huán)境數(shù)據(jù)以及通過串口通信將數(shù)據(jù)傳輸給NodeMCU模塊。本系統(tǒng)網(wǎng)關采用CC2530射頻模塊和NodeMCU模塊串口通信的設計方案,利用UART和CC2530通信以及NodeMCU的WiFi功能實現(xiàn)數(shù)據(jù)上傳到以太網(wǎng)中。因此,在軟件設計部分主要有如下幾點:

    (1)設置終端節(jié)點入網(wǎng)白名單;

    (2)接收到終端節(jié)點上傳的心跳包,用心跳次數(shù)判斷終端設備處于在線或離線狀態(tài);

    (3)在終端節(jié)點的數(shù)據(jù)增加幀頭幀尾。

    在網(wǎng)關建立白名單,將系統(tǒng)安全需求放在設備上,終端設備請求入網(wǎng)前需要在白名單中先注冊設備MAC地址,目的是出于系統(tǒng)安全性考慮,防止未知設備與網(wǎng)關建立通信。通過上傳的心跳次數(shù),在網(wǎng)關部分判定終端設備是否處于在線狀態(tài),離線則建立重連機制,確保所有終端設備都已正常工作。網(wǎng)關收到終端設備上傳的數(shù)據(jù)后首先對數(shù)據(jù)增加幀頭(0xFA 0xFA)、幀尾(0xAF 0xAF),以便判斷網(wǎng)關接收的數(shù)據(jù)是否為真,確保數(shù)據(jù)的準確性。網(wǎng)關和終端設備間的數(shù)據(jù)格式見表1,網(wǎng)關功能實現(xiàn)流程圖如圖4所示[5]。

ck7-b1.gif

ck7-t4.gif

2.3 NodeMCU與MQTT應用開發(fā)

    NodeMCU在Arduino開發(fā)環(huán)境下實現(xiàn)連接WiFi功能,與ZigBee技術相結合構建IoT網(wǎng)關,接收到來自串口上傳的數(shù)據(jù),通過MQTT進行數(shù)據(jù)的發(fā)送(發(fā)布)和接收(訂閱)等操作[6-7]。NodeMCU功能實現(xiàn):

    (1)NodeMCU與CC2530串口通信接收并緩存終端數(shù)據(jù);

    (2)NodeMCU模塊中的WiFi功能加入無線網(wǎng)絡中,并利用MQTT協(xié)議與數(shù)據(jù)庫傳輸數(shù)據(jù);

    (3)MQTT發(fā)布主題,將數(shù)據(jù)發(fā)布到所有已訂閱該主題的智能手機、電腦的平臺,數(shù)據(jù)傳輸系統(tǒng)結構如圖5所示。

ck7-t5.gif

3 實驗測試及結果

    本研究在包頭市天佑生態(tài)科技園區(qū)(其地域面積廣,大棚數(shù)量多,對通信信號影響小)進行數(shù)據(jù)采集接以及組網(wǎng)試驗,采集到土壤濕度、空氣溫濕度、光照強度等信息。目前選擇了7個獨立的農(nóng)業(yè)大棚進行節(jié)點布置,為保證測量數(shù)據(jù)傳輸效率,終端采集節(jié)點的距離按照要求進行放置,并進行了兩個重要方面的測試:

    (1)節(jié)點功耗測試

    對于節(jié)點功耗的測量采用較為精確的電阻電壓方法[3]。為保證測量到CC2530射頻模塊和電源模塊接通電源后的功耗,在射頻模塊的電源輸出接口處串接1個10 Ω的電阻,用萬用變測量實際電壓值U,計算得實際電流I=U/10[2]。將節(jié)點分為休眠(休眠時工作電流在微安級,所以可以忽略不記)、接收和發(fā)射等3種狀態(tài),分別測得接收和發(fā)射狀態(tài)下所需的瞬時電流加上傳感器所需的工作電流為112 mA和126 mA,為了減少誤差,總電流取為130 mA。依據(jù)本系統(tǒng)終端節(jié)點對氣象環(huán)境數(shù)據(jù)的采集是定時采集(測試電源功耗期間,設定3種傳感器同時采集數(shù)據(jù)),設定系統(tǒng)每小時執(zhí)行接收命令和發(fā)送數(shù)據(jù)的動作時間為50 s,節(jié)點功耗為1.80 mA·h/d,則使用總電量為3 000 mA·h,兩節(jié)五號3.7 V電池可以滿足該系統(tǒng)的節(jié)點連續(xù)工作達1 667 h,滿足了系統(tǒng)低功耗要求。

    (2)網(wǎng)絡的丟包率測試

    依據(jù)3種傳感器節(jié)點采集的環(huán)境特性以及監(jiān)測需求,設定了土壤濕度采集周期為20 min、空氣溫濕度采集周期為5 min、光照強度采集周期為10 min。在協(xié)議棧中采用終端采集節(jié)點休眠喚醒機制,連續(xù)采集環(huán)境數(shù)據(jù)。并由終端采集節(jié)點上傳數(shù)據(jù)到協(xié)調(diào)器節(jié)點(網(wǎng)關),利用仿真下載器USB Debug Adapter和TI Packet Sniffer捕獲數(shù)據(jù)包[3],結果如表2所示。由表2分析并結合系統(tǒng)部署環(huán)境可知,丟包率呈增長趨勢的主要原因是,終端采集節(jié)點與協(xié)調(diào)器距離以及存在的障礙物干擾,尤其是在距離超過100 m后丟包率明顯增加[5]。但在農(nóng)業(yè)大棚實際應用中終端采集節(jié)點向網(wǎng)關傳送數(shù)據(jù)的距離在100 m以下范圍,整個網(wǎng)絡平均丟包率降低在2.6%以下,已經(jīng)可以滿足對大棚內(nèi)空氣溫濕度、土壤濕度、光照強度數(shù)據(jù)監(jiān)測要求。

ck7-b2.gif

4 結論

    基于物聯(lián)網(wǎng)的溫室大棚環(huán)境監(jiān)測系統(tǒng)的研究,通過ZigBee以及與NodeMCU平臺的技術融合,搭建了氣象環(huán)境監(jiān)測系統(tǒng),實現(xiàn)了用戶遠程對農(nóng)業(yè)大棚氣象環(huán)境信息的實時采集,用戶可以十分便捷地了解信息,做出相應的解決措施,來減少外界環(huán)境對農(nóng)作物的不利影響。系統(tǒng)具有良好通信效率,運行安全穩(wěn)定,經(jīng)濟實惠(成本平均50元每套),非常適用于發(fā)展迅速的農(nóng)業(yè)大棚行業(yè)。本系統(tǒng)應用詮釋了物聯(lián)網(wǎng)技術的優(yōu)越性,在一定程度上解放了生產(chǎn)力,提高了農(nóng)業(yè)大棚農(nóng)產(chǎn)品生產(chǎn)質(zhì)量,對其他農(nóng)業(yè)生產(chǎn)系統(tǒng)的氣象監(jiān)測具有良好的借鑒意義。

參考文獻

[1] 方中純,李海榮.基于Arduino和ZigBee的物聯(lián)網(wǎng)智能網(wǎng)關設計與實現(xiàn)[J].山東工業(yè)技術,2018(2):101-102.

[2] 謝振偉,馬蓉,趙天圖,等.基于ZigBee無線傳感器網(wǎng)絡的棉田節(jié)水灌溉系統(tǒng)設計[J].江蘇農(nóng)業(yè)科學,2017,45(16):225-228.

[3] 朱凱.基于ZigBee無線技術的農(nóng)田數(shù)據(jù)采集系統(tǒng)設計[D].昆明:昆明理工大學,2017.

[4] 劉媛媛,朱路,黃德昌.基于GPRS與無線傳感器網(wǎng)絡的農(nóng)田環(huán)境監(jiān)測系統(tǒng)設計[J].農(nóng)機化研究,2013,35(7):229-232.

[5] 向乾.基于WSN的溫室大棚信息采集智能化監(jiān)測系統(tǒng)研究[J].農(nóng)業(yè)科技與裝備,2017(8):27-31,34.

[6] 徐振華.基于ZigBee與Wi-Fi融合的智能家居系統(tǒng)研究與設計[D].太原:中北大學,2018.

[7] 崔陽,張維華,白云峰.一種基于Arduino的智能家居控制系統(tǒng)[J].電子技術應用,2014,40(4):123-125.



作者信息:

崔麗珍,徐錦濤,丁福星,史明泉,胡海東

(內(nèi)蒙古科技大學 信息工程學院,內(nèi)蒙古 包頭014010)

此內(nèi)容為AET網(wǎng)站原創(chuàng),未經(jīng)授權禁止轉(zhuǎn)載。