贠汝文 , 王亞娟 , 辛 華
(黑龍江能源職業(yè)學(xué)院機(jī)電工程系,黑龍江 雙鴨山 151100)
我國是農(nóng)業(yè)病蟲害多發(fā)國家[1],在農(nóng)業(yè)生產(chǎn)中,病蟲害一直是重要影響因素,其解決辦法之一是人工巡查。人工巡查作物病蟲害的優(yōu)勢(shì)是能夠近距離觀察作物的生長情況,較為全面地掌握第一手病蟲害資料;缺點(diǎn)是排查效率低,在對(duì)癥處理上不能利用智能化技術(shù)制訂較為科學(xué)的工作方案[2]。現(xiàn)在病蟲害防治一般有化學(xué)、生態(tài)、生物等手段。由于生態(tài)和生物防治方法見效慢,因此大部分病蟲害控制采用化學(xué)防治的方式。長期大規(guī)模地使用化學(xué)農(nóng)藥雖然增加了農(nóng)業(yè)產(chǎn)出,但是不可避免地對(duì)生態(tài)環(huán)境造成了污染,影響了生態(tài)平衡,造成社會(huì)公害[3]。
因此,合理安全地使用農(nóng)藥化肥,減少化學(xué)藥品對(duì)環(huán)境的污染成為當(dāng)前科研工作者們的重要課題。在既能提高農(nóng)作物產(chǎn)量又能消滅病蟲害的前提下,合理施用化學(xué)藥品的關(guān)鍵技術(shù)之一是能快速準(zhǔn)確地獲取農(nóng)作物病蟲害信息,這樣就可以根據(jù)病蟲害信息,采取有效的手段進(jìn)行科學(xué)、合理的防治,減少因病蟲害帶來的經(jīng)濟(jì)損失。
當(dāng)前,我國農(nóng)民文化素質(zhì)有所提高,但還達(dá)不到與農(nóng)業(yè)生產(chǎn)相互適應(yīng)的程度,在作物遭蟲災(zāi)、患病的時(shí)候他們急需尋求專業(yè)人士進(jìn)行診斷與指導(dǎo),但是由于地域和專家數(shù)量的限制,無法及時(shí)得到科學(xué)必要的指導(dǎo)。基于此,課題組提出了一種結(jié)合網(wǎng)絡(luò)、圖像、通信、嵌入式等多種技術(shù)的解決方法,即構(gòu)建一套農(nóng)作物病蟲害檢測(cè)專家系統(tǒng),以此來代替農(nóng)業(yè)專家深入田間地頭進(jìn)行診斷。
下位機(jī)主要由Arduino 開發(fā)板加相應(yīng)的作物生產(chǎn)因數(shù)的采集傳感器組成,利用485 串口通信的功能,在可調(diào)的時(shí)間間隔區(qū)間范圍內(nèi)把Arduino 下位機(jī)采集到的作物生產(chǎn)信息及病害信息傳輸?shù)缴衔粰C(jī)中進(jìn)行儲(chǔ)存分析判定,在下位機(jī)中主要采集了生長作物環(huán)境的溫度和濕度以及作物的生產(chǎn)圖像信息。環(huán)境信息使用了簡單通用的DHT11 傳感器,多點(diǎn)掛接在Arduino 開發(fā)板上,可大范圍定點(diǎn)定時(shí)地監(jiān)測(cè)溫濕度的變化,當(dāng)環(huán)境變化超出設(shè)定的范圍會(huì)有相應(yīng)的下位機(jī)蜂鳴報(bào)警,也可以在上位機(jī)報(bào)警,并且通過網(wǎng)絡(luò)把報(bào)警信息傳輸?shù)奖O(jiān)控者管理者的手機(jī)上,同時(shí)通過OV7670 攝像頭拍照的功能定時(shí)針對(duì)作物進(jìn)行拍照取片,同溫濕度等環(huán)境因子一起通過串口上傳到控制中心服務(wù)器電腦中進(jìn)行儲(chǔ)存分析發(fā)布。本系統(tǒng)最終的系統(tǒng)硬件構(gòu)架圖如圖1 所示。

圖1 系統(tǒng)硬件構(gòu)架圖
采用的圖像傳感器是由OV(OmniVision)公司生產(chǎn)的OV7670,它是一顆1/6 寸的CMOS VGA 圖像傳感器,該傳感器體積小,工作電壓低[4],并且?guī)IFO模塊。之所以必須用帶FIFO 模塊的攝像頭是因?yàn)锳rduino UNO速度比較慢,帶FIFO模塊可以將攝像頭取到的圖像數(shù)據(jù)暫存在FIFO 里,然后再由Arduino 慢慢將拍攝暫存的數(shù)據(jù)讀取出來,通過串口發(fā)送到串口上位機(jī)顯示。
由于OV7670 的時(shí)鐘是24 MHz 的,所以它提供24 MHz 的像素時(shí)鐘(PCLK)輸出。FIFO 提供3 Mbps的視頻幀緩沖存儲(chǔ)器,OV7670 與Arduino 的信息交流是通過I2C 接口運(yùn)行的,本項(xiàng)目使用的是內(nèi)置庫。我們只需把相應(yīng)的庫文件加進(jìn)程序即可,因此要把ArduinoIDE 的內(nèi)置庫I2C 類庫加進(jìn)程序中,兩者的硬件連線圖如圖2 所示。

圖2 Arduino 與攝像頭模塊連線圖
在程序驅(qū)動(dòng)開發(fā)中,要編寫OV7670 設(shè)備數(shù)據(jù)讀寫、設(shè)備設(shè)置及設(shè)備初始化相應(yīng)的功能模塊,采用模塊化編程思路,編寫的相關(guān)程序如下:
unsigned char wr_Cmos7670(unsigned char regID,unsigned char regDat);//設(shè)備寫數(shù)據(jù)功能
unsigned char rdCmos7670Reg(unsigned char regID);//設(shè)備讀數(shù)據(jù)功能
unsigned char Cmos7670_init(void);//攝像頭初始化功能函數(shù)
void set_Cmos7670reg(void);// 寄存器設(shè)置函數(shù),對(duì)OV7670 內(nèi)部寄存器設(shè)置
相應(yīng)函數(shù)具體內(nèi)容如下:


Arduino 是近年來流行的開源硬件平臺(tái)[5],它是一種開源電子平臺(tái)。該平臺(tái)起源于意大利,主要基于AVR單片機(jī)微控制器和相應(yīng)的開發(fā)軟件而設(shè)計(jì),具有高度的模塊化特點(diǎn)[6]。之所以選擇Arduino 是因?yàn)樗且豢铋_源電子原型平臺(tái),不管硬件還是軟件在網(wǎng)上都是開源的,在開源協(xié)議范圍內(nèi)里可以隨意針對(duì)原有點(diǎn)設(shè)計(jì)以及代碼進(jìn)行裁剪改編,并且它具有使用類似Java、C 語言的Processing/Wiring 開發(fā)環(huán)境,與上位機(jī)開發(fā)軟件同屬于一個(gè)系列,整體上保證了軟件開發(fā)的流暢性。系統(tǒng)程序整體流程圖如圖3所示。

圖3 系統(tǒng)程序流程圖
在本設(shè)計(jì)中采用了B/S 框架模式,該架構(gòu)具備運(yùn)行穩(wěn)定、操作簡單、維護(hù)容易等特性[7];使用的編程工具是ASP.NET,它實(shí)質(zhì)上就是ASP 的升級(jí)版本。它保留了傳統(tǒng)技術(shù)的一些優(yōu)勢(shì),同時(shí)又結(jié)合平臺(tái)進(jìn)行補(bǔ)充使其具備更強(qiáng)大的功能與性能[8]。由于下位機(jī)要定時(shí)大量傳送環(huán)境參數(shù)等信息,使用的后臺(tái)數(shù)據(jù)庫是Oracle 11g,它性能高、伸展性強(qiáng)、可用性和安全性好,且能方便地在低成本服務(wù)器和存儲(chǔ)設(shè)備組成的網(wǎng)格上運(yùn)行。
上位服務(wù)網(wǎng)站收集從下位機(jī)各客戶端回傳過來的溫濕度、光照、二氧化碳和作物的圖像等信息,能夠把這些有用的數(shù)據(jù)放到數(shù)據(jù)中存儲(chǔ)備用。網(wǎng)站使用SOL 技術(shù)按照前端用戶的需求把數(shù)據(jù)顯示到網(wǎng)頁上。ASP.NET 使用3 層的分布式應(yīng)用模型,按功能劃分為3 個(gè)組件。基于三層模型開發(fā)的系統(tǒng)也有利于后期系統(tǒng)的升級(jí)與維護(hù)[9],各個(gè)應(yīng)用組件根據(jù)它們所在的層分布在不同的位置上。普通用戶僅需要一臺(tái)可以上互聯(lián)網(wǎng)的機(jī)器,并安裝相應(yīng)的網(wǎng)頁瀏覽(如InternetExplorer)工具,就可以使用本系統(tǒng)。系統(tǒng)流程圖如圖4 所示。

圖4 系統(tǒng)流程圖
該農(nóng)作物病蟲害檢測(cè)專家系統(tǒng)具有的主要功能有:可實(shí)時(shí)在線顯示作物生長環(huán)境參數(shù)信息,并可以按照時(shí)間查詢相關(guān)的環(huán)境參數(shù),針對(duì)數(shù)據(jù)中已經(jīng)收集的信息通過內(nèi)部數(shù)據(jù)的分析計(jì)算給出作物長勢(shì)建議,并對(duì)病發(fā)的作物作出分析診斷,同時(shí)會(huì)把病發(fā)作物的現(xiàn)場(chǎng)圖片通過網(wǎng)絡(luò)的方式傳輸給專家,讓專家在第一時(shí)間給出診斷治療意見。
作物信息采集的智能化和信息化是實(shí)施精細(xì)農(nóng)業(yè)的關(guān)鍵技術(shù)之一[10]。課題組針對(duì)農(nóng)業(yè)生產(chǎn)植物病害與生長環(huán)境監(jiān)測(cè)診斷需要,將當(dāng)前流行的嵌入式、電子通信、數(shù)據(jù)庫大數(shù)據(jù)等多種技術(shù)應(yīng)用在溫室大棚監(jiān)測(cè)管控中,為遠(yuǎn)程的管理者和專家提供了定時(shí)間隔的作物生產(chǎn)環(huán)境信息與作物圖像信息,從而讓不能深入現(xiàn)場(chǎng)的專家掌握作物第一手生長或者病發(fā)資料,為農(nóng)業(yè)的豐產(chǎn)高產(chǎn)保駕護(hù)航,以促進(jìn)我國農(nóng)業(yè)建設(shè)的智能化和信息化發(fā)展。