張?zhí)禊i,侯凡博,李 根
(1.安陽(yáng)工學(xué)院 電子信息與電氣工程學(xué)院,河南 安陽(yáng) 455000;2.安陽(yáng)市山貓自動(dòng)控制技術(shù)研究服務(wù)有限公司,河南 安陽(yáng) 455000)
近年來(lái),農(nóng)業(yè)農(nóng)村部持續(xù)推進(jìn)“互聯(lián)網(wǎng)+”現(xiàn)代農(nóng)業(yè)建設(shè),推動(dòng)農(nóng)業(yè)生產(chǎn)數(shù)字化轉(zhuǎn)型。農(nóng)業(yè)物聯(lián)網(wǎng)技術(shù)是實(shí)現(xiàn)農(nóng)業(yè)生產(chǎn)過(guò)程信息化與數(shù)字化的重要技術(shù)手段,成為農(nóng)業(yè)數(shù)字化研究的重要領(lǐng)域[1-2]。美國(guó)、以色列、英國(guó)、日本等農(nóng)業(yè)水平較為發(fā)達(dá)的國(guó)家,農(nóng)業(yè)物聯(lián)網(wǎng)已經(jīng)得到了廣泛的發(fā)展,很多農(nóng)業(yè)生產(chǎn)過(guò)程都已經(jīng)達(dá)到了數(shù)字化和自動(dòng)化的程度。我國(guó)學(xué)者對(duì)農(nóng)業(yè)物聯(lián)網(wǎng)應(yīng)用做了大量研究,許多科技成果得到應(yīng)用。山東省淄博市臨淄區(qū)、吉林省長(zhǎng)春市農(nóng)安縣等地先后建設(shè)了生態(tài)無(wú)人農(nóng)場(chǎng),利用物聯(lián)網(wǎng)、云計(jì)算、人工智能、大數(shù)據(jù)等技術(shù),實(shí)現(xiàn)了農(nóng)場(chǎng)內(nèi)作物生長(zhǎng)環(huán)境、土壤狀態(tài)以及所有機(jī)具作業(yè)狀態(tài)的智能實(shí)時(shí)調(diào)控,推動(dòng)了我國(guó)農(nóng)業(yè)生產(chǎn)數(shù)字化進(jìn)程[3-4]。本文設(shè)計(jì)了一種基于物聯(lián)網(wǎng)的農(nóng)田蟲(chóng)情及環(huán)境信息監(jiān)測(cè)系統(tǒng),可以對(duì)農(nóng)田農(nóng)作物病蟲(chóng)害信息以及環(huán)境信息進(jìn)行監(jiān)測(cè),為病蟲(chóng)害自動(dòng)監(jiān)測(cè)預(yù)警、精準(zhǔn)噴灑農(nóng)藥等提供數(shù)據(jù)支持。
監(jiān)測(cè)系統(tǒng)主要由農(nóng)業(yè)害蟲(chóng)捕捉器、物聯(lián)網(wǎng)控制單元和云平臺(tái)應(yīng)用中心構(gòu)成,系統(tǒng)整體框架如圖1所示[5-6]。農(nóng)業(yè)害蟲(chóng)捕捉器主要由太陽(yáng)能電池板、鋰電池、控制倉(cāng)、誘捕倉(cāng)、存儲(chǔ)倉(cāng)、高壓包、金屬電網(wǎng)、紅外計(jì)數(shù)裝置等構(gòu)成,通過(guò)性誘劑捕捉特定種類的農(nóng)業(yè)害蟲(chóng),利用金屬電網(wǎng)對(duì)捕獲的農(nóng)業(yè)害蟲(chóng)進(jìn)行擊殺。物聯(lián)網(wǎng)控制單元位于農(nóng)業(yè)害蟲(chóng)捕獲器的控制倉(cāng),主要由微控制器模塊、傳感器模塊、NB-IoT通信模塊等構(gòu)成,其中傳感器模塊主要包括風(fēng)向傳感器、風(fēng)速傳感器、光照溫濕度傳感器、空氣質(zhì)量傳感器等,用以監(jiān)測(cè)農(nóng)田環(huán)境中的風(fēng)速、風(fēng)向、溫濕度、光照、PM2.5、PM10等信息,并對(duì)擊殺害蟲(chóng)的數(shù)量進(jìn)行計(jì)數(shù),微控制器模塊將獲取的監(jiān)測(cè)數(shù)據(jù)通過(guò)NB-IoT通信網(wǎng)絡(luò)傳輸至云平臺(tái)應(yīng)用中心。云平臺(tái)應(yīng)用中心用于系統(tǒng)監(jiān)測(cè)數(shù)據(jù)的存儲(chǔ)和統(tǒng)計(jì),可以實(shí)時(shí)顯示農(nóng)業(yè)害蟲(chóng)捕殺數(shù)量、捕殺時(shí)間以及農(nóng)田自然環(huán)境條件信息,并具有報(bào)表管理功能,方便用戶進(jìn)行數(shù)據(jù)統(tǒng)計(jì)和分析。

圖1 系統(tǒng)整體框架
監(jiān)測(cè)系統(tǒng)終端在設(shè)計(jì)時(shí)將害蟲(chóng)捕捉器和物聯(lián)網(wǎng)控制單元進(jìn)行有效整合,其中害蟲(chóng)捕捉器主要負(fù)責(zé)誘捕農(nóng)業(yè)害蟲(chóng),物聯(lián)網(wǎng)控制單元負(fù)責(zé)對(duì)捕殺的農(nóng)業(yè)害蟲(chóng)計(jì)數(shù)和農(nóng)田環(huán)境信息采集,并通過(guò)NB-IoT網(wǎng)絡(luò)將監(jiān)測(cè)數(shù)據(jù)上傳至云平臺(tái)應(yīng)用中心,其總體結(jié)構(gòu)設(shè)計(jì)如圖2所示。

圖2 監(jiān)測(cè)系統(tǒng)終端總體結(jié)構(gòu)圖
誘捕倉(cāng)包括側(cè)誘捕倉(cāng)和餌料倉(cāng)。側(cè)誘捕倉(cāng)呈豎直設(shè)置的圓柱形腔體,位于誘捕倉(cāng)兩側(cè)。餌料倉(cāng)位于誘捕倉(cāng)中間,可以同時(shí)安裝2個(gè)誘劑棒,2個(gè)誘餌棒中間采用隔板隔開(kāi),并采用迷宮式通道與存儲(chǔ)倉(cāng)連通,防止2個(gè)誘餌棒的氣味相互影響。農(nóng)業(yè)害蟲(chóng)受到誘劑棒的吸引,通過(guò)害蟲(chóng)入口進(jìn)入側(cè)誘捕倉(cāng),在通道內(nèi)接觸到金屬電網(wǎng),被高壓包釋放的高壓擊殺。被擊殺的農(nóng)業(yè)害蟲(chóng)從誘捕倉(cāng)跌落至存儲(chǔ)倉(cāng),在此過(guò)程中利用紅外計(jì)數(shù)裝置對(duì)害蟲(chóng)捕殺數(shù)量進(jìn)行計(jì)數(shù)統(tǒng)計(jì)。當(dāng)害蟲(chóng)捕殺數(shù)量達(dá)到設(shè)定值時(shí),物聯(lián)網(wǎng)控制單元中的控制器將通過(guò)電機(jī)驅(qū)動(dòng)傾倒裝置,將存儲(chǔ)倉(cāng)中被捕殺的農(nóng)業(yè)害蟲(chóng)進(jìn)行傾倒。太陽(yáng)能電池板為鋰電池充電,并為監(jiān)測(cè)系統(tǒng)終端中各部分提供合適的工作電壓。為了能夠及時(shí)了解農(nóng)田環(huán)境信息,監(jiān)測(cè)系統(tǒng)終端還配備了風(fēng)向、風(fēng)速、光照、溫濕度、空氣質(zhì)量等傳感器,通過(guò)控制器采集農(nóng)田環(huán)境信息,并通過(guò)NB-IoT進(jìn)行信息上傳。
物聯(lián)網(wǎng)控制單元是整個(gè)監(jiān)測(cè)系統(tǒng)的控制核心,主要用于實(shí)現(xiàn)農(nóng)田環(huán)境參數(shù)采集、捕殺農(nóng)業(yè)害蟲(chóng)數(shù)量計(jì)數(shù)、傾倒裝置驅(qū)動(dòng)、數(shù)據(jù)處理與存儲(chǔ)、數(shù)據(jù)通信等功能。在設(shè)計(jì)電路時(shí),微控制器的選擇從高性能、低功耗、高性價(jià)比等角度出發(fā),選用STM32F103ZET6處理器作為開(kāi)發(fā)平臺(tái)。STM32F103ZET6是意法半導(dǎo)體(ST)公司生產(chǎn)的一款基于ARM Cortex-M3內(nèi)核的32位嵌入式微控制器,內(nèi)部集成了5路USART/UART、8路16位定時(shí)器、112個(gè)通用I/O等豐富的接口資源[7-8]。本設(shè)計(jì)主要使用了STM32F103ZET6的USART/UART接口和I/O接口,并通過(guò)定時(shí)器、中斷控制器等實(shí)現(xiàn)傳感器數(shù)據(jù)的讀取和控制信號(hào)的輸出。
2.2.1 風(fēng)速監(jiān)測(cè)電路設(shè)計(jì)
風(fēng)速監(jiān)測(cè)電路使用風(fēng)速變送器GD-FS-RS485實(shí)現(xiàn)。GD-FS-RS485采用三杯式設(shè)計(jì),使用聚碳酸酯復(fù)合材料殼體,具有機(jī)械強(qiáng)度大、硬度高、耐腐蝕等特點(diǎn),測(cè)量量程為0~50 m/s,分辨率為0.1 m/s,動(dòng)態(tài)響應(yīng)時(shí)間小于0.5 s,啟動(dòng)風(fēng)速小于0.2 m/s,采用RS485通信接口和ModBus-RTU通信協(xié)議,工作電壓5~40 V DC。
GD-FS-RS485有4個(gè)引腳,分別為485-A、485-B、電源正和電源負(fù),其接口電路設(shè)計(jì)如圖3所示。圖中的SP3485E是一款滿足TIA/EIA-485標(biāo)準(zhǔn)要求的RS-485收發(fā)器,具備開(kāi)路失效保護(hù)、過(guò)溫保護(hù)、限流保護(hù)、過(guò)壓保護(hù)等功能,可以實(shí)現(xiàn)高達(dá)10 Mbps的無(wú)差錯(cuò)數(shù)據(jù)傳輸。SP3485E的收/發(fā)使能控制信號(hào)與STM32F103ZET6的PG12連接,SP3485E的DI、RO分 別 與STM32F103ZET6的 PA9(USART1_TX)、PA10(USART1_RX)連接。PSM712是一款RS485接口靜電保護(hù)芯片,用以防止總線外部電壓過(guò)高,保護(hù)RS485收發(fā)器芯片。

圖3 GD-FS-RS485接口電路
2.2.2 風(fēng)向監(jiān)測(cè)電路設(shè)計(jì)
風(fēng)向監(jiān)測(cè)電路使用風(fēng)向變送器GD-FXRS485實(shí)現(xiàn)。GD-FX-RS485采用高性能軸承,轉(zhuǎn)動(dòng)阻力小,測(cè)量精確,動(dòng)態(tài)響應(yīng)速度小于0.5 s,工作電壓5~40 V DC,采集值分為0~7共8檔,分別對(duì)應(yīng)北、東北、東、東南、南、西南、西、西北8個(gè)指示方向,輸出信號(hào)采用RS485數(shù)字接口方式。GD-FX-RS485有485-A、485-B、電源正和電源負(fù)4個(gè)引腳,通過(guò)SP3485E芯片與STM32F103ZET6連接,其中SP3485E的收/發(fā)使能控制信號(hào)與PG10連接,DI、RO分別與PB10(USART3_TX)、PB11(USART3_RX) 連 接。GD-FX-RS485工作電壓設(shè)置為12V DC。
2.2.3 光照溫濕度監(jiān)測(cè)電路設(shè)計(jì)
光照溫濕度監(jiān)測(cè)電路使用變送PR-3002-GZWS實(shí)現(xiàn)。PR-3002-GZWS內(nèi)部集成了光照、溫度和濕度傳感器,其中光照強(qiáng)度測(cè)量量程為0-200000 Lux,測(cè)量精度為±7% Lux;溫度測(cè)量量程為(-40 ~ +60)℃,測(cè)量精度為±0.5℃;濕度測(cè)量測(cè)量范圍為0%~100%RH,測(cè)量精度為±3%RH。PR-3002-GZWS的工作電壓10~30 V DC,最大功耗0.4 W,輸出信號(hào)采用RS485數(shù)字接口方式,支持ModBus-RTU通信協(xié)議,具有測(cè)量范圍寬、線形度好、防水性能好、傳輸距離遠(yuǎn)等優(yōu)點(diǎn)。
PR-3002-GZWS有 485-A、485-B、 電 源正和電源負(fù)4個(gè)引腳,通過(guò)SP3485E芯片與STM32F103ZET6連接,其中SP3485E的收/發(fā)使能控制信號(hào)與PG13連接,DI、RO分別與PC10(UART4_TX)、PC11(UART4_RX) 連 接。PR-3002-GZWS工作電壓設(shè)置為12 V。
2.2.4 空氣質(zhì)量監(jiān)測(cè)電路設(shè)計(jì)
空氣質(zhì)量監(jiān)測(cè)電路使用多合一氣體傳感器模組M701實(shí)現(xiàn)。M701內(nèi)部采用激光顆粒物傳感器、紅外非分光二氧化碳傳感器等,可以測(cè)量CO2、PM2.5、PM10等空氣質(zhì)量參數(shù),輸出信號(hào)采用RS485數(shù)字接口方式。CO2的測(cè)量范圍為400 ppm~5 000 mg/m3,測(cè)量精度為±3%+50 mg/m3;PM2.5的測(cè)量范圍為 0 μg/m3~999 μg/m3,測(cè)量精度為±10%;PM10的測(cè)量范圍為0μg/m3~1 000 μg/m3,測(cè)量精度為±10%。
M701的工作電壓為5 V DC,通過(guò)SP3485E芯片與STM32F103ZET6連接,其中SP3485E的收/發(fā)使能控制信號(hào)與PG15連接,DI、RO分別與PC12(UART5_TX)、PD2(UART5_RX)連接。
2.2.5 捕殺害蟲(chóng)數(shù)量計(jì)數(shù)電路設(shè)計(jì)
捕殺害蟲(chóng)數(shù)量計(jì)數(shù)電路采用紅外計(jì)數(shù)方式,使用漫反射光電開(kāi)關(guān)E3Z-D61實(shí)現(xiàn),其接口電路設(shè)計(jì)如圖4所示。E3Z-D61的工作電壓為5V DC,工作于常開(kāi)模式,當(dāng)無(wú)被檢測(cè)物時(shí),E3Z-D61輸出高電平(5V),三極管S8050不導(dǎo)通,STM32F103ZET6的PG9為高電平(3.3V);當(dāng)被捕殺的害蟲(chóng)通過(guò)光電開(kāi)關(guān)時(shí),E3Z-D61輸出低電平,三極管S8050導(dǎo)通,STM32F103ZET6的PG9為低電平。因此,當(dāng)PG9由高電平跳變?yōu)榈碗娖綍r(shí),表示有被捕殺的害蟲(chóng)通過(guò)光電開(kāi)關(guān),捕殺害蟲(chóng)數(shù)量計(jì)數(shù)值加1。E3Z-D61的工作電壓為5 V,STM32F103ZET6的工作電壓為3.3 V,該電路使用S8050完成電平轉(zhuǎn)化。

圖4 E3Z-D61接口電路
2.2.6 通信接口電路設(shè)計(jì)
通信接口電路采用NB-IoT模組TAS-LTEE33V實(shí)現(xiàn)。TAS-LTE-E33V內(nèi)部集成移芯通信NB-IoT單模芯片EC616,提供了符合ISO7816-3標(biāo)準(zhǔn)的SIM卡接口,自動(dòng)識(shí)別3.0 V和 1.8VSIM卡,支持移動(dòng)/聯(lián)通/電信全網(wǎng)通,支持TCP/UDP/MQTT/HTTP等多種網(wǎng)絡(luò)協(xié)議,可以通過(guò)串口與控制器通信,支持5~36 V DC寬電壓輸入。TAS-LTE-E33V的接口電路設(shè)計(jì)如圖5所示,采用12 V DC供電,并增加100 μF/63V電解電容和10 μF/50 V陶瓷電容,同時(shí)在VCAP端增加470 μF/63 V電解電容,以減少12 V 電源在脈沖電流作用期間的電壓跌落。TAS-LTE-E33V的串口接收端RXD1、串口發(fā)送端TXD1分別與STM32F103ZET6的 PA2(USART2_TX)、PA3(USART2_RX)相連[9-10]。

圖5 NB-IoT接口電路
監(jiān)測(cè)系統(tǒng)的各功能模塊工作電壓不同,包括12 V、5 V和3.3 V等3種不同的直流工作電壓。在電路設(shè)計(jì)時(shí),采用太陽(yáng)能和鋰電池相結(jié)合的供電方式,太陽(yáng)能電池板為12V24AH的鋰電池充電,鋰電池輸出經(jīng)過(guò)電源管理芯片AP1509-12進(jìn)行穩(wěn)壓,將輸出電壓穩(wěn)定在12 V,為系統(tǒng)提供12 V工作電壓,然后使用LM1117-3.3、LM1117-5實(shí)現(xiàn)3.3 V和5 V穩(wěn)壓輸出[11],其電路設(shè)計(jì)如圖6所示,圖中的VIN表示鋰電池輸出電壓。

圖6 電源電路設(shè)計(jì)
物聯(lián)網(wǎng)控制單元軟件設(shè)計(jì)使用Keilu Vision V5.0作為集成開(kāi)發(fā)環(huán)境,采用模塊化設(shè)計(jì)思想,使用C語(yǔ)言編程,主要由主程序循環(huán)和功能模塊程序構(gòu)成,功能模塊程序以中斷程序?yàn)橹鳎绦蚪Y(jié)構(gòu)清晰,具有良好的可讀性和移植性,易于調(diào)試和維護(hù),其主程序流程圖如圖7所示[12-13]。

圖7 主程序流程圖
控制單元上電復(fù)位后,微控制器首先完成CPU初始化,將復(fù)位向量裝載到程序地址寄存器,并完成系統(tǒng)自檢。系統(tǒng)自檢通過(guò)后,完成定時(shí)器、I/O端口、串口通信、NB-IoT模組等初始化操作。系統(tǒng)利用串口USART2與NB-IoT模組通信,并完成NB-IoT組網(wǎng)和云平臺(tái)注冊(cè)[14]。此后,控制系統(tǒng)進(jìn)入主循環(huán),通過(guò)中斷服務(wù)程序完成農(nóng)田環(huán)境數(shù)據(jù)采集、捕殺害蟲(chóng)數(shù)量計(jì)數(shù)、數(shù)據(jù)上報(bào)、數(shù)據(jù)接收等任務(wù)。當(dāng)風(fēng)速、風(fēng)向、光照溫濕度、空氣質(zhì)量等傳感器采集完數(shù)據(jù)后,通過(guò)RS485總線按照ModBus協(xié)議向微控制器傳送數(shù)據(jù),微控制器收到數(shù)據(jù)后,保存至內(nèi)部數(shù)據(jù)存儲(chǔ)器中。害蟲(chóng)捕捉器誘捕到農(nóng)業(yè)害蟲(chóng)后,捕殺害蟲(chóng)數(shù)量計(jì)數(shù)電路產(chǎn)生電平跳變,觸發(fā)微控制器內(nèi)部計(jì)數(shù)器工作,完成捕殺害蟲(chóng)數(shù)量統(tǒng)計(jì),當(dāng)捕殺害蟲(chóng)數(shù)量達(dá)到50只后,系統(tǒng)輸出驅(qū)動(dòng)信號(hào)使傾倒裝置動(dòng)作。系統(tǒng)設(shè)定每隔120 s向云平臺(tái)發(fā)送一次數(shù)據(jù),當(dāng)定時(shí)器計(jì)時(shí)到120 s時(shí),微控制器通過(guò)串口USART2與NB-IoT模組通信,以AT命令將捕殺害蟲(chóng)數(shù)量、風(fēng)向、風(fēng)速、CO2、PM2.5、PM10等數(shù)據(jù)發(fā)送給NB-IoT模組,NB-IoT模組將數(shù)據(jù)打包處理后,使用TCP/IP協(xié)議上傳至云平臺(tái)。云平臺(tái)也可以通過(guò)NB-IoT將控制信息傳送至微控制器,以便遠(yuǎn)程對(duì)微控制器進(jìn)行參數(shù)設(shè)置。
本系統(tǒng)的云服務(wù)器采用阿里云的ECS云服務(wù)器,采用Java語(yǔ)言中開(kāi)發(fā),采用Spring、Spring MVC和MyBatis框架技術(shù)以及JSP視圖技術(shù)構(gòu)建Web網(wǎng)頁(yè)服務(wù)。通過(guò)TCP/IP網(wǎng)絡(luò)通信協(xié)議與監(jiān)測(cè)系統(tǒng)終端進(jìn)行數(shù)據(jù)通信,數(shù)據(jù)服務(wù)器對(duì)監(jiān)測(cè)終端上傳的數(shù)據(jù)進(jìn)行加工處理,并將數(shù)據(jù)保存到MySQL數(shù)據(jù)庫(kù)[15]。用戶通過(guò)Web應(yīng)用實(shí)現(xiàn)數(shù)據(jù)顯示、數(shù)據(jù)查詢、數(shù)據(jù)統(tǒng)計(jì)、控制命令轉(zhuǎn)發(fā)等功能,其中監(jiān)測(cè)數(shù)據(jù)顯示界面如圖8所示,農(nóng)業(yè)害蟲(chóng)捕殺數(shù)量月統(tǒng)計(jì)圖如圖9所示。

圖8 監(jiān)測(cè)數(shù)據(jù)顯示界面

圖9 捕殺害蟲(chóng)數(shù)量月統(tǒng)計(jì)圖
本系統(tǒng)將農(nóng)業(yè)害蟲(chóng)誘捕器和窄帶物聯(lián)網(wǎng)NBIoT相結(jié)合,以STM32F103ZET6為控制核心,通過(guò)集成NB-IoT單模芯片EC616的TAS-LTEE33V模組將監(jiān)測(cè)數(shù)據(jù)傳輸至阿里云服務(wù)器,在云服務(wù)器中完成Web網(wǎng)頁(yè)服務(wù)開(kāi)發(fā),實(shí)現(xiàn)了農(nóng)業(yè)害蟲(chóng)捕殺及數(shù)量統(tǒng)計(jì)、農(nóng)田環(huán)境信息監(jiān)測(cè)的信息化和自動(dòng)化。本系統(tǒng)能夠滿足多種常見(jiàn)農(nóng)業(yè)害蟲(chóng)的捕殺和測(cè)報(bào)需要,同時(shí)可以對(duì)農(nóng)田環(huán)境信息進(jìn)行動(dòng)態(tài)監(jiān)測(cè),為農(nóng)業(yè)工作人員管理農(nóng)田提供決策和參考。