新聞中心

EEPW首頁 > 電源與新能源 > 設計應用 > 帶語音功能的溫濕度測量儀設計

帶語音功能的溫濕度測量儀設計

作者: 時間:2012-10-08 來源:網絡 收藏

引言

本文引用地址:http://m.butianyuan.cn/article/176141.htm

溫度和濕度是標定環(huán)境不可缺少的參數,在蔬菜大棚、糧食倉庫等許多場合,對溫、濕度的要求非常嚴格,因此對環(huán)境溫、濕度參數的實時檢測提出了更高的要求,測試系統(tǒng)[1]在工業(yè)生產和日常生活中的應用也越來越廣泛。本文介紹的利用凌陽16位單片機SPCE061A作為控制中心,配合電容式濕度傳感器HS1101和一線制數字溫度傳感器DS18B20采集數據,具有實時顯示和提示。

1、系統(tǒng)工作原理及硬件

1.1 系統(tǒng)基本構成

主要包括兩個部分:溫度測量和濕度測量。其基本構成如圖1所示。該系統(tǒng)利用凌陽16位單片機SPCE061A作為系統(tǒng)的控制中心,采用電容式濕度傳感器HS1101和一線制數字溫度傳感器DS18B20,將測量到的溫度值和濕度值送入單片機中,經過數據處理后,進行實時顯示,并通過按鍵控制測量結果的播放。

帶語音功能的溫濕度測量儀設計  www.21ic.com

1.2 SPCE061A單片機

SPCE061A單片機是凌陽公司以16位微處理器μ’NSPTM為核心生產的一種16位微控制器,其時鐘頻率范圍為0.32MHZ~49.125MHZ,具有較高的處理速度,能快捷的處理各種復雜的數字信號,它內置2K的RAM和32K的內存FLASH,具有14個中斷源,32位可編程的并行I/O口,兩個16位可編程定時器/計數器,7通道10位A/D轉換器和單通道聲音A/D轉換器,雙通道10位D/A轉換器和可編程音頻處理,具有較強的處理[2]。

1.3 溫度測量

溫度傳感器選擇DALLAS公司生產的一線制數字溫度傳感器DS18B20,它具有3引腳TO-92小體積封裝形式;溫度測量范圍為-55℃~+125℃,可編程為9位~12位A/D轉換精度,測溫分辨率可達0.0625℃,被測溫度用符號擴展的16位數字量方式串行輸出。

由于DS18B20只有一個串行通信接口,與單片機的連接電路非常簡單,只需和單片機的一個I/O端口連接即可,本系統(tǒng)選擇了IOB7端口,其連接電路圖如圖2所示。DS18B20的I/O口屬于漏極開路輸出,外接上拉電阻后常態(tài)下呈高電平。該器件內含寄生電源,其供電方式可以選擇寄生電源方式,也可以選用外部電源[3]。為方便起見,采用外部電源供電。

帶語音功能的溫濕度測量儀設計  www.21ic.com

1.4 濕度測量

濕度是指空氣中水蒸氣的含量,其表示方法有絕對濕度、相對濕度、露點等。日常生活中所指的濕度是相對濕度,即空氣中所含水蒸氣量(水蒸氣壓)與其相同情況下飽和水蒸氣量(飽和水蒸氣壓)的百分比,用%RH表示[3]。

電容式濕度傳感器HS1101具有檢測速度快、高精度、高可靠性、長期穩(wěn)定性和使用方便、體積小等特點,適用于一些對精度要求不高的場合。在不同的相對濕度中傳感器的電容值不同,單片機不能直接讀電容值,需要外接測量電路。電容式傳感器的測量電路有電壓輸出式和頻率輸出式兩種,考慮到單片機內有兩個定時/計數器,測量頻率比較方便,選用頻率輸出測量電路,如圖3所示。采用555定時器和濕度傳感器HS1101以及一些電阻構成多諧振蕩器電路,產生的振蕩頻率由下式計算。

由濕度傳感器HS1101的工作原理知道,測得的頻率值與相對濕度值有關,關系如下式:

其中, 為25℃,55%RH時電路的參考頻率。

帶語音功能的溫濕度測量儀設計  www.21ic.com

1.5 顯示及鍵盤

系統(tǒng)采用液晶顯示模塊RT12864M顯示溫度值和濕度值,該模塊有并行和串行兩種連接方式,考慮到傳輸速率,令PSB端接高電平,使用8位并行口進行指令/數據傳輸。并行口DB0~DB7與單片機的IOA0~IOA7相連接,使能端E與IOB6連接,指令/數據選擇端與IOB4連接,讀/寫選擇端與IOB5連接,另外每個端口都需要外接上拉電阻,如圖4所示。單片機通過IOB4~IOB6對顯示模塊進行控制,按照液晶顯示模塊的讀寫時序編程,使顯示模塊正常顯示溫度值和濕度值。

帶語音功能的溫濕度測量儀設計  www.21ic.com

系統(tǒng)的語音提示利用按鍵來控制,連接電路簡單,按鍵一端接上拉電阻,另一端與單片機IOB3相連,按下鍵時,IOB3端口輸入為高電平。

2、系統(tǒng)軟件

凌陽單片機支持C語言與匯編語言之間的相互調用,為提高程序的可讀性與移植性,同時也便于調試,采用模塊化的方法編寫程序。系統(tǒng)軟件包括主程序、溫度測量子程序、濕度測量子程序、鍵盤掃描子程序、中斷子程序、語音播放子程序。在主程序中依次調用這些子程序,實現系統(tǒng)功能,主程序流程圖見圖5。

在主程序中,首先要對單片機端口進行初始化,將IOA端口設置為高電平輸出,IOB端口設置為低電平輸出。然后分別調用測量溫度子程序和測量濕度子程序,完成測量和顯示大約需要1秒鐘的時間,然后再掃描鍵盤,判斷是否進行語音播放。因為單片機內的看門狗計數器每0.75s的時間內會使系統(tǒng)自動復位,為防止該情況發(fā)生,需要在0.75s內將看門狗清零。

溫度測量子程序首先對DS18B20初始化,如果計算機檢測到單總線上有DS18B20器件存在,就發(fā)出跳過ROM命令(CCH)。當該命令被成功執(zhí)行后,主機發(fā)出溫度轉換命令(44H)。延時一段時間,待轉換結束后,再重新初始化,跳過ROM命令,然后主機發(fā)出讀存儲器命令(BEH),得到溫度數據。為了縮短傳感器數據的轉換時間,將傳感器的分辨率改為9位(出廠時默認分辨率為12位),這樣溫度轉換時間97.5ms,精度0.5℃。


上一頁 1 2 下一頁

評論


相關推薦

技術專區(qū)

關閉