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