新聞中心

EEPW首頁 > 模擬技術(shù) > 設(shè)計應(yīng)用 > 基于傳感器和PIC微控制器的相對濕度計

基于傳感器和PIC微控制器的相對濕度計

作者: 時間:2013-05-25 來源:網(wǎng)絡(luò) 收藏
一.引言

  我們周圍的空氣是一種混合氣體,空氣中含有水蒸氣,空氣的干濕程度跟空氣中含有的水蒸氣的多少有關(guān),而空氣的干濕程度又跟我們的生活和生產(chǎn)密切相關(guān),因此知道并掌握這方面的一些知識很有必要.

  (一)空氣的濕度

  空氣的濕度可通俗地理解為空氣的潮濕程度.它有絕對濕度和相對濕度之分.

  1、絕對濕度:空氣中水蒸氣的壓強(qiáng)p叫做空氣的絕對濕度.

  空氣的濕度可以用空氣中所含水蒸汽的密度,即單位體積的空氣中所含水蒸汽的質(zhì)量來表示.由于直接測量空氣中水蒸氣的密度比較困難,而水蒸氣的壓強(qiáng)隨水蒸氣密度的增大而增大,所以通常用空氣中水蒸氣的壓強(qiáng)來表示空氣的濕度,這就是空氣的絕對濕度.

  2、相對濕度

  (1)概念的引入:為了表示空氣中水蒸氣離飽和狀態(tài)的遠(yuǎn)近而引入相對濕度的概念.

  (2)相對濕度B:某溫度時空氣的絕對濕度p跟同一溫度下水的飽和汽壓ps的百分比叫做這時空氣的相對濕度.

 ?、俨煌瑴囟认滤娘柡推麎嚎梢圆楸淼玫?/P>

 ?、谠诮^對濕度p不變而降低溫度時,由于水的飽和汽壓減小而使空氣的相對濕度增大.

 ?、劬邮业南鄬穸纫?0%~70%較適宜.

  (二)露點(diǎn)

  1、露點(diǎn):使空氣里的水蒸氣剛好達(dá)到飽和時的溫度叫做露點(diǎn).

  (1)露點(diǎn)溫度時水的飽和汽壓就是空氣的絕對濕度.

  (2)根據(jù)露點(diǎn)和氣溫的差值,可大致判斷出相對濕度大小,差值越大,相對濕度越小.

  2、露點(diǎn)可以測定.

  3、根據(jù)測定的露點(diǎn)可確定空氣的相對濕度.從水的飽和汽壓表中查出露點(diǎn)時的飽和汽壓(等于空氣在原來溫度時的絕對濕度)再查出原來溫度下飽和汽壓,就可求出.

  (三)濕度計

基于傳感器和PIC微控制器的相對濕度計

  1、濕度計的構(gòu)成:濕度計由兩只完全相同的溫度計構(gòu)成.其中一只溫度計為干泡溫度計,另一只為濕泡溫度計.

  2、濕度計測量完全相對濕度的原理:由于濕泡溫度計的感溫泡包著棉紗,棉紗的下端浸在水中,水的蒸發(fā)而使?jié)衽轀囟扔嫷臏囟仁緮?shù)總是低于干泡溫度計的溫度示數(shù)(氣溫)這一溫度差值跟水蒸發(fā)快慢(即當(dāng)時的相對濕度)有關(guān).根據(jù)兩溫度計的讀數(shù),從表或曲線上可查出空氣的相對濕度.
二.如圖所示,用一個具有容性響應(yīng)的和一只(MCU)就可以構(gòu)成一個。

基于傳感器和PIC微控制器的相對濕度計

  其中Humirel公司提供的HS1101型的電容取值范圍為162 ~202pF。

  使用一個TLC555 CMOS 定時器作為振蕩器,完成從電容到頻率的轉(zhuǎn)換,定時器的頻率等式如下:F = 1.44/(RA + 2RB)×CX這里電阻RA和RB分別等于421 kΩ和42.4 kΩ,CX為電容。接到定時器控制電壓輸入端的1MΩ電阻用來使與傳感器溫度系數(shù)相匹配的定時器內(nèi)部溫度系數(shù)失衡。

  MCU測量輸入信號周期,并將其轉(zhuǎn)換為相對濕度數(shù)字讀數(shù)。這通過MCU內(nèi)部計數(shù)器(TMR1)和捕獲/比較/脈寬調(diào)制模塊(CCP)來實現(xiàn)的。

  因為傳感器的電容范圍非常窄,信號的周期范圍也會非常小,因此使用一個8.000MHz的晶振來獲得0.5μs的指令周期。

  另外,CCP模塊被配置成將輸入電壓分為4部分,這樣就可以在由TLC555提供的不同周期中增加計數(shù)脈沖范圍。的CCP模塊可以檢測每4個或16個脈沖的上升或下降沿。

  在這種情況下,CCP模塊是按4個上升沿配置的。此檢測事件存儲在寄存器PIR1的CCP1IF標(biāo)志位。當(dāng)檢測到第一個上升沿時此標(biāo)志位被置位,通過軟件使能TMR1開始計數(shù)。

  隨后該標(biāo)志位必須被清除,等待檢測第四個上升沿,然后停止定時器?,F(xiàn)在必須將代表一個周期的總計數(shù)從存儲器TMR1L和TMR1H分別轉(zhuǎn)存到存儲器CCPR1L和CCPR1H。

  利用該數(shù)據(jù),我們進(jìn)一步從結(jié)果周期數(shù)中減去對應(yīng)于濕度0%的周期數(shù)(在本例中,取十進(jìn)制數(shù)62(3EH)) 以完成從周期數(shù)到相對濕度的轉(zhuǎn)換。對應(yīng)于濕度0%的周期數(shù)可以由制造商提供的等式和TLC555定時器產(chǎn)生的頻率計算確定。

  16位減法是通過首先對上述數(shù)值進(jìn)行二進(jìn)制補(bǔ)運(yùn)算,然后將結(jié)果加到由TMR1得到的數(shù)據(jù)而實現(xiàn)的,這個算術(shù)運(yùn)算的結(jié)果即對應(yīng)于相對濕度。最后由MCU完成從二進(jìn)制數(shù)到BCD碼的轉(zhuǎn)換。

  二進(jìn)制到BCD的轉(zhuǎn)換使用三個外存儲器:個、十、百位存儲器,相對濕度(濕度百分比)被送到個位存儲器,然后減10,由累加器W保存此運(yùn)算結(jié)果。

  通過測試狀態(tài)寄存器的進(jìn)位,我們可以知道運(yùn)算結(jié)果是否大于10。如果小于10,則運(yùn)算結(jié)果只有個位,不需要繼續(xù)進(jìn)行更多的比較運(yùn)算,這樣轉(zhuǎn)換就僅限于于個位存儲器。

  如果運(yùn)算結(jié)果大于10,十位存儲器加1,十位存儲器加1時個位存儲器必須進(jìn)行同樣的減10運(yùn)算。

  當(dāng)十位存儲器等于10時,百位存儲器加1。同樣的運(yùn)算處理一直進(jìn)行下去,直到個位存儲器的數(shù)小于10。轉(zhuǎn)換結(jié)束時,每個存儲器的結(jié)果便是BCD碼,BCD碼到七段數(shù)碼的轉(zhuǎn)換由子程序OPTABLE完成。

  轉(zhuǎn)換電路有一個四位多路共陰極LED顯示器,要求采用一個多路轉(zhuǎn)換程序來正確地顯示讀數(shù)。多路轉(zhuǎn)換通過以200Hz的頻率切換三個2N2222晶體管,一次激發(fā)一個顯示單元的方式來實現(xiàn)。

傳感器相關(guān)文章:傳感器工作原理




評論


相關(guān)推薦

技術(shù)專區(qū)

關(guān)閉