徐燁輝,孫祚軒,王建強,鄭榮杰,劉 暐,時志國
(1.河北水利電力學(xué)院,河北 滄州 061001;2.滄州瑞格雷德電子科技有限公司,河北 滄州 061001)
現(xiàn)階段,我國淡水資源可持續(xù)供應(yīng)能力不足,北方地區(qū)尤為嚴(yán)重。傳統(tǒng)粗放式灌溉方式使水資源浪費巨大,極大限制了我國農(nóng)業(yè)的開發(fā)[1],也加劇了水資源的緊張程度。據(jù)統(tǒng)計,有1.35億hm2農(nóng)田的灌溉水利用率僅有52%[2],研究農(nóng)田精準(zhǔn)灌溉對解決這一問題具有非常積極的現(xiàn)實意義。
我國引入以色列農(nóng)田精準(zhǔn)灌溉技術(shù),但受到中國農(nóng)業(yè)地形復(fù)雜等因素制約,造成其節(jié)水效率不高,僅比漫灌提高15%~30%,且成本較高,因此推廣效果不佳。為了提高水資源利用率,設(shè)計一套通過算法控制植物灌溉水流量,達到精確灌溉的實時控制。該系統(tǒng)能夠?qū)崿F(xiàn)自動控制與遠(yuǎn)程監(jiān)視,節(jié)約水資源的同時還能方便農(nóng)戶管理作物。通過分析研究國內(nèi)外對植物精準(zhǔn)灌溉技術(shù)的實際需求,結(jié)合我國農(nóng)業(yè)灌溉系統(tǒng)現(xiàn)狀,研發(fā)了適合我國農(nóng)業(yè)生產(chǎn)的精準(zhǔn)灌溉智能控制系統(tǒng)。
通過對系統(tǒng)需求進行分析,設(shè)計了一款精準(zhǔn)灌溉智能控制系統(tǒng),遵循設(shè)計原則,采用上、下位機結(jié)構(gòu)。其中,上位機由觸模屏與Arduino Mega 2560構(gòu)成,主要負(fù)責(zé)接收系統(tǒng)參數(shù)、記錄和顯示系統(tǒng)數(shù)據(jù)、監(jiān)控系統(tǒng)運行狀態(tài)和傳送數(shù)據(jù)至云端等。下位機以ESP32-WROOM為主,主要負(fù)責(zé)傳感器數(shù)據(jù)采集、數(shù)據(jù)發(fā)送和控制執(zhí)行機構(gòu)。
精準(zhǔn)灌溉智能控制系統(tǒng)的總體結(jié)構(gòu)如圖1所示。該系統(tǒng)由上位機總機和各分節(jié)點構(gòu)成,每個節(jié)點都配有相應(yīng)的檢測模塊和驅(qū)動機構(gòu)。上位機總機和各分節(jié)點之間通過ESP32-WROOM模塊進行信號傳輸,節(jié)點之間采用ESPNOW技術(shù)傳輸數(shù)據(jù)。檢測模塊主要用于對作物進行基本情況檢測,并將所檢測到的數(shù)據(jù)發(fā)送到分節(jié)點。各分節(jié)點將數(shù)據(jù)信息通過打包發(fā)送到上位機總機,經(jīng)過總機整理后再發(fā)送到云端服務(wù)器[3-4]。總機結(jié)合各節(jié)點作物情況和Wi-Fi模塊發(fā)送的網(wǎng)絡(luò)預(yù)測天氣情況,利用算法做出智慧決策,從而確定灌溉時間和灌溉地塊。

圖1 系統(tǒng)總體結(jié)構(gòu)
系統(tǒng)檢測到作物需要灌溉時,首先確定需要灌溉的節(jié)點,然后再精確到每個節(jié)點對應(yīng)的地塊。系統(tǒng)根據(jù)控制器輸出的控制指令打開相應(yīng)的驅(qū)動機構(gòu)(如繼電器、電磁閥等),通過灌溉支路將水溶液輸送到指定地塊進行精準(zhǔn)灌溉,根據(jù)控制器輸入的灌溉時間來完成作物灌溉,系統(tǒng)同時將作物信息反饋到云端服務(wù)器。
控制系統(tǒng)硬件主要分為主機與從機,由于從機可為多個且設(shè)計內(nèi)容一致,所以用從機n表示各從機,其中從機主要包括傳感器模塊與執(zhí)行機構(gòu)模塊。
系統(tǒng)硬件結(jié)構(gòu)模塊如圖2所示。在各節(jié)點傳感器與單片機之間利用ESPNOW技術(shù)通訊,實現(xiàn)節(jié)點間無線互聯(lián)通信。再通過ESPNOW技術(shù)聯(lián)通主機單片機(Arduino Mega 2560)與觸模顯示屏,在云端主機上的用戶通過登錄相應(yīng)賬戶也可以看到信息提示,從而進行網(wǎng)絡(luò)遠(yuǎn)程監(jiān)測。

圖2 系統(tǒng)硬件結(jié)構(gòu)模塊圖
Arduino Mega 2560是一款基于ATmega 2560微控制器的開發(fā)板,具有54個數(shù)字輸入/輸出引腳(其中15個可用作PWM輸出)、16個模擬輸入、4個UART(硬件串行端口)、一個16 MHz晶振、一個USB連接、一個電源插座、一個ICSP頭和一個復(fù)位按鈕,適合需要大量I/O接口的設(shè)計。使用Arduino Mega 2560可降低成本,實現(xiàn)多處組網(wǎng)。
在控制器模塊中系統(tǒng)采用MCGS TPC7062TX觸摸屏,上位機觸摸屏采集的數(shù)據(jù)僅臨時存儲在寄存器中。為了實現(xiàn)MCU與觸摸屏之間的信息交互,必須實現(xiàn)MCU與觸摸屏之間的通信。本文采用MODBUS進行通信,其讀寫引腳不能直接連接到觸摸屏上,因此需要一個從TTL到RS485的電平互換模塊(圖3)。在現(xiàn)場控制系統(tǒng)時,可以直接利用觸摸屏設(shè)置和調(diào)整不同溫濕度數(shù)值,通過人工控制該系統(tǒng)的運行,以此提高效率。添加觸摸屏使系統(tǒng)更便于農(nóng)戶使用,在主控制面板中,可以控制棚內(nèi)的所有設(shè)備活動,通過觸摸屏觸發(fā)操作。

圖3 RS485接線圖
傳感器模塊由溫度傳感器、濕度傳感器、壓力傳感器、液位傳感器等組成。檢測模塊檢測的參數(shù)為空氣溫濕度、土壤溫濕度和水泵壓力等[3],系統(tǒng)傳感器模塊包括土壤溫濕度傳感器、數(shù)字溫濕度傳感器DHT11、液位傳感器SLDTB801/V以及壓力傳感器MLK-P300,可敏銳察覺土壤內(nèi)環(huán)境變化、水流量變化以及外界溫濕度情況。其中,無線聯(lián)網(wǎng)模塊與分節(jié)點硬件接線情況如圖4、圖5所示。

圖4 無線聯(lián)網(wǎng)模塊接線圖

圖5 分節(jié)點硬件接線圖
系統(tǒng)執(zhí)行機構(gòu)模塊使用單片機連接繼電器以實現(xiàn)控制,繼電器帶動電機,電機帶動恒壓水泵。通過對主控單片機發(fā)出命令,控制對應(yīng)的電機或水泵,當(dāng)檢測到的作物環(huán)境值與人為設(shè)定的溫濕度需求值不一樣時,單片機所控制的繼電器會發(fā)生響應(yīng),至此實現(xiàn)主控單片機對各節(jié)點子單片機的控制,實現(xiàn)控制操作一對多,由于該項技術(shù)較為成熟且易于實現(xiàn),不做過多贅述[4]。
精準(zhǔn)灌溉智能控制系統(tǒng)的軟件部分采用模塊化設(shè)計,包含主程序、環(huán)境參數(shù)采樣子程序、ESP32-WROOM收發(fā)子程序、控制子程序等模塊。其中,主程序作為系統(tǒng)的核心,控制各個子程序的運行和控制器的操作。
程序設(shè)計上,該系統(tǒng)采用Arduino IDE進行編程設(shè)計。傳感器包括溫濕度傳感器、液位傳感器、管道壓力傳感器等,需要預(yù)先設(shè)定好初值,然后使用傳感器采集到的參數(shù)與設(shè)定的初值進行比較,通過比較結(jié)果來控制繼電器。繼電器連接到終端設(shè)備,包括可控制電機、加壓水泵和電磁閥門的接觸器,從而實現(xiàn)自動灌溉[5]。
該系統(tǒng)單片機程序主要流程如圖6所示。系統(tǒng)接通電源后,等待初始化完成,并檢測環(huán)境溫度、濕度和壓力數(shù)據(jù)。系統(tǒng)對這些數(shù)據(jù)進行處理,并分析是否滿足用戶設(shè)置的系統(tǒng)溫濕度,最后判斷是否需要進行灌溉,同時進行水位檢測并將數(shù)據(jù)上傳至云端并準(zhǔn)備進行下一次循環(huán)。

圖6 單片機程序
近程操作時,用戶可以通過觸摸屏對系統(tǒng)進行自主控制。觸摸屏將各監(jiān)測單元所測數(shù)據(jù)一一顯示,用戶通過操作觸摸屏設(shè)置各作物所需的溫濕度條件,從而實現(xiàn)系統(tǒng)的智能控制[6]。
遠(yuǎn)程操作時,Arduino Mega 2560通過ESP32-WROOM模塊將采樣數(shù)據(jù)發(fā)送到手機端,用戶登錄網(wǎng)站進行控制。遠(yuǎn)程操作的便利性提高了系統(tǒng)的實用性和操作性,使用戶更加方便地控制和監(jiān)測系統(tǒng)的運行狀態(tài)[7]。
本文主要對精準(zhǔn)灌溉智能控制系統(tǒng)進行設(shè)計和試驗,為了驗證系統(tǒng)運行穩(wěn)定性和精準(zhǔn)灌溉控制方法的適用性,在滄州市農(nóng)牧局試驗站進行了精準(zhǔn)灌溉智能控制系統(tǒng)的測試。
該系統(tǒng)可實時監(jiān)測溫室內(nèi)空氣和土壤溫濕度變化,提供遠(yuǎn)程可視化操作,具有較高的應(yīng)用價值,具體運行情況如圖7、圖8所示。試驗結(jié)果表明:該系統(tǒng)具有精準(zhǔn)的溫濕度控制、灌溉控制和數(shù)據(jù)采集功能,系統(tǒng)監(jiān)測情況良好,數(shù)據(jù)穩(wěn)定,測得數(shù)據(jù)均符合實際要求,能夠滿足農(nóng)業(yè)生產(chǎn)需求。

圖7 溫度變化曲線圖

圖8 濕度變化曲線圖
針對農(nóng)業(yè)生產(chǎn)灌溉施肥存在的水資源浪費、利用率低等問題,設(shè)計了一套提高灌溉精度和控制效率的精準(zhǔn)灌溉智能控制系統(tǒng)。該系統(tǒng)以Arduino Mega 2560單片機作為主控單片機,實現(xiàn)傳感器對管道壓力、水流量、空氣及土壤溫濕度的信息采集和上傳、接收主控單片機發(fā)送的控制命令,控制各執(zhí)行機構(gòu)完成相應(yīng)動作。
該系統(tǒng)采用觸摸顯示屏實現(xiàn)良好的人機交互功能,應(yīng)用RS485通訊方式與Arduino Mega 2560單片機進行通訊,完成觸摸屏對系統(tǒng)狀態(tài)的實時監(jiān)測和手動/自動控制。除此之外,該系統(tǒng)還應(yīng)用了傳感器模塊,包括溫度傳感器、濕度傳感器、壓力傳感器和液位傳感器,用于檢測空氣溫濕度、土壤溫濕度和水泵壓力等參數(shù),為精準(zhǔn)灌溉提供了有力的支持。執(zhí)行機構(gòu)模塊采用單片機連接繼電器,對電機和水泵等設(shè)備進行控制,實現(xiàn)精準(zhǔn)灌溉,解決水資源利用率低、人工成本較高等問題,滿足農(nóng)業(yè)生產(chǎn)需求。