張志得 冷自洋 朱 城 朱澤德 蘇亞輝
1(安徽大學(xué)電氣工程與自動(dòng)化學(xué)院 安徽 合肥 230601) 2(中科院合肥技術(shù)創(chuàng)新工程院 安徽 合肥 230088) 3(安徽大學(xué)電子信息工程學(xué)院 安徽 合肥 230601)
隨著現(xiàn)代化農(nóng)業(yè)規(guī)模的不斷發(fā)展壯大,為了減少病蟲(chóng)害對(duì)農(nóng)作物產(chǎn)量的影響,出現(xiàn)了許多農(nóng)業(yè)病蟲(chóng)害的防治方法,如物理防治、化學(xué)防治和生物防治等[1-2]。燈光誘殺是市場(chǎng)上主要的物理防治的方法之一[3]。目前殺蟲(chóng)燈大多在無(wú)人看管的野外工作,地理位置較偏僻,從部分地區(qū)的推廣情況來(lái)看,這種推廣使用的方式存在著后期維護(hù)困難的問(wèn)題[4-5]。同時(shí)也沒(méi)有建立統(tǒng)一共享的后臺(tái)中央數(shù)據(jù)管理中心,用戶無(wú)法及時(shí)了解殺蟲(chóng)燈的最新工作狀態(tài);另一方面,由于殺蟲(chóng)燈內(nèi)部結(jié)構(gòu)的復(fù)雜性,無(wú)法準(zhǔn)確地定位到故障發(fā)生的位置和惡劣天氣下斷電自我保護(hù)的功能,增加了設(shè)備維護(hù)的困難性,無(wú)法對(duì)殺蟲(chóng)燈進(jìn)行智能化管理,限制了殺蟲(chóng)燈使用效果和使用效率的提升。沒(méi)有使殺蟲(chóng)燈在植保方面的作用得到充分發(fā)揮,不能夠完全適應(yīng)我國(guó)農(nóng)業(yè)與物聯(lián)網(wǎng)相結(jié)合的發(fā)展趨勢(shì)。閆真月等[6]和馬仟等[7]分別進(jìn)行了溫室LED殺蟲(chóng)監(jiān)測(cè)系統(tǒng)和基于WSN的分布式太陽(yáng)能殺蟲(chóng)燈遠(yuǎn)程控制系統(tǒng)的研究與設(shè)計(jì),該系統(tǒng)主要實(shí)現(xiàn)對(duì)殺蟲(chóng)燈的殺蟲(chóng)數(shù)量進(jìn)行監(jiān)測(cè)和殺蟲(chóng)燈的工作環(huán)境數(shù)據(jù)以及捕捉現(xiàn)場(chǎng)的殺蟲(chóng)照片的監(jiān)測(cè),缺乏對(duì)殺蟲(chóng)燈工作狀態(tài)的實(shí)時(shí)監(jiān)控以及對(duì)殺蟲(chóng)燈的遠(yuǎn)程控制。
在現(xiàn)有相關(guān)理論研究的基礎(chǔ)之上,本文通過(guò)硬軟件相結(jié)合的方式,實(shí)現(xiàn)了殺蟲(chóng)燈電池裝置的自我保護(hù)和遠(yuǎn)程狀態(tài)的監(jiān)測(cè)和控制,從而提高了殺蟲(chóng)燈裝置工作的穩(wěn)定性、便捷性,節(jié)省了大量的勞動(dòng)力,進(jìn)一步提高了滅蟲(chóng)的效率。
整個(gè)系統(tǒng)分為兩大部分,設(shè)備終端系統(tǒng)和監(jiān)測(cè)與控制系統(tǒng)。設(shè)備終端系統(tǒng)負(fù)責(zé)采集殺蟲(chóng)燈工作狀態(tài)的各種數(shù)據(jù),通過(guò)4G無(wú)線通信[8]模塊將數(shù)據(jù)發(fā)送到監(jiān)測(cè)與控制系統(tǒng)中。監(jiān)測(cè)與控制系統(tǒng)接收到數(shù)據(jù)后,借助應(yīng)用服務(wù)器、數(shù)據(jù)庫(kù)服務(wù)器將數(shù)據(jù)存儲(chǔ)進(jìn)數(shù)據(jù)庫(kù)中,用戶便可以通過(guò)PC端或移動(dòng)端查看殺蟲(chóng)燈的各項(xiàng)工作狀態(tài)以及進(jìn)行開(kāi)關(guān)機(jī)等操作。圖1為系統(tǒng)整體架構(gòu)。
圖1 系統(tǒng)整體架構(gòu)
采用環(huán)保節(jié)能的太陽(yáng)能電池板對(duì)太陽(yáng)能LED殺蟲(chóng)燈進(jìn)行供電,系統(tǒng)硬件的整體結(jié)構(gòu)如圖2所示,總體電路分為以下三大部分:(1) 系統(tǒng)的供電電源由蓄電池和太陽(yáng)能電池板共同組成;(2) 控制器包括4G無(wú)線通信模塊、DHT11[9]溫濕度檢測(cè)模塊、攝像頭模塊等;(3) 殺蟲(chóng)燈電路部分,分別包含了高壓電擊網(wǎng)和LED燈柱,如果采用碰撞式殺蟲(chóng)燈則沒(méi)有利用高壓電進(jìn)行殺蟲(chóng)。太陽(yáng)能電池和蓄電池共同組成了太陽(yáng)能LED殺蟲(chóng)燈的電源供電系統(tǒng),兩者容量的大小直接關(guān)系到殺蟲(chóng)燈工作時(shí)間的長(zhǎng)短與使用效果。其容量大小主要依據(jù)殺蟲(chóng)燈所處地理位置的天氣、日照強(qiáng)度等因素來(lái)進(jìn)行設(shè)計(jì)[10]。
圖2 殺蟲(chóng)燈終端設(shè)備系統(tǒng)硬件結(jié)構(gòu)
終端系統(tǒng)核心功能主要包括兩個(gè)方面,數(shù)據(jù)發(fā)送功能和指令接收與終端設(shè)備控制功能,實(shí)現(xiàn)流程如圖3所示。
圖3 終端系統(tǒng)核心功能實(shí)現(xiàn)流程
服務(wù)端指的是監(jiān)測(cè)與控制系統(tǒng),終端指的是設(shè)備終端系統(tǒng)。設(shè)備終端發(fā)送數(shù)據(jù)的流程主要是首先服務(wù)端和終端分別進(jìn)行初始化,然后終端和服務(wù)端建立TCP連接,終端向服務(wù)端發(fā)送數(shù)據(jù),如果服務(wù)端沒(méi)有成功接收,則重復(fù)發(fā)送數(shù)據(jù),當(dāng)重發(fā)次數(shù)超過(guò)3次時(shí),判斷連接是否斷開(kāi),如果是則重新建立TCP連接[11],否則盡快檢查問(wèn)題所在。 指令接收與設(shè)備控制功能的實(shí)現(xiàn)流程首先也是系統(tǒng)初始化和TCP連接,連接成功后由服務(wù)端向終端發(fā)送控制指令,如果終端成功接收到指令后,便進(jìn)行相應(yīng)操作實(shí)現(xiàn)對(duì)設(shè)備的控制,如果未成功接收,則進(jìn)行數(shù)據(jù)重發(fā),重發(fā)超過(guò)3次則需要盡快檢查問(wèn)題所在。
微控制器搭載的傳感器較多,因此傳感器選型的好壞不僅關(guān)系到整個(gè)系統(tǒng)的穩(wěn)定性和可靠性,同時(shí)也會(huì)影響系統(tǒng)的成本。經(jīng)過(guò)生產(chǎn)成本的考慮和性能對(duì)比,最終選用的傳感器如下:
(1) 攝像頭模塊OV2640是選用某公司生產(chǎn)的CMOS UXGA圖像傳感器,該傳感器具有單片UXGA攝像頭和影像處理器的全部功能,由SCCB總線控制。用戶能夠?qū)φ掌|(zhì)量、傳輸方式和數(shù)據(jù)格式進(jìn)行自由控制。其電路原理如圖4所示。
圖4 OV2640外圍電路圖
(2) DHT11溫濕度模塊選用的是一款已校準(zhǔn)數(shù)字信號(hào)輸出的溫度復(fù)合傳感器,它應(yīng)用專用的數(shù)字模塊技術(shù)和溫濕度傳感技術(shù),確保產(chǎn)品具有極高的可靠性與長(zhǎng)期穩(wěn)定性。該產(chǎn)品具有成本低、長(zhǎng)期溫度、超快響應(yīng)、抗干擾能力強(qiáng)等特點(diǎn)。其電路原理如圖5所示。
圖5 DHT11電路原理圖
該系統(tǒng)使用4G模塊主要負(fù)責(zé)同監(jiān)測(cè)與控制系統(tǒng)中的TCP服務(wù)器進(jìn)行通信,向TCP服務(wù)器發(fā)送數(shù)據(jù)和接收TCP服務(wù)器發(fā)送過(guò)來(lái)的數(shù)據(jù)。本文選用EC20 R2.1 Mini PCIe-C(Audio版本)模塊。該模塊的工作電壓范圍在3.3~3.6 V,支持LTE-FDD/LTE-TDD等多種網(wǎng)絡(luò)制式。該模塊支持一路UART接口,支持一路(U)SIM接口,支持一路USB2.0接口,支持3個(gè)射頻天線接口,支持GPS定位功能。其功能框如圖6所示。
圖6 EC20 R2.1 Mini PCle-C功能框
數(shù)據(jù)庫(kù)的設(shè)計(jì)是軟件設(shè)計(jì)的一個(gè)重要環(huán)節(jié),可靠高效的數(shù)據(jù)結(jié)構(gòu)設(shè)計(jì)是系統(tǒng)安全和溫度性的前提,同時(shí)規(guī)范合理的數(shù)據(jù)庫(kù)設(shè)計(jì)不僅能提高數(shù)據(jù)的查詢效率也是后期大數(shù)據(jù)分析應(yīng)用的重要保障。本文系統(tǒng)采用的是MySQL數(shù)據(jù)庫(kù),主要包括ilamp_device_info、ilamp_data、ilamp_region、ilamp_location、ilamp_heart_beat和user表等。
通過(guò)功能的劃分,本文系統(tǒng)采用了基于B/S模型的3層結(jié)構(gòu)開(kāi)發(fā)[12],采用MVC框架[13]的設(shè)計(jì)模式和面向?qū)ο蟮腏ava語(yǔ)言進(jìn)行業(yè)務(wù)邏輯代碼的編寫(xiě),數(shù)據(jù)庫(kù)使用的是MySQL,基于JeeSite開(kāi)發(fā)框架來(lái)實(shí)現(xiàn)整個(gè)系統(tǒng)。將系統(tǒng)劃分為表現(xiàn)層、業(yè)務(wù)邏輯層和數(shù)據(jù)訪問(wèn)層。其中:表現(xiàn)層負(fù)責(zé)與用戶交互;業(yè)務(wù)邏輯層負(fù)責(zé)實(shí)現(xiàn)系統(tǒng)的業(yè)務(wù)邏輯;數(shù)據(jù)訪問(wèn)層則根據(jù)業(yè)務(wù)邏輯層包含的相關(guān)指令對(duì)數(shù)據(jù)庫(kù)進(jìn)行相應(yīng)的操作。數(shù)據(jù)訪問(wèn)層包括MySQL和阿里云對(duì)象存儲(chǔ)OSS兩個(gè)部分,MySQL主要用來(lái)存儲(chǔ)數(shù)值型數(shù)據(jù),OSS用來(lái)存儲(chǔ)圖片數(shù)據(jù)。業(yè)務(wù)邏輯層包括管理后臺(tái)業(yè)務(wù)邏輯、后臺(tái)業(yè)務(wù)邏輯和數(shù)據(jù)收集與控制命令發(fā)送服務(wù)。管理后臺(tái)業(yè)務(wù)邏輯主要負(fù)責(zé)系統(tǒng)管理相關(guān)模塊數(shù)據(jù)的增刪改查(CRUD);后臺(tái)業(yè)務(wù)邏輯主要負(fù)責(zé)設(shè)備相關(guān)數(shù)據(jù)的增刪改查操作;數(shù)據(jù)收集與控制命令發(fā)送服務(wù)主要負(fù)責(zé)接收設(shè)備終端發(fā)送過(guò)來(lái)的數(shù)據(jù)和向設(shè)備終端發(fā)送控制指令。具體的系統(tǒng)技術(shù)架構(gòu)如圖7所示。
圖7 系統(tǒng)整體技術(shù)架構(gòu)
根據(jù)業(yè)務(wù)需求分析和殺蟲(chóng)燈管理的流程,將系統(tǒng)劃分為5大功能模塊。其中5大功能模塊又包含了多個(gè)子模塊,具體功能模塊如圖8所示。
圖8 系統(tǒng)模塊劃分
3.3.1基本管理功能
基本管理功能主要包括用戶管理、區(qū)域管理和權(quán)限管理等。用戶管理由管理員錄入負(fù)責(zé)管理殺蟲(chóng)燈的個(gè)人信息。權(quán)限管理則用來(lái)通過(guò)給角色賦予不同的菜單鏈接,通過(guò)由管理員給用戶分配不同的角色,同時(shí)一個(gè)用戶可以擁有不同的角色,不同的角色又擁有不同權(quán)限,因此具有較好的靈活性。用戶登錄系統(tǒng)后所看到的界面是基于該用戶所賦予的角色來(lái)進(jìn)行訪問(wèn)的。最后在區(qū)域管理中通過(guò)配置好的用戶與該用戶所管理的區(qū)域進(jìn)行相應(yīng)的關(guān)聯(lián),從而使得用戶能夠管理該區(qū)域的所有殺蟲(chóng)燈設(shè)備。
3.3.2設(shè)備管理功能
設(shè)備管理功能主要由管理員負(fù)責(zé)錄入和管理所有的殺蟲(chóng)燈設(shè)備,其中每個(gè)殺蟲(chóng)燈擁有相應(yīng)的設(shè)備編號(hào)、設(shè)備型號(hào)、物聯(lián)網(wǎng)卡卡號(hào)等信息,可以實(shí)現(xiàn)對(duì)殺蟲(chóng)燈設(shè)備的增刪改查功能。
3.3.3行政區(qū)劃功能
行政區(qū)劃功能負(fù)責(zé)將所有的殺蟲(chóng)燈進(jìn)行區(qū)塊化管理,使得用戶能夠查看自己管轄類的所有殺蟲(chóng)燈設(shè)備,將行政區(qū)劃分為省級(jí)、市級(jí)、區(qū)縣、城鎮(zhèn)、鄉(xiāng)村等5級(jí),實(shí)現(xiàn)對(duì)殺蟲(chóng)燈設(shè)備的精細(xì)化管理。用戶通過(guò)在地圖上切換不同的區(qū)域就能夠查看到該區(qū)域所關(guān)聯(lián)的所有設(shè)備。
3.3.4參數(shù)設(shè)備功能
參數(shù)設(shè)置功能主要包括最新數(shù)據(jù)管理和設(shè)備設(shè)置管理等功能。最新?tīng)顟B(tài)管理能夠看到當(dāng)前殺蟲(chóng)燈的最新工作狀態(tài),包括啟用狀態(tài)、電池電壓狀態(tài)、燈管電流狀態(tài)、信號(hào)強(qiáng)度信息。用戶通過(guò)殺蟲(chóng)燈顏色狀態(tài)的不同可以判斷當(dāng)前該殺蟲(chóng)燈工作狀態(tài)是否正常。設(shè)備設(shè)置管理則對(duì)殺蟲(chóng)燈的開(kāi)關(guān)狀態(tài)和數(shù)據(jù)采集上傳的時(shí)間頻率進(jìn)行控制,實(shí)現(xiàn)用戶對(duì)殺蟲(chóng)燈設(shè)備的遠(yuǎn)程控制。
3.3.5在線數(shù)據(jù)接收處理功能
在線數(shù)據(jù)接收處理功能主要接收由硬件設(shè)備將采集到的數(shù)據(jù)通過(guò)4G無(wú)線通信模塊傳送到遠(yuǎn)端服務(wù)器和用戶通過(guò)Web端對(duì)殺蟲(chóng)燈進(jìn)行相應(yīng)的遠(yuǎn)程控制的雙向操作數(shù)據(jù)。網(wǎng)絡(luò)傳輸功能的實(shí)現(xiàn)主要是通過(guò)Netty框架,編寫(xiě)TCP服務(wù)器,實(shí)現(xiàn)數(shù)據(jù)的接收和控制指令的發(fā)送。Netty是基于異步事件驅(qū)動(dòng)的NIO框架[14-15]。
通過(guò)監(jiān)測(cè)與控制系統(tǒng)查詢功能的實(shí)現(xiàn),可以對(duì)殺蟲(chóng)燈的最新工作狀態(tài)進(jìn)行及時(shí)監(jiān)測(cè)。設(shè)備最新?tīng)顟B(tài)監(jiān)測(cè)界面如圖9所示,主要展示了不同設(shè)備編號(hào)的殺蟲(chóng)燈所對(duì)應(yīng)的啟用狀態(tài)、電池電壓狀態(tài)、燈管電流狀態(tài)等信息,用戶通過(guò)狀態(tài)顏色的不同可以直接判斷該殺蟲(chóng)燈當(dāng)前工作狀態(tài)是否正常。例如當(dāng)顏色為綠色時(shí)表示正常,為紅色時(shí)表示異常。同時(shí)對(duì)于工作有異常的殺蟲(chóng)燈,通過(guò)GPS快速定位功能可以準(zhǔn)確清楚地知道當(dāng)前設(shè)備所處的地理位置,從而快速地通知相關(guān)技術(shù)人員前往現(xiàn)場(chǎng)進(jìn)行維修。GPS定位界面如圖10所示。殺蟲(chóng)燈開(kāi)關(guān)狀態(tài)及數(shù)據(jù)上傳頻率如圖11所示。
圖9 殺蟲(chóng)燈最新?tīng)顟B(tài)監(jiān)測(cè)界面
圖10 GPS定位界面
圖11 殺蟲(chóng)燈狀態(tài)設(shè)置界面
本文設(shè)計(jì)一種物聯(lián)網(wǎng)殺蟲(chóng)燈遠(yuǎn)程狀態(tài)監(jiān)測(cè)與控制系統(tǒng)。通過(guò)利用各類傳感器對(duì)殺蟲(chóng)燈各項(xiàng)工作參數(shù)進(jìn)行定時(shí)的采集和利用4G無(wú)線通信模塊進(jìn)行遠(yuǎn)程實(shí)時(shí)傳輸,有效地解決了現(xiàn)有需要人工到現(xiàn)場(chǎng)去查看并檢測(cè)設(shè)備是否正常工作以及人工維護(hù)效率低下等問(wèn)題。同時(shí)將Internet網(wǎng)絡(luò)和4G無(wú)線通信技術(shù)二者相結(jié)合,為分布在偏僻地理位置的殺蟲(chóng)燈終端設(shè)備的數(shù)據(jù)采集與監(jiān)測(cè)控制提供了有效的技術(shù)解決途徑,具有一定的應(yīng)用前景和實(shí)用價(jià)值。此外,用戶可以通過(guò)在后臺(tái)監(jiān)測(cè)中心查看遠(yuǎn)程傳輸?shù)默F(xiàn)場(chǎng)殺蟲(chóng)圖片和殺蟲(chóng)數(shù)量,通過(guò)觀察殺蟲(chóng)效果從而靈活地遠(yuǎn)程調(diào)整殺蟲(chóng)燈的開(kāi)關(guān)機(jī)時(shí)間,使得殺蟲(chóng)效率達(dá)到最優(yōu)化,促進(jìn)農(nóng)作物增產(chǎn)增收。