趙睿 程鑫 徐曉輝 宋濤 孫圓龍
摘要: 為了解決溫室植物病害預(yù)警、防治不及時的問題,設(shè)計(jì)了一種基于粒子群優(yōu)化的支持向量機(jī)(PSO-SVR)模型的溫室物聯(lián)網(wǎng)預(yù)警系統(tǒng)。系統(tǒng)通過對觀測數(shù)據(jù)進(jìn)行分析訓(xùn)練,進(jìn)而建立起植物病害預(yù)警模型,根據(jù)預(yù)測結(jié)果,結(jié)合易產(chǎn)生黃瓜病害的環(huán)境參數(shù)范圍選擇是否向用戶發(fā)出預(yù)警警報,利用溫室物聯(lián)網(wǎng)控制技術(shù)實(shí)現(xiàn)對植物病害的生態(tài)防治。同時系統(tǒng)可以向搭載Android平臺的設(shè)備發(fā)送提醒消息,并可以進(jìn)行遠(yuǎn)程監(jiān)控。該系統(tǒng)利用Wi-Fi技術(shù)將傳感器系統(tǒng)和嵌入式設(shè)備組成星型網(wǎng)絡(luò),根據(jù)傳感器返回的有效環(huán)境參數(shù)數(shù)據(jù),通過PSO-SVR模型對溫室溫度、濕度參數(shù)進(jìn)行預(yù)測,預(yù)測準(zhǔn)確率分別為97.6%、96.8%,可以用作理論指導(dǎo)。測試結(jié)果表明,該系統(tǒng)響應(yīng)時間短、運(yùn)行穩(wěn)定,可有效地監(jiān)測并預(yù)測溫室環(huán)境參數(shù),對于植物病害的防治有較好的實(shí)際作用。
關(guān)鍵詞: PSO-SVR模型;RBF核函數(shù);參數(shù)預(yù)測;預(yù)警模型
中圖分類號: S126?? 文獻(xiàn)標(biāo)識碼: A?? 文章編號: 1000-4440(2021)04-0854-07
Early warning and prevention system for plant diseases in the greenhouse based on particle swarm optimization-support vector regression (PSO-SVR) model
ZHAO Rui, CHENG Xin, XU Xiao-hui, SONG Tao, SUN Yuan-long
(School of Electronic and Information Engineering, Hebei University of Technology, Tianjin 300401, China)
Abstract: To solve the problems of lags in early warning and plant diseases prevention in the greenhouse, an early warning system of internet of things in the greenhouse based on particle swarm optimization-support vector machine (PSO-SVR) model was designed. Early warning model of plant diseases was established by the system through analyzing and training of the observed data. According to the predicted results and the scope of environmental parameters which were easy to cause cucumber diseases, the system could select whether to send early warnings to the users or not by control technology for internet of things in the greenhouse to realize ecological control of the plant diseases. At the same time, the system could send reminding messages to devices equipped with the Android platform, and could perform remote monitoring and control. The system used Wi-Fi technology to form the star network with the sensor system and the embedded device. According to the effective environmental parameter data returned by the sensor, the PSO-SVR model was used to predict the greenhouse temperature and humidity, and the prediction accuracies were 97.6% and 96.8% respectively, which could be used as theoretical direction. Test results showed that, the system responses with small time and is stable in operation, and can monitor and predict greenhouse environmental parameters effectively, which has a good practical effect on the prevention and control of plant diseases.
Key words: particle swarm optimization-support vector regression (PSO-SVR) model;RBF kernel function;parameter prediction;early warning model
溫室作為我國設(shè)施農(nóng)業(yè)的主要應(yīng)用場所,被廣泛應(yīng)用于果蔬、花卉等農(nóng)作物的生產(chǎn)中。建設(shè)現(xiàn)代化溫室的主要目的是實(shí)現(xiàn)不同季節(jié)農(nóng)產(chǎn)品的持續(xù)供應(yīng),對于溫室環(huán)境的監(jiān)測與控制一直是研究重點(diǎn)之一[1]。
目前現(xiàn)代化溫室主要利用物聯(lián)網(wǎng)技術(shù)實(shí)現(xiàn)對環(huán)境的監(jiān)測。國外已經(jīng)實(shí)現(xiàn)連棟式現(xiàn)代化大型溫室,如日本農(nóng)戶可以通過NEC、日立等公司研發(fā)的物聯(lián)網(wǎng)技術(shù),在家中的電腦或手機(jī)上實(shí)現(xiàn)溫室環(huán)境數(shù)據(jù)監(jiān)測和控制[2-3]。國內(nèi)對于溫室物聯(lián)網(wǎng)的研究也趨于成熟。楊文奇等[4]研發(fā)了一種溫室物聯(lián)網(wǎng)實(shí)時監(jiān)測系統(tǒng),可以監(jiān)控溫室環(huán)境因子。朱均超等[5]建立了基于物聯(lián)網(wǎng)的大棚遠(yuǎn)程檢測系統(tǒng),可以對農(nóng)業(yè)大棚的環(huán)境參數(shù)進(jìn)行遠(yuǎn)程監(jiān)測。綜上所述,目前中國的溫室物聯(lián)網(wǎng)已經(jīng)具備了對環(huán)境的實(shí)時、遠(yuǎn)程監(jiān)控功能。
但是目前我國對于環(huán)境參數(shù)的利用還多停留在監(jiān)測階段,不能為生產(chǎn)環(huán)境的變化提供指導(dǎo)[6]。對于預(yù)警方法也多停留在根據(jù)當(dāng)前溫室環(huán)境參數(shù)發(fā)出警報階段。這樣的預(yù)警方式不僅效率低,而且不夠智能化[7]。許多學(xué)者在溫室內(nèi)部環(huán)境參數(shù)的預(yù)測方面取得了一定進(jìn)展,并且應(yīng)用到了預(yù)警方法中[8-10]。本研究在已有溫室環(huán)境參數(shù)的實(shí)時監(jiān)測基礎(chǔ)上,增加環(huán)境參數(shù)預(yù)測功能,利用粒子群優(yōu)化的支持向量機(jī)(PSO-SVR)模型建立預(yù)警方法,并利用物聯(lián)網(wǎng)技術(shù)實(shí)現(xiàn)自動化生態(tài)防治。
1 系統(tǒng)組成和工作原理
1.1 總體設(shè)計(jì)
本系統(tǒng)主要利用溫室物聯(lián)網(wǎng)技術(shù)[11-12],系統(tǒng)的總體設(shè)計(jì)如圖1所示。
系統(tǒng)通過在農(nóng)業(yè)設(shè)施現(xiàn)場布置的環(huán)境數(shù)據(jù)采集節(jié)點(diǎn)收集環(huán)境數(shù)據(jù),通過網(wǎng)關(guān)傳給遠(yuǎn)程嵌入式設(shè)備,搭載Android的嵌入式設(shè)備通過PSO-SVR模型進(jìn)行溫濕度預(yù)測,當(dāng)溫濕度達(dá)到閾值時發(fā)出預(yù)警警報并將信息傳遞至移動設(shè)備。系統(tǒng)同時可以進(jìn)行自動溫濕度調(diào)控,在發(fā)出預(yù)警警報后,可自動進(jìn)行升溫除濕,也可以選擇關(guān)閉該功能,對其進(jìn)行手動控制。
1.2 數(shù)據(jù)采集節(jié)點(diǎn)
數(shù)據(jù)采集節(jié)點(diǎn)框圖如圖2所示。
數(shù)據(jù)采集節(jié)點(diǎn)處理器采用STC8A8K64S4A12芯片;Wi-Fi模塊選用低功耗、體積小、穩(wěn)定性高的USR-C215模塊,支持802.11 b/g/n標(biāo)準(zhǔn),傳輸距離為200~300 m。
空氣溫度傳感器選用DS18B20模塊,測量范圍為-55~125 ℃,測量精準(zhǔn)度為0.5 ℃;空氣濕度傳感器選用DHT11模塊,測量范圍為20%~95%,測量精準(zhǔn)度為5%;土壤溫濕度傳感器選用ZZ-S-GTH-C模塊,測量精準(zhǔn)度分別為0.5℃、3.0%;光照度傳感器選用BH1750FVI模塊,測量范圍為0~65 535 lx;CO2體積比傳感器選用MG811模塊,測量范圍為0~10 000 μl/L。
1.3 數(shù)據(jù)去噪
在溫室環(huán)境中,環(huán)境參數(shù)傳感器內(nèi)部損壞、電源波動、電路噪聲等原因,可能會導(dǎo)致其輸出信號發(fā)生變化,產(chǎn)生不準(zhǔn)確的輸出。本系統(tǒng)采用一種基于Greubbs檢驗(yàn)的均值法,降低噪聲干擾(圖3)。
1.4 通信方式
整個系統(tǒng)的通信可以分為2個部分:以嵌入式設(shè)備為分界點(diǎn),上層嵌入式設(shè)備、云服務(wù)中心、移動設(shè)備為基于HTTP協(xié)議的B/S通信方式;嵌入式設(shè)備和下位機(jī)之間為基于SOCKET+TCP的C/S通信方式[13-14]。
2 溫室預(yù)警方法
2.1 PSO-SVR模型
SVR是使用SVM(Support vector machine,支持向量機(jī))擬合曲線的一種方法[15],常用作回歸分析,具有小樣本、非線性、高維模式識別等特點(diǎn)[16]。PSO屬于群體優(yōu)化算法,PSO算法流程如圖4所示。
使用PSO算法對SVR的懲罰參數(shù)c和核函數(shù)參數(shù)g進(jìn)行尋優(yōu),提高模型的魯棒性,降低訓(xùn)練的復(fù)雜度。PSO-SVR模型的建立流程如圖5所示。
2.2 PSO-SVR模型的輸入與預(yù)處理
模型的輸入采用滑動窗口模型。如圖6所示,將數(shù)據(jù)按照時間序列形成數(shù)據(jù)流,滑動窗口模型的核心是保持窗口尺寸不變,窗口內(nèi)的時間序列數(shù)據(jù)為參與的自變量,窗口右側(cè)始終為預(yù)測值。通過試驗(yàn),選取窗口長度為4。
滑動窗口模型將數(shù)據(jù)標(biāo)準(zhǔn)化后,再使用min-max方法進(jìn)行歸一化處理,其表達(dá)式為:
x′=x-min(x)max(x)-min(x)
2.3 PSO-SVR模型的訓(xùn)練、測試及分析
對天津市某黃瓜溫室2019年10月1日至2019年10月31日的溫濕度數(shù)據(jù)進(jìn)行訓(xùn)練研究,分為427組訓(xùn)練數(shù)據(jù)和44組測試數(shù)據(jù),訓(xùn)練數(shù)據(jù)為每日中2 h數(shù)據(jù),具體數(shù)據(jù)如圖7、圖8所示。
PSO利用Matlab環(huán)境下的Libsvm-FarutoUltimate工具包,設(shè)置局部搜索能力c1=1.5,全局搜索能力c2=1.7,慣性權(quán)重因子w=1,最大種群數(shù)量sizepop=20和最大進(jìn)化數(shù)量maxgen=200。尋優(yōu)得到如下結(jié)果:c=32,g=0.93。
SVR模型使用的是臺灣林智仁(Chih-Jen Lin)教授等開發(fā)的軟件包LIBSVM。需要設(shè)置的參數(shù)除了經(jīng)過PSO尋優(yōu)得到的懲罰參數(shù)c、核函數(shù)參數(shù)g,還有核函數(shù)類型,核函數(shù)的數(shù)學(xué)表達(dá)式如表1所示。
分別使用4種核函數(shù)進(jìn)行試驗(yàn),將訓(xùn)練和測試后的準(zhǔn)確性指標(biāo)MSE(Mean squared error,均方誤差)和R2(Squared correlation coefficient,決定系數(shù))的平均值進(jìn)行對比,結(jié)果如表2所示。
經(jīng)過對比可以看出,選用RBF核函數(shù)時,模型效果最好,擬合度最高。通過分析測試值和實(shí)際值可知,溫度平均相對誤差為2.4%,濕度平均相對誤差為3.2%,預(yù)測準(zhǔn)確率分別為97.6%和96.8%。測試值和實(shí)際值的曲線對比如圖9、圖10所示。
2.4 溫室環(huán)境預(yù)警方法
結(jié)合韓振榮[17]的研究結(jié)果,建立了溫室黃瓜霜霉病、角斑病、白粉病3種病害的溫濕度預(yù)警模型,警報分為黃色警報、橙色警報和紅色警報(表3)。
系統(tǒng)每30 min收集1次環(huán)境參數(shù)數(shù)據(jù),若當(dāng)前環(huán)境參數(shù)和預(yù)測環(huán)境參數(shù)均達(dá)到預(yù)警模型閾值,則發(fā)出相應(yīng)的預(yù)警提醒,通知用戶及早對病態(tài)植株進(jìn)行隔離或者治療。在警報為橙色或紅色時系統(tǒng)作出相應(yīng)的自動控制決策(白天升溫至25~30 ℃,夜間除濕至35%~40%),將環(huán)境條件控制在適宜病害發(fā)生的范圍之外,做到生態(tài)防治。預(yù)警方法流程如圖11所示。
3 結(jié)果與分析
3.1 嵌入式設(shè)備開發(fā)
本系統(tǒng)的嵌入式設(shè)備選用搭載Android平臺的開發(fā)板,處理器為三星Exynos4412四核心,主頻為1.6 GHz,搭載1 GB的雙通道DDR3運(yùn)行內(nèi)存,4 GB固態(tài)硬盤EMMC存儲。開發(fā)環(huán)境選取Android Studio 2.3.3,Java JDK(Java development kit),版本為1.8.0;數(shù)據(jù)庫管理選用Android SDK的platform-tools目錄下的sqlite3.exe文件,可以執(zhí)行類似MySQL提供的命令行窗口。
APP客戶端的開發(fā)模式選用Android常用的MVP模式。在軟件開發(fā)中,通常使用MVC模式,但是在Android開發(fā)中,Activity的存在不能明確地區(qū)分View和Controller,因?yàn)槠浔旧砭哂蠽iew和Controller二者的性質(zhì),如果采取MVC模式開發(fā),會使Activity的耦合性變得很高。當(dāng)后期維護(hù)時,可能需要改動整個APP代碼。
MVP模式較好地解決了MVC的弊端,Model和View通過Presenter進(jìn)行交互,這時Activity基本完全充當(dāng)了View的角色,View和Model不直接進(jìn)行交互,這樣使二者的改動更方便,解耦性更強(qiáng),不會對整個APP進(jìn)行大量的變動(圖12)。
利用Matlab和Android混合編程,首先利用Matlab軟件實(shí)現(xiàn)PSO-SVR模型搭建,并對模型進(jìn)行完整訓(xùn)練及網(wǎng)絡(luò)測試,得到優(yōu)化后的預(yù)測模型。將模型的函數(shù)、訓(xùn)練結(jié)果及訓(xùn)練數(shù)據(jù)打包成jar包,將其添加為Android的外部依賴,在Android工程中編寫調(diào)用該jar包的接口調(diào)用函數(shù),通過傳入輸入變量得到結(jié)果。
APP客戶端的主界面采用Android自帶的support-v7包中的CardView作為內(nèi)容填充,界面簡潔美觀。在主界面進(jìn)行下拉刷新即可刷新環(huán)境數(shù)據(jù),當(dāng)達(dá)到預(yù)警范圍時,系統(tǒng)會出現(xiàn)Notification。主界面效果如圖13所示。
點(diǎn)擊Notification會進(jìn)入預(yù)警系統(tǒng)界面,顯示易生病害警報等級,點(diǎn)擊病害會跳轉(zhuǎn)至病害百科界面,顯示病害的百度百科。預(yù)警界面顯示效果如圖14所示。
點(diǎn)擊主界面的卡片,會進(jìn)入數(shù)據(jù)可視化界面,本系統(tǒng)利用MPAndroidChart框架,實(shí)現(xiàn)了當(dāng)日和昨日的數(shù)據(jù)顯示,可以切換折線圖和柱狀圖。圖表的下方顯示PSO-SVR模型預(yù)測結(jié)果,即30 min和60 min后的預(yù)測結(jié)果??梢暬缑嫘Ч鐖D15所示。
3.2 系統(tǒng)測試
系統(tǒng)測試主要分為功能測試和性能測試,均為黑盒測試。
功能測試采用常用的Monkey測試法,對運(yùn)行在Android設(shè)備或者模擬機(jī)上的Android應(yīng)用進(jìn)行模擬點(diǎn)擊測試,在指定次數(shù)的情況下模擬用戶點(diǎn)擊事件,從而測試應(yīng)用系統(tǒng)的穩(wěn)定性。試驗(yàn)次數(shù)設(shè)定為5 000次,在測試期間沒有出現(xiàn)ANR(Application not responding)現(xiàn)象和FC(Force close)現(xiàn)象,全部功能運(yùn)行正常無卡頓。Monkey測試結(jié)果表明APP在運(yùn)行期間有著良好的穩(wěn)定性。
性能測試?yán)肁ndroid Studio選項(xiàng)卡中的Android Monitor自帶的Monitors,監(jiān)測程序運(yùn)行期間的Memory(內(nèi)存占用率)和CPU(處理器占用率)情況,從而測試應(yīng)用在運(yùn)行期間的整體性能。在Monkey測試的同時,觀察Android Studio的Monitors選項(xiàng)卡,其中Memory最高占有率為85.68 MB,平均為47.56 MB;CPU最高占用率為42%,平均為27%。
4 結(jié)論
為了實(shí)現(xiàn)溫室數(shù)據(jù)的有效利用,做到病害的早預(yù)警、早防治,本系統(tǒng)設(shè)計(jì)了一種基于PSO-SVR模型的溫室病害預(yù)警系統(tǒng),可對溫室環(huán)境參數(shù)進(jìn)行充分的利用。系統(tǒng)基于溫室物聯(lián)網(wǎng)技術(shù),實(shí)現(xiàn)了數(shù)據(jù)采集、數(shù)據(jù)去噪和遠(yuǎn)程控制功能。系統(tǒng)基于收集到的溫室環(huán)境數(shù)據(jù),通過PSO-SVR模型進(jìn)行參數(shù)預(yù)測,溫、濕度預(yù)測準(zhǔn)確率分別為97.6%、96.8%,結(jié)合預(yù)警模型,能夠有效地提醒用戶作出相應(yīng)措施,并能實(shí)現(xiàn)自動生態(tài)防治。系統(tǒng)客戶端基于Android平臺,實(shí)現(xiàn)了可視化監(jiān)測,操作界面友好,運(yùn)行穩(wěn)定。
參考文獻(xiàn):
[1] 秦志偉. “農(nóng)業(yè)4.0”已露尖尖角[J].農(nóng)村·農(nóng)業(yè)·農(nóng)民(B版),2015(9):4-6.
[2] 李燈華,李哲敏,許世衛(wèi),等. 先進(jìn)國家農(nóng)業(yè)物聯(lián)網(wǎng)的最新進(jìn)展及對我國的啟示[J].江蘇農(nóng)業(yè)科學(xué),2016,44(10):1-5.
[3] 劉聰鋒,戴嘯濤,儲成祥. 國外農(nóng)業(yè)物聯(lián)網(wǎng)發(fā)展經(jīng)驗(yàn)借鑒[J].通信企業(yè)管理,2015(1):62-64.
[4] 楊文奇,劉希光,郭彥克,等. 溫室環(huán)境物聯(lián)網(wǎng)監(jiān)測系統(tǒng)的設(shè)計(jì)[J].中國農(nóng)機(jī)化學(xué)報,2017,38(4):105-108,140.
[5] 朱均超,張 強(qiáng),趙 巖. 基于物聯(lián)網(wǎng)的農(nóng)業(yè)大棚環(huán)境監(jiān)測系統(tǒng)設(shè)計(jì)[J].中國農(nóng)機(jī)化學(xué)報,2018,39(9):76-80.
[6] 葛文杰,趙春江. 農(nóng)業(yè)物聯(lián)網(wǎng)研究與應(yīng)用現(xiàn)狀及發(fā)展對策研究[J].農(nóng)業(yè)機(jī)械學(xué)報,2014,45(7):222-227.
[7] 范 瓊,張 武,張雪花,等. 溫室小氣候環(huán)境監(jiān)測預(yù)警技術(shù)及應(yīng)用研究[J].中國農(nóng)機(jī)化學(xué)報,2016,37(5):71-75.
[8] 吳久江,汪 星,李 群,等. 簡易草莓大棚智慧管理系統(tǒng)設(shè)計(jì)與性能分析[J]. 農(nóng)業(yè)機(jī)械學(xué)報, 2019, 50(12):295-303.
[9] 楊俊成,李淑霞,李 亮. 基于物聯(lián)網(wǎng)與人工神經(jīng)網(wǎng)絡(luò)的溫室監(jiān)控方案[J].控制工程,2020,27(9):1649-1656.
[10]郁瑩珺,徐達(dá)宇,壽國忠,等. 基于經(jīng)驗(yàn)?zāi)B(tài)分解和小波神經(jīng)網(wǎng)絡(luò)的溫室溫濕度預(yù)測[J].江蘇農(nóng)業(yè)科學(xué),2019,47(1):211-216.
[11]劉 源,宋 濤,徐曉輝,等. 基于多元回歸模型的精準(zhǔn)光照系統(tǒng)[J].中國農(nóng)機(jī)化學(xué)報,2019,40(6):162-166.
[12]張傳帥,徐嵐俊,李小龍,等.日光溫室主要環(huán)境參數(shù)對番茄本體長勢的影響[J].中國農(nóng)業(yè)大學(xué)學(xué)報,2019,24(10):118-124.
[13]LAI Y C, AHSAN A, SHOHRAB H M, et al. Performance modeling and analysis of TCP and UDP flows over software defined networks[J]. Journal of Network and Computer Applications, 2019, 130:76-88.
[14]WILLIAM D G. Using node and socket information to implement MPI Cartesian topologies[J]. Parallel Computing, 2019, 85:98-108.
[15]李 飛,蔣敏蘭. 基于支持向量機(jī)回歸的蛋雞產(chǎn)蛋率預(yù)測模型[J]. 江蘇農(nóng)業(yè)科學(xué),2019,47(13):249-252.
[16]程 鑫,徐曉輝,宋 濤,等. 基于PSO-SVR模型的溫室智能補(bǔ)光系統(tǒng)研究[J].中國農(nóng)機(jī)化學(xué)報,2020,41(6):64-68,82.
[17]韓振榮. 溫室黃瓜病蟲害監(jiān)測預(yù)警系統(tǒng)研究與實(shí)現(xiàn)[D].泰安:山東農(nóng)業(yè)大學(xué),2017.
(責(zé)任編輯:張震林)
收稿日期:2020-12-15
基金項(xiàng)目:河北省重點(diǎn)研發(fā)計(jì)劃項(xiàng)目(19227212D、20327201D);石家莊市重點(diǎn)研發(fā)計(jì)劃項(xiàng)目(191490144A、191130154A)
作者簡介:趙 睿(1995-),女,河北邢臺人,碩士研究生,研究方向?yàn)殡娮蛹夹g(shù)與智能系統(tǒng)。(E-mail)Zhao_ruiGZ@163.com
通訊作者:徐曉輝,(E-mail)xxh@hebut.edu.cn