基于STC89C52單片機的火災語音報警器的設(shè)計與實現(xiàn)
摘要:該系統(tǒng)以STC89C52單片機作為報警器的核心控制器,用溫度傳感器DS18B20和煙霧傳感器MQ-2分別耐環(huán)境進行溫度和煙霧的數(shù)據(jù)采集,并將采集的數(shù)據(jù)傳送給單片機,單片機對采集數(shù)據(jù)進行取樣報警。本系統(tǒng)具有體積小、成本低、操作簡單的特點。
隨著電子產(chǎn)品在人類生活中的使用越來越廣泛,現(xiàn)代建筑的不斷增加,火災隱患也隨之增加。為了避免火災以及減少火災給我們造成的損失,我們必須按照“隱患險于明火,防患勝于救災,責任重于泰山”的概念設(shè)計和完善火災自動報警系統(tǒng),將火災消滅在萌芽狀態(tài),最大限度地減少社會財富的損失。
因此,我們運用STC89C52單片機作為報警器的核心控制器,選用DS18B20溫度傳感器對環(huán)境溫度進行檢測,選用MQ-2煙霧傳感器對煙霧信息進行檢測,設(shè)計出了能及時發(fā)現(xiàn)火災隱患并報警的報警設(shè)備,在現(xiàn)代智能建筑中起著極其重要的安全保障作用。
1 系統(tǒng)整體設(shè)計
該系統(tǒng)將STC89C52單片機作為主控芯片,DS18B20溫度傳感器對溫度進行采集,MQ-2煙霧傳感器對煙霧信息進行采集,并將采集到的煙霧濃度信息轉(zhuǎn)化為模擬電信號,通過電壓比較器將模擬信號轉(zhuǎn)換成單片機可識別的數(shù)字信號后送入單片機,然后單片機對溫度傳感器和煙霧傳感器采集到的信號進行處理,并對處理后的數(shù)據(jù)進行分析,使語音芯片做出相應的報警。
系統(tǒng)結(jié)構(gòu)如圖1所示。
2 系統(tǒng)硬件設(shè)計
2.1 單片機的選型
在火災報警器的設(shè)計中,單片機是其核心部件。它一方面要接收來自傳感器送來的溫度、煙霧的信號,另一方面要對這兩種信號分別進行分析處理,以控制語音報警電路進行相應動作。本系統(tǒng)要求單片機具備較快的運算速度,抗干擾能力強和低功耗的特點。根據(jù)多方面的比較,選用由宏晶科技公司生產(chǎn)的STC89C52單片機作為控制系統(tǒng)的核心。STC 89C52是一種低功耗、高性能的CMOS 8位微控制器,STC89C52使用經(jīng)典的MCS-51內(nèi)核,并在其基礎(chǔ)上做了很多改進,指令代碼完全兼容8051單片機,無需專用編程器或?qū)S梅抡嫫?,可直接使用串口下載。相比傳統(tǒng)的51單片機,89C52綜合性能更高。其主要參數(shù)為:時鐘頻率最高可達80 MHz,內(nèi)置8 kB的flash,512B的RAM和2KB的EEPROM;3個16 bit定時器/計數(shù)器;一個6向量二級中斷結(jié)構(gòu)。
2.2 溫度采集模塊電路的設(shè)計
本系統(tǒng)選用DS18B20數(shù)字式溫度傳感器,它可通過編程方式實現(xiàn)9—12位的數(shù)字溫度直讀:溫度范圍為-55~125℃,最高12位分辨率,在 -10℃~85℃時,精度可達0.5℃,可設(shè)置超限溫度報警;現(xiàn)場溫度直接以“一線總線”的數(shù)字方式傳輸,大大提高了系統(tǒng)的抗干擾性。本系統(tǒng)溫度采集電路如圖2所示。將DS18B20溫度傳感器的單總線DQ接在STC 89C52單片機的P3.7端口上,通過STC89C52單片機對DS18B20的讀寫操作,從而實現(xiàn)單片機對數(shù)據(jù)的存儲和讀取的處理。
2.3 煙霧報警模塊設(shè)計
煙霧報警模塊的設(shè)計選用MQ-2煙霧傳感器,MQ-2煙霧傳感器不僅具有探測范圍廣、高靈敏度、快速響應恢復、驅(qū)動電路簡單、壽命長等優(yōu)點,還能檢測火災,檢測燃氣泄露,是一個可檢測多種可燃性氣體,應用廣泛,成本低的傳感器。并且MQ-2煙霧傳感器所使用的氣敏材料是在潔凈的空氣中電導率較低的二氧化錫(SnO2)。當傳感器所處環(huán)境中存在可燃氣體時,傳感器的電導率隨空氣中可燃氣體濃度的增加而增大。使用簡單的電路即可將電導率的變化轉(zhuǎn)換為與該氣體濃度相對應的輸出信號,本設(shè)計中MQ-2傳感器的4腳輸出隨煙霧濃度變化的直流信號,被加到比較器LM393的2腳,R6與VCC構(gòu)成比較器的門檻電壓。當煙霧濃度較高輸出電壓高于門檻電壓時,比較器輸出低電平,此時LED亮報警;當濃度降低傳感器的輸出電壓低于門檻電壓時,比較器翻轉(zhuǎn)輸出高電平,LED 熄滅。調(diào)節(jié)R6,可以調(diào)節(jié)比較器的門檻電壓,從而調(diào)節(jié)報警輸出的靈敏度。煙霧報警模塊電路如圖3所示。
2.4 語音報警電路
由STC89C52單片機P1.2,P1.3,P3.0分別控制煙霧、溫度、煙霧與溫度報警。WT588D采用一線串口模式,當溫度過高超過警戒溫度時P1.2引腳電平拉低,觸發(fā)語音WT58 8D芯片發(fā)出“溫度過高請注意檢查”聲音。同理當可燃性氣體濃度超過限定值時,將P1.3置為低電平,WT588D語音芯片發(fā)生報警。語音報警電路如圖4所示。
3 系統(tǒng)軟件設(shè)計
3.1 系統(tǒng)軟件設(shè)計流程
火災報警系統(tǒng)控制器上采用STC89C52作為主控芯片,其主要功能包括:控制I/O端口、邏輯判斷處理、驅(qū)動外部電路、語音報警等功能,此程序是一個無限循環(huán)體,其流程是:首先在上電之后系統(tǒng)的各部分包括單片機輸出輸入端口的設(shè)置、數(shù)據(jù)存儲電路、外圍驅(qū)動電路等完成初始化,數(shù)碼管顯示當前環(huán)境溫度,接下來執(zhí)行火災報警系統(tǒng)和煙霧報警系統(tǒng)的數(shù)據(jù)采集程序、火災溫度判斷、報警判斷。系統(tǒng)初始化后,STC89C52的P1為高電平,P1.2、P1.3、 P3.0為高電平,語音芯片不報警。
程序初始化這部分主要實現(xiàn)的功能包括各種I/O輸入輸出狀態(tài)的設(shè)定、寄存器初始化、中斷、溫度煙霧數(shù)據(jù)采集程序、火災判斷與報警程序等。系統(tǒng)程序流程圖如圖5所示。
3.2 數(shù)據(jù)采集程序設(shè)計
數(shù)據(jù)采集是火災報警系統(tǒng)中的重要環(huán)節(jié)。為了降低誤報率,系統(tǒng)設(shè)計時對溫度煙霧采用了循環(huán)采集、循環(huán)判斷的方法。每次采集溫度煙霧數(shù)據(jù)后,將數(shù)據(jù)存入單片機的寄存器,然后在火災判斷程序中,將采集的數(shù)據(jù)與設(shè)定的閾值進行比較,判斷現(xiàn)場是否發(fā)生火災。
具體流程是:系統(tǒng)和程序初始化后,驅(qū)動DS18B20對溫度信號采集,單片機接受轉(zhuǎn)換好的數(shù)據(jù),存入寄存器,由INT1中斷服務(wù)程序完成;系統(tǒng)延時10 ms,轉(zhuǎn)換完成后存入寄存器。系統(tǒng)延時50 ms,進行溫度煙霧信號采集,將轉(zhuǎn)換好的數(shù)據(jù)存入寄存器中。等待數(shù)據(jù)信息采集,通過中斷服務(wù)程序讀取轉(zhuǎn)換得到的數(shù)據(jù),當溫度過高或煙霧濃度超標時,進行語音報警。
由于設(shè)計采用的是模塊化設(shè)計,系統(tǒng)實現(xiàn)報警功能是通過調(diào)用子程序?qū)崿F(xiàn)的。在數(shù)據(jù)采集子程序中,一次溫度煙霧信號采集延時10 ms。當系統(tǒng)采集溫度煙霧信號后,轉(zhuǎn)換好的數(shù)據(jù)存入單片機的寄存器中,系統(tǒng)再調(diào)用火災判斷子程序。
4 系統(tǒng)實物
本系統(tǒng)實物如圖6所示。
5 結(jié)論
該系統(tǒng)以STC89C52單片機為核心的火災報警器可以實現(xiàn)語音報警、溫度顯示、報警限設(shè)置、延時報警等功能,是一種結(jié)構(gòu)簡單、性能穩(wěn)定、使用方便、價格低廉、智能化的火災報警器,具有一定的實用價值。