陳鑫意,何劍鋒,2,何月順,2,葉志翔,2,謝祥順
(1.東華理工大學(xué) 軟件學(xué)院,江西 南昌 330013;2.江西省放射性地學(xué)大數(shù)據(jù)技術(shù)工程實(shí)驗(yàn)室,江西 南昌 330013)
我國在農(nóng)業(yè)灌溉方面存在一些問題: 仍以傳統(tǒng)生產(chǎn)經(jīng)驗(yàn)為主,缺乏精確調(diào)控手段,農(nóng)田灌溉精度難以保證,造成水資源浪費(fèi)嚴(yán)重; 灌溉技術(shù)落后,監(jiān)測與控制都采用人工管理,缺乏技術(shù)創(chuàng)新,存在強(qiáng)度強(qiáng)大、人機(jī)交互能力差等弊端,嚴(yán)重影響農(nóng)作物品質(zhì)和產(chǎn)量[1]。將先進(jìn)的、適用的現(xiàn)代農(nóng)業(yè)裝備應(yīng)用于山地果園施肥、節(jié)水灌溉、噴霧等果園生產(chǎn)管理中[2-3],是促進(jìn)農(nóng)業(yè)現(xiàn)代化轉(zhuǎn)型和山地果園可持續(xù)發(fā)展的關(guān)鍵步驟,利用智能灌溉系統(tǒng)突破和發(fā)展傳統(tǒng)灌溉方式是當(dāng)今世界農(nóng)業(yè)技術(shù)發(fā)展的總趨勢。
隨著技術(shù)的進(jìn)步和系統(tǒng)的優(yōu)化,智能灌溉系統(tǒng)覆蓋的范圍和植物種類越來越多,包括各種蔬菜、作物、果樹和園林樹木等[4]。本文研究一種基于ZigBee傳輸方式,以STM32F103為主控制器,配合地形鋪設(shè)管道的臍橙園肥水/農(nóng)藥噴灑系統(tǒng),以提高果園水肥/農(nóng)藥灌溉的效率,解決傳統(tǒng)灌溉技術(shù)的不足。
總體方案設(shè)計(jì)如圖1所示。系統(tǒng)方案的設(shè)計(jì)主要包括數(shù)據(jù)采集部分、智能控制部分和設(shè)備組裝部分。數(shù)據(jù)采集部分包括CC2530處理器、傳感器檢測節(jié)點(diǎn)、路由器、集中器、ZigBee模塊。智能控制部分包括STM32F103微控制器、繼電器模塊、電源模塊、電機(jī)等模塊組成。設(shè)備組裝部分包括水管、發(fā)電機(jī)、壓力泵、灌溉噴頭等設(shè)備。各模塊完成的功能包括:傳感器檢測節(jié)點(diǎn)負(fù)責(zé)采集果園環(huán)境和水壓信息等數(shù)據(jù),這些數(shù)據(jù)主要是考量施肥灌溉時(shí)環(huán)境因素的[5];路由器主要功能是實(shí)現(xiàn)網(wǎng)絡(luò)中數(shù)據(jù)的接收、上傳與轉(zhuǎn)發(fā);集中器用于接收傳感器網(wǎng)絡(luò)中傳感器檢測節(jié)點(diǎn)傳送來的數(shù)據(jù)信息且將數(shù)據(jù)上傳至路由器;ZigBee模塊用于與集中器進(jìn)行無線傳輸和數(shù)據(jù)交互;STM32F103控制器是臍橙園肥水、農(nóng)藥噴灑系統(tǒng)的控制核心,負(fù)責(zé)控制繼電器、智能開關(guān)等模塊;繼電器模塊控制開關(guān)的工作;電源模塊為整個(gè)系統(tǒng)提供電源,并且通過微處理器對電池充放電進(jìn)行管理,可以延長電池的使用壽命[6];選用霧化噴頭,高壓狀態(tài)下,穿透能力強(qiáng),起到噴灑農(nóng)藥的作用。
圖1 智能灌溉系統(tǒng)的總體設(shè)計(jì)
控制系統(tǒng)硬件設(shè)計(jì)包括傳感器節(jié)點(diǎn)硬件設(shè)計(jì)、集中器節(jié)點(diǎn)硬件設(shè)計(jì)、開關(guān)控制系統(tǒng)的硬件設(shè)計(jì)。
傳感器網(wǎng)絡(luò)是由許多在空間上分布的自動裝置組成的一種計(jì)算機(jī)網(wǎng)絡(luò)[7],傳感網(wǎng)絡(luò)中最重要的是傳感器節(jié)點(diǎn)。傳感器節(jié)點(diǎn)的主要任務(wù)是數(shù)據(jù)采集和傳輸。無線傳感器模塊選用ZigBee技術(shù)的新一代SOC芯片CC2530[8]。傳感器節(jié)點(diǎn)硬件設(shè)計(jì)如圖2所示。
圖2 傳感器節(jié)點(diǎn)硬件設(shè)計(jì)
傳感器采集水壓、風(fēng)速、溫度等數(shù)據(jù),通過信號處理電路將信號放大,再將放大后的信號傳給CC2350芯片進(jìn)行處理。CC2350先把接收到的數(shù)據(jù)信息通過A/D轉(zhuǎn)換器進(jìn)行模/數(shù)轉(zhuǎn)換,然后經(jīng)過計(jì)算得到壓力、溫濕度等值,最后通過串口發(fā)送到ZigBee模塊,ZigBee模塊將數(shù)據(jù)發(fā)送數(shù)據(jù)給控制器。對于無線傳感網(wǎng)絡(luò)來說,電源模塊起著十分重要的作用,因?yàn)樗P(guān)系到整個(gè)系統(tǒng)是否能夠穩(wěn)定正常的工作[9],負(fù)責(zé)給系統(tǒng)中的各個(gè)模塊供電。傳感器節(jié)點(diǎn)采用電池供電方式,從而在電源供給上擺脫了有線的束縛[10]。
集中器節(jié)點(diǎn)主要技術(shù)是ZigBee技術(shù)。ZigBee技術(shù)是一種具有低功耗、低成本、安全可靠、時(shí)延短、自動組網(wǎng)能力強(qiáng)等特點(diǎn)的無線通信技術(shù)[11]。ZigBee 通信設(shè)備能自主搭建網(wǎng)絡(luò)[12],每個(gè)節(jié)點(diǎn)設(shè)備之間必須遵循ZigBee聯(lián)盟的標(biāo)準(zhǔn)協(xié)議,其中物理層和MAC層遵循的是IEEE 802.15.4協(xié)議,上層協(xié)議由ZigBee聯(lián)盟定義[13]。集中器硬件結(jié)構(gòu)如圖3所示。
圖3 集中器硬件結(jié)構(gòu)
CC2530作為集中器的中心控制器,它的一個(gè)串口連接ZigBee模塊。集中器通過ZigBee網(wǎng)絡(luò)接收傳感器節(jié)點(diǎn)傳送的數(shù)據(jù)信息。數(shù)據(jù)信息存儲在集中器的存儲模塊中,再通過ZigBee模塊發(fā)送給控制器。CC2530處理器支持ZigBee協(xié)議棧,內(nèi)部集成了增強(qiáng)型8051內(nèi)核,主頻達(dá)32 MHz,帶有模/數(shù)轉(zhuǎn)換器,具有低功耗、自組網(wǎng)等優(yōu)勢[14]。
開關(guān)控制系統(tǒng)采用STM32F103單片機(jī)連接繼電器模塊,電源、繼電器模塊連接水泵,利用單片機(jī)控制繼電器銜鐵的吸合與釋放,從而控制抽水電機(jī)開關(guān);而且還能夠簡化驅(qū)動電路及控制電路,使系統(tǒng)的可靠性及維護(hù)的方便性得到改善[15]。微控制器通過ZigBee模塊與集中器進(jìn)行通信,對接收到的數(shù)據(jù)信息進(jìn)行處理,然后將數(shù)據(jù)存儲到自帶的存儲模塊中,通過系統(tǒng)時(shí)鐘控制繼電器模塊,繼電器控制開關(guān)來進(jìn)行噴灑作業(yè)。開關(guān)控制系統(tǒng)的硬件設(shè)計(jì)如圖4所示。
圖4 開關(guān)控制系統(tǒng)硬件設(shè)計(jì)
控制系統(tǒng)軟件設(shè)計(jì)包括傳感器節(jié)點(diǎn)軟件設(shè)計(jì)、集中器軟件設(shè)計(jì)、開關(guān)控制軟件設(shè)計(jì)。
在ZigBee網(wǎng)絡(luò)中[16],信息的整個(gè)傳遞過程在軟件層面上是由Z-Stack協(xié)議棧進(jìn)行控制[17]。首先傳感器節(jié)點(diǎn)初始化,啟動Z-Stack協(xié)議棧且加入網(wǎng)絡(luò),若加入網(wǎng)絡(luò)成功再判斷是否要采集指令。其次,如需要采集指令則需要設(shè)置采集時(shí)間,在采集數(shù)據(jù)的過程中判斷采集時(shí)間是否截止,若時(shí)間截止則發(fā)送數(shù)據(jù)。傳感器節(jié)點(diǎn)軟件設(shè)計(jì)流程如圖5所示。
圖5 傳感器節(jié)點(diǎn)軟件設(shè)計(jì)流程
首先,系統(tǒng)進(jìn)行上電初始化,傳感器節(jié)點(diǎn)建立網(wǎng)絡(luò);其次,集中器一直監(jiān)聽服務(wù)器的命令,當(dāng)集中器接收到服務(wù)器發(fā)送的命令時(shí),執(zhí)行相應(yīng)的處理;再次,若發(fā)現(xiàn)網(wǎng)絡(luò)中有傳感器監(jiān)測節(jié)點(diǎn)傳輸過來的數(shù)據(jù),集中器開始接收數(shù)據(jù);最后,數(shù)據(jù)通過串口發(fā)送到ZigBee模塊,然后由ZigBee模塊發(fā)送到控制器上。集中器軟件流程如圖6所示。
圖6 集中器軟件流程
開關(guān)控制系統(tǒng)的軟件流程如圖7所示。
圖7 開關(guān)控制系統(tǒng)的軟件流程
系統(tǒng)首先進(jìn)行初始化;然后接收集中器傳送的數(shù)據(jù)信息,控制器對此數(shù)據(jù)進(jìn)行計(jì)算處理,將處理后的數(shù)據(jù)存儲到STM32F103自帶的存儲器中,通過這些數(shù)據(jù)分析處理功能,科技人員可以分析任何一個(gè)時(shí)間段的環(huán)境數(shù)據(jù)變化規(guī)律和極端環(huán)境數(shù)據(jù)出現(xiàn)的規(guī)律[18];再判斷數(shù)據(jù)是否符合噴灑標(biāo)準(zhǔn),若符合則通過系統(tǒng)時(shí)鐘控制繼電器模塊,繼電器控制開關(guān)是否打開,如果數(shù)據(jù)不符合噴灑標(biāo)準(zhǔn)則,工作人員進(jìn)行相應(yīng)處理,并且持續(xù)接收集中器發(fā)送的數(shù)據(jù)信息。由于電磁閥通斷時(shí)長會影響控制結(jié)果,為避免電磁閥頻繁動作,灌溉量輸出時(shí),停止采樣活動[19]。智能灌溉系統(tǒng)的工作流程如圖8所示。
圖8 智能灌溉系統(tǒng)的工作流程
首先系統(tǒng)初始化,然后通過無線傳感器監(jiān)測土壤的溫濕度、藥池水壓值,再與土壤溫濕度和藥池水壓下限值進(jìn)行比較,如果小于下限值,則打開電磁閥進(jìn)行灌溉??紤]到土壤滲水較慢的特點(diǎn),一般設(shè)定停止灌溉一段時(shí)間后再進(jìn)行土壤濕度檢測[20]。
由于贛南臍橙園多處于地勢較高處,所以本系統(tǒng)采用管道鋪設(shè)的方式實(shí)現(xiàn)肥水、農(nóng)藥的噴灑。管道、發(fā)動機(jī)壓力泵鋪設(shè)圖如圖9所示。
圖9 管道、發(fā)動機(jī)壓力泵鋪設(shè)圖
藥池到臍橙園有一段主管道,負(fù)責(zé)輸出藥水,每個(gè)總管道需要一個(gè)開關(guān)控制。每個(gè)區(qū)域鋪設(shè)分管道,分管道連接總管道,將藥水輸送至每個(gè)區(qū)域。發(fā)動機(jī)和壓力泵需要根據(jù)實(shí)際的地形來確定安裝的位置,安裝在適當(dāng)?shù)母叨瓤梢愿玫仄胶夂脡毫?,?jié)約燃油成本和保護(hù)好裝置不會壓力過大而損壞。
本系統(tǒng)以超聲波傳感器模擬水壓傳感器,步進(jìn)電機(jī)模擬噴頭進(jìn)行測試。測試結(jié)果如圖10所示。
圖10 測試結(jié)果
從測試結(jié)果發(fā)現(xiàn),當(dāng)需要澆灌時(shí),先判斷藥池水面距離是否正常,當(dāng)藥池水面距離小于規(guī)定值或大于規(guī)定值時(shí),繼電器關(guān)閉,此時(shí),水泵停止抽水,步進(jìn)電機(jī)關(guān)閉;當(dāng)藥池水面距離值在規(guī)定范圍內(nèi),繼電器打開,水泵開始抽水,且當(dāng)需要灌溉時(shí),打開步進(jìn)電機(jī)。
本文設(shè)計(jì)的贛州臍橙園水肥/農(nóng)藥智能灌溉系統(tǒng)是以STM32F103為微控制器,結(jié)合ZigBee通信技術(shù),實(shí)現(xiàn)了果園農(nóng)藥噴灑與灌溉的結(jié)合與開關(guān)的智能控制。通過鋪設(shè)管道將農(nóng)藥的噴灑變得自動化,同時(shí)不會為危害到作業(yè)人員的身體健康,有效地提高了臍橙園肥水、農(nóng)藥噴灑的效率,減少了人力的耗損。為提高勞動生產(chǎn)率,不斷增加農(nóng)業(yè)經(jīng)濟(jì)效益,就必須進(jìn)一步發(fā)展人工智能生態(tài)環(huán)境,使農(nóng)業(yè)生產(chǎn)向工業(yè)化轉(zhuǎn)變。