姜士璇,李淮江,吳瑞瑞,李東
(1.淮北師范大學物理與電子信息學院,安徽淮北,235000;2.安徽大學物質科學與信息技術研究院,安徽合肥,230000)
隨著我國經濟和城市化進程的高速發展,城市人口流動速度加快,耕地面積減少,導致糧食短缺和土地資源緊張。與傳統農業相比,垂直農業能源消耗低,產量高[1];減小農作物生產過程中的自然環境因素的影響,系統具有可控性、可預測性和可復制性。
系統以STM32[2-3]單片機為主控制器,利用物聯網的感知層、傳輸層、平臺層和應用層結構設計[4]。感知層采集環境信息;傳輸層分為ZigBee通訊和NB-IOT通訊,ZigBee通訊是終端將采集的數據通過協調器傳輸至主控制器;NB-IOT通訊是控制器將終端數據打包上傳到云平臺;平臺層應用物聯網開放云平臺,保存和顯示數據、智能調控終端設備;應用層是用戶能夠通過手機應用程序和云平臺網頁訪問數據,并能發送控制指令。
本系統采用模塊化設計,由采集模塊、通信模塊、控制模塊、報警模塊和應用客戶端組成。采集模塊采用多路傳感器采集溫室內的環境信息;通信模塊將傳感器采集的數據傳輸至OneNET云平臺進行存儲和管理,底層設備和云平臺的數據交互利用ZigBee和NB-IOT通訊技術;控制模塊由LED燈、水泵、窗簾、加濕器和通風扇等組成,當傳感器采集數據超出或者低于閾值,控制模塊調節溫室內的環境指數,報警模塊報警。應用客戶端是指Android和PC兩種人機監控界面,用戶可遠程實時監視溫室內的環境信息或發送控制指令遠程調節溫室內的環境參數。系統總體結構如圖1所示。

圖1 系統總體結構圖
主控制器最小系統由微控制器、復位電路、供電電路、2個外部晶振構成,微控制器采用高性能低功耗的STM32F103嵌入式微控制器,芯片內部集成了一顆基于FPU的ARM的32位Cortex-M4內核,豐富的外設資源,運行速度較快。
采集空氣溫度和濕度的復合型傳感器DHT11[5],功耗低體積小,響應速度快且抗干擾能力強。DHT11的DATA引腳與ZigBee終端節點1的P0.7端口相連,DHT11空氣溫濕度采集電路如圖2所示。

圖2 DHT11空氣溫濕度采集電路
土壤濕度采集采用濕度計檢測模塊,包含LM393比較器和電阻電容。模塊具有雙輸出方式,系統輸出方式選擇模擬量輸出,精確。土壤濕度傳感器模塊的AO引腳與ZigBee終端節點1的P0.6端口相連。土壤濕度采集電路如圖3所示。

圖3 土壤濕度采集電路
光照強度采集采用光敏電阻傳感器,包含光敏電阻,LM393比較器,指示燈和電阻電容。輸出數字信號,且驅動能力強。光敏電阻傳感器模塊的AO引腳與ZigBee終端節點2的P0.6端口相連,光照強度采集電路如圖4表示。

圖4 光照強度采集電路
采用MG811[6]模塊采集CO2濃度,受外界環境影響較小,靈敏度高。DO引腳是數字量輸出,當溫室內的CO2濃度高于1000 ppm,輸出高電平,否則,輸出低電平。MG811的DO引腳與ZigBee終端節點2的P0.4端口相連,CO2濃度采集電路如圖5所示。

圖5 CO2濃度采集電路
通信模塊包括ZigBee通訊和NB-IOT通訊。ZigBee[7]通訊選用CC2530[8]為核心芯片,具有8051處理器內核,自組建無線網絡和數據傳輸的功能。系統采用無線網絡拓撲結構為星型網絡,拓撲結構如圖6所示。多路傳感器與ZigBee構成終端節點,ZigBee協調器自組網絡并接收終端節點采集的數據,然后通過串口通訊將數據傳輸至控制器。ZigBee數據流如圖7所示。

圖6 ZigBee星型拓撲圖

圖7 ZigBee數據流圖
NB-IOT[9-10]通信模塊的核心板是BC20,支持COAP、UDP透傳模式,且兼容GPRS/4G模塊硬件封裝。NB-IOT模組能夠實現微控制器和云平臺進行數據交互的功能。控制器通過串口通訊將數據打包發送給NB-IOT模組,再通過IOT平臺和核心網與OneNET云平臺進行數據交互。NB-IOT模塊數據流如圖8所示。

圖8 NB-IOT數據流圖
系統軟件設計通過采集數據、控制終端、ZigBee通訊以及NB-IOT通訊完成組建終端無線網絡和數據收發功能。控制器接收數據后先判斷數據類型,即來自協調器節點或云平臺后實時處理數據,并判斷是否超過閾值,來判斷是否報警且在OLED屏顯示。最后將各節點數據打包通過NB-IOT技術上傳到上位機。系統總軟件流程如圖9所示。

圖9 系統總軟件流程圖
傳感器首先初始化,初始化之后采集數據,采集的數據傳輸給ZigBee終端。傳感器數據采集軟件流程如圖10所示。

圖10 數據采集軟件流程圖
ZigBee構建底端無線通信網絡包含終端節點[11]、協調器節點[12]。多路傳感器與終端節點相連,終端節點采集數據并發送至協調器,協調器接收終端節點的數據并將數據通過串口通訊傳輸至控制器。終端節點軟件流程如圖11所示,協調器軟件流程如圖12所示。

圖11 終端節點軟件流程圖

圖12 協調器軟件流程圖
NB-IOT模塊與OneNET云平臺建立設備數據交互,首先要獲取iP地址,然后創建LWM2M[13]通信,接著啟動連接引導程序,啟動成功之后能和OneNET云平臺數據通訊。NB-IOT軟件流程如圖13所示。

圖13 NB-IOT軟件流程圖
系統接入物聯網開放平臺[14]是利用IOT平臺和核心網。云平臺解決了終端設備與上位機相互通信的問題,實現服務器與終端設備的跨網數據交互,方便用戶快速的獲取終端設備的數據。用戶使用OneNET平臺進行實時監控環境數據和智能調控,首先要注冊用戶,利用無線網絡和服務器建立TCP連接,數據傳輸和上傳至OneNet平臺需要遵守通絡通信協議。云平臺設備ID為131658,注冊用戶賬號的登陸網址:http://open.iot.10086.cn/,創建設備的設備號為989QNqTLA9JuhE1S。用戶接入OneNET平臺的過程如圖14所示。

圖14 用戶接入OneNET平臺的過程圖
系統測試環境是實驗室,用亞克力板搭建垂直農業溫室模型(單層),模擬垂直農業溫室的實際環境。系統硬件包括一個DHT11溫濕度傳感器、一個土壤濕度傳感器、一個CO2濃度傳感器、一個光照強度傳感器、1個LED燈、2個通風扇、1個水泵、3個繼電器、1個加濕器和1個步進電機,實物如圖15所示。硬件搭建完成后,將終端設備接入OneNET云平臺。OneNET云平臺界面如圖16所示。

圖15 實物圖

圖16 OneNET平臺界面圖
為了驗證系統實驗數據傳輸的準確性以及穩定性,對基于ZigBee和NB-IOT的智能垂直農業系統進行測試。測試環境為傳感器,協調器,控制器,NB-IOT模組,云服務平臺。空氣溫濕度傳感器DHT11和土壤濕度傳感器與ZigBee模塊相連構成終端節點1,CO2濃度傳感器和光敏電阻與ZigBee模塊相連構成終端節點2。終端節點1采集溫室內的溫濕度和土壤濕度并通過OLED液晶屏1實時顯示,如圖17所示。終端節點2采集溫室內的光照強度和CO2濃度并通過OLED液晶屏2實時顯示,如圖18所示。

圖17 終端節點1測試

圖18 終端節點2測試
協調器通過網絡協議自組建無線傳輸網絡,與終端節點1和終端節點2構建星型網絡結構。協調器接收終端節點1和終端節點2傳輸的數據并通過串口4將數據傳輸至控制器,控制器接收數據并通過NB-IOT模組將數據上傳到云服務平臺。協調器實時顯示數據在OLED液晶屏3,如圖19所示。控制器實時顯示數據在OLED液晶屏4,如圖20所示。

圖19 ZigBee協調器測試

圖20 云服務平臺測試
上圖測試數據表明系統的數據采集、傳輸以及上傳功能均正常并且表明本系統在數據傳輸過程中NB模組和ZigBee模塊傳輸速率較快且準確,極少出現丟包現象,證明了系統的可行性和穩定性。
系統的功能是調節溫室環境,為種植農作物提供適宜的生長環境。溫室環境主要指數為空氣溫濕度、土壤濕度、光照強度和CO2濃度。調節方法是利用傳感器采集的數據通過控制器的響應調節環境指數。控制設備為LED燈、水泵、模擬窗戶、加濕器、通風扇和報警模塊。測試功能如表1所示。通過下表的測試結果表明系統通過控制設備調控溫室環境的功能可行、準確。

表1 測試功能表
本文設計基于ZigBee和NB-IOT的智能垂直農業系統,STM32F103單片機為核心處理器,利用ZigBee和NB-IOT技術構建無線傳輸網絡,并通過核心網和NB-IOT平臺將底端數據上傳至OneNET云平臺。ZigBee和NB-IOT通訊技術為系統優化了數據傳輸速率以及降低功耗。利用OneNET云平臺個性化服務拓展了網頁界面以及手機APP,用戶可以遠程監控系統參數。同時,系統設計時預留傳感器的插口,以便添加攝像頭以及更全面監測環境數據的傳感器,達到系統自身的優化和場景適應能力。