侯張玲 廖義奎 王博曉


摘要:自然資源的匱乏、人口增長給我國糧食生產帶來了嚴峻的調整,需要找到不增加資源浪費、不損壞生態環境,提高糧食產量的途徑。文章所述系統運用ZigBee無線傳輸技術和STM32開發板作為核心技術對農田的濕度、溫度、光照、二氧化碳等進行智能控制,對大棚生產的各個環節給予實時監控,為作物的生長提供最適合的環境,提高農作物的產量和質量。
關鍵詞:數據采集;ZigBee無線技術;實時監控;物聯網;移動終端;甘蔗地測控系統 文獻標識碼:A
中圖分類號:TP319 文章編號:1009-2374(2016)19-0009-03 DOI:10.13535/j.cnki.11-4406/n.2016.19.005
1 設計背景
在信息快速發展的時代,大量的農作物生產依靠的都是最先進的生產技術,傳統人工種植已經不能滿足人們的需求。傳統人工方式只能小范圍小面積實現,而現在大多數農作物的生產不僅要滿足自身的需求,更多的是面向市場,從而獲得更高的利潤。隨之而來的就是管理問題,例如澆水施肥,大面積的生產需要很多的人力物力,同時花費大量的時間不能做到實時性、準確性、高效性。在農業、生態環境領域的研究中,需要測量土壤的溫度、濕度等數值。由于需測土地具有面積大、觀察時間較長等特點,人工檢測需要使用土壤傳感器插入讀數并計數,不僅花費大量的時間和人力,也會因為人為的誤差導致數據不準確,所以設計一種通過土壤傳感器采集數據并通過無線傳至手機分析的檢測系統就顯得非常重要。
2 特點
2.1 測量誤差小
溫度傳感器DS18B20的測量精度高、測量溫度范圍寬,可測范圍為-55℃~+125℃,在-10℃~+85℃范圍內,精度為±0.5℃。可根據不同的氣候調節控制濕度傳感器的繼電器達到想要的值。相比傳統的人工采集方式減小誤差,得到更精準的數據。
2.2 及時性
相比傳統人工采集方式,本系統可以不間斷工作,采集每個時間點的數據。同時將所采集到的數據及時發送到手機端,方便操作者了解實時狀態。
2.3 對比性
本系統利用兩塊STM32開發板分別采集兩個不同位置的土壤溫濕度值,在做對比的同時也可以判斷采集到的數據是否正確。如檢測地點較近時,但是采集到的數據相差較大的情況下,可能是檢測儀器出故障的原因。
2.4 靈活性
可根據不同季節不同農作物所需要的溫濕度值改變人為所設定的限值,這種方式可以為不同農作物提供不同的生長環境,有助于農作物在合適的環境下更好地
生長。
2.5 監控性
通過WIFI將數據傳送給手機端可以實現實時監控,及時了解土壤溫濕度,克服了遠距離不可操作的缺點。
3 設計方案
本次設計的主要是監測土壤的含水量,將其采集到的數據通過ZigBee模塊傳送到手機,當監測數據超出某個閥值時向手機和計算機發出報警信息,在設定時間內沒有人發出執行指令,則計算機自動發出執行指令,從而進行澆灌。在甘蔗地要采用多點的監測,這樣就可以得到一個比較準確的數據,而減小誤差。但不同的測量需要根據各自的特點合理地安排其密度。
第一,嵌入式系統是目前電子系統設計最活躍的領域之一,具有廣闊的市場前景。單片機作為嵌入式系統最經典型的代表,在嵌入式系統中占有最大的份額,成為廣大高校學生和電子工程技術人員學習和開發嵌入式系統的主流。由單片機開發的產品也廣泛地應用到了家電、通信、工商業、航空和軍事方面。因此,本次設計選用ALIENTEK MiniSTM32 V3.0開發板來完成。
第二,由于需要工作電壓在5V左右,而且能保證成本相對而言比較低。ALIENTEK MiniSTM32開發板載有目前比較通用的液晶顯示模塊接口。
第三,選用測定兩個不同位置土壤溫濕度值的方式可以通過對比得出更精準的數據,也可以提高檢測
效率。
第四,為實現智能開關設計,本系統選用繼電器模塊控制水泵開關。STM32開發板將溫濕度傳感器所采集到的數據進行分析,當達到某個設定條件時繼電器開啟或關閉。
第五,考慮到農田信息的采集監控網點多、數據更換數量不大、設備成本低、現場環境復雜多變、設備小、電池供電、需要較大的網絡覆蓋等特點,因此采用一種低功耗、低成本、體積小且能保證數據安全穩定的無線傳輸成為了必要,而ZigBee正好滿足了這些要求。ZigBee是一種無線連接,它具有低功耗、低成本、網絡容量大、可靠、安全等特點。可工作在2.4GHz,傳輸距離從標準的75米到幾百米,并且支持無限擴展,是農田信息數據傳輸的最佳選擇。
第六,采用手機和計算機作為管理終端。可以讓監控計算機根據各種現場采集回來的數據,對數據進行分析、對比,綜合得出現場各方面的情況,自動地對各種終端器發送命令,而不用人為地去干預;當要人為去改變某些量時,可以通過手機向控制終端發送命令,從而使控制終端工作。
4 實現與應用
系統主要是由三塊STM32開發板、ZigBee組網、溫度傳感器DS18B20、土壤濕度傳感器、水泵及顯示模塊組成。如圖1所示:
整個系統由三個STM32板組成,其中A板B板為采集數據板,用于采集土壤的濕度與溫度以及控制水泵的開關;C板用于數據的顯示以及土壤濕度上限值的設定,并通過C板的WIFI模塊與手機終端相連接,可在手機終端上顯示相應的采集數據。
當系統運行時,DS18B20采集到土壤的溫度值,土壤濕度傳感器采集到土壤的濕度值,通過A、B板的AD轉換,并同時在A、B板中進行判斷,當在C板中設置的土壤濕度上限值大于相應A、B板的土壤濕度采集值時,A、B板會觸發對應的水泵開起;當在C板中設置的土壤濕度上限值小于相應A、B板的土壤濕度采集值時,A、B板會觸發對應的水泵會關閉。與此同時,A、B板會把相應的數據通過串口連接在A、B板上的ZigBee發送出去,通過廣播的模式,把數據發送到同樣連接著一塊ZigBee的C板上。然后C板經過數據處理,將其顯示到TFT液晶顯示屏上,并通過WIFI模塊,把數據發送到手機終端,通過手機終端也能檢測到相應的土壤信息。
4.1 系統結構
4.1.1 STM32開發板模塊。本系統需要用到三塊STM32開發板,用兩塊STM32開發板連接土壤傳感器及溫度傳感器DS18B20采集兩個不同位置的土壤數據,并且通過串口將數據傳送給ZigBee組網,實現數據的傳輸。另一塊STM32開發板用于數據的顯示和判斷,實現手動和自動切換來設置限值,并且做出實際值與設置限值的對比,控制水泵的開關。
4.1.2 ZigBee模塊。ZigBee模塊為本次設計的核心模塊,主要是將STM32開發板采集到的數據傳送給另一塊STM32開發板顯示及判斷,主要實現無線傳輸。
4.1.3 土壤傳感器模塊。本次設計所選用的土壤傳感器使用方便、測量數據精準,具有很高的靈敏性。通過將土壤傳感器插入土壤中,同時結合程序控制得到土壤當前濕度值,將所得到的當前濕度值與限值相比較實現最終的智能控制過程。
4.1.4 溫度傳感器DS18B20模塊。本次設計所選用的溫度傳感器DS18B20主要是通過結合程序控制實現溫度的測量,與濕度值一樣將傳送給開發板與設定的限值相比較從而決定是否需要打開水泵進行澆水。
4.2 系統操作步驟
4.2.1 檢查各個模塊是否正常工作,接好連接線,并確認正負極是否正確等。
4.2.2 給A、B、C板分別上電,本系統采用的是USB供電的方式,方便快捷。
4.2.3 觀察系統是否正常工作,數據是否正常顯示在顯示屏上,連接WIFI的手機端是否能正常顯示采集信息,都正常后便可設置相應濕度值。
4.2.4 觀察傳感器所采集到的當前土壤溫濕度值與單片機人為設定的限值,當當前溫濕度值小于限值的時候觀察水泵是否打開,同時看單片機上顯示是否與預想的一樣。
4.2.5 對比兩處土壤所采集到的數值,當我們設定不一樣的限值時,觀察水泵的打開及關閉時間是否不一樣。
自動狀態:當程序處在自動狀態下時,系統會自動檢測此時土壤的溫度與濕度,我們已經將土壤濕度的值設定在一個合理范圍內,當土壤濕度低于這個值時,系統會自動打開澆水模塊,自動給植物澆水,當土壤濕度高于我們預設值時,澆水模塊會自動關閉。
手動狀態:當程序在手動狀態下時,我們可以通過STM32開發板上的按鍵控制是否需要澆水或通過手機控制是否澆水并且顯示此時系統的數據。
本系統以STM32開發板及ZigBee模塊為核心部件,實現土壤溫濕度采集并傳輸顯示,水位箱檢測水箱里是否有水并發出提示信息。液晶屏顯示土壤溫濕度值。
系統下載程序接通各個電源后,單片機液晶屏上顯示所設定的固定語句,經過一系列初始化后會顯示當前土壤溫濕度值及水箱是否需要加水,當土壤溫濕度值小于限值時開始澆水工作。系統流程圖如圖2所示。
5 軟件測試
5.1 顯示板C代碼
Uart_Change為串口接收到有效數據的標志,當接收到有效數據時,判斷如果接收到的是0xa1開頭,則為檢測點A的數據,如果接收到0xa2開頭,則為檢測點B的數據,然后進行相關的數據處理。
5.2 采集板A代碼
UART_SendByte(0XA1)為發送標志A板采集信息,用以給C板判斷是哪塊板發出的數據,本程序用了串口1的中斷,當A板的串口1空閑時,Uart_Change為1,A板串口1發送數據,并使Uart_Change為0,同時判斷Uart_Data[0]是否有數據被采集到,當Uart_Data[0]為1時表示A板接收到C板傳來開啟繼電器信息,此時Relay_OUT=0;否則Relay_OUT=1,表示關閉繼電器。采集板B程序代碼與A板類似。
6 結語
本系統采用了通過傳感器對土壤溫濕度的采集、結合STM32開發板的分析和ZigBee組網的無線傳輸最終實現手機端的控制,實現了遠程監測土壤溫濕度值的功能,滿足了現代化生活對智能化的需求。
(責任編輯:黃銀芳)