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