黃富達(dá),陳松琪,陶志霖,韋樹(shù)貢,張宗謀,楊子靖,陸秀萍,鄭淑文
(廣西民族師范學(xué)院 數(shù)理與電子信息工程學(xué)院,廣西崇左,532200)
目前,地面監(jiān)測(cè)站和遙感技術(shù)結(jié)合的墑情監(jiān)測(cè)系統(tǒng)等農(nóng)業(yè)環(huán)境監(jiān)測(cè)網(wǎng)絡(luò)系統(tǒng)已在國(guó)內(nèi)外有應(yīng)用,但我國(guó)與發(fā)達(dá)國(guó)家相比,仍存在一定差距,很多農(nóng)業(yè)大棚只是處于試驗(yàn)階段,技術(shù)方面還存在漏洞。我國(guó)是一個(gè)農(nóng)業(yè)大國(guó),但就目前來(lái)說(shuō),還不是一個(gè)農(nóng)業(yè)強(qiáng)國(guó),這就需要我們通過(guò)更多的物聯(lián)網(wǎng)技術(shù)提供為農(nóng)作物創(chuàng)造更好的生長(zhǎng)環(huán)境,讓農(nóng)民們希望農(nóng)作物增產(chǎn)增收的愿望成為現(xiàn)實(shí)。
然而隨著社會(huì)不斷發(fā)展,科技水平的逐步提升,人口數(shù)量也在不停增長(zhǎng),對(duì)農(nóng)業(yè)的需求也越來(lái)越大。我國(guó)地域遼闊,地形復(fù)雜,種植區(qū)域一般為偏遠(yuǎn)地區(qū),很多環(huán)境對(duì)于智能設(shè)備的使用帶來(lái)了很大的制約,傳統(tǒng)的農(nóng)作物生產(chǎn)方式有較大的弊端,容易受自然天氣的影響,效率較低,容易造成農(nóng)作物經(jīng)濟(jì)發(fā)展滯緩,給種植農(nóng)作物的人們帶來(lái)巨大困擾。為了解決這一問(wèn)題,設(shè)計(jì)了一款基于物聯(lián)網(wǎng)的智慧農(nóng)業(yè)監(jiān)測(cè)聯(lián)動(dòng)系統(tǒng)。本文主要采用了物聯(lián)網(wǎng)、傳感器以及嵌入式技術(shù)等將獲取到的農(nóng)作物生長(zhǎng)信息上傳到云端,用戶可以通過(guò)手機(jī)、電腦登錄農(nóng)業(yè)環(huán)境監(jiān)控平臺(tái),實(shí)時(shí)監(jiān)測(cè)農(nóng)作物信息,改進(jìn)農(nóng)業(yè)種植條件,實(shí)現(xiàn)農(nóng)作物的增產(chǎn)增收。
現(xiàn)階段,物聯(lián)網(wǎng)技術(shù)雖然是一個(gè)全新的概念,但其并沒(méi)有離開(kāi)我國(guó)的互聯(lián)網(wǎng)技術(shù),通過(guò)我國(guó)多種海量傳感儀器采集的多個(gè)信息數(shù)據(jù)內(nèi)容,最終利用互聯(lián)網(wǎng)技術(shù)的相關(guān)技術(shù)標(biāo)準(zhǔn)和互聯(lián)網(wǎng)技術(shù)完美融合,可以及時(shí)準(zhǔn)確地將多個(gè)信息傳輸?shù)綄?shí)際管理中心,從而滿足不同用戶的實(shí)際需求[1]。
本系統(tǒng)主要由STM32 主控芯片、傳感器設(shè)備、上位機(jī)、攝像頭模塊、服務(wù)端五部分組成。通過(guò)傳感器采集土壤溫濕度以及二氧化碳濃度、風(fēng)速、風(fēng)向、雨量等方面的情況,接著搭建好網(wǎng)站,并在農(nóng)作物生長(zhǎng)的地方安裝攝像頭將傳感器采集到的相關(guān)信息上傳到騰訊云小程序,用戶可以根據(jù)手機(jī)APP、電腦等獲取到的數(shù)據(jù)進(jìn)行分析,手動(dòng)控制增加光照強(qiáng)度或者增減雨量?;谖锫?lián)網(wǎng)的智慧農(nóng)業(yè)監(jiān)測(cè)聯(lián)動(dòng)系統(tǒng)功能框圖如圖1所示。
圖1 系統(tǒng)功能框圖
本系統(tǒng)主要采用STM32F103 作為主控模塊,擁有ARM Cortex32位微控制器,48 路LQFP 封裝,是ST 公司微控制器中的STM32 系列。 STM32F103C8T6 整個(gè)系統(tǒng)結(jié)構(gòu)大致可以分為由ARM 公司設(shè)計(jì)的Cortex-M3 內(nèi)核和ST 公司在此基礎(chǔ)上進(jìn)行優(yōu)化的總線矩陣、DMA(Direct Memory Access,直接內(nèi)存讀取器),還有AHB、APB1 以及APB2上掛載的外設(shè)等兩個(gè)部分。采用高密度性能傳輸,結(jié)合無(wú)線傳感網(wǎng)絡(luò)處理系統(tǒng)獲取到的數(shù)據(jù),使用單片機(jī)自身的串口USART 連接傳感器,獲取大氣、土壤的相關(guān)信息,實(shí)現(xiàn)自動(dòng)灌溉功能并發(fā)送到氣象數(shù)據(jù)記錄儀。
該模塊主要由兩個(gè)傳感器組成,分別是土壤水分傳感器、土壤濕度傳感器,用來(lái)獲取農(nóng)作物所處的土壤環(huán)境信息,采集土壤的溫濕度。使用YL-69 土壤濕度傳感器,其是四線制的,中間有兩根線,其中AO 用來(lái)讀取實(shí)時(shí)濕度數(shù)據(jù),D0 不連接,由于A0 輸出的是模擬量,單片機(jī)只能讀取數(shù)字量,所以需要通過(guò)ADC(模數(shù)轉(zhuǎn)換),連接單片機(jī)上的PA1 引腳,用來(lái)處理模擬數(shù)據(jù)。該模塊主要由不銹鋼探針和防水探頭構(gòu)成,可以長(zhǎng)期埋藏在土壤里面,只要將其插在土壤里,就可采集到土壤的濕度信息,該模塊在本系統(tǒng)中主要用于農(nóng)業(yè)環(huán)境土壤墑情監(jiān)測(cè)。
采用的是DHT11 溫濕度傳感器,是一款含有已校準(zhǔn)數(shù)字信號(hào)輸出的溫濕度復(fù)合型傳感器,采用專(zhuān)門(mén)的數(shù)字模塊采集技術(shù)和溫濕度傳感技術(shù),能夠采集到環(huán)境中的溫濕度,在農(nóng)業(yè)物聯(lián)網(wǎng)的應(yīng)用中較為廣泛,并且具有成本低廉,體積小、容易操作等特點(diǎn)。含有4個(gè)引腳,VCC、GND 分別接電源以及接地,I/O口為數(shù)據(jù)線,該接口主要獲取數(shù)據(jù)信息。在本系統(tǒng)中溫濕度傳感器用于采集大氣中的溫濕度,將采集到的數(shù)據(jù)打印輸出到OLED 顯示屏上以及顯示在騰訊云、華為云平臺(tái),以便用戶感知外界溫濕度。
采用Maixpy3 模塊,其是一款基于linux cpython的Python3 軟件開(kāi)發(fā)工具包(SDK),借助開(kāi)源 Python 編程語(yǔ)言實(shí)現(xiàn)跨平臺(tái)統(tǒng)一和簡(jiǎn)化 Linux 嵌入式設(shè)備上開(kāi)發(fā) AIoT(人工智能物聯(lián)網(wǎng)) = AI(人工智能) + IoT(物聯(lián)網(wǎng))應(yīng)用。物聯(lián)網(wǎng)攝像頭,覆蓋面廣,主要用于農(nóng)業(yè)生產(chǎn)環(huán)節(jié)中能夠起到實(shí)時(shí)視頻監(jiān)控農(nóng)作物信息以及安全防盜監(jiān)控,便于管理人員能夠第一時(shí)間了解生產(chǎn)過(guò)程中的每時(shí)每刻的狀況。
該模塊采用ASR01 系列,具有10m 超遠(yuǎn)距離喚醒的特點(diǎn),擁有98%的超高識(shí)別率。使用串口通信的方式向主控芯片STM32 芯片發(fā)送獲取到的數(shù)據(jù),與單片機(jī)相結(jié)合來(lái)使用,連接RX-TX 引腳即可實(shí)現(xiàn)雙向通信,使用范圍廣泛,更改不同的提示關(guān)鍵詞,用戶可以準(zhǔn)確地獲取到實(shí)時(shí)信息。本系統(tǒng)通過(guò)語(yǔ)音播報(bào)模塊提示用戶傳感器所獲取到的信息,當(dāng)采集到的溫濕度、土壤溫濕度、CO2濃度、光照值等超過(guò)一定的閾值,語(yǔ)音播報(bào)模塊提示用戶注意,是否有需要改善作物的生長(zhǎng)條件。
使用BH1750(GY-30)光照傳感器,其是采用了ROHMBH1750FVI 芯片的感光模塊,通過(guò)數(shù)字輸出測(cè)量光照度,其檢測(cè)范圍在0~65535 勒克斯,誤差變動(dòng)較小,提高了系統(tǒng)測(cè)量光照值的準(zhǔn)確性。本系統(tǒng)中將傳感器采集到的光照值通過(guò)互聯(lián)網(wǎng)技術(shù)傳到云端,以便用戶隨時(shí)查看。
RS485 風(fēng)向傳感器,采用Modbus 協(xié)議,具有體積輕巧、抗氧化、耐腐蝕的特點(diǎn),使用范圍極其廣泛,主要應(yīng)用在氣象站、海洋、環(huán)境、各個(gè)機(jī)場(chǎng)、港口、工農(nóng)業(yè)實(shí)驗(yàn)室及交通等領(lǐng)域,用于測(cè)量環(huán)境風(fēng)速與風(fēng)向,在本系統(tǒng)中采用此模塊主要是監(jiān)測(cè)當(dāng)?shù)氐娘L(fēng)速、風(fēng)向狀況,以便用戶根據(jù)農(nóng)作物的生長(zhǎng)條件進(jìn)行調(diào)整,改善農(nóng)作物的生長(zhǎng)方式。
整體硬件電路圖如圖2所示。
圖2 整體硬件電路圖
本系統(tǒng)采用手機(jī)APP、小程序客戶端來(lái)協(xié)助用戶遠(yuǎn)程控制作物信息,使其成為本設(shè)計(jì)的一大亮點(diǎn)。利用計(jì)算機(jī)網(wǎng)絡(luò)信息平臺(tái)對(duì)自然環(huán)境信息進(jìn)行全方面監(jiān)測(cè),方便更好地采集到太陽(yáng)能輻射、二氧化碳濃度等方面的監(jiān)控?cái)?shù)據(jù),接著傳送到騰訊云中心服務(wù)器。在監(jiān)測(cè)數(shù)據(jù)傳輸時(shí)該系統(tǒng)通過(guò)標(biāo)準(zhǔn)USB/RS485 通訊接口,與測(cè)量中心PC 機(jī)進(jìn)行有線連接,然后利用GPRS/NB/LTE 與其進(jìn)行無(wú)線傳送,使用TCP/IP協(xié)議利用LAN、WiFi、GPRS 等方式接入互聯(lián)網(wǎng),然后將數(shù)據(jù)傳輸?shù)津v訊云計(jì)算分析終端,以便于用戶在登錄監(jiān)測(cè)系統(tǒng)就可以實(shí)時(shí)查看監(jiān)測(cè)區(qū)域的歷史數(shù)據(jù)信息。
程序主要分為兩部分:第一部分是氣象數(shù)據(jù)采集系統(tǒng),第二部分為數(shù)據(jù)處理系統(tǒng),系統(tǒng)軟件程序采用C 語(yǔ)言進(jìn)行結(jié)構(gòu)編程。
(1)氣象數(shù)據(jù)采集系統(tǒng)。在使用的農(nóng)業(yè)氣象數(shù)據(jù)采集終端程序中提前設(shè)置好采集周期,接著采集各傳感器獲取到的溫度和濕度以及雨量開(kāi)關(guān)信號(hào)等數(shù)字信號(hào),采用多種傳感器組合采集環(huán)境參數(shù),程序主要流程為:先給系統(tǒng)進(jìn)行上電使能初始化,接著對(duì)所使用的端口進(jìn)行初始化,定義計(jì)數(shù)周期,按預(yù)設(shè)好的請(qǐng)求指令對(duì)所用端口進(jìn)行判斷,觀察是否出現(xiàn)異常,把反饋接收到的信息先存儲(chǔ),再通過(guò)指令請(qǐng)求傳輸?shù)綌?shù)據(jù)處理系統(tǒng);開(kāi)始判斷信號(hào)請(qǐng)求指令是否開(kāi)始執(zhí)行數(shù)據(jù)采集程序,初始化傳感器后開(kāi)始采集數(shù)據(jù),通過(guò)A/D轉(zhuǎn)換數(shù)據(jù),判斷數(shù)據(jù)是否轉(zhuǎn)換完成,通過(guò)I2C 協(xié)議對(duì)環(huán)境參數(shù)進(jìn)行數(shù)據(jù)傳輸,以及進(jìn)行24 小時(shí)制的數(shù)據(jù)監(jiān)測(cè)。將采集轉(zhuǎn)換后的數(shù)據(jù)參數(shù)存儲(chǔ)到八進(jìn)制位的數(shù)組中,通過(guò)USB/RS485 通訊把數(shù)據(jù)傳輸給數(shù)據(jù)處理系統(tǒng)中。結(jié)束返回。
(2)數(shù)據(jù)處理系統(tǒng)。主要程序?yàn)椋合到y(tǒng)上電初始化,定義計(jì)數(shù)周期,判斷端口是否異常,反饋數(shù)據(jù)并顯示,判斷請(qǐng)求指令是否開(kāi)始接收數(shù)據(jù),通過(guò)RS485 協(xié)議轉(zhuǎn)換接收傳輸?shù)臄?shù)組數(shù)據(jù),判斷接收到的數(shù)組數(shù)據(jù)是否正常,反饋異常數(shù)據(jù),通過(guò)判斷數(shù)組數(shù)值轉(zhuǎn)換不同環(huán)境參數(shù)數(shù)值并存儲(chǔ)到參數(shù)變量中,再通過(guò)串口通信UART 連接通信模塊,發(fā)送請(qǐng)求信號(hào)指令判斷連接是否正常,正常則將轉(zhuǎn)換后的數(shù)據(jù)發(fā)送到云端,異常則反饋異常信號(hào)到云端。結(jié)束返回。程序流程圖如圖3、圖4所示。
圖3 氣象數(shù)據(jù)采集流程圖
圖4 數(shù)據(jù)處理系統(tǒng)流程圖
在設(shè)計(jì)好的服務(wù)器中登錄小程序。使用者可以先注冊(cè)賬號(hào),接著完成實(shí)名認(rèn)證,接下來(lái)即可進(jìn)入平臺(tái),如已注冊(cè),則可以直接登錄;若沒(méi)有注冊(cè)而直接登錄,將會(huì)有“您未注冊(cè)賬號(hào),請(qǐng)先注冊(cè)”的提示。成功進(jìn)入平臺(tái)后先創(chuàng)建屬于自己的產(chǎn)品,配置相關(guān)參數(shù),添加屬性與命令,接著下發(fā)我們?cè)O(shè)計(jì)好的MCU 代碼指令“AT+NRB”,激活設(shè)備;輸入“AT+NMGS”開(kāi)始上報(bào)數(shù)據(jù),若上報(bào)數(shù)據(jù)成功,將會(huì)有“上報(bào)數(shù)據(jù)成功”的提示信息,接著即可查看相關(guān)數(shù)據(jù);若上報(bào)數(shù)據(jù)不成功,將會(huì)打印輸出“上報(bào)數(shù)據(jù)失敗”。串口監(jiān)測(cè)數(shù)據(jù)MCU 發(fā)送指令如圖5所示。
圖5 使用沁恒串口工具監(jiān)測(cè)MCU 發(fā)送AT的指令窗口
成功登錄小程序后,用戶可以查看上傳到云端的農(nóng)作物信息,點(diǎn)擊“溫濕度”將可查看農(nóng)作物所處的土壤溫濕度;點(diǎn)擊“光照值”即可獲取當(dāng)前的光照強(qiáng)度;點(diǎn)擊“CO2濃度”即可在頁(yè)面上查看到當(dāng)前農(nóng)作物所處環(huán)境的情況;用戶還可以切換攝像頭頁(yè)面,實(shí)時(shí)監(jiān)測(cè)農(nóng)作物,不用出門(mén)就可以及時(shí)了解到作物信息,極大地減少人力、物力、財(cái)力的損失,同時(shí)觀測(cè)到是否會(huì)有破壞農(nóng)作物的行為發(fā)生,以便更好地起到保護(hù)農(nóng)作物的作用。通過(guò)物聯(lián)網(wǎng)技術(shù)的科學(xué)監(jiān)測(cè),農(nóng)民在收到信息后,可通過(guò)數(shù)據(jù)中心下達(dá)操作指令,準(zhǔn)確進(jìn)行作業(yè)灌溉,減少水資源的浪費(fèi),促進(jìn)農(nóng)業(yè)管理向自動(dòng)化方向發(fā)展[2]。通過(guò)下發(fā)MCU 代碼指令“AT+NRB”,設(shè)備被激活;輸入“AT+NMGS”即開(kāi)始上報(bào)數(shù)據(jù),接著便有數(shù)據(jù)上傳成功的提示,在小程序上可以查看到相關(guān)信息。騰訊云小程序獲取到的信息如圖6、圖7所示。
圖6 小程序頁(yè)面顯示
圖7 數(shù)據(jù)顯示大屏圖
本設(shè)計(jì)旨在研究一款幫助農(nóng)民百姓們解決傳統(tǒng)農(nóng)業(yè)種植方式的弊端的系統(tǒng),全面監(jiān)控農(nóng)作物的生長(zhǎng)信息,實(shí)現(xiàn)自動(dòng)監(jiān)測(cè)農(nóng)業(yè)生態(tài)環(huán)境的功能,保證農(nóng)業(yè)生態(tài)環(huán)境的可持續(xù)發(fā)展。借助物聯(lián)網(wǎng)技術(shù)幫助種植者隨時(shí)了解農(nóng)作物的情況,種植者在室內(nèi)就能獲取溫室內(nèi)的信息數(shù)據(jù),并借助無(wú)線數(shù)據(jù)對(duì)其進(jìn)行遠(yuǎn)程操控,完成實(shí)時(shí)監(jiān)督任務(wù),為農(nóng)作物的生長(zhǎng)提供更加良好的環(huán)境,調(diào)整農(nóng)作物的生長(zhǎng)周期,以保障農(nóng)作物的成活率[3]。當(dāng)傳感器采集到數(shù)據(jù),就會(huì)將信息上傳到云端,能夠?qū)崟r(shí)更新作物的生長(zhǎng)環(huán)境信息。傳感器采集溫濕度、CO2濃度、光照值等數(shù)據(jù),用戶通過(guò)手機(jī)APP、服務(wù)器等登錄騰訊云小程序,不用出門(mén)就能實(shí)時(shí)監(jiān)測(cè)農(nóng)作物的生產(chǎn)條件,極大地減少了人力、物力、財(cái)力的損失,擁有很大的發(fā)展前景。讓用戶實(shí)現(xiàn)農(nóng)作物增產(chǎn)增收的愿望,響應(yīng)國(guó)家號(hào)召,全面改善我國(guó)人民生活方式,提高其生活水平。