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