劉德叢


摘 要:本文設計了一款雞舍無線溫濕度監測系統。該系統采用溫濕度傳感器DHT11進行雞舍現場溫濕度的信息采集,以無線射頻芯片nRF905作為數據的無線收發模塊,以AT89S52單片機作為數據的處理控制模塊。通過實驗驗證來看,該系統不僅經濟可靠,而且能有效監測雞舍的溫濕度。
關鍵詞:雞舍;nRF905;溫濕度監測;單片機
中圖分類號:TP274;S831.45文獻標識碼:A 文章編號:1003-5168(2021)05-0027-03
Abstract: This paper designed a wireless temperature and humidity monitoring system for chicken house. The temperature and humidity sensor DHT11 is used to collect the temperature and humidity information of chicken house, nRF905 is used as the wireless transceiver module, and AT89S52 is used as the data processing control module. Through the experimental verification, the system is not only economical and reliable, but also can effectively monitor the temperature and humidity of chicken house.
Keywords: chicken house;nRF905;temperature and humidity monitoring;single chip microcomputer
1 整體實現方法分析
在設計之前,首先要對雞舍的結構有一定的了解,雞舍的總面積、雞籠的大小及喂食器的位置都會對系統的設計產生影響。本研究的思路是利用溫濕度傳感器及通信網絡實現對雞舍內溫度的實時監控,在總控制中心分析監測到的數據。溫濕度傳感器采用的是DHT11,傳感器的作用是采集溫濕度數據,然后再由nRF905無線收發芯片將采集到的溫濕度數據傳送到主機上,接著AT89S52單片機對數據進行分析與處理,最后傳送到液晶顯示屏上實時顯示。同時,使用人員可以自己設定雞舍中達標的溫濕度,對超出范圍的情況進行報警[1]。
設計該系統的目標是通過傳感器采集溫濕度數據來實現對溫度和濕度的監控,并且利用無線傳輸通信技術將樣本數據上傳到服務器中。若溫濕度超出了預設范圍,報警系統就會發出警報,提醒工作人員采取相應的處理措施。
2 硬件設計
2.1 傳感器的選擇
傳感器的選用是硬件設計的第一步。在選用傳感器時,要根據預算和使用環境來考慮,本系統采用高精度數字式溫濕度傳感器DHT11。DHT11溫濕度傳感器具有響應速度快、抗干擾能力強和性價比高的優點[2]。在本設計中(見圖1),DHT11溫濕度傳感器完全可以滿足響應速度和靈敏度的要求,并且這款傳感器性價比高,可以節省成本。
2.2 數據傳輸方式選擇
采用無線傳輸數據能減少電磁干擾與信號衰減問題導致的誤差,所以本系統采用的是nRF905無線收發芯片。受使用環境所限,在設計無線數據傳輸模塊時著重考慮了模塊的功耗問題。nRF905正常的工作電壓為1.9~3.6 V,對外數據連接的接口為SPI,整個無線傳輸模塊的控制芯片具備低功耗的特點,在無數據傳輸的情況下,芯片進入休眠,減少非工作時間的耗電問題。
2.3 主控機的硬件選擇
單片機是一種集成電路芯片[3]。單片機可嵌入編程。由于單片機體積小,所以在工業上有著不可替代的作用。本系統使用AT89S52單片機對數據進行分析與處理,同時安裝有小型顯示屏,數據分析可以顯示在屏幕上。
2.4 簇頭節點設計
由于傳感器節點的傳輸模塊與簇頭節點的信息傳輸在正常工作時并不會產生沖突,所以本系統設計這兩者共用一個傳輸模塊,這也考慮了開發成本問題和整體功耗問題,即簇頭節點的無線傳輸模塊直接使用傳感器節點的無線傳輸裝置。
3 系統軟件設計
3.1 傳感器節點模塊軟件
系統軟件設計包括傳感器的節點軟件和控制芯片,傳感器的節點軟件主要用來實現數據的采集和發送控制。傳感器本身并不具備發送數據的能力,需要通過芯片來實現,節點軟件嵌入控制芯片中,用以傳輸數據的控制。傳感器節點流程如圖1所示。
無線模塊初始化。無線模塊初始化是第一個步驟。
從串口接收數據。在這一步驟中,系統會判斷接收數據是否成功,如果成功則轉向下一個步驟,如果失敗,則返回繼續等待串口數據的接收。
測試無線通信命令。在這一步驟中,會向無線傳輸模塊發出測試信號。在發出Y字符之后,如果判斷信號發送成功,則執行第一個步驟(無線模塊初始化);如果發送失敗,則執行采集數據命令。
采集數據命令。在這一步驟中,系統會向無線傳輸模塊發送數據采集指令,如果這一步驟成功,則執行無線模塊初始化步驟;如果失敗,則重復這一步驟,直到成功執行無線模塊初始化操作[4]。
3.2 監控中心管理軟件
監控中心管理軟件模塊包括參數設置、數據采集、數據管理、預警模塊四個部分。
3.2.1 參數設置。參數設置模塊提供了所有可變參數的設置。在實際使用中,管理員要設置溫濕度報警參數,在設置完成之后,如果接收到的數據超過了設定值,就會通過預警模塊來實現報警功能。
3.2.2 數據采集。在本設計中,考慮到雞舍的面積較大,正常投入使用時需要多個傳感器同時采集雞舍內部不同位置的溫濕度信息,所以數據采集模塊還需要實現同步采集多傳感器的數據,再將這些不同的數據保存到數據庫工具中。
3.2.3 數據管理。數據管理主要是通過數據庫工具來實現的。在數據庫中設計有多個數據表,這些數據表用于存放不同時間段和不同類型的監控數據。由于雞舍面積較大,所以單個傳感器無法完成全部數據采集,在實際應用中,需要利用多個傳感器同時采集不同位置的溫濕度信息,再由數據管理模塊進行信息匯總和分析。因此,數據管理模塊的主要功能是控制多個位置傳感器的數據管理工作(見圖2)。
3.2.4 預警模塊。當傳感器感應到的溫度超出了設定的參數范圍時,預警模塊會控制相應的設備發出預警信息,同時預警的具體內容也會在屏幕上進行展示。預警模塊與其他三個模塊的功能是緊密相連的。只有在數據采集模塊和數據管理模塊將溫濕度信息傳遞給預警模塊時,預警模塊才可以判斷當前雞舍的溫濕度是否在可接受范圍內[5]。
4 系統部署與測試分析
4.1 系統部署
在養雞場進行系統的部署實驗。經過測量,所選實驗雞舍長90 m,寬10 m,平均高度5.2 m,最高點高度為6 m,為四層雞籠模式。為了更好地監測雞舍內各個位置的溫度,共布置9個傳感器。
考慮到實際使用需要,數據采集周期為10 min,該周期是可調節的。在采集時,所有的節點都是被動式觸發方式,即每10 min固定采集一次數據,但在實際實驗中,發現以10 min為間隔并不合適,又將數據采集周期調節到20 min。每一個節點的供電都是兩塊串聯的18650鋰電池,滿電一次的使用時長為一周。
4.2 結果分析
4.2.1 網絡傳輸誤差測試。通過提取相關數據發現,網絡傳輸的誤差在可接受的范圍之內,整體誤差為0.31%。
4.2.2 功耗測試。數據采集的間隔最終被設定為20 min,采用兩節18650鋰電池供電的節點可工作時間為一周,如果將數據采集間隔設定為60 min,則可工作時間更長。這是由于在非采集時間內,整個節點處于休眠狀態,使得功耗大大降低,極大地延長了可持續工作的時間。
4.2.3 系統連續工作狀態測試。經過測試可知,雞舍內的溫濕度情況都能被準確地監測出來,并且觀察了近一個月的系統運行狀態后,并未發現出現異常情況。可見,該系統可以實現對雞舍內溫度和濕度情況的遠程、準確測量[6]。
5 結語
本系統采用溫濕度傳感器DHT11對雞舍中的溫濕度進行樣本采集,然后再由nRF905無線收發芯片將采集到的溫濕度數據傳送到主機上,接著利用AT89S52單片機對數據進行分析與處理,最后傳送到液晶顯示屏上實時顯示。使用者可以自己設定雞舍中達標的溫濕度,對超出范圍的情況進行報警。從實驗結果來看,本文設計的雞舍無線溫濕度監測系統是一個經濟、可靠的系統,能有效監測雞舍的溫濕度。
參考文獻:
[1]趙建華,韓玉杰.基于nRF905的溫室無線數據傳輸系統[J].機電產品開發與創新,2009(6):141-142,152.
[2]張廣軍,黃俊欽,李行善,等.溫度傳感器現場動態校準方法與實驗研究[J].北京航空航天大學學報,1997(3):311-315.
[3]李麗華,于堯,陳輝.基于無線傳感器網絡的雞舍溫濕度實時監測系統[J].河北農業大學學報,2014(1):123-126,131.
[4]張冬林,李鑫,戴梅.基于DHT11的低成本蠶室溫濕度自動控制系統的設計[J].現代農業科技,2010(18):14-15.
[5]韓丹翱,王菲.DHT11數字式溫濕度傳感器的應用性研究[J].電子設計工程,2013(13):83-85,88.
[6]李俊,張曉東.基于單片機的溫濕度檢測與控制系統[J].微計算機信息,2008(17):116-118.