胡俊杰 徐茵 王新懷等



關(guān)鍵詞:低功耗;物聯(lián)網(wǎng);智慧大棚;遠程升級
與世界上農(nóng)業(yè)發(fā)達的國家相比,中國的農(nóng)業(yè)科技水平較低,導(dǎo)致在農(nóng)業(yè)人口比例極大的情況下,農(nóng)業(yè)產(chǎn)值不高。作為一個以農(nóng)業(yè)發(fā)展為主的國家,傳統(tǒng)農(nóng)業(yè)主要依靠大量的人力、手工工具和一些簡單的機械設(shè)備,農(nóng)民基本憑經(jīng)驗種植,導(dǎo)致用于農(nóng)業(yè)生產(chǎn)所消耗的水資源、農(nóng)藥、化肥等都在飛速增長,但農(nóng)業(yè)產(chǎn)量依然較低。
本系統(tǒng)將物聯(lián)網(wǎng)和農(nóng)業(yè)相結(jié)合,針對溫室大棚作物的生長過程,實現(xiàn)各類環(huán)境參數(shù)的實時監(jiān)測和相關(guān)生產(chǎn)流程的智能控制,進而實現(xiàn)農(nóng)產(chǎn)品的增收。
1 系統(tǒng)設(shè)計
1.1 系統(tǒng)組成部分
本系統(tǒng)整體可分為4 部分:①是以STM32L010 芯片為核心的主控系統(tǒng);②包括溫濕度傳感器HDC1080、光照傳感器OPT3001、監(jiān)控攝像頭等監(jiān)測設(shè)備和繼電器、電磁閥等控制設(shè)備;③是基于物聯(lián)網(wǎng)的數(shù)據(jù)傳輸系統(tǒng)。④是數(shù)據(jù)分析系統(tǒng),包括手機APP、大屏終端和服務(wù)器。整體系統(tǒng)框架如圖1 所示。
1.2 系統(tǒng)工作過程
采集節(jié)點每5 min 喚醒1 次,讀取傳感器數(shù)據(jù)。若數(shù)據(jù)正常則將數(shù)據(jù)存儲在flash中,讓節(jié)點掉電,進入低功耗模式并等待定時喚醒;若數(shù)據(jù)超過報警上下限則將flash中數(shù)據(jù)通過窄帶物聯(lián)網(wǎng)上傳至云端服務(wù)器。服務(wù)器通過MQTT 協(xié)議廣播數(shù)據(jù),用戶在手機APP 或者大屏終端上獲取大棚環(huán)境參數(shù),數(shù)據(jù)異常時會自動下發(fā)控制命令。控制節(jié)點收到后控制水閥和風(fēng)機的運作,實現(xiàn)大棚環(huán)境參數(shù)的調(diào)整,提高農(nóng)作物產(chǎn)量。
2 系統(tǒng)功能實現(xiàn)
2.1 硬件部分
2.1.1 采集節(jié)點
MCU 采用STM32L010K8T6, 待機模式下電流0.23 uA, 內(nèi)部集成模數(shù)轉(zhuǎn)換器(ADC)、通用定時器(GPTIM)等外設(shè)。
定時器模塊采用時基芯片TPL5110DDC+ 模擬開關(guān)TS5A3160DBV。通過外圍電阻選擇定時時間為5 min,若MCU 采集的傳感器數(shù)據(jù)正常,則寫入fl ash 并發(fā)送高電平控制模擬開關(guān)關(guān)斷電源。若MCU 采集的傳感器數(shù)據(jù)異常,則將數(shù)據(jù)上傳到云端服務(wù)器,當收到掉電命令后,再控制模擬開關(guān)關(guān)斷電源。
2.1.2 溫濕度傳感器
本文采用低功耗的數(shù)字溫濕度傳感器HDC1080,該傳感器通過I2C 總線與MCU 進行數(shù)據(jù)傳輸,能以超低功耗提供出色的測量精度。依照芯片對應(yīng)的通信時序圖,編寫了基于I2C 通信協(xié)議的使用程序。
2.1.3 物聯(lián)網(wǎng)模塊
采用中移的物聯(lián)網(wǎng)模塊M5311,與MCU 之間通過串口傳輸數(shù)據(jù)。由于M5311 串口的高電平為1.8 V,MCU 串口的高電平為3.3 V,設(shè)計了電平轉(zhuǎn)換電路。M5311 通過窄帶物聯(lián)網(wǎng)登錄OneNet 云平臺后,會將MCU 的數(shù)據(jù)通過MQTT 協(xié)議透傳到云平臺上。
2.1.4 控制節(jié)點
通過220 V 市電轉(zhuǎn)換為5 V,然后穩(wěn)壓到3.3 V 給節(jié)點供電。控制節(jié)點上電初始化后連接OneNet 云平臺,每10 s 上報一條報文作為心跳幀,保持與云平臺的連接。若收到控制命令,則通過繼電器和電磁閥控制水閥和風(fēng)機的運轉(zhuǎn),調(diào)整大棚的環(huán)境參數(shù)。
2.2 軟件部分
2.2.1 手機APP
手機APP 通過Android Studio 平臺使用JAVA 語言進行編程,APP 采用兩級大棚分區(qū)策略,操作管理更加方便。主界面是整個棚區(qū)的衛(wèi)星地圖,進入每個大棚后,顯示了環(huán)境參數(shù)的實時數(shù)據(jù)和歷史數(shù)據(jù)曲線。此外,還添加控制命令和攝像頭功能,可以實時看到作物的生長狀況,如圖3 所示。
2.2.2 大屏終端
大屏終端界面包括實時數(shù)據(jù)顯示、歷史曲線變化、報警信息、在線設(shè)備統(tǒng)計和控制狀態(tài)顯示等功能,如圖4 所示。若收到的數(shù)據(jù)超過報警上下限,則在報警信息處顯示節(jié)點號、時間和異常值,便于用戶及時了解并做出響應(yīng)。
2.2.3 MCU程序
MCU 程序通過Keil平臺使用C 語言進行編程,主要包括系統(tǒng)初始化、采集傳感器數(shù)據(jù)、上傳至OneNet 云平臺、接收升級文件等。工作流程如圖5 所示。
2.2.4 遠程升級
工業(yè)4.0 時代,隨著物聯(lián)網(wǎng)技術(shù)的不斷成熟,信息技術(shù)是促進產(chǎn)業(yè)變革的重要因素。嵌入式設(shè)備高度集成,功率較小,功能可裁剪,通信功能強大,便于與其它設(shè)備結(jié)合,因此在新型農(nóng)業(yè)設(shè)備上應(yīng)用極廣。傳統(tǒng)使用燒錄器對嵌入式設(shè)備進行現(xiàn)場下載程序的方式已遠不能滿足軟件升級對高頻次,便攜性,穩(wěn)定性以及安全性的要求,新近研究往往又把其重點放到終端設(shè)備本身,這給嵌入式設(shè)備本身增加了不穩(wěn)定性,使其更繁冗,同時增加了生產(chǎn)成本。
采集節(jié)點在實際使用時,一般安裝在較為偏遠的溫室大棚中。考慮到現(xiàn)場升級不太方便,本項目實現(xiàn)了采集節(jié)點的IAP 遠程升級功能,利用NB 網(wǎng)絡(luò)傳輸升級文件,大大降低了設(shè)備的維護難度,提升了便利性,如圖6 所示。
本文在python 端實現(xiàn)了遠程升級的自動化。遠程升級開始后,由python 端自動下發(fā)升級報文,農(nóng)業(yè)采集節(jié)點校驗成功后,寫入flash,并上報下一條升級包的序號,python 端自動下發(fā)下一條升級報文。待所有升級報文下發(fā)完成后,農(nóng)業(yè)采集節(jié)點跳轉(zhuǎn)到新的程序開始執(zhí)行。流程圖如圖7 所示。
3 結(jié)束語
本文設(shè)計并實現(xiàn)了一種基于物聯(lián)網(wǎng)的低功耗智慧大棚控制系統(tǒng),硬件和軟件經(jīng)測試均可正常運行,配合3 000 mAh 可充電鋰電池能使用90 d。本系統(tǒng)能檢測農(nóng)業(yè)大棚環(huán)境并自動做出調(diào)節(jié),使作物一直處于合適的生長環(huán)境,增加作物的產(chǎn)量。