彭建英,劉雨麗,郭杰榮
(湖南文理學(xué)院 物理與電子科學(xué)學(xué)院,湖南 常德 415000)
有關(guān)數(shù)據(jù)顯示,我國年均發(fā)生火災(zāi)數(shù)十萬起[1]。據(jù)中國消防在線訊,2016年我國發(fā)生火災(zāi)31.2萬起,其中夜間火災(zāi)的發(fā)生機(jī)率低于白天,但亡人比例較高,22時至凌晨6時發(fā)生的火災(zāi)占20.6%,造成的死亡人數(shù)占總數(shù)的49.1%[2]。由此可見,火災(zāi)的及時報警十分重要,意識到危險的來臨才能及時應(yīng)對危機(jī),把握好逃生時機(jī)。本文設(shè)計(jì)的智能煙霧報警系統(tǒng)可以實(shí)現(xiàn)火災(zāi)的實(shí)時監(jiān)控與報警。通過煙霧傳感器對空氣進(jìn)行24小時監(jiān)測,并由數(shù)碼管顯示,一旦可燃?xì)怏w濃度超過閾值,蜂鳴器響起,實(shí)現(xiàn)報警。警示火災(zāi)現(xiàn)場及附近的人員撤離,及時發(fā)現(xiàn)火情,給消防人員遏止災(zāi)情提供了更多的寶貴時間。
本文設(shè)計(jì)的智能煙霧報警系統(tǒng)利用STC89C52單片機(jī)進(jìn)行控制,煙霧傳感器監(jiān)測到空氣中的可燃?xì)怏w濃度,并將濃度值發(fā)送給STC89C52單片機(jī),單片機(jī)再將數(shù)據(jù)發(fā)送至數(shù)碼管顯示,一旦可燃?xì)怏w濃度超過安全范圍,單片機(jī)發(fā)送指令至蜂鳴器,蜂鳴器驅(qū)動報警。
智能煙霧報警整體系統(tǒng)框圖如圖1所示。
圖1 智能煙霧報警整體系統(tǒng)框圖
MCU器件采用STC公司生產(chǎn)的STC89C52芯片。該芯片包含8 kB Flash、512 B RAM、32位I/O口線、看門狗定時器、內(nèi)置4 kB EEPROM、MAX810復(fù)位電路,以及3個16位定時器/計(jì)數(shù)器、4個外部中斷、1個7向量4級中斷結(jié)構(gòu)(兼容傳統(tǒng)51的5向量2級中斷結(jié)構(gòu))、全雙工串行口。
MQ-2煙霧傳感器串口如圖2所示。PIN1口連接+5 V電源,PIN4口接地,PIN2、PIN3口分別連接STC89C52單片機(jī)P3.0、P3.1口,接收、傳送煙霧傳感器所測濃度。
圖2 MQ-2煙霧傳感器
MQ-2煙霧傳感器所使用的氣敏材料是在清潔空氣中電導(dǎo)率較低的二氧化錫(SnO2)。當(dāng)傳感器所處環(huán)境中存在可燃?xì)怏w時,傳感器的電導(dǎo)率隨空氣中可燃?xì)怏w濃度的增加而增大[3]。
報警模塊采用蜂鳴器進(jìn)行報警,其工作原理如圖3所示。
蜂鳴器Beep1一端接+5 V電源,一端通過三極管PNP連接單片機(jī)端口P2.5并接地。當(dāng)P2.5輸入高電平時,電路阻塞,蜂鳴器關(guān)閉;當(dāng)P2.5輸入低電平時,電路連通,蜂鳴器驅(qū)動,表示煙霧濃度超過設(shè)定值報警。
首先對程序初始化,然后判斷是否有煙霧產(chǎn)生,若煙霧濃度正常,繼續(xù)檢測并顯示煙霧濃度;若煙霧濃度超出設(shè)定范圍進(jìn)行報警,并顯示煙霧濃度。程序流程如圖4所示。
圖3報警模塊原理圖圖4程序流程圖
3.2.1 串口初始化
串口初始化代碼如下:
void init_serial(void)//由以上理論進(jìn)行串口初始化
{
TMOD=0x20;//定時器1產(chǎn)生波特率,工作方式2,位自動重載
TH1=0xFD;//賦初值9600=(2的SMOD次方/32)*(TI的溢出率)=(1/32)*11059200/(256-X)*12x=253
TL1=0xFD;//波特率設(shè)置為9600
SCON=0x50;
PCON=0;//smod=0
TR1=1;//
ES=1;//開啟總中斷
EA=1;//開啟串口中斷
}
3.2.2 煙霧濃度的查詢與接收
根據(jù)MQ-2煙霧傳感器的通信協(xié)議(如表1所示),定義煙霧濃度的查詢命令:unsigned char cmd_poll[]={0xff,0x01,0x86,0,0,0,0,0,0x79}。
STC89C52發(fā)送查詢命令后,煙霧傳感器將返回一串?dāng)?shù)據(jù),根據(jù)表1中的返回?cái)?shù)據(jù)串格式,對數(shù)據(jù)串進(jìn)行幀解析,判斷接收到的數(shù)據(jù)是否完整。數(shù)據(jù)完整的標(biāo)準(zhǔn)為:數(shù)據(jù)頭為0xff,第二個數(shù)據(jù)為0x86,且數(shù)據(jù)串的個數(shù)為9個。若滿足以上標(biāo)準(zhǔn),則數(shù)據(jù)接收完整,提取出數(shù)據(jù)串中的第3、4個數(shù)據(jù),將其轉(zhuǎn)換為十進(jìn)制濃度值,轉(zhuǎn)換代碼為:concentration=(int)(buf[2]<<8|buf[3])[4]。
完整程序略。
因條件限制,本實(shí)驗(yàn)設(shè)定煙霧濃度的安全范圍為0~200。
使用打火機(jī)點(diǎn)燃物品,制造煙霧模擬火災(zāi)發(fā)生,煙霧傳感器置于煙霧上方,檢測煙霧濃度,煙霧濃度上升,超過200,蜂鳴器驅(qū)動,示警;將煙霧傳感器移至無煙區(qū)域,煙霧濃度降低,低于200時,蜂鳴器阻塞,停止示警。實(shí)物調(diào)試圖如圖5所示。
表1 MQ-2煙霧傳感器通信協(xié)議
圖5 智能煙霧報警裝置實(shí)物調(diào)試圖
本文設(shè)計(jì)了以STC89C52單片機(jī)為核心的智能煙霧報警系統(tǒng),經(jīng)實(shí)物調(diào)試后,表明此系統(tǒng)能實(shí)時監(jiān)測空氣中的煙霧濃度,一旦煙霧傳感器附近煙霧濃度超過安全范圍,立刻響起警報,達(dá)到示警效果。初步證實(shí)了本文設(shè)計(jì)的智能煙霧報警系統(tǒng)的可行性。本次實(shí)驗(yàn)因條件限制未測試檢測煙霧濃度的有效空間范圍。