便攜式溫濕度無(wú)線(xiàn)監(jiān)控系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn)
利用新一代單片全校準(zhǔn)、高集成度、小體積的數(shù)字式溫濕度傳感器SHT71,通過(guò)單片機(jī)的控制實(shí)現(xiàn)對(duì)溫濕度的采集與顯示,再經(jīng)由無(wú)線(xiàn)收發(fā)傳輸采集到的數(shù)據(jù)與遙控各溫濕度調(diào)節(jié)設(shè)備,并結(jié)合了便攜式與PC機(jī)操作。使得此系統(tǒng)具有體積小、適用面廣、使用方便等特點(diǎn)。
本文引用地址:http://2s4d.com/article/186440.htm1 引 言
溫濕度的監(jiān)控廣泛應(yīng)用于農(nóng)業(yè)大棚生產(chǎn)、倉(cāng)儲(chǔ)管理、氣象預(yù)測(cè)、生活起居及科學(xué)研究中。傳統(tǒng)溫濕度傳感器需為其設(shè)計(jì)復(fù)雜的信號(hào)調(diào)理電路并需要經(jīng)過(guò)煩瑣的校準(zhǔn)與標(biāo)定,往往在精度、線(xiàn)性度、重復(fù)性、互換性、一致性以及對(duì)環(huán)境的適用等方面不盡人意。瑞士Sensirion 公司推出的新一代基于CMOSensTM技術(shù)的SHT系列數(shù)字式溫濕度傳感器則很好地解決了上述問(wèn)題,在無(wú)需外圍電路、免除了調(diào)試與標(biāo)定過(guò)程的基礎(chǔ)上,實(shí)現(xiàn)了溫濕度的數(shù)字式輸出。隨著無(wú)線(xiàn)通信專(zhuān)用集成芯片的不斷問(wèn)世,各類(lèi)無(wú)線(xiàn)通信設(shè)備的性能也更加優(yōu)越可靠,功能更加完善。在眾多采集監(jiān)控系統(tǒng)中,通常采用有線(xiàn)傳輸數(shù)據(jù),這樣不得不通過(guò)鋪設(shè)大量的導(dǎo)線(xiàn)來(lái)維持整個(gè)系統(tǒng)的正常運(yùn)行,有些甚至需要鋪設(shè)專(zhuān)用電纜。這使得布線(xiàn)非常復(fù)雜和困難,同時(shí)使整個(gè)系統(tǒng)造價(jià)升高,導(dǎo)線(xiàn)長(zhǎng)時(shí)間裸露會(huì)縮短它的使用壽命,若埋在地下則給線(xiàn)路的自檢、維護(hù)等帶來(lái)很大麻煩。
在現(xiàn)有的溫濕度無(wú)線(xiàn)監(jiān)控系統(tǒng)中,通常采用專(zhuān)用的無(wú)線(xiàn)數(shù)據(jù)傳輸模塊來(lái)實(shí)現(xiàn)對(duì)數(shù)據(jù)的無(wú)線(xiàn)傳輸,但是這樣需要配置多個(gè)采集模塊,并且大大增加了分離數(shù)據(jù)的負(fù)擔(dān),降低了采集效率。另一方面,這樣僅僅只實(shí)現(xiàn)了對(duì)溫濕度的采集,并沒(méi)有實(shí)現(xiàn)對(duì)溫濕度的實(shí)時(shí)控制。為了解決上述問(wèn)題,我們研究了這樣一種便攜式溫濕度無(wú)線(xiàn)監(jiān)控系統(tǒng):利用單片機(jī)控制數(shù)字溫濕度傳感器SHT71來(lái)實(shí)現(xiàn)對(duì)溫濕度的采集與顯示,運(yùn)用編解碼芯片PT2262 /PT2272來(lái)實(shí)現(xiàn)對(duì)數(shù)據(jù)與控制信號(hào)的無(wú)線(xiàn)傳輸,通過(guò)PC機(jī)來(lái)控制選擇接收需要的采集量并遠(yuǎn)程無(wú)線(xiàn)遙控排氣扇、加濕器、加溫與制冷等設(shè)備的工作狀態(tài)。
2 系統(tǒng)構(gòu)成和工作原理
系統(tǒng)總體框圖如圖1所示,主要由溫濕度的采集與顯示、無(wú)線(xiàn)傳輸與遙控、單片機(jī)控制與處理以及PC機(jī)四部分組成。溫濕度采集與顯示模塊主要實(shí)現(xiàn)了對(duì)溫濕度的選擇采集,并顯示相應(yīng)的數(shù)據(jù),工作人員可以很方便地握在手里對(duì)不同地點(diǎn)的溫濕度進(jìn)行測(cè)量。此系統(tǒng)中無(wú)線(xiàn)傳輸與遙控是一個(gè)單向過(guò)程,在軟件設(shè)計(jì)中解決了數(shù)據(jù)同步與校驗(yàn)錯(cuò)誤等問(wèn)題。采集到的數(shù)據(jù)再經(jīng)由編解碼芯片PT2262 /PT2272所組成的無(wú)線(xiàn)收發(fā)模塊進(jìn)行無(wú)線(xiàn)傳輸,接收端受單片機(jī)AT89C52控制,這樣可以改變PT2272的地址碼從而控制接收溫度或者濕度數(shù)據(jù)。同樣無(wú)線(xiàn)收發(fā)模塊與驅(qū)動(dòng)以及固態(tài)繼電器等構(gòu)成的無(wú)線(xiàn)遙控模塊實(shí)現(xiàn)了對(duì)電器設(shè)備的控制,這樣就能很方便地得到所需要的合適的溫濕度環(huán)境。PC機(jī)里運(yùn)行VB 編寫(xiě)的控制面板,進(jìn)行采集量、采集次數(shù)與各電器設(shè)備工作狀態(tài)的設(shè)置,然后將設(shè)置好的參數(shù)通過(guò)MAX232串口通信送給單片機(jī)AT89C52,進(jìn)而控制相應(yīng)電器與接收相應(yīng)采集量的數(shù)據(jù)并完成相應(yīng)采集次數(shù)的數(shù)據(jù)。單片機(jī)AT89C52 將采集到的數(shù)據(jù)通過(guò)MAX232串口通信傳送給PC機(jī),進(jìn)而實(shí)現(xiàn)對(duì)采集到的數(shù)據(jù)進(jìn)行顯示和存儲(chǔ)。
圖1 系統(tǒng)總體框圖
3 系統(tǒng)軟、硬件設(shè)計(jì)
3. 1 溫濕度的采集與顯示模塊設(shè)計(jì)
3. 1. 1 數(shù)字溫濕度傳感器SHT71
SHT71是一種通過(guò)I2 C總線(xiàn)直接輸出數(shù)字量值,可以同時(shí)測(cè)量濕度、溫度和露點(diǎn)的傳感器。
SHT71的外形如圖2所示,封裝形式為小體積四腳單線(xiàn)封裝,其引腳說(shuō)明如下: ①SCK:串行時(shí)鐘輸入;②VDD: 2. 4~5. 5V電源端; ③GND:接地端; ④DA2TA:雙向串行數(shù)據(jù)線(xiàn)。
圖2 STH71外形圖
3. 1. 2 硬件接口電路與程序設(shè)計(jì)
溫濕度的采集與顯示硬件接口電路如圖3 所示,主要由單片機(jī)AT89C2051、顯示電路、選擇開(kāi)關(guān)與數(shù)字溫濕度傳感器SHT71 這四部分組成。當(dāng)選擇開(kāi)關(guān)接通溫度采集中斷INT0口時(shí),則采集溫度;當(dāng)選擇開(kāi)關(guān)接通濕度采集中斷INT1口時(shí),則采集濕度;若兩個(gè)都不接通,則為循環(huán)采集溫度與濕度。三個(gè)數(shù)碼顯示管可以顯示采集到的數(shù)據(jù),其軟件設(shè)計(jì)如圖4所示。
圖3 采集顯示模塊接口電路圖
圖4 INT0 / INT1中斷響應(yīng)程序流程圖
3. 2 無(wú)線(xiàn)傳輸與遙控模塊設(shè)計(jì)
3. 2. 1 無(wú)線(xiàn)傳輸
無(wú)線(xiàn)傳輸包括無(wú)線(xiàn)發(fā)送與無(wú)線(xiàn)接收,無(wú)線(xiàn)發(fā)送電路如圖5 所示,其中PT2262 的A0 ~A7 為地址碼,可以設(shè)成置1、置0和懸空三種狀態(tài),地址編碼不重復(fù)度為6561組。D0~D4為數(shù)據(jù)碼,與四個(gè)I/O口相連,用來(lái)每次無(wú)線(xiàn)發(fā)送四位數(shù)據(jù),在編碼輸出端(17腳)輸出編碼信號(hào),再經(jīng)過(guò)放大和315MHz的高頻調(diào)制輸出。選擇開(kāi)關(guān)可選擇設(shè)置地址碼,當(dāng)需要只發(fā)送溫度數(shù)據(jù)時(shí),設(shè)置A0接地, A1~A7全部懸空;當(dāng)只發(fā)送濕度數(shù)據(jù)時(shí),設(shè)置A7接地,其余地址碼懸空;當(dāng)需要循環(huán)發(fā)送溫度與濕度數(shù)據(jù)時(shí),設(shè)置將A0與A7接地,其余地址碼懸空。此系統(tǒng)必須在編碼芯片PT2262 與解碼芯片PT2272 的地址碼一一對(duì)應(yīng)相同的條件下,才能實(shí)現(xiàn)對(duì)應(yīng)的發(fā)送與接收。
圖5 無(wú)線(xiàn)發(fā)送電路圖
SHT71的濕度測(cè)量范圍為0 ~100% RH,溫度測(cè)量范圍為- 40 ~ + 123. 8℃, 對(duì)數(shù)據(jù)處理后以BCD碼形式顯示并無(wú)線(xiàn)發(fā)送出去,這樣每一組完整的數(shù)據(jù)包含有個(gè)位、十位與百位(或者為負(fù)號(hào)) .無(wú)線(xiàn)發(fā)送接收是一個(gè)單向的過(guò)程,這樣就引入了一組數(shù)據(jù)的同步和出錯(cuò)檢測(cè)等問(wèn)題。為了避免傳輸錯(cuò)誤并保證一組數(shù)據(jù)的完整性,設(shè)置了一個(gè)起始同步碼1111,由于發(fā)送的數(shù)據(jù)都是BCD碼,這樣就能和數(shù)據(jù)區(qū)分開(kāi)來(lái)。在發(fā)送一組數(shù)據(jù)之前先發(fā)送同步碼,然后分別發(fā)送百位、十位和個(gè)位。在發(fā)送完個(gè)位數(shù)據(jù)以后,還發(fā)送一次包含有個(gè)位、十位、百位這三位數(shù)據(jù)的累加和,以便于接收端判斷這一組數(shù)據(jù)是否傳輸正確。
評(píng)論