王俊博,杜洪波,梁振華,戴煜仁
(1.沈陽工業(yè)大學軟件學院,遼寧 沈陽 110870;2.沈陽工業(yè)大學理學院,遼寧 沈陽 110870)
“三農(nóng)”工作是全面建設社會主義現(xiàn)代化國家的重中之重。目前,我國的糧食產(chǎn)量問題已經(jīng)得到基本解決,但是隨著人們對食物的要求越來越高,提高農(nóng)作物質(zhì)量的任務變得愈加艱巨?,F(xiàn)階段,導致農(nóng)作物質(zhì)量下降的原因主要有兩個:一是人工培育無法精準地調(diào)動外部環(huán)境因素(如水、光和環(huán)境溫度等),二是害蟲對于農(nóng)作物的侵害。所以,需要將物聯(lián)網(wǎng)技術應用在溫室大棚中,使農(nóng)作物在適宜的環(huán)境中茁壯生長,從而提升產(chǎn)量和品質(zhì),實現(xiàn)更高的經(jīng)濟效益[1]。
為了保證接收數(shù)據(jù)的精準性,采用ZigBee技術進行大容量組網(wǎng),遠程控制大棚內(nèi)部農(nóng)業(yè)設施,最終完成設施對于農(nóng)作物生產(chǎn)條件的感知、判斷與即時處理[2]。長期噴灑農(nóng)藥會導致土壤板結(jié),使農(nóng)作物生長受到影響,所以需要結(jié)合應用智能監(jiān)測與大數(shù)據(jù)技術,實現(xiàn)對病蟲害類型的自動識別,并給出相應的防治措施[3]。該研究從環(huán)境調(diào)節(jié)和外在保護兩方面鎖定了農(nóng)作物的生長趨勢,讓本產(chǎn)品使用更為合理。
智慧農(nóng)業(yè)是農(nóng)業(yè)生產(chǎn)的高級階段,是集新興的互聯(lián)網(wǎng)、移動互聯(lián)網(wǎng)、云計算和物聯(lián)網(wǎng)技術為一體,依托部署在農(nóng)業(yè)生產(chǎn)現(xiàn)場的各種傳感節(jié)點(環(huán)境溫濕度、土壤水分、二氧化碳、圖像等)和無線通信網(wǎng)絡實現(xiàn)農(nóng)業(yè)生產(chǎn)環(huán)境的智能感知、智能預警、智能決策、智能分析、專家在線指導,為農(nóng)業(yè)生產(chǎn)提供精準化種植、可視化管理、智能化決策。其中,物聯(lián)網(wǎng)技術在智慧農(nóng)業(yè)的應用較為廣泛,具體體現(xiàn)在智慧農(nóng)業(yè)通過應用基于物聯(lián)網(wǎng)的先進技術和解決方案,實時收集并分析現(xiàn)場數(shù)據(jù)供生產(chǎn)決策的方式,達到提升運營效率、擴大收益、降低損耗的目的。近年來,精準農(nóng)業(yè)、智能灌溉、智能溫室等多種基于物聯(lián)網(wǎng)的應用都已獲得初步成效,在智能溫室應用場景,目前可以實現(xiàn)精準度較高的設備自動化管理,例如對農(nóng)作物進行自動補水、補光及提供相關環(huán)境狀況預警及自動調(diào)節(jié)大棚內(nèi)環(huán)境等功能。
智能溫室預警及其自動調(diào)節(jié)系統(tǒng)是實現(xiàn)自動化農(nóng)業(yè)管理的重要平臺,其能夠保證資源的合理分配,在農(nóng)作物種植培育的過程中受外部環(huán)境變量(例如光照度、水分狀態(tài)及溫室內(nèi)透氣情況)帶來的影響較大,而人工和部分自動化培育方式不能應時地關注農(nóng)作物的生長情況,那么,智能溫室具有的提前預警及相應的自動處理功能保證農(nóng)作物一直處在理想的生長環(huán)境中。目前,一套較為完善的智能溫室系統(tǒng)通常包括數(shù)據(jù)采集、數(shù)據(jù)傳輸、數(shù)據(jù)自動化處理及智能控制等功能,本研究的具體功能如圖1所示[4]。
圖1 智能溫室功能實現(xiàn)流程Fig.1 Function realization process of intelligent greenhouse
數(shù)據(jù)采集功能主要包含對農(nóng)作物生長環(huán)境變量信息的采集,例如土壤溫度和濕度、光照度、害蟲出現(xiàn)頻率等;利用無線傳輸功能將采集到的數(shù)據(jù)傳輸?shù)皆破脚_,便于人工的監(jiān)測,同時工作人員也可以操控云平臺對溫室內(nèi)部具體模塊發(fā)出指令,即人為可干預農(nóng)作物培育,使農(nóng)作物處于適宜的生長環(huán)境中[5];數(shù)據(jù)處理是將平臺數(shù)據(jù)按時間順序進行整理及歸納等,例如工作人員可以在平臺實時觀測病蟲害發(fā)生頻率;智能控制指的是系統(tǒng)在設計之初,設計人員在各個傳感器模塊中設定適宜的農(nóng)作物生長閾值,傳感器接收數(shù)據(jù)并判斷目前的生長環(huán)境是否符合閾值參數(shù),然后進行下一步的自動化處理,即智能灌溉、智能補光、害蟲及溫控預警等,上述操作人工亦可加以干預[6]。
(1)自動監(jiān)測功能。自動監(jiān)測功能可以實現(xiàn)全天不間斷監(jiān)測,依托傳感器自動獲取農(nóng)業(yè)種植的土壤溫度、濕度、二氧化碳濃度等實時數(shù)據(jù),通過通信模塊遠程傳輸?shù)皆破脚_,云平臺將數(shù)據(jù)上傳到數(shù)據(jù)庫中。用戶可通過云平臺、微信小程序客戶端實時查看數(shù)據(jù),以及對歷史數(shù)據(jù)做對比和分析。
(2)視頻監(jiān)控功能。系統(tǒng)通過攝像頭可以對大棚進行全景實時監(jiān)控,用戶可以在云平臺實時觀看或回放遠程視頻,用戶通過攝像頭可以觀看農(nóng)作物生長及設備運行情況,同時基于計算機視覺技術實時檢測目標葉片遭受病蟲害的面積,通過分析后判斷是否需要進行農(nóng)藥噴灑防治病蟲害,還能通過小程序報警,第一時間通知用戶種植情況,進而幫助用戶更好的管理農(nóng)作物,減少損失、提高產(chǎn)量。
(3)智能控制功能。系統(tǒng)會根據(jù)當前實時監(jiān)測的環(huán)境數(shù)據(jù)和系統(tǒng)內(nèi)設置數(shù)據(jù)進行比對分析,當監(jiān)測數(shù)據(jù)不在設置數(shù)據(jù)范圍內(nèi)時,系統(tǒng)會控制大棚補光、補水、通風等設備自動化運行,讓農(nóng)作物處于最適宜的生長環(huán)境,同時系統(tǒng)會將設備的自啟動日志提交到云平臺上,方便用戶查看。
(4)預警報警功能。當監(jiān)測環(huán)境數(shù)據(jù)超過用戶設置環(huán)境參數(shù)范圍時,系統(tǒng)會通過蜂鳴器、云平臺、微信小程序等方式報警通知用戶,讓用戶第一時間了解環(huán)境情況,用戶通過報警信息可采取相應措施,減少不必要的損失,當監(jiān)測數(shù)據(jù)處于系統(tǒng)內(nèi)設置數(shù)據(jù)區(qū)間時,會停止報警信息的發(fā)送。
基于物聯(lián)網(wǎng)的智能農(nóng)業(yè)大棚系統(tǒng)框架圖如圖2所示,主要構(gòu)成部分有無線傳感器采集數(shù)據(jù)模塊、網(wǎng)關與上位機智能監(jiān)測中心。
圖2 基于物聯(lián)網(wǎng)的智能農(nóng)業(yè)大棚系統(tǒng)框架圖Fig.2 Framework of intelligent agricultural greenhouse system based on Internet of Things
傳感器通過對農(nóng)田環(huán)境的感知,將收集到的數(shù)據(jù)匯總給主機,并將數(shù)據(jù)通過Arduino連接的發(fā)射端轉(zhuǎn)發(fā)至云平臺和小程序端。如果溫室大棚規(guī)模較大,傳感器的數(shù)量會相對較多,可以在傳感器中間安裝緩沖數(shù)據(jù)節(jié)點,將各部分數(shù)據(jù)先進行分析處理。傳感器通過ZigBee無線網(wǎng)上協(xié)議與終端進行互通作業(yè)。服務管理平臺對傳輸過來的數(shù)據(jù)進行精準的分析后,再根據(jù)大棚系統(tǒng)之前設定的最優(yōu)閾值數(shù)進行分析與對比,最后得出結(jié)果,系統(tǒng)就會進行智能識別和操作[7]。
5.2.1 系統(tǒng)設計
平臺采用B/S的模式結(jié)構(gòu),考慮到設備網(wǎng)絡環(huán)境問題,平臺采用報文較短的MQTT協(xié)議進行數(shù)據(jù)的交互,MQTT消息隊列作為中間件與設備進行數(shù)據(jù)通信交互,增加心跳等機制,對設備的意外下線能夠及時處理。
云平臺服務端如圖3所示,使用JAVA語言完成,相較于其他語言,其開發(fā)速度快、系統(tǒng)性能好。云平臺客戶端分為兩個終端,用戶可以在瀏覽器上使用云平臺監(jiān)控和查看系統(tǒng)的每個模塊,頁面操作簡潔易懂,方便用戶使用。
圖3 智慧農(nóng)業(yè)云平臺端Fig.3 Cloud platform of intelligent agriculture
手機客戶端如圖4所示,采用微信小程序云開發(fā),使用VUE漸進式框架實現(xiàn)小程序開發(fā),通過MQTT接口實現(xiàn)擬實體與服務的雙向通信,實時監(jiān)控大棚內(nèi)生產(chǎn)數(shù)據(jù),完成指令傳遞、數(shù)據(jù)收發(fā)、消息同步等功能,通過控制過程實現(xiàn)對設備的操作;小程序云開發(fā)操作簡單、維護量小。
圖4 智慧農(nóng)業(yè)微信小程序端Fig.4 WeChat applet of intelligent agriculture
5.2.2 數(shù)據(jù)庫系統(tǒng)設計
系統(tǒng)通過MySQL數(shù)據(jù)庫存儲智慧大棚內(nèi)的生產(chǎn)環(huán)境、操作等信息,然后在數(shù)據(jù)庫中創(chuàng)建多個表,用于存儲大棚內(nèi)數(shù)據(jù)和關鍵設備啟動日志。使用NGINX轉(zhuǎn)發(fā)攝像頭ONVIF協(xié)議數(shù)據(jù)流,可以實現(xiàn)大棚內(nèi)視頻的實時觀看。
采用Arduino單片機為內(nèi)核,搭配各種傳感器和操作模塊實現(xiàn)對應的功能。
傳感器模塊:由于需要對大棚內(nèi)的環(huán)境變化數(shù)據(jù)進行監(jiān)測,所以研究人員設計了自動化補光和控溫及補水模塊,采用光學傳感器和溫、濕度傳感器,獲取光照溫度和環(huán)境濕度信息,通過數(shù)據(jù)傳輸模塊將這些信息上傳到云端數(shù)據(jù)庫,并根據(jù)后臺記錄的農(nóng)作物生長數(shù)據(jù)指定對應的操作模塊進行對應操作,降低了管理成本。
數(shù)據(jù)傳輸模塊:傳輸模塊采用NB-lot模組BC20物聯(lián)網(wǎng)通信模塊,通過手機端小程序及時為管理人員提供實時農(nóng)作物的生長數(shù)據(jù),并根據(jù)農(nóng)業(yè)管理者的要求對大棚內(nèi)的響應模塊進行調(diào)控。
自動化模塊:自動化模塊采用自行設計的機械裝置,根據(jù)傳感器指令執(zhí)行相關操作,二氧化碳及氧氣補充裝置外接二氧化碳和氧氣補充瓶,通過單片機下達指令控制開合閥門進行調(diào)控,補光裝置外接光源設備,由單片機內(nèi)核控制光源的開關及調(diào)節(jié)光照強度,自動補水裝置同理。
圖像識別模塊:通過安裝攝像頭對農(nóng)田中的生物進行外觀捕獲并對比數(shù)據(jù)庫中的生物樣本,定點識別對農(nóng)作物不利的生物,通過單片機下達指令進行消滅并上傳數(shù)據(jù)至云端數(shù)據(jù)庫,云端數(shù)據(jù)庫進行分析并儲存數(shù)據(jù)以便于管理者能清晰地了解農(nóng)作物的生長環(huán)境變化。通過攝像頭也可以及時發(fā)現(xiàn)非法進入者,實時監(jiān)控實時報警,避免遭受不必要的損失。
系統(tǒng)服務器操作系統(tǒng)采用Linux Ubuntu 18.04,數(shù)據(jù)庫采用云數(shù)據(jù)庫MySQL 8.0,使用Vue框架搭配使用Element-UI對云平臺客戶端進行開發(fā),使用Vue框架開發(fā)微信小程序。
5.4.1 數(shù)據(jù)交互實現(xiàn)
系統(tǒng)采用NB-IoT的BC20模塊用于雙向通信,將模塊設置為PSM模式,當串口中斷觸發(fā)時,即可接收監(jiān)測節(jié)點采集的溫度、濕度、PH值等信息。模塊與服務器建立鏈接后,模塊即可發(fā)送數(shù)據(jù)到服務器,移動端使用MQTT協(xié)議發(fā)布信息與監(jiān)聽topic接收消息。移動端連接服務器主要代碼如下:
5.4.2 系統(tǒng)報警功能實現(xiàn)
當移動端接收監(jiān)測數(shù)據(jù)超過用戶設置環(huán)境參數(shù)范圍時,系統(tǒng)開啟蜂鳴器并且向小程序端進行報警通知,能夠讓用戶及時采取措施,減少損失。報警主要代碼如下:
5.4.3 害蟲圖像檢測
采用GrabCut算法去除前景與背景相似時的背景,圖片加載后,害蟲會被包圍在一個矩形框內(nèi),框外的圖像則被去除,最終對于害蟲進行標記,再利用下式高斯混合模型對前景和背景進行模擬并進行新的像素分布生成[8]。
本系統(tǒng)采用的是多種傳感器(溫度傳感器、濕度傳感器、光照度傳感器等)監(jiān)測并自動化調(diào)節(jié)的方式管理溫室大棚,主要連結(jié)點是將Arduino平臺搭載多種傳感器進行預警及自動補水、補光等操作,并最終上傳數(shù)據(jù)到云平臺,完成云平臺與移動端之間的交互,形成可視化界面。
本系統(tǒng)使用了溫度、濕度、光照度等傳感器,因此相關代碼的設計需要整合,傳感器主要應用代碼如下。
溫濕度傳感器主要代碼如下:
網(wǎng)絡連接服務器主要代碼如下:
為了順應農(nóng)業(yè)信息化、產(chǎn)業(yè)化發(fā)展,開發(fā)了基于物聯(lián)網(wǎng)技術的農(nóng)業(yè)大棚管理裝置,實現(xiàn)了遠程對農(nóng)作物的自動化管理,以及諸如土壤溫度、濕度和當?shù)貧庀髷?shù)據(jù)等信息的采集,此外對自動化技術進行了優(yōu)化和升級,能實時對農(nóng)作物當前的生長狀況進行判斷并進行自動化精確處理。此外,增加的蟲害管制系統(tǒng)也能對農(nóng)作物生長期間易滋生的害蟲進行及時的上報和處理,保證農(nóng)作物的安全生產(chǎn)。