一種無(wú)線節(jié)水滴灌自動(dòng)控制系統(tǒng)的設(shè)計(jì)方案
掃描二維碼
隨時(shí)隨地手機(jī)看文章
0 引言
隨著人口的增長(zhǎng)和農(nóng)業(yè)的發(fā)展,隨著全球變暖造成的干旱問(wèn)題日益嚴(yán)重,世界水資源的需求量越來(lái)越大,水資源緊缺已成為全世界人民共同關(guān)注的問(wèn)題。滴灌技術(shù)是通過(guò)干管、支管和毛管上的滴頭,在低壓下向土壤經(jīng)常緩慢滴水,可直接向土壤供應(yīng)已過(guò)濾的水分、肥料或其他化學(xué)劑等的一種實(shí)用技術(shù)。大田自動(dòng)滴灌技術(shù)具有大幅度提高水的利用率、減少土壤結(jié)構(gòu)破壞、改善生態(tài)環(huán)境、提高經(jīng)濟(jì)效益的作用,是一種高效節(jié)水的新型灌溉技術(shù),目前已經(jīng)成為實(shí)施高效、精準(zhǔn)灌溉的重要水資源管理技術(shù)措施。近年來(lái),隨著無(wú)線信息傳輸技術(shù)的發(fā)展,ZigBee 無(wú)線網(wǎng)絡(luò)以其低成本、低功耗、低速率、近距離、短延時(shí)、高安全等特點(diǎn),在現(xiàn)代農(nóng)業(yè)發(fā)展中得到高度關(guān)注[1].本設(shè)計(jì)將傳感器技術(shù)、STM32F103VET6單片機(jī)、ZigBee無(wú)線通信技術(shù)相結(jié)合,提出了一種節(jié)水滴灌自動(dòng)控制系統(tǒng)的設(shè)計(jì)方法,并開(kāi)發(fā)了基于STM32的田間控制器。系統(tǒng)針對(duì)不同農(nóng)作物在不同生長(zhǎng)時(shí)期對(duì)水分的需求情況,依據(jù)土壤濕度與環(huán)境溫度,能夠與基于S3C6410 開(kāi)發(fā)平臺(tái)的網(wǎng)關(guān)通過(guò)ZigBee無(wú)線網(wǎng)絡(luò)進(jìn)行通信,由田間控制器精準(zhǔn)科學(xué)地控制灌水位置、灌水時(shí)間、灌水量、灌水質(zhì)量,實(shí)現(xiàn)了農(nóng)作物的適時(shí)自動(dòng)滴灌,為作物生長(zhǎng)提供良好的條件。系統(tǒng)為實(shí)現(xiàn)大面積農(nóng)田的統(tǒng)一調(diào)度管理提供了基礎(chǔ),是一種理想節(jié)水滴灌解決方案。
1 系統(tǒng)總體設(shè)計(jì)
1.1 系統(tǒng)的拓?fù)浣Y(jié)構(gòu)
系統(tǒng)采用無(wú)線傳感網(wǎng)自組網(wǎng)的星型網(wǎng)絡(luò)拓?fù)浣Y(jié)構(gòu),總體組成如圖1所示,由上位機(jī)、S3C6410網(wǎng)關(guān)(網(wǎng)絡(luò)協(xié)調(diào)器節(jié)點(diǎn))、CC2530 無(wú)線收發(fā)模塊(ZigBee 通信模塊)、終端控制節(jié)點(diǎn)以及執(zhí)行機(jī)構(gòu)組成.
采用一臺(tái)式計(jì)算機(jī)作為上位機(jī),負(fù)責(zé)接收傳感器上傳的數(shù)據(jù)、存儲(chǔ)、分析并做出相應(yīng)的智能滴灌決策。
S3C6410網(wǎng)關(guān)是整個(gè)網(wǎng)絡(luò)的協(xié)調(diào)器,負(fù)責(zé)自動(dòng)搜尋網(wǎng)絡(luò)中的終端節(jié)點(diǎn),組織無(wú)線網(wǎng)絡(luò),并從終端節(jié)點(diǎn)取得上位機(jī)需要的數(shù)據(jù),實(shí)現(xiàn)終端節(jié)點(diǎn)與上位機(jī)之間的通信。網(wǎng)關(guān)與終端控制節(jié)點(diǎn)通過(guò)基于ZigBee的CC2530無(wú)線收發(fā)模塊進(jìn)行組網(wǎng)通信,由一個(gè)網(wǎng)絡(luò)協(xié)調(diào)器用的主機(jī)模塊和若干個(gè)從機(jī)終端模塊組成。終端控制節(jié)點(diǎn)是基于STM32的田間控制器,田間控制器(1)放在主管道上,配有液位傳感器、壓力傳感器及流量傳感器,執(zhí)行機(jī)構(gòu)是調(diào)節(jié)水壓大小的變頻器。田間控制器(2)~田間控制器(n)完全相同,放在每塊田地里,配有SHT11 土壤溫濕度傳感器,一個(gè)終端節(jié)點(diǎn)模塊可以根據(jù)需要連接多個(gè)測(cè)溫濕度的探頭,執(zhí)行機(jī)構(gòu)是控制滴灌開(kāi)閉的電磁閥。
另外,出于對(duì)農(nóng)田的分散性和成本的考慮,由太陽(yáng)能光伏供電系統(tǒng)對(duì)終端控制節(jié)點(diǎn)提供電源。
1.2系統(tǒng)的工作原理
上位機(jī)發(fā)送采集指令,經(jīng)由S3C6410 網(wǎng)關(guān),利用CC2530 無(wú)線收發(fā)模塊將指令發(fā)送給基于STM32 的田間控制器;各傳感器節(jié)點(diǎn)將檢測(cè)到的數(shù)據(jù)上傳到STM32 田間控制器,然后由它通過(guò)CC2530無(wú)線收發(fā)模塊同樣經(jīng)由網(wǎng)關(guān)將數(shù)據(jù)發(fā)送到上位機(jī)中;上位機(jī)對(duì)接收到的數(shù)據(jù)進(jìn)行智能處理和決策,例如對(duì)濕度值進(jìn)行排序、得到濕度值較小的幾塊田地,并據(jù)此對(duì)STM32田間控制器發(fā)送開(kāi)啟這幾塊田地電磁閥的命令,從而實(shí)現(xiàn)自動(dòng)滴灌。
在田塊面積大,需要控制上百個(gè)電磁閥門的大規(guī)模灌溉區(qū)域,可將圖1部分連接傳感器的終端節(jié)點(diǎn)替換為路由節(jié)點(diǎn),路由節(jié)點(diǎn)及終端節(jié)點(diǎn)均裝備傳感器。ZigBee無(wú)線傳感網(wǎng)絡(luò)將由一個(gè)網(wǎng)關(guān)協(xié)調(diào)器節(jié)點(diǎn)、適當(dāng)數(shù)目的路由器節(jié)點(diǎn)和多個(gè)終端節(jié)點(diǎn)組成,路由器和終端通過(guò)內(nèi)部程序進(jìn)行設(shè)置,且在一定距離內(nèi)均可與網(wǎng)關(guān)直接通信。統(tǒng)采用休眠喚醒機(jī)制,實(shí)現(xiàn)了低功耗運(yùn)行。
2 系統(tǒng)的硬件設(shè)計(jì)
硬件是無(wú)線控制系統(tǒng)的關(guān)鍵和基礎(chǔ),它直接影響著整個(gè)系統(tǒng)的節(jié)能性、穩(wěn)定性、控制和反饋的準(zhǔn)確性。
2.1 S3C6410網(wǎng)關(guān)
基于ARM1176JZF ?S 的16/32 位RSIC 微處理器S3C6410,是一款具有低成本、低功耗、高性能特點(diǎn)的應(yīng)用處理器[2],它具有4 個(gè)UART 接口,支持DMA 和Inter?
rupt模式,按ZigBee協(xié)議實(shí)現(xiàn)無(wú)線傳輸功能和自組網(wǎng)功能。當(dāng)網(wǎng)關(guān)系統(tǒng)上電時(shí),作為協(xié)調(diào)器的ZigBee主節(jié)點(diǎn)啟動(dòng)和建立無(wú)線網(wǎng)絡(luò),當(dāng)網(wǎng)絡(luò)建立后,負(fù)責(zé)接收終端控制節(jié)點(diǎn)(STM32田間控制器)返回的信息,發(fā)送相應(yīng)的控制信息到各個(gè)田間控制器中。
2.2 基于ZigBee的CC2530無(wú)線收發(fā)模塊
ZigBee是基于IEEE 802.15.4協(xié)議的一個(gè)開(kāi)放式的標(biāo)準(zhǔn),具有低成本、低功耗、低速率的特點(diǎn),可同時(shí)無(wú)線連接大量不同的電子設(shè)備。設(shè)計(jì)選用TI公司最新推出的CC2530芯片作為控制器的微處理器,它集成了一個(gè)高性能2.4 GHz直接序列擴(kuò)頻射頻收發(fā)器、一個(gè)增強(qiáng)型單周期的8051 CPU 和一個(gè)DMA 控制器,具有8 KB 的SRAM、32/64/128 KB的片內(nèi)FLASH存儲(chǔ)器、2個(gè)支持多種串行通信協(xié)議的USART、8通道8?14位ADC、定時(shí)器和21個(gè)可編程的I/O引腳,具有寬電壓范圍(2~3.6 V)、低功耗和電源電量可監(jiān)控等特點(diǎn)[3].在ZigBee協(xié)議棧中UART 具有中斷、DMA 兩種模式,本文設(shè)計(jì)中均采用UART的中斷模式。
ZigBee通信板原理圖如圖2所示。
2.3 STM32田間控制器
由STMicroelectronics 的STM32 單片機(jī)與ZigBee 收發(fā)節(jié)點(diǎn)模塊組成。采用STM32F103VET6 閃存32 位微控制器。它基于突破性的ARM Cortex?M3內(nèi)核,工作頻率為72 MHz,內(nèi)部集成了高速存儲(chǔ)器(高達(dá)128 Kb 閃存和20 Kb SRAM)、通過(guò)APB 總線連接豐富增強(qiáng)的外設(shè)和I/O,另外包含了2個(gè)12位的ADC、3個(gè)通用16位定時(shí)器和一個(gè)PWM 定時(shí)器,還包含標(biāo)準(zhǔn)和先進(jìn)的通信接口:2個(gè)I2C和SPI、3個(gè)USART、一個(gè)USB和一個(gè)CAN.
由于設(shè)備集成了標(biāo)準(zhǔn)的通信接口,無(wú)需配置額外的組件,減少系統(tǒng)成本,為手持設(shè)備和一般類型應(yīng)用提供了低價(jià)格、低功耗、高性能微控制器的解決方案。終端控制節(jié)點(diǎn)電路如圖3所示。
由于液位、壓力、流量傳感器均是4~20 mA模擬信號(hào)輸出設(shè)備,需要用模/數(shù)轉(zhuǎn)換器將模擬信號(hào)轉(zhuǎn)換為數(shù)字信號(hào),再由STM32 單片機(jī)進(jìn)行處理。本設(shè)計(jì)需要采集液位、壓力、流量等4~20 mA設(shè)備信息,所以設(shè)計(jì)4通道采集電路,如圖4所示。
3 系統(tǒng)的軟件設(shè)計(jì)
系統(tǒng)軟件主要任務(wù)是實(shí)現(xiàn)傳感器工作的控制、無(wú)線網(wǎng)絡(luò)的組網(wǎng)以及數(shù)據(jù)的無(wú)線收發(fā)。系統(tǒng)軟件主要包括上位機(jī)軟件與下位機(jī)軟件。上位機(jī)軟件設(shè)計(jì),主要是基于Visual C++的參數(shù)設(shè)置、數(shù)據(jù)采集、自動(dòng)灌溉及查詢歷史記錄等的編程。下位機(jī)程序設(shè)計(jì)有兩個(gè)關(guān)鍵點(diǎn):一是對(duì)溫濕度、液位、壓力、流量的采集,通過(guò)控制變頻器調(diào)節(jié)水泵或通過(guò)控制繼電器使得電磁閥開(kāi)啟與閉合;二是ZigBee收發(fā)模塊對(duì)控制信號(hào)的接收、發(fā)送與執(zhí)行。
自動(dòng)滴灌系統(tǒng)中,土壤濕度是一個(gè)重要變量。上位機(jī)通過(guò)無(wú)線方式向田間控制器發(fā)送采集命令,將接收到傳感器返回信息進(jìn)行顯示并對(duì)濕度做排序處理、判斷液位是否過(guò)限、將壓力和流量傳感器得到的數(shù)據(jù)進(jìn)行融合來(lái)調(diào)節(jié)變頻器,然后通過(guò)ZigBee通信板向田間控制器發(fā)送開(kāi)啟或關(guān)閉電磁閥的指令。上位機(jī)主程序流程圖如圖5所示。[!--empirenews.page--]
傳感器節(jié)點(diǎn)上電后,首先進(jìn)行系統(tǒng)的初始化,然后選擇信道并加入現(xiàn)有的ZigBee無(wú)線網(wǎng)絡(luò),休眠等待接收信號(hào),當(dāng)接收到網(wǎng)關(guān)節(jié)點(diǎn)發(fā)出的查詢信號(hào)后,進(jìn)行數(shù)據(jù)的采集并發(fā)送回協(xié)調(diào)器節(jié)點(diǎn)。
S3C6410 開(kāi)發(fā)平臺(tái)具有4 個(gè)UART 接口,在研究設(shè)計(jì)中,采用了MAX3232 芯片來(lái)解決ZigBee通信模塊的CC2530芯片與該開(kāi)發(fā)平臺(tái)之間的串口通信電平轉(zhuǎn)換。
ZigBee 無(wú)線收發(fā)模塊軟件開(kāi)發(fā)采用IAR EmbeddedWorkbench(EW)平臺(tái)完成。EW的C/C++交叉編譯器和調(diào)試器是今天世界最完整的和最容易使用專業(yè)嵌入式應(yīng)用開(kāi)發(fā)工具。網(wǎng)關(guān)ZigBee程序流程圖見(jiàn)圖6.
基于STM32的田間控制器接收到上位機(jī)發(fā)來(lái)的采集命令,進(jìn)而執(zhí)行采集土壤濕度、空氣溫度、液位、壓力、流量等信息并上傳,等待上位機(jī)進(jìn)行智能決策后,將控制命令,如電磁閥開(kāi)啟關(guān)閉以及變頻器的調(diào)節(jié),發(fā)送出來(lái),STM32控制器予以接收并且執(zhí)行。下位機(jī)程序流程圖如圖7所示。
4 實(shí)驗(yàn)及結(jié)果分析
對(duì)各模塊進(jìn)行驅(qū)動(dòng)測(cè)試,然后對(duì)系統(tǒng)整體進(jìn)行協(xié)同工作實(shí)驗(yàn)。通過(guò)田間實(shí)驗(yàn)觀測(cè)通信質(zhì)量、滴灌效果及系統(tǒng)是否運(yùn)行正常。
4.1 CC2530無(wú)線通信質(zhì)量測(cè)試CC2530無(wú)線通信模塊性能對(duì)系統(tǒng)整體性能起著至關(guān)重要的作用。CC2530通信模塊的測(cè)試主要包括節(jié)點(diǎn)之間通信距離及數(shù)據(jù)包丟包率的測(cè)試。TI公司推出的通用數(shù)據(jù)包探測(cè)器(General Packet Sniffer)可以對(duì)未加密的通信過(guò)程進(jìn)行監(jiān)控[4?6],故可利用它進(jìn)行通信和組網(wǎng)測(cè)試。
(1)空曠無(wú)障礙測(cè)試,觀測(cè)通信質(zhì)量及通信距離
測(cè)試地點(diǎn):校園空曠處。
測(cè)試內(nèi)容:協(xié)調(diào)器主節(jié)點(diǎn)上電,建立網(wǎng)絡(luò)后,等待其他子節(jié)點(diǎn)加入。通過(guò)在協(xié)議棧中配置CC2530單芯片射頻部分的輸出功率寄存器,來(lái)使協(xié)調(diào)器和終端節(jié)點(diǎn)之間進(jìn)行通信,按照規(guī)定的協(xié)議數(shù)據(jù)格式相互發(fā)送數(shù)據(jù)包,從而能夠?qū)C2530通信模塊的通信距離、數(shù)據(jù)包丟包率進(jìn)行測(cè)試,得到一個(gè)合適的發(fā)射功率。
測(cè)試條件:硬件方面采用CC2530 協(xié)調(diào)器模塊和CC2530 終端節(jié)點(diǎn)模塊分別通過(guò)RS 232 協(xié)議與兩臺(tái)筆記本電腦進(jìn)行串行通信;并使用到兩條USB轉(zhuǎn)串口數(shù)據(jù)線、電源、CC2530 仿真下載器。軟件方面采用設(shè)計(jì)的CC2530串口透?jìng)鞒绦蚰軌蜻M(jìn)行數(shù)據(jù)透明、點(diǎn)對(duì)點(diǎn)數(shù)據(jù)傳輸,筆記本電腦端采用Visual Basic編程語(yǔ)言設(shè)計(jì)的數(shù)據(jù)包丟包率測(cè)試軟件。
測(cè)試步驟:在搭建好硬件測(cè)試環(huán)境后,使用CC2530程序下載仿真器將在IAR Embedded Workbench集成開(kāi)發(fā)環(huán)境下開(kāi)發(fā)的CC2530 串行通信程序,分別下載到CC2530 協(xié)調(diào)器與CC2530 終端節(jié)點(diǎn)中。在筆記本電腦中分別安裝VB數(shù)據(jù)包丟包率測(cè)試軟件,通過(guò)對(duì)發(fā)送數(shù)據(jù)(十六進(jìn)制),發(fā)送數(shù)據(jù)的速度以及通過(guò)對(duì)NV非易失性存儲(chǔ)器的讀/寫操作對(duì)CC2530 芯片的發(fā)射功率進(jìn)行設(shè)置,收發(fā)1 000個(gè)數(shù)據(jù)包,對(duì)CC2530通信模塊在不同的發(fā)射功率下的通信距離、丟包率等性能進(jìn)行測(cè)試。
測(cè)試結(jié)果:在空曠場(chǎng)合采用默認(rèn)功率輸出時(shí),通信距離為120 m左右時(shí)丟包率基本為0.0%,說(shuō)明節(jié)點(diǎn)無(wú)線可靠通信距離可達(dá)120 m。
(2)在實(shí)驗(yàn)田中進(jìn)行通信測(cè)試
測(cè)試地點(diǎn):現(xiàn)場(chǎng)實(shí)驗(yàn)田;測(cè)試內(nèi)容、測(cè)試條件、測(cè)試步驟:同(1);測(cè)試結(jié)果:采用默認(rèn)功率輸出時(shí),節(jié)點(diǎn)無(wú)線通信有效傳輸距離可達(dá)80 m.
4.2 項(xiàng)目實(shí)驗(yàn)驗(yàn)證測(cè)試條件:將網(wǎng)關(guān)上ZigBee天線安置在室外空曠無(wú)遮掩處,使得能夠接收到較強(qiáng)的信號(hào)。選取面積約為20 m×50 m的共12行的農(nóng)作物田作為實(shí)驗(yàn)田,由于農(nóng)作物的根系一般深度為10~20 cm,因此將土壤溫濕度傳感器探頭埋入地下10 cm處,其中2行作為一組,每組選取兩個(gè)距離較遠(yuǎn)的測(cè)試點(diǎn),取兩個(gè)測(cè)試點(diǎn)的平均值來(lái)代表這一行范圍作物的環(huán)境狀況。當(dāng)采集到的濕度值低于30%時(shí),電磁閥打開(kāi),水源通過(guò)電磁閥、壓力傳感器、流量傳感器流入滴灌支管進(jìn)行灌溉,滴灌進(jìn)行中當(dāng)土壤濕度值高于50%時(shí),電磁閥關(guān)閉停止滴灌。
測(cè)試結(jié)果:在土壤濕度值低于作物要求下限(如30%)時(shí)系統(tǒng)能及時(shí)滴灌,當(dāng)濕度達(dá)到作物要求上限(如50%)時(shí)系統(tǒng)能過(guò)做到適時(shí)停止滴灌,電磁閥開(kāi)啟成功率為96%.
5 結(jié)論
本文提出的一種無(wú)線節(jié)水滴灌自動(dòng)控制系統(tǒng)的設(shè)計(jì)方案,方案中的STM32田間控制器能夠?qū)崟r(shí)監(jiān)測(cè)作物土壤濕度和環(huán)境溫度,將傳感器信號(hào)通過(guò)無(wú)線發(fā)送到控制中心,控制中心能夠準(zhǔn)確實(shí)時(shí)地了解到當(dāng)前系統(tǒng)中各個(gè)節(jié)點(diǎn)的工作狀態(tài),并及時(shí)啟動(dòng)自動(dòng)滴灌,非常有利于農(nóng)作物的生產(chǎn)。一旦出現(xiàn)通信中斷、水壓異常等,能夠及時(shí)地反映到控制中心,通過(guò)語(yǔ)音報(bào)警等方式立即通知相關(guān)人員進(jìn)行維修,提高了整個(gè)系統(tǒng)的可靠性。另外系統(tǒng)采用ZigBee技術(shù),網(wǎng)絡(luò)結(jié)構(gòu)簡(jiǎn)單,田間布設(shè)靈活,提高了自動(dòng)灌溉的實(shí)用性及對(duì)水的使用效率,減小了勞動(dòng)量、導(dǎo)線和管路敷設(shè)費(fèi)用,且無(wú)需人為操作,能夠長(zhǎng)期穩(wěn)定地工作,方便大面積安裝、維護(hù)和系統(tǒng)回收,為我國(guó)的精準(zhǔn)農(nóng)業(yè)工程提供了強(qiáng)有力的工具。