金恩曼 陳培余



摘要:針對大棚種植中溫濕度等環(huán)境參數(shù)實時檢測存在的問題,筆者結合最新的窄帶物聯(lián)網(wǎng)技術,提出了一種新型的智能大棚溫濕度檢測系統(tǒng)。該系統(tǒng)基于STM32微處理器,選用DHT11溫濕度傳感器,選用華為OceanConnect作為物聯(lián)網(wǎng)云平臺,給出了整個系統(tǒng)的軟硬件設計方案。測試表明,該系統(tǒng)運行穩(wěn)定,數(shù)據(jù)可靠,滿足智能大棚溫濕度實時檢測需求。
關鍵詞:智能大棚;溫濕度;NB-IoT;OceanConnect
中圖分類號:TP274 文獻標識碼:A 文章編號:1007-9416(2019)07-0085-03
0 引言
我國是人口大國,又是農(nóng)業(yè)大國,大棚種植在農(nóng)業(yè)生產(chǎn)中占有非常重要的地位。又隨著人們生活水平的提高,對大棚種植農(nóng)產(chǎn)品的品質提出了更高的要求。溫度和濕度是影響大棚種植的關鍵環(huán)境因素,因此對大棚溫濕度的檢測具有非常重要的意義。
最早的大棚溫濕度檢測以人工方式為主,該方式工作量大,效率低,成本高。隨著計算機技術尤其是通信技術的發(fā)展,基于自動化的實時檢測系統(tǒng)成為主流。目前多數(shù)系統(tǒng)采用基于Zigbee組網(wǎng)通信技術的檢測方式,該方式具有低功耗和組網(wǎng)能力強等優(yōu)點,但存在通信距離短,需要大量網(wǎng)關開銷等缺點[1]。當前,隨著窄帶物聯(lián)網(wǎng)技術(NB-IoT)的不斷成熟,芯片成本不斷下降,NB-IoT在智慧農(nóng)業(yè)中的應用成為新的發(fā)展趨勢。NB-IoT具備廣覆蓋、大連接、低功耗和低成本等特點,非常適合點多且分散的室外應用場景[2]-[3]。本文將采用NB-IoT技術、結合傳感器技術、微處理技術和移動互聯(lián)技術,解決智能大棚內溫濕度檢測存在的布線難和不能遠程監(jiān)控等問題。
1 系統(tǒng)架構和功能
本系統(tǒng)是綜合嵌入式軟硬件技術、NB-IoT通信網(wǎng)絡、華為OceanConnect云平臺和移動APP為一體的物聯(lián)網(wǎng)系統(tǒng)。如圖1所示,溫濕度傳感器、STM32主控制器和NB-IoT模塊組成信息采集端,該采集端作為獨立的嵌入式系統(tǒng),分布于大棚內的主要區(qū)域。主控芯片通過單總線協(xié)議采集溫濕度數(shù)據(jù),并通過NB-IoT網(wǎng)絡上傳到華為云平臺。華為云平臺提供基于NB-IoT通信業(yè)務的物聯(lián)網(wǎng)終端設備的快速接入,實現(xiàn)溫濕度信息的可視化展示和管理。云平臺向信息采集端提供基于CoAP協(xié)議通信的南向接口,向應用服務器提供基于HTTP協(xié)議通信的北向接口。
2 系統(tǒng)硬件組成
系統(tǒng)硬件組成如圖2所示,主要由溫濕度傳感器,最小系統(tǒng)和NB-IoT模塊及其外圍電路等3大部分組成。
2.1 溫度傳感器
溫濕度傳感器采用DHT11芯片。該芯片是一款含有已校準數(shù)字信號輸出的溫濕度復合傳感器。具有成本低、響應快、抗干擾強、精確校準等優(yōu)點。該芯片具有4個引腳,分別為VDD、DATA、NC和GND。DHT11與微處理的硬件連線如圖3所示,其中VDD(1 Pin)為芯片供電引腳,供電電壓3V-5.5V,DATA引腳(2 Pin)為串行數(shù)據(jù)線,與主控器的GPIO口連接,實現(xiàn)溫濕度數(shù)據(jù)的采集,NC引腳懸空,GND(4Pin)引腳接地。
2.2 最小系統(tǒng)
最小系統(tǒng)中包括主控制器、電源、晶振、復位電路和下載電路。主控制器采用STM32L431RCT6芯片,該處理器基于ARM-M4內核,32位位寬,運算速度快,處理能力強,并支持睡眠等低功耗工作模式,內部集成豐富的接口資源,是意法半導體公司針對物聯(lián)網(wǎng)應用場景推出的一款高性能處理器[4]。晶振電路可以使用內部晶振和外部晶振,只需通過軟件配置即可,本系統(tǒng)中,選用8MHz的外部晶振;復位電路用來使系統(tǒng)恢復到出事狀態(tài)的電路,本系統(tǒng)設計中,復位引腳連接彈性按鍵接地,并在按鍵上并聯(lián)一個電容;下載接口使用SWD 四線接口。
2.3 NB-IoT模塊及外圍電路
本系統(tǒng)中,NB-IoT模塊采用Quectel的BC95模組。該通信模組工作在850MHz頻段,支持IPv4/IPv6/UDP/CoAP通信協(xié)議,發(fā)射功率為23dB±2dB,并支持省電模式(PSM)下。主控制器以AT指令控制BC95模組,通過串口與NB-IoT模組通信。當處理器采集到溫濕度數(shù)據(jù)后,由BC95模組通過射頻天線發(fā)送到基站,經(jīng)運營商核心網(wǎng)絡到達華為云平臺。
NB-IoT模塊外圍電路如圖2所示,主要包括供電電路、通信接口電路、SIM卡電路、濾波天線電路。供電電源采用板載3.3V供電,電源端連接電容并接地;通信接口主要為串口,實現(xiàn)模組和MCU之間通信。由于NB-IoT使用蜂窩網(wǎng)絡,因此與手機通信一樣,需要有SIM卡進行身份的識別和鑒權。
3 系統(tǒng)軟件設計
系統(tǒng)軟件設計主要分為信息采集端軟件設計,云平臺開發(fā)和移動端App開發(fā)三個部分。
3.1 信息采集端軟件設計
信息采集端軟件設計實現(xiàn)功能包括最小系統(tǒng)的正常運行,溫濕度數(shù)據(jù)的采集和NB-IoT模組的入網(wǎng)。其中最小系統(tǒng)的軟件開發(fā)采用STM32CubeMX工具。該工具是意法半導體公司針對STM32系列MCU推出的圖形化開發(fā)工具,通過圖形化的配置自動生成開發(fā)初期芯片相關的初始化代碼。本系統(tǒng)中,利用STM32CubeMX完成系統(tǒng)時鐘、定時器、串口初始化等功能配置并生成基本開發(fā)環(huán)境。采集端軟件開發(fā)流程如圖4所示,微處理器通過下發(fā)AT指令完成NB-IoT模組入網(wǎng),開啟定時功能,周期性采集溫濕度數(shù)據(jù)并上報。
(1)溫濕度數(shù)據(jù)采集。本系統(tǒng)中,主控制器通過GPIO端口引腳連接DHT11的DATA管腳,實現(xiàn)單總線的數(shù)據(jù)采集。該總線即作為MCU的輸出控制總線,又作為DHT11的數(shù)據(jù)輸入總線。用戶主機(MCU)發(fā)送一次開始信號后, DHT11從低功耗模式轉換到高速模式,待主機開始信號結束后,DHT11發(fā)送響應信號,送出40bit的數(shù)據(jù),并觸發(fā)一次信號采集。其中位數(shù)據(jù)“0”的格式為:50ms的低電平和26-28ms的高電平,位數(shù)據(jù)“1”的格式為:50ms的低電平加70ms的高電平??刂艱HT11芯片獲取溫濕度數(shù)據(jù)的時序參考該芯片使用手冊。
溫濕度采集測試結果如圖5所示。
(2)NB-IoT入網(wǎng)。由于NB-IoT網(wǎng)絡馱載在移動蜂窩上的,因此跟手機通信一樣,在進行數(shù)據(jù)傳輸之前要向基站注冊入網(wǎng)。控制器采集到溫濕度數(shù)據(jù)后,按照用戶自定義協(xié)議編碼,通過串口發(fā)送至NB-IoT模組,模組將數(shù)據(jù)封裝成CoAP協(xié)議包后發(fā)送至基站,最后經(jīng)核心網(wǎng)轉發(fā)至IoT平臺處理。在整個通信過程中,MCU對模組控制以及數(shù)據(jù)的發(fā)送接收都是基于AT命令實現(xiàn)的[5]。如圖6AT命令測試結果所示,為本系統(tǒng)中關鍵AT指令及其返回信息:1)指令“AT+CGSN=1”:查詢模塊序列號。本系統(tǒng)中BC95模塊序列號為867725030245702,該序列號將在云平臺部署時被使用。2)指令“AT+CSQ”:查詢當前環(huán)境信號強度,范圍為0-31。本系統(tǒng)測試環(huán)境信號強度為17,信號一般。3)指令“AT+CEREG?”:查詢網(wǎng)絡注冊狀態(tài),即查詢網(wǎng)絡注冊是否成功。本系統(tǒng)中,執(zhí)行該命令后返回結果第二個參數(shù)為“1”,表示注冊成功;否則為“0”,表示尚未注冊成功。4)指令“AT+NCDP=49.4.85.232,5683”:配置CDP服務器(云平臺)的IP地址及端口,本系統(tǒng)中,華為OceanConnect云平臺地址為49.4.85.232,端口號為5683。5)指令“AT+NMGS=3,010203 ”:向CDP服務器上報數(shù)據(jù)。第一個參數(shù)為數(shù)據(jù)長度,第二個參數(shù)為十六進制數(shù)據(jù)。
3.2 云平臺部署
物聯(lián)網(wǎng)云平臺提供設備接入、設備管理和數(shù)據(jù)分析存儲功能,并向各種應用提供接口服務。本系統(tǒng)采用華為的OceanConnect云平臺做應用開發(fā)。該平臺通過開放API和IoT Agent實現(xiàn)與上下游產(chǎn)品能力的無縫聯(lián)接,從而給客戶提供端到端的高價值行業(yè)應用。OceanConnect云平臺開發(fā)工作主要包括產(chǎn)品創(chuàng)建、Profile定義、編解碼插件開發(fā)、真實設備部署。
(1)產(chǎn)品創(chuàng)建:設置產(chǎn)品信息,包括產(chǎn)品名稱、產(chǎn)品型號、廠商ID、設備類型以及應用層協(xié)議類型。
(2)Profile定義:即設備的抽象模型,用于描述設備具備的能力和特性。OceanConnect提供多種設備的Profile模板,用戶可直接在此基礎上修改,或者也可以自定義產(chǎn)品模板。本系統(tǒng)中,根據(jù)溫濕度傳感器的屬性,創(chuàng)建一個Humiture的服務,在該服務下依次創(chuàng)建Temperature和Humidity屬性,數(shù)據(jù)類型為decimal。
(3)編解碼插件開發(fā):由于NB-IoT設備上報數(shù)據(jù)一般采用二進制格式,而物聯(lián)網(wǎng)云平臺采用Json格式,因此,需要進行編解碼插件開發(fā),實現(xiàn)二進制數(shù)據(jù)和Json格式數(shù)據(jù)的轉換,從而實現(xiàn)NB-IoT終端和OceanConnect通信。
(4)部署真實設備:設置設備名稱和設備標識。設備標識為必須唯一,一般為IMEI或MAC號。本系統(tǒng)中使用BC95模塊序列號867725030245702。
云平臺測試結果如圖7所示,當前溫度為28.0℃,濕度為95.0RH%。
3.3 移動端App設計
為實現(xiàn)溫濕度數(shù)據(jù)遠程檢測功能,本文基于Android Studio工具開發(fā)了一款溫濕度檢測APP。該App登錄界面為云平臺的接入信息,包括云平臺IP地址和端口號,應用ID及密碼,顯示界面包括溫度值和濕度值,移動終端App及其測試結果如圖8所示。
4 結語
本文結合最新的窄帶物聯(lián)網(wǎng)技術,設計了一種溫濕度檢測系統(tǒng)。對系統(tǒng)總體方案、軟硬件設計進行了詳細闡述。測試結果表明,該系統(tǒng)可以實現(xiàn)溫濕度數(shù)據(jù)遠程檢測功能。該系統(tǒng)具有設備節(jié)點管理方便、功耗小、成本低、數(shù)據(jù)可靠性高等優(yōu)點,適用于智能大棚等智慧農(nóng)業(yè)應用場景。
參考文獻
[1] 周海鴻,周嘉奉.基于ZigBee技術的溫濕度監(jiān)測系統(tǒng)[J].國外電子測量技術,2015,34(7):75-79.
[2] 董勁文.窄帶物聯(lián)網(wǎng)(NB-IOT)的技術分析及其應用前景[J].通訊世界,2018(7):1-2.
[3] 張良德.NB-IoT的及應用研究[J].通信設計與應用,2017(1):115-116.
[4] 曹小娜.ST STM32L4:整合Cortex_M4內核超低功耗高性能MCU[J].世界電子元器件,2015(4):42-43.
[5] 蔣震.基于NB-IoT的溫濕度采集系統(tǒng)設計與實現(xiàn)[J].信息化研究,2018,44(6):63-68.