基于STM32和S3C6410的無線節水滴灌自動控制系統
3 系統的軟件設計
本文引用地址:http://www.104case.com/article/248287.htm系統軟件主要任務是實現傳感器工作的控制、無線網絡的組網以及數據的無線收發。系統軟件主要包括上位機軟件與下位機軟件。上位機軟件設計,主要是基于Visual C++的參數設置、數據采集、自動灌溉及查詢歷史記錄等的編程。下位機程序設計有兩個關鍵點:一是對溫濕度、液位、壓力、流量的采集,通過控制變頻器調節水泵或通過控制繼電器使得電磁閥開啟與閉合;二是ZigBee收發模塊對控制信號的接收、發送與執行。
自動滴灌系統中,土壤濕度是一個重要變量。上位機通過無線方式向田間控制器發送采集命令,將接收到傳感器返回信息進行顯示并對濕度做排序處理、判斷液位是否過限、將壓力和流量傳感器得到的數據進行融合來調節變頻器,然后通過ZigBee通信板向田間控制器發送開啟或關閉電磁閥的指令。上位機主程序流程圖如圖5所示。

傳感器節點上電后,首先進行系統的初始化,然后選擇信道并加入現有的ZigBee無線網絡,休眠等待接收信號,當接收到網關節點發出的查詢信號后,進行數據的采集并發送回協調器節點。
S3C6410 開發平臺具有4 個UART 接口,在研究設計中,采用了MAX3232 芯片來解決ZigBee通信模塊的CC2530芯片與該開發平臺之間的串口通信電平轉換。
ZigBee 無線收發模塊軟件開發采用IAR EmbeddedWorkbench(EW)平臺完成。EW的C/C++交叉編譯器和調試器是今天世界最完整的和最容易使用專業嵌入式應用開發工具。網關ZigBee程序流程圖見圖6.

基于STM32的田間控制器接收到上位機發來的采集命令,進而執行采集土壤濕度、空氣溫度、液位、壓力、流量等信息并上傳,等待上位機進行智能決策后,將控制命令,如電磁閥開啟關閉以及變頻器的調節,發送出來,STM32控制器予以接收并且執行。下位機程序流程圖如圖7所示。

4 實驗及結果分析
對各模塊進行驅動測試,然后對系統整體進行協同工作實驗。通過田間實驗觀測通信質量、滴灌效果及系統是否運行正常。
4.1 CC2530無線通信質量測試CC2530無線通信模塊性能對系統整體性能起著至關重要的作用。CC2530通信模塊的測試主要包括節點之間通信距離及數據包丟包率的測試。TI公司推出的通用數據包探測器(General Packet Sniffer)可以對未加密的通信過程進行監控,故可利用它進行通信和組網測試。
(1)空曠無障礙測試,觀測通信質量及通信距離
測試地點:校園空曠處。
測試內容:協調器主節點上電,建立網絡后,等待其他子節點加入。通過在協議棧中配置CC2530單芯片射頻部分的輸出功率寄存器,來使協調器和終端節點之間進行通信,按照規定的協議數據格式相互發送數據包,從而能夠對CC2530通信模塊的通信距離、數據包丟包率進行測試,得到一個合適的發射功率。
測試條件:硬件方面采用CC2530 協調器模塊和CC2530 終端節點模塊分別通過RS 232 協議與兩臺筆記本電腦進行串行通信;并使用到兩條USB轉串口數據線、電源、CC2530 仿真下載器。軟件方面采用設計的CC2530串口透傳程序能夠進行數據透明、點對點數據傳輸,筆記本電腦端采用Visual Basic編程語言設計的數據包丟包率測試軟件。
測試步驟:在搭建好硬件測試環境后,使用CC2530程序下載仿真器將在IAR Embedded Workbench集成開發環境下開發的CC2530 串行通信程序,分別下載到CC2530 協調器與CC2530 終端節點中。在筆記本電腦中分別安裝VB數據包丟包率測試軟件,通過對發送數據(十六進制),發送數據的速度以及通過對NV非易失性存儲器的讀/寫操作對 CC2530 芯片的發射功率進行設置,收發1 000個數據包,對CC2530通信模塊在不同的發射功率下的通信距離、丟包率等性能進行測試。
測試結果:在空曠場合采用默認功率輸出時,通信距離為120 m左右時丟包率基本為0.0%,說明節點無線可靠通信距離可達120 m。
(2)在實驗田中進行通信測試
測試地點:現場實驗田;測試內容、測試條件、測試步驟:同(1);測試結果:采用默認功率輸出時,節點無線通信有效傳輸距離可達80 m.
4.2 項目實驗驗證測試條件:將網關上ZigBee天線安置在室外空曠無遮掩處,使得能夠接收到較強的信號。選取面積約為20 m×50 m的共12行的農作物田作為實驗田,由于農作物的根系一般深度為10~20 cm,因此將土壤溫濕度傳感器探頭埋入地下10 cm處,其中2行作為一組,每組選取兩個距離較遠的測試點,取兩個測試點的平均值來代表這一行范圍作物的環境狀況。當采集到的濕度值低于30%時,電磁閥打開,水源通過電磁閥、壓力傳感器、流量傳感器流入滴灌支管進行灌溉,滴灌進行中當土壤濕度值高于50%時,電磁閥關閉停止滴灌。
測試結果:在土壤濕度值低于作物要求下限(如30%)時系統能及時滴灌,當濕度達到作物要求上限(如50%)時系統能過做到適時停止滴灌,電磁閥開啟成功率為96%.
5 結論
本文提出的一種無線節水滴灌自動控制系統的設計方案,方案中的STM32田間控制器能夠實時監測作物土壤濕度和環境溫度,將傳感器信號通過無線發送到控制中心,控制中心能夠準確實時地了解到當前系統中各個節點的工作狀態,并及時啟動自動滴灌,非常有利于農作物的生產。一旦出現通信中斷、水壓異常等,能夠及時地反映到控制中心,通過語音報警等方式立即通知相關人員進行維修,提高了整個系統的可靠性。另外系統采用ZigBee技術,網絡結構簡單,田間布設靈活,提高了自動灌溉的實用性及對水的使用效率,減小了勞動量、導線和管路敷設費用,且無需人為操作,能夠長期穩定地工作,方便大面積安裝、維護和系統回收,為我國的精準農業工程提供了強有力的工具。
路由器相關文章:路由器工作原理
路由器相關文章:路由器工作原理
土壤濕度傳感器相關文章:土壤濕度傳感器原理 溫濕度控制器相關文章:溫濕度控制器原理
評論