王偉峰,韓 非,彭 超,晏 亮,陳一凡
(1.牧星智能工業科(上海)有限公司,上海200090;2.中國人民解放軍95841部隊,酒泉735018;3.上海無線電設備研究所,上海201109)
目前,我國農業在新技術的支持與推動下不斷取得突破性進展,數字農業作為現代農業中的重要組成部分起到了重要的推動作用,數字農業的技術核心是信息化,采集與農業生產相關的各類數據信息再加以提取、計算與分析,為數字農業技術中的關鍵環節[1],近年來,物聯網技術不斷創新與發展,為數字農業的發展提供了新的契機。
窄帶物聯網NB-IoT技術,與WiFi,ZigBee等傳統的物聯網技術相比,具有覆蓋范圍廣,功耗低,以及海量連接的特點[2],在此提出了以NB-IoT為核心的土壤墑情遠程監測系統,其物聯網終端設備是以STM32F103為主控芯片的采集傳輸控制器,采用消息隊列遙測傳輸MQTT(message queuing telemetry transport)協議將采集的土壤墑情信息遠程發送到阿里云平臺及數據庫中,供前端土壤數據監測網站進行顯示、計算及分析,目前該系統方案已經完成工程驗證并投入使用。
土壤墑情監測系統總體框架如圖1所示,系統按照物聯網分層架構進行設計,包括感知層、傳輸層、網絡層、應用層。

圖1 監測系統總體架構Fig.1 Overall architecture of monitoring system
第1 層感知層,土壤傳感器采集土壤溫度、含水量以及電導率等3種土壤墑情信息,并將采集數據發送到采集傳輸控制器,每個采集傳輸控制器通過總線形式連接多個土壤傳感器進行通信。
第2 層傳輸層,采集傳輸控制器內部集成NB-IoT通信模塊;采集傳輸控制器接收到各土壤傳感器發送的墑情數據報文后,進行解析、重新組幀并通過NB-IoT的通信方式將數據遠程發送到阿里云平臺。
第3 層網絡層。NB 電信運營商建立的通信基站與網關將各采集控制器的數據轉發到阿里云平臺后,再存儲到云端的SQL 數據庫中,實現數據管理。
第4 層應用層,為分析土壤墑情建立土壤墑情監測平臺網站,平臺網站從云端SQL 數據庫中讀取采集到的土壤墑情數據,進行實時顯示和歷史數據分析。
土壤墑情監測系統中,采集傳輸控制器主要負責采集各傳感器測量信息并實現遠程通信,網站平臺及數據庫主要部署在網絡云端,因此系統的硬件設計主要圍繞采集傳輸控制器進行。
采集傳輸控制器的硬件組成如圖2所示,采集傳輸控制器的主控芯片選用意法半導體(ST)公司數字處理芯片STM32F103RCT6,主控芯片連接的外設主要包括DC-DC轉換電路、RS485通信電路、NBIoT通信模塊以及GPS 衛星定位模塊。

圖2 采集傳輸控制器組成框圖Fig.2 Composition diagram of acquisition and transmission controller
在采集傳輸控制器中,STM32F103 作為主控芯片承擔了數據采集、解析及遠程傳輸的關鍵控制作用。STM32 通過串口USART2 以總線的形式實現與多個土壤傳感器之間相互通信,獲取各傳感器的土壤采集數據;通過串口USART3對SIM7020C型NB-IoT通信模塊進行配置與數據遠程發送;通過串口USART1與GPS模塊進行通信,獲取該土壤墑情監測點的地理坐標信息,STM32 主控芯片電路如圖3所示。

圖3 STM32 主控芯片電路Fig.3 STM32 main control chip circuit
NB-IoT通信芯片選用中國芯訊通公司的SIM7020C型多頻段無線通信模塊,其應用電路如圖4所示。

圖4 NB-IoT通信模塊電路Fig.4 NB-IoT communication module circuit
SIM7020C 應用電路包含的硬件接口有電源輸入、USB接口、全功能串口、SIM 卡接口、天線接口[3],其全功能串口與STM32 芯片的USART3 實現通信。SIM7020C的PWRKEY 引腳為開關機控制輸入,低電平有效,其輸入有效低電平的最大值為0.5 V。
定位已成為物聯網發展的重要基礎,采集傳輸控制器中包含GPS 衛星定位模塊,以使網絡終端能夠獲知土壤墑情數據所對應的地理位置坐標,GPS定位芯片選用移遠公司L76C型定位產品,L76C 支持多衛星系統,可接收處理多種SBAS 信號,且具有功耗低、靈敏度高的優點[4],其應用電路如圖5所示。
采集傳輸控制器軟件主要實現土壤傳感器數據采集和NB-IoT 無線遠程傳輸2個功能。軟件流程如圖6所示。
首先初始化STM32 主控芯片,然后通過AT 指令對SIM7020C 進行NB-IoT 入網配置,實現其與阿里云平臺的網絡連接。NB-IoT 入網的主要步驟如下:

圖5 GPS定位模塊電路Fig.5 GPS positioning module circuit

圖6 采集傳輸控制器軟件流程Fig.6 Software flow chart of acquisition and transmission controller
步聚1創建TCP 連接,指令為
AT+CMQNEW=
步聚2設置阿里云設備三要素,指令為
AT+CMQALICFG=
步聚3發送MQTT 連接包至阿里云,指令為
AT+CMQALICON=
采集傳輸控制器與土壤傳感器通過RS485 進行總線通信,通信數據采用串行通信協議Modbus協議。當完成各土壤傳感器采集數據解析后,STM32通過串口將AT 數據包發送給SIM7020C,從而實現遠程發送,其數據發送指令如下:
1)發送MQTT 訂閱包,指令為
AT+CMQSUB=
2)發送MQTT 發布包,指令為
AT+CMQSUB=
此外,由于土壤墑情數據無需密集周期發送,其最短發送間隔時間為10 min,而工作時長低至1 min以內,因此,為節省電池耗電量,采集傳輸控制器在空閑時期需要進入低功耗模式,低功耗的軟件實現主要包括STM32 芯片低功耗和SIM7020C模塊低功耗;STM32 芯片低功耗采用停止模式,SIM7020C模塊低功耗采用PSM模式。采集傳輸控制器進入工作模式或低功耗模式的時間控制依靠STM32 芯片的RTC 中斷實現。
采集傳輸控制器與阿里云平臺之間的通信是依靠NB-IoT 遠程發送實現的,其數據接口為MQTT接口[5],因此,需要在阿里云平臺上建立與采集傳輸控制器通信參數一致的設備模型。
設備模型的建立完成后,可以建立該模型下的多個具體物聯網設備,阿里云物聯網設備的通信三要素是產品名稱、ProductKey和DeviceSecret[6]。
阿里云數據庫RDS版包含MySQL,SQLServer,PostgreSQL,PPAS和MariaDBTX,用戶可以根據需要創建出適合自己應用場景的數據庫實例,在此所建立的系統即為在阿里云數據庫RDS 創建的MySQL 實例:電信運營商網關接收到采集傳輸控制器發送的MQTT 數據包后,將數據推送到阿里云平臺,云平臺接收解析后再將各測試變量值寫入數據庫中。
土壤墑情數據監測網站作為前端應用,主要包含傳感器工作狀態監測、土壤墑情監測點地理位置分布顯示、各監測點傳感器測量數據實時更新,以及歷史數據分析等功能,其網站頁面如圖7所示。

圖7 土壤數據監測網站Fig.7 Soil data monitoring website
傳感器工作狀態的監測內容,主要包括設備是否在線、各狀態下傳感器數量統計、電池剩余電量顯示等,傳感器的地理位置分布是根據采集傳輸控制器的衛星定位數據實現地圖顯示的,各傳感器測量數據可以進行單點實時顯示,也可以繪制出歷史變化曲線,由此進行數據動態分析,用戶注冊自己的賬號,添加自己的采集傳輸控制器設備序列號,就可以在登陸網站后觀測到自己設備的相關數據及信息。
為驗證所提出的物聯網土壤墑情監測系統方案的可行性,在河南省漯河市青年鄉的冬小麥田地中安裝部署了所設計的土壤監測系統。
每個監測站點包含一套采集傳輸控制器、3個土壤傳感器,系統供電采用鋰電池加太陽能充電的方式實現。土壤傳感器安裝現場如圖8所示,3個傳感器的埋地深度依次為20 cm,40 cm,60 cm。

圖8 土壤傳感器安裝現場Fig.8 Installation site of soil sensor
在PC網絡終端,選擇土壤監測點下雨后24 h內的土壤含水量數據進行分析,得到的土壤含水量體積分數的變化趨勢如圖9所示。

圖9 土壤含水量變化趨勢Fig.9 Change trend of soil water content
由圖可見,埋地深度為20 cm的傳感器測量的雨后土壤含水量,下雨后由(體積分數)40%增加到44%,雨停后呈緩慢下降趨勢;埋地深度40 cm的土壤含水量,在下雨后(體積分數)微漲了0.4%,變化較小,上述數據變化趨勢表明,該系統能夠實現對土壤墑情變化的長時間穩定、可靠監測。
基于NB-IoT 物聯網技術,建立了土壤墑情遠程監測系統,對集成NB-IoT通信模塊的采集傳輸控制器進行了軟硬件設計,通過MQTT協議實現了采集傳輸控制器與阿里云平臺之間的數據通信;創建SQL 數據庫,實現了數據測存儲管理;建立前端數據監測網站,對采集數據進行顯示分析,實際應用證明,所述方案具有良好的工程可行性。