研究內(nèi)容
基于安卓的防火報警系統(tǒng),主要檢測溫度和火焰,再通過單片機(jī)控制相應(yīng)的報警和驅(qū)動負(fù)載。通過液晶顯示當(dāng)前的是否有火焰和溫度值,通過LED和蜂鳴器做相應(yīng)的提示,并通過藍(lán)牙串口發(fā)送到app顯示。
該項目主要是為了完成任務(wù),包括:
(1)硬件部分:包括傳感器的選擇,顯示模塊的選擇,溫度轉(zhuǎn)換電路的設(shè)計,火焰感應(yīng)電路的設(shè)計。
(2)軟件部分:包括微處理器控制程序的編制和原理圖的繪制。
(3)系統(tǒng)的綜合調(diào)試與分析:在軟硬件完成以后,要對系統(tǒng)進(jìn)行綜合的測試與實驗,分析系統(tǒng)的可靠性與實用性,調(diào)整系統(tǒng)的不足。
2 防火報警的總體方案設(shè)計
本題目主要是實現(xiàn)火焰報警和火災(zāi)發(fā)生時的報警及溫度控制,下面分別對系統(tǒng)功能要求、系統(tǒng)技術(shù)要求及系統(tǒng)實現(xiàn)方案總體闡述。
2.1系統(tǒng)的功能要求
本系統(tǒng)的研制主要包括以下幾項功能:
(1)火情探測功能:為了提高火災(zāi)報警的準(zhǔn)確性和及時性,火災(zāi)報警系統(tǒng)需要使用各種方法進(jìn)行火災(zāi)探測。在實際使用中,根據(jù)不同的防火場所,用戶可以選用溫度探測法、可燃?xì)怏w檢測法及光照探測法等合適的火災(zāi)探測方法,來有效的探測火災(zāi);
(2)溫度報警功能:當(dāng)室內(nèi)溫度過大、有火情產(chǎn)生、故障等異常情況發(fā)生時,報警器要進(jìn)行燈光報警。當(dāng)溫度超過最大設(shè)定值時,可以蜂鳴器報警。
2.2 系統(tǒng)的技術(shù)要求
在了解這個系統(tǒng)的工作原理以及功能之后,我們就可以基本確定系統(tǒng)的技術(shù)要求。系統(tǒng)采用的單片機(jī)處理器成本都比較低,可以滿足批量生產(chǎn)和各類工程的需求。對于完整的一個系統(tǒng)而言,為提高市場的競爭力,這個系統(tǒng)應(yīng)符合體積小、功耗低、數(shù)傳性能可靠和成本低廉等技術(shù)要求。具體指標(biāo)和參數(shù)如下:
(1)體積小:探測器的體積要盡可能的小,這樣占用的空間才能減少,使用和更換才會方便;
(2)功耗低:系統(tǒng)可以采用三節(jié)5號干電池供電或5v電源供電。
(3)可靠性高:由于不確定的電磁干擾可能存在在系統(tǒng)工作環(huán)境中,為了保證系統(tǒng)長時間的可靠工作,以及減少誤報次數(shù),所以選擇多指示燈,指示不同的狀態(tài)。
2.3 系統(tǒng)的組成及方案設(shè)計
本設(shè)計主要由火焰?zhèn)鞲衅麟娐贰纹瑱C(jī)、燈光報警電路、負(fù)載驅(qū)動電路、溫度檢測電路、控制程序和編解碼程序等組成。
系統(tǒng)的組成結(jié)構(gòu)如下:
圖 2. 1
3 系統(tǒng)的硬件設(shè)計
原理圖
圖 3. 1
上圖3.1是由AD19所畫的。
實時顯示是否有火焰與溫度,共有三個報警值。檢測到火焰則LED1警告,低溫LED2警告,高溫先是LED3警告,超過最大值則蜂鳴器報警。
3.1 主控電路
C51單片機(jī)是一種低功耗、高性能CMOS8位微控制器,具有 8K 在系統(tǒng)可編程Flash 存儲器。在單芯片上,擁有靈巧的8 位CPU 和在系統(tǒng)可編程Flash,使得STC89C51為眾多嵌入式控制應(yīng)用系統(tǒng)提供高靈活、超有效的解決方案。 具有以下標(biāo)準(zhǔn)功能: 8k字節(jié)Flash,512字節(jié)RAM, 32位I/O 口線,看門狗定時器,內(nèi)置4KB EEPROM,MAX810復(fù)位電路,三個16 位 定時器/計數(shù)器,一個6向量2級中斷結(jié)構(gòu),全雙工串行口。另外 STC89C51 可降至0Hz 靜態(tài)邏輯操作,支持2種軟件可選擇節(jié)電模式。空閑模式下,CPU 停止工作,允許RAM、定時器/計數(shù)器、串口、中斷繼續(xù)工作。掉電保護(hù)方式下,RAM內(nèi)容被保存,振蕩器被凍結(jié),單片機(jī)一切工作停止,直到下一個中斷或硬件復(fù)位為止。最高運作頻率35Mhz,6T/12T可選。本次使用的STC12C5A60S2繼承C51的全部功能,完美兼容C51單片機(jī)的所有程序。主要功能如表3.1所示,其DIP封裝如圖3.2所示
表3.1:STC89C51主要功能
主要功能特性 | |
兼容MCS51指令系統(tǒng) | 4K可反復(fù)擦寫Flash ROM |
32個雙向I/O口 | 256x8bit內(nèi)部RAM |
3個16位可編程定時/計數(shù)器中斷 | 時鐘頻率0-24MHz |
2個串行中斷 | 可編程UART串行通道 |
2個外部中斷源 | 共6個中斷源 |
2個讀寫中斷口線 | 3級加密位 |
低功耗空閑和掉電模式 | 軟件設(shè)置睡眠和喚醒功能 |
STC89C52引腳介紹
① 主電源引腳(2根)
VCC(Pin40):電源輸入,接+5V電源
GND(Pin20):接地線
②外接晶振引腳(2根)
XTAL1(Pin19):片內(nèi)振蕩電路的輸入端
XTAL2(Pin20):片內(nèi)振蕩電路的輸出端
③控制引腳(4根)
RST/VPP(Pin9):復(fù)位引腳,引腳上出現(xiàn)2個機(jī)器周期的高電平將使單片機(jī)復(fù)位。
ALE/PROG(Pin30):地址鎖存允許信號
PSEN(Pin29):外部存儲器讀選通信號
EA/VPP(Pin31):程序存儲器的內(nèi)外部選通,接低電平從外部程序存儲器讀指令,如果接高電平則從內(nèi)部程序存儲器讀指令。
④可編程輸入/輸出引腳(32根)
STC89C52單片機(jī)有4組8位的可編程I/O口,分別位P0、P1、P2、P3口,每個口有8位(8根引腳),共32根。
P0口(Pin39~Pin32):8位雙向I/O口線,名稱為P0.0~P0.7
P1口(Pin1~Pin8):8位準(zhǔn)雙向I/O口線,名稱為P1.0~P1.7
P2口(Pin21~Pin28):8位準(zhǔn)雙向I/O口線,名稱為P2.0~P2.7
P3口(Pin10~Pin17):8位準(zhǔn)雙向I/O口線,名稱為P3.0~P3.7
作頻率35Mhz,6T/12T可選。
圖 3. 2 單片機(jī)DIP封裝圖
最小系統(tǒng)包括單片機(jī)及其所需的必要的電源、時鐘、復(fù)位等部件,能使單片機(jī)始終處于正常的運行狀態(tài)。電源、時鐘等電路是使單片機(jī)能運行的必備條件,可以將最小系統(tǒng)作為應(yīng)用系統(tǒng)的核心部分,通過對其進(jìn)行存儲器擴(kuò)展、A/D擴(kuò)展等,使單片機(jī)完成較復(fù)雜的功能。
STC12C5A60S2是片內(nèi)有ROM/EPROM的單片機(jī),因此,這種芯片構(gòu)成的最小系統(tǒng)簡單﹑可靠。用STC12C5A60S2單片機(jī)構(gòu)成最小應(yīng)用系統(tǒng)時,只要將單片機(jī)接上時鐘電路和復(fù)位電路即可,結(jié)構(gòu)如圖2-3所示,由于集成度的限制,最小應(yīng)用系統(tǒng)只能用作一些小型的控制單元。
圖 3. 3 最小系統(tǒng)原理框圖
(1) 時鐘電路
STC12C5A60S2單片機(jī)的時鐘信號通常有兩種方式產(chǎn)生:一是內(nèi)部時鐘方式,二是外部時鐘方式。內(nèi)部時鐘方式如圖2-4所示。在STC12C5A60S2單片機(jī)內(nèi)部有一振蕩電路,只要在單片機(jī)的XTAL1(18)和XTAL2(19)引腳外接石英晶體(簡稱晶振),就構(gòu)成了自激振蕩器并在單片機(jī)內(nèi)部產(chǎn)生時鐘脈沖信號。圖中電容C1和C2的作用是穩(wěn)定頻率和快速起振,電容值在5~30pF,典型值為30pF。晶振CYS的振蕩頻率范圍在1.2~12MHz間選擇,典型值為12MHz和6MHz。
圖 3. 4 內(nèi)部時鐘電路
(2) 復(fù)位電路
當(dāng)在STC12C5A60S2單片機(jī)的RST引腳引入高電平并保持2個機(jī)器周期時,單片機(jī)內(nèi)部就執(zhí)行復(fù)位操作(若該引腳持續(xù)保持高電平,單片機(jī)就處于循環(huán)復(fù)位狀態(tài))。
最簡單的上電自動復(fù)位電路中上電自動復(fù)位是通過外部復(fù)位電路的電容充放電來實現(xiàn)的。只要Vcc的上升時間不超過1ms,就可以實現(xiàn)自動上電復(fù)位。
除了上電復(fù)位外,有時還需要按鍵手動復(fù)位。本設(shè)計就是用的按鍵手動復(fù)位。按鍵手動復(fù)位有電平方式和脈沖方式兩種。其中電平復(fù)位是通過RST(9)端與電源Vcc接通而實現(xiàn)的。
圖 3. 5 復(fù)位電路圖
(3) STC89C51中斷技術(shù)概述
中斷技術(shù)主要用于實時監(jiān)測與控制,要求單片機(jī)能及時地響應(yīng)中斷請求源提出的服務(wù)請求,并作出快速響應(yīng)、及時處理。這是由片內(nèi)的中斷系統(tǒng)來實現(xiàn)的。當(dāng)中斷請求源發(fā)出中斷請求時,如果中斷請求被允許,單片機(jī)暫時中止當(dāng)前正在執(zhí)行的主程序,轉(zhuǎn)到中斷服務(wù)處理程序處理中斷服務(wù)請求。中斷服務(wù)處理程序處理完中斷服務(wù)請求后,再回到原來被中止的程序之處(斷點),繼續(xù)執(zhí)行被中斷的主程序。
圖3.6為整個中斷響應(yīng)和處理過程。
圖 3. 6中斷響應(yīng)和處理過程
如果單片機(jī)沒有中斷系統(tǒng),單片機(jī)的大量時間可能會浪費在查詢是否有服務(wù)請求發(fā)生的定時查詢操作上。采用中斷技術(shù)完全消除了單片機(jī)在查詢方式中的等待現(xiàn)象,大大地提高了單片機(jī)的工作效率和實時性。
3.2 火焰?zhèn)鞲衅?/strong>電路的設(shè)計
圖 3. 7 火焰?zhèn)鞲衅?/font>
如圖3.7所示,通電之后,把數(shù)據(jù)口接到單片機(jī),單片機(jī)判斷火焰?zhèn)鞲衅鞯臄?shù)據(jù)傳輸電平高低來實現(xiàn)對火焰的感應(yīng)。
3.2.1 火焰?zhèn)鞲衅鞯慕榻B
1、可以檢測火焰或者波長在760納米心1100納米范圍內(nèi)的光源;
2、探測角度60度左右,對火焰光譜特別靈敏3靈敏度可調(diào)(圖中藍(lán)色數(shù)字電位器調(diào)節(jié));
3、對火焰的探測距離:跟靈敏度和火焰強(qiáng)度有關(guān),一般1m以內(nèi)適用(以打火機(jī)火焰測試,半米內(nèi)能夠觸發(fā)傳感器);
4、工作電壓3.3V-5V;
5、輸出形式:
a模擬量電壓輸出
b數(shù)字開關(guān)量輸出(0和1)。
3.2.2火感原理
圖 3. 8 火感原理圖
火焰?zhèn)鞲衅骼眉t外線對火焰非常敏感的特點,使用特制的紅外線接收管來檢測火焰,然后把火焰的亮度轉(zhuǎn)化為高低變化的電平信號,輸入到中央處理器,中央處理器根據(jù)信號的變化做出相應(yīng)的程序處理。
3.3溫度檢測電路的設(shè)計
圖 3. 9 DS18B20
3.5報警電路設(shè)計
圖 3. 12 蜂鳴器報警電路
圖 3. 13 LED報警電路
3.6HC-05藍(lán)牙模塊設(shè)計
3.6.1HC-05介紹
ATK-HC05V1l是一款高性能的主從一體藍(lán)牙串口模塊,可以同各種帶藍(lán)牙功能的電腦、藍(lán)牙主機(jī)、手機(jī)、PDA、PSP等智能終端配對,該模塊支持非常寬的波特率范圍:4800~-1382400,并且模塊兼容5V或3.3V單片機(jī)系統(tǒng)。
若使用HC-05與手機(jī)配對通信,需進(jìn)行以下設(shè)置:
經(jīng)過配置,即可實現(xiàn)藍(lán)牙模塊與單片機(jī)之間的通信。便于實時監(jiān)控溫度、火情等,從而實現(xiàn)基于安卓的防火報警。
3.6.2HC-05與手機(jī)通信
經(jīng)配置好的內(nèi)容,如下圖
圖 3. 15 HC-05配置
經(jīng)上圖的相關(guān)配置,用手機(jī)安卓串口助手,實現(xiàn)實時通信
圖 3. 16 手機(jī)顯示數(shù)據(jù)
4 實訓(xùn)的軟件設(shè)計
4.1 軟件介紹
Keil C51是Keil Software公司出品的51系列兼容單片機(jī)C語言軟件開發(fā)系統(tǒng),與匯編相比,C語言在功能上、結(jié)構(gòu)性、可讀性、可維護(hù)性上有明顯的優(yōu)勢,因而易學(xué)易用。KeilC51如下如所示
圖 4. 1 keilC51界面
4.2 實訓(xùn)程序流程圖
5防火報警的調(diào)試及結(jié)論
5.1 調(diào)試
首先,檢驗程序與電路的相關(guān)接口是否相符,電路是否能實現(xiàn)預(yù)期的效果,不能實現(xiàn)的原因是什么等等。期間,所遇到的最大的難題就是DS18B20溫度的獲取及LCD1602的顯示問題。結(jié)果是沒有添加中斷,使得內(nèi)存出現(xiàn)混亂的緣故。除此之外也沒什么問題,起初得到題目的時候,先等待所需的元器件。設(shè)計思路就是,把各個模塊都分別實現(xiàn),然后進(jìn)行整體的整合。我主要負(fù)責(zé)這個,原理圖跟流程圖由另外兩個同學(xué)完成。我則負(fù)責(zé)補(bǔ)充。
5.2 結(jié)論
本設(shè)計的防火報警由傳感器電路與無線通信電路兩大部分構(gòu)成。控制處理器是以管腳資源豐富的STC12C5A60S2為核心,實現(xiàn)對探測器寫入信號和對信號進(jìn)行編譯等人機(jī)交互功能。應(yīng)用程序以C語言編寫,充分利用芯片的內(nèi)部資源,提高了代碼執(zhí)行效率,減小了代碼的容量。但是,由于本人在各方面的知識不夠全面,再加上時間緊迫以及實驗條件的限制,該報警器還有較多需要提高的地方。比如:自行調(diào)節(jié)報警值,煙霧傳感探測,藍(lán)牙的局限性等。作品是不斷完善的,想要做得更好,就應(yīng)該根據(jù)不同的場景設(shè)計不同模塊的功能,對防火報警進(jìn)行更好的監(jiān)控,防患于未然。
b200620
單片機(jī)代碼:
Keil代碼.7z
(1.09 MB, 下載次數(shù): 88)
歡迎光臨 (http://www.zg4o1577.cn/bbs/) | Powered by Discuz! X3.1 |