摘 要:本文主要介紹了一種基于單片機(jī)的分布式生態(tài)環(huán)境監(jiān)控系統(tǒng),可實(shí)時(shí)對(duì)目標(biāo)區(qū)域進(jìn)行溫濕度、氣壓監(jiān)測(cè)。該系統(tǒng)由主控節(jié)點(diǎn)及監(jiān)測(cè)節(jié)點(diǎn)兩部分組成,監(jiān)測(cè)節(jié)點(diǎn)完成對(duì)溫度、濕度、氣壓等信息的采集并通過(guò)無(wú)線網(wǎng)絡(luò)發(fā)送給主控節(jié)點(diǎn);主控節(jié)點(diǎn)完成對(duì)監(jiān)測(cè)節(jié)點(diǎn)信息的收集與處理并通過(guò)串口傳送至上位機(jī)。該系統(tǒng)設(shè)計(jì)操作簡(jiǎn)單,使用方便,抗干擾能力強(qiáng),在農(nóng)業(yè)物聯(lián)網(wǎng)領(lǐng)域具有十分廣泛的社會(huì)效益和應(yīng)用前景。
關(guān)鍵詞:?jiǎn)纹瑱C(jī);溫度;濕度;氣壓
中圖分類(lèi)號(hào):TP273.5
溫度、濕度及氣壓是影響生態(tài)環(huán)境的重要因素,其適宜與否與生產(chǎn)、生活密切相關(guān)。因此,對(duì)于溫濕度、氣壓的測(cè)量及控制顯得日益重要。單片機(jī)具有體積小、功能強(qiáng)、耗能低、開(kāi)發(fā)周期短和價(jià)格低廉等優(yōu)點(diǎn),已成為自動(dòng)化和測(cè)控領(lǐng)域中必不可少的器件。采用單片機(jī)對(duì)溫濕度、氣壓進(jìn)行測(cè)量與控制,不僅控制方便、操作簡(jiǎn)單而且很容易提高被控對(duì)象的技術(shù)指標(biāo)。本文主要介紹以單片機(jī)STCLE5616AD為核心的基于無(wú)線網(wǎng)絡(luò)的溫度、濕度及氣壓的測(cè)量及監(jiān)控系統(tǒng)。主控節(jié)點(diǎn)接收各個(gè)節(jié)點(diǎn)傳輸過(guò)來(lái)的數(shù)據(jù)并傳輸?shù)缴衔粰C(jī),上位機(jī)運(yùn)行的軟件實(shí)時(shí)顯示各個(gè)節(jié)點(diǎn)處傳來(lái)的溫度,濕度,氣壓等環(huán)境指標(biāo),以實(shí)現(xiàn)對(duì)該處環(huán)境的實(shí)時(shí)監(jiān)測(cè)和管理。
1 系統(tǒng)電路設(shè)計(jì)
本系統(tǒng)總體設(shè)計(jì)主要包括4部分:溫濕度模塊,氣壓模塊,NRF24l01無(wú)線模塊,電源管理模塊。整個(gè)系統(tǒng)的總體結(jié)構(gòu)框圖如下所示:
圖1 系統(tǒng)整體框圖
1.1 溫濕度采樣和轉(zhuǎn)換電路
DHT11溫濕度傳感器是一款含有溫濕度信息的復(fù)合傳感器。其由一個(gè)電阻式感濕元件和一個(gè)NTC測(cè)溫元件組成。為了節(jié)約單片機(jī)的IO引腳,DHT11采用單總線通信方式,通過(guò)一個(gè)上拉電阻(約5千歐)令單串行總線在非工作狀態(tài)時(shí)為高電平。DHT11可以工作在3.3V,其工作電流約為0.3mA,待機(jī)電流為60uA,非常適合低功耗產(chǎn)品選用。
系統(tǒng)將DHT11傳感器的數(shù)據(jù)引腳與單片機(jī)的P1.7引腳相連,并通過(guò)一個(gè)約為5K的上拉電阻與數(shù)據(jù)引腳相連,使數(shù)據(jù)引腳在閑置狀態(tài)時(shí),若主機(jī)未發(fā)出呼應(yīng),從機(jī)則不應(yīng)答。當(dāng)主機(jī)的P1.7引腳由原來(lái)的高電平置為低電平,主機(jī)向從機(jī)發(fā)送開(kāi)始信號(hào),從機(jī)接收到主機(jī)發(fā)送過(guò)來(lái)的開(kāi)始信號(hào)后再發(fā)送給主機(jī)一個(gè)低電平的應(yīng)答信號(hào),然后有上拉電阻將引腳置高,準(zhǔn)備輸出,此時(shí)從機(jī)開(kāi)始向主機(jī)發(fā)送所采集到的溫濕度數(shù)據(jù)。采樣結(jié)束后釋放串行總線結(jié)束數(shù)據(jù)的發(fā)送,等待主機(jī)的下一次開(kāi)始信號(hào)。在數(shù)據(jù)發(fā)送時(shí),共要發(fā)送40位的序列,其中0-15位是濕度的數(shù)據(jù)部分,16-31是溫度的數(shù)據(jù)部分,32-39位是數(shù)據(jù)的校驗(yàn)部分。DHT11與單片機(jī)的連接電路與程序流程如圖2、圖3所示:
圖2 溫濕度模塊接線圖
圖3 溫濕度模塊軟件設(shè)計(jì)流程圖
1.2 氣壓采集和轉(zhuǎn)換電路
BMP180傳感器是高精度的、具有低功耗特性的新一代數(shù)字式壓力傳感器,具有較強(qiáng)的穩(wěn)定性。BMP180可供測(cè)量的范圍約為30kpa-110kpa,供電需求也僅為1.7V-3.6V,其與單片機(jī)通過(guò)IIC接口進(jìn)行連接。該傳感器內(nèi)部含有一個(gè)EEPROM,當(dāng)單片機(jī)發(fā)送一個(gè)氣壓開(kāi)始信號(hào),經(jīng)轉(zhuǎn)換后,傳感器采集的數(shù)據(jù)能夠通過(guò)IIC總線被讀出。在本系統(tǒng)中,IIC兩根總線(時(shí)鐘線和數(shù)據(jù)線)與單片機(jī)的P3.4,P3.5引腳相連,同時(shí)通過(guò)兩個(gè)4.7千歐的電阻將IIC總線上拉。BMP180傳感器與單片機(jī)的連接電路如圖4,圖5所示:
圖4 氣壓模塊接線圖
圖5 氣壓模塊軟件設(shè)計(jì)圖
1.3 電源管理模塊的設(shè)計(jì)與實(shí)現(xiàn)
系統(tǒng)采用TP4057管理芯片來(lái)完成對(duì)鋰電池的充電與放電。TP4057是單節(jié)鋰電池充電器,能夠提供500mA的充電電流。它采用恒定電流/電壓算法,無(wú)需二極管或者外部電流檢測(cè)器作輔助。當(dāng)系統(tǒng)采集到某一節(jié)點(diǎn)電量低于3.6V時(shí),上位機(jī)立即顯示電量不足的節(jié)點(diǎn)。而用戶(hù)通過(guò)查看上位機(jī)得知各個(gè)模塊電池的電量,可直接通過(guò)USB接口給電池充電。TLV11173V3用來(lái)把鋰電池輸出的4.2v電壓轉(zhuǎn)換為3.3v。
圖6 充電電路圖
1.4 無(wú)線通信模塊設(shè)計(jì)與實(shí)現(xiàn)
本系統(tǒng)使用NRF24L01模塊作為無(wú)線數(shù)據(jù)傳輸?shù)姆桨?,NRF24L01屬于內(nèi)置2.4G天線、CRC檢錯(cuò)及點(diǎn)對(duì)多點(diǎn)通信地址控制的無(wú)線模塊,具有體積小,功耗低,抗干擾能力強(qiáng)等優(yōu)良特性。NRF24L01所有的配置都通過(guò)一種高速的,全雙工,同步的SPI通信總線完成。其可以接受來(lái)自6個(gè)不同地址節(jié)點(diǎn)但頻率相同的數(shù)據(jù),每個(gè)數(shù)據(jù)通道通過(guò)寄存器配置擁有自己的地址,即通過(guò)EN_RXADDR來(lái)配置數(shù)據(jù)通道的開(kāi)啟或關(guān)閉。當(dāng)某個(gè)數(shù)據(jù)通道設(shè)置為應(yīng)答方式并且接收到數(shù)據(jù)時(shí),該模塊會(huì)向接受通道地址發(fā)送一個(gè)應(yīng)答信號(hào)。由于本系統(tǒng)的所涉及的節(jié)點(diǎn)數(shù)不多于6個(gè),所以使用NRF24L01是非常適合的。圖7為NRF24L01與單片機(jī)連接原理圖。
圖7 無(wú)線模塊引腳接線圖
2 通信節(jié)點(diǎn)協(xié)議設(shè)計(jì)
本系統(tǒng)的通信協(xié)議主要是根據(jù)NRF24L01芯片設(shè)計(jì)而成,用于實(shí)現(xiàn)多節(jié)點(diǎn)單通道發(fā)送數(shù)據(jù),單節(jié)點(diǎn)單通道結(jié)束數(shù)據(jù)。在每個(gè)節(jié)點(diǎn)的無(wú)線模塊寄存器發(fā)送配置過(guò)程中實(shí)現(xiàn)不同通道的打開(kāi),比如節(jié)點(diǎn)1打開(kāi)通道1,節(jié)點(diǎn)2打開(kāi)通道2,而在節(jié)點(diǎn)配置為接受數(shù)據(jù)時(shí),最多可以接收來(lái)自6路不同節(jié)點(diǎn)發(fā)送過(guò)來(lái)的數(shù)據(jù),并通過(guò)返回狀態(tài)寄存器標(biāo)記通道號(hào),以便區(qū)分?jǐn)?shù)據(jù)的來(lái)源。
另外,為了統(tǒng)一上位機(jī)與下位機(jī)的通訊,本系統(tǒng)采用了自定義協(xié)議的方式:以字符‘!’作為數(shù)據(jù)的首部,表示開(kāi)始數(shù)據(jù)發(fā)送,每次發(fā)送完一個(gè)指標(biāo)的數(shù)據(jù)后以0結(jié)束,以區(qū)分下一個(gè)數(shù)據(jù)指標(biāo)。在所有數(shù)據(jù)傳輸結(jié)束后,定義簡(jiǎn)單的校驗(yàn)位,校驗(yàn)位算法是將每個(gè)字符所對(duì)應(yīng)的ASCII相加求和取后兩位坐位數(shù)據(jù)校驗(yàn)位,最后以字符‘#’結(jié)束數(shù)據(jù)的傳輸。此協(xié)議的定義有利于下位機(jī)與上位機(jī)的通信,從而方便數(shù)據(jù)的讀取。
3 結(jié)束語(yǔ)
本文介紹了基于物聯(lián)網(wǎng)的生態(tài)環(huán)境監(jiān)控節(jié)點(diǎn)系統(tǒng)設(shè)計(jì)方案,并詳細(xì)論述了相關(guān)硬件工作原理及程序流程。該系統(tǒng)可以對(duì)環(huán)境溫度、濕度及氣壓進(jìn)行檢查和測(cè)量,并能夠根據(jù)已設(shè)定的定值來(lái)調(diào)節(jié)檢測(cè)目標(biāo)。此設(shè)計(jì)系統(tǒng)具有較廣的應(yīng)用,不僅用于監(jiān)測(cè)生態(tài)環(huán)境,也可運(yùn)用于人們工作與生活的方方面面等各類(lèi)環(huán)境監(jiān)測(cè)。實(shí)驗(yàn)表明,該系統(tǒng)運(yùn)行穩(wěn)定,測(cè)量結(jié)果準(zhǔn)確。
參考文獻(xiàn):
[1]孫育才.MCS-51系列單片微型計(jì)算機(jī)及其應(yīng)用(第四版)[M].南京:東南大學(xué)出版社,2004.
[2]鄭金輝,張齊,李登紅,帥仁俊.基于單片機(jī)的數(shù)字溫度測(cè)控系統(tǒng)設(shè)計(jì)[J].微計(jì)算機(jī)信息,2009.
[3]謝自美.電子線路設(shè)計(jì)實(shí)驗(yàn)測(cè)試[M].武漢:華中科技大學(xué)出版社,2000.
[4]鐘曉偉,宋蟄存.基于單片機(jī)的實(shí)驗(yàn)室溫濕度控制系統(tǒng)設(shè)計(jì)[J].林業(yè)機(jī)械與木工設(shè)備,2010(01):39-42.
作者簡(jiǎn)介:李萍(1993.10-),女,本科,研究方向:無(wú)線傳感器網(wǎng)絡(luò)。
作者單位:江西農(nóng)業(yè)大學(xué) 外國(guó)語(yǔ)學(xué)院,南昌 330045
基金項(xiàng)目:本文獲得“大學(xué)生創(chuàng)新項(xiàng)目”《基于物聯(lián)網(wǎng)的生態(tài)環(huán)境監(jiān)控節(jié)點(diǎn)設(shè)計(jì)》(項(xiàng)目編號(hào):DC201345)、江西省教育廳的青年基金項(xiàng)目《基于WSN和LSSVM的嵌入式溫室系統(tǒng)相關(guān)控制技術(shù)研究》(項(xiàng)目編號(hào):GJJ13250)支持。