課程設計基于單片機的火災報警器設計_第1頁
課程設計基于單片機的火災報警器設計_第2頁
課程設計基于單片機的火災報警器設計_第3頁
課程設計基于單片機的火災報警器設計_第4頁
課程設計基于單片機的火災報警器設計_第5頁
已閱讀5頁,還剩38頁未讀 繼續免費閱讀

下載本文檔

版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領

文檔簡介

1、課程設計設計題目:基于單片機的火災報警器設計課程設計任務書專業:電子信息工程 學號:4091426 學生姓名(簽名): 設計題目:基于單片機的火災報警器設計一、設計實驗條件微機實驗室二、設計任務及要求1. 根據題目要求進行資料收集及監測方案設計;2. 主要功能要求:(1)實時檢測至多8個監測點的環境溫度、煙霧濃度等因素變化,以判斷是否出現火警;(2)判定某監控點出現火警時進行聲光報警,并顯示此監控點編號;(3)能手動報警和取消報警;(4)能手動進行系統檢測;(5)監控點數目可以通過鍵盤設置。3. 撰寫課程設計說明書;三、設計報告的內容1. 設計題目與設計任務(設計任務書)2. 前言(緒論)(設

2、計的目的、意義等)3. 設計主體(各部分設計內容、分析、結論等)4. 結束語(設計的收獲、體會等)5. 參考資料四、設計時間與安排1、設計時間: 2周2、設計時間安排: 熟悉實驗設備、收集資料: 2 天設計圖紙、實驗、計算、程序編寫調試: 9天編寫課程設計報告: 2天答辯: 1天目 錄1 緒論11.1 課題研究的背景和意義11.2 國內外的研究現狀21.3 本文內容的結構安排32 火災報警系統整體方案設計42.1火災產生原理及過程42.2系統總體方案設計62.2.1 系統硬件總體構架62.2.2 系統軟件總體構架62.3系統主要器件的選擇82.3.1 火災探測器的選擇82.3.2 單片機的選擇

3、153 火災自動報警系統硬件設計163.1 復位電路與晶振電路163.1.1晶振電路163.1.2 復位電路163.2 傳感器信息采集電路173.3 聲光報警顯示電路183.4 系統控制電路194 火災報警系統程序設計204.1軟件開發環境204.2火災報警系統程序設計214.2.1數據采集子程序224.2.2火災判斷/報警子程序234.2.3控制系統子程序255 總結265.1 總結265.2 展望27附錄1 系統程序29附錄2 系統原理圖38參考文獻39致謝401 緒論1.1 課題研究的背景和意義在各種災害中,火災是最經常、最普遍地威脅公眾安全和社會發展的主要災害之一。火災是世界上發生頻率

4、較高的一種災害,幾乎每天都有火災發生。據聯合國“世界火災統計中心(wfsc)2000統計資料”,全球每年大約發生火災600萬至700萬次,全球每年死于火災的人數約為65000至75000人。其中,歐美地區發生的火災較多,死亡人數卻相對較少,這與歐美發達國家的生活水平以及消防技術和設施有關;相比較而言,亞洲地區發生火災次數較少,但死亡人數較多,這與亞洲經濟發展程度不高、消防設施不完善等因素有關。據統計,我國70年代火災年平均損失不到2.5億元,80年代火災年平均損失接近3.2億元。進入90年代,特別是1993年以來,火災造成的直接財產損失上升到年均十幾億元,年均死亡2000多人。隨著經濟和城市建

5、設的快速發展,城市高層、地下以及大型綜合性建筑日益增多,火災隱患也大大增加,火災發生的數量及其造成的損失呈逐年上升趨勢。一旦發生火災,將對人的生命和財產造成極大的危害1。嚴峻的事實證明,隨著社會和經濟的發展,社會財富日益增加,火災給人類、社會和自然造成的危害范圍不斷擴大,它不僅毀壞物質財產,造成社會秩序的混亂,還直接危脅生命安全,給人們的心靈造成極大的傷害。殘酷的現實讓人們逐漸認識到監控預警和消防工作的重要性,良好的監控系統和及時的報警機制可以大大降低人員的傷亡,為社會減少不必要的損失2。火災自動報警系統(fas)就是為了滿足這一需求而研制出的,并且其自身的技術水平也在隨著人們需求的不斷地提高

6、,在功能、結構、形式等方面不斷地完善。火災自動報警系統能迅速監測火情,可發現人們不易發覺的火災早期特征,可將火災帶來的生命財產損失降到最低限度。火災發生的早期,會使得燃燒物質分解,析出大量的有毒氣體co,人們可能在毫無察覺火情的情況下就發生了co中毒,從而無力逃生,火災自動報警系統可監測到co濃度的變化,為人們提供co濃度超標報警信息,通知人們及時疏散3。火災自動報警系統可作為城市消防系統的單元,通過城市消防專用網與城市消防報警中心聯網,及時將報警信息傳遞到消防報警中心,城市消防報警中心會自動查找到火災發生的位置,并為消防隊員制定消防路線圖,以便消防隊員可以迅速抵達火災地點4。火災自動報警系統

7、能對火災進行實時監測和準確報警,有著防止和減少火災危害、保護人身安全和財產安全的重要意義,有著很大的經濟效益和社會效益。1.2 國內外的研究現狀根據現代戰爭的突發性、立體性和區域不確定性,使攻防界線模糊,作戰方向多變,戰火災自動報警系統已有百余年的發展歷史,19世紀40年代美國誕生的火災報警裝置標志著火災自動報警系統首次進入人們的視野5。1890年在英國,感溫式火災探測器研制成功并應用于火災探測系統,標志著火災自動報警系統的發展走上正軌6。此后,隨著世界科技取得了突飛猛進的進步和各種新興技術的出現和發展,火災監測技術也相應迅速發展,各種類型的火災探測器相繼問世,并日臻完善,火災自動報警系統也在

8、此基礎上逐漸地蓬勃發展起來,其發展過程可以分為以下幾個階段:第一階段,從19世紀40年代至20世紀40年代,火災報警系統處于發展的初級階段,采用的探測器主要是感溫式的探測器,它通過采集溫度信號,然后判定是否超出設定的閡值,從而判斷是否有火災發生。這一階段,火災報警系統簡單,僅靠單一的溫度參量進行火災判斷。但是它易受環境中其他干擾源的影響,靈敏度低,響應速度慢,無法判斷陰燃火災,也無法滿足智能化火災報警系統的要求。第二階段,20世紀40年代末,瑞士物理學家 emst meili研究的離子感煙探測器推出以后,引起了人們對離子感煙探測器的重視,隨后感煙探測器得到廣泛應用,并逐漸占據了絕大部分市場,迫

9、使感溫式探測器退居其次;到70年代末,光電式感煙探測器在光電技術的基礎上發展起來,并很快得到大力發展,它的使用壽命長,抗干擾能力強,沒有離子感煙探測器的放射性問題。在這一階段,火災報警系統普遍采用多線制布局方式,布線、調試、系統可靠性是系統發展的瓶頸。第三階段,20世紀80年代初期,總線型火災報警系統開始興起,在火災報警領域中邁出了一大步,并得到了較普遍的應用。它使得布線工作量顯著減少,安裝調試更加容易,更能精確報警定位。但是這一時期的火災報警系統的智能化水平不高,采用有線連接對工程要求高。第四階段,從20世紀80年代中后期開始,隨著計算機技術、控制技術、集成電路技術、傳感器技術及智能技術的快

10、速發展,火災自動報警系統步入智能化時代,智能化火災報警系統迅速發展起來,各種智能型的火災自動報警系統相繼出現。模擬量可尋址技術的應用使得火災報警系統的安全性、精準性和智能性有了很大提高,在火災自動報警系統發展史上具有里程碑的意義7。近年來,采用無線通信方式的火災自動報警系統在國外悄然興起。這種系統引入了無線電通信技術,利用無線通信方式代替傳統的有線通信方式,將大多的電器裝置通過無線連接方式進行信息傳輸與控制,適用于各類建筑和場所。無線火災自動報警系統起初僅用于特殊場合,如博物館、名勝古跡等不宜布線的場合,而且其價格也比較高8。隨著科技進步和元器件成本的降低,無線火災自動報警系統的研發和生成成本

11、也隨之降低,它在性能和價格上都具有很強的競爭力,其市場潛力已經嶄露頭角9。在我國,采用的無線通信方式的火災自動報警系統日益受到重視。由于其具有安裝簡便、對建筑物無損壞作業、靈活性好,易于擴展等優點,適用于許多場合,如名勝古跡、體育館、博物館、展覽中心、處于施工階段的建筑物、醫院等。火災自動報警系統的智能性主要體現在火災判決和統籌管理方面,一般分為分散式、集中式和分布式,分散式系統由非智能型控制器若干智能型探測節點組成,由探測節點完成火災狀態的判斷;集中式系統由智能型控制器和若干非智能探測節點構成,探測節點僅將火災參量傳送給控制器,由控制器智能地判斷火災狀態;分布式系統的控制器和探測節點均為智能

12、型,也是今后火災自動報警系統的發展方向10。1.3 本文內容的結構安排基于社會和經濟方面的需求,本課題旨在開發一個能夠對監測點實時監控、報警的智能火災報警系統。智能型火災報警系統是一個集信號檢測、傳輸、處理、報警于一體的系統。隨著經濟和城市建設的快速發展,城市高層、地下建筑以及大型綜合性建筑日益增多,火災隱患也大大增加,火災的數量及其造成的損失呈逐年上升趨勢,市場上迫切需要一種容量大、可靠性高、使用簡單的智能型火災報警控制系統。該火災報警系統是以at89c52單片機作為控制中心,接受、處理火災探測器輸出的煙霧濃度信號、溫度信號,并進行聲光報警。本文的結構安排如下:第1章:緒論。主要介紹課題的研

13、究背景和意義,介紹了火災報警系統的發展狀況。此外,介紹了論文的主要內容及章節安排。第2章:介紹了火災探測原理,給出火災自動報警系統的總體設計構架,分別給出硬件和軟件的整體構架,并給出系統設計中的主要器件的選型。第3章:火災自動報警系統硬件設計,詳細介紹了單片機系統基本電路、傳感器信息采集電路、聲光報警顯示電路及系統控制電路,并給出相應的設計原理圖。第4章:火災自動報警系統監控程序設計,介紹數據采集子程序、火災判斷/報警子程序和系統控制子程序等。第5章:對本文工作進行總結,并對火災報警器的發展前景進行展望。2 火災報警系統整體方案設計2.1火災產生原理及過程火災是一種失去人為控制的由燃燒造成的災

14、害,產生火災的基本要素是可燃物、助燃物和點火源。可燃物以氣態、液態和固態三種形態存在,助燃物通常是空氣中的氧氣。根據可燃氣體與空氣混合方式不同有兩種燃燒方式,如果在燃燒前,可燃氣就與空氣均勻混和,則稱之為預混燃燒;如果可燃氣體和空氣分別進入燃燒區邊混合邊燃燒,則稱之為擴散燃燒。液體和固體是凝聚態物質,難與空氣均勻混合,它們燃燒的基本過程是當從外部獲取一定的能量時,液體或固體先蒸發成蒸汽或分解出可燃氣體(如co、h2等)的分子團、灰燼和未燃燒的物質顆粒懸浮在空氣中,稱之為氣溶膠。一般氣溶膠的分子較小(直徑0.01m)。在產生氣溶膠的同時,產生分子較大(直徑0.01一10m)的液體或固體微粒,稱為

15、煙霧。可燃氣體與空氣混合,在較強火源作用下產生預混燃燒。著火后,燃燒產生的熱量使液體或固體的表面繼續放出可燃氣體,并形成擴散燃燒。同時,發出含有紅、紫外線的火焰,散發出大量的熱量11。這些熱量通過可燃物的直接燃燒、熱傳導、熱輻射和熱對流,使火從起火部位向周圍蔓延,導致了火勢的擴大,形成火災。其中的氣溶膠、煙霧、火焰和熱量都稱為火災參量,通過對這些參量的測定便可確定是否存在火災。根據火災發生時產生現象的不同,可以將火災分為慢速陰燃、明火和快速發展火焰等。陰燃就是在疏松或顆粒介質中形成的緩慢進行的熱解和氧化反應,它能長時間自行維持并傳播,當條件發生變化時,或者自行熄滅,或者轉化為明火。明火則是火災

16、發生時燃燒火焰產生的熱量使液體或固體的表面放出可燃氣體,并形成擴散燃燒,同時發出含有紅、紫外線的火焰。快速發展火焰則是火災擴散的速度特別快,這種類型的火災一般為空氣中混有大量可燃氣體。通過大量的研究表明陰燃是誘發火災的重要原因12。總的來說,普通可燃物在燃燒時表現為以下形式:首先是產生燃燒氣體,然后是煙霧,在氧氣充足的條件下才能達到全部燃燒,產生火焰,發出可見光和不可見光,并散發出大量的熱,使環境溫度升高。起火過程中,起初和陰燃兩個階段所占的時間比較長,雖然產生大量的煙霧,但是環境溫度不太高,若探測器就應該從此階段開始進行探測,就可以火災損失控制在最小限度。火焰燃燒后,迅速蔓延,產生大量的熱使

17、得環境溫度升高,如果能將這時能夠探測到有效地溫度值,就可以比較及時地控制火災。起火過程曲線如圖2.1所示13。圖2.1 起火過程曲線2.2系統總體方案設計2.2.1 系統硬件總體構架報警系統主要由數據采集模塊、單片機控制模塊、聲光報警顯示模塊、系統控制模塊組成。圖2.2為火災報警系統的結構框圖。聲、光報警器顯示電路手動控制電路單片機系統電路煙霧、溫度傳感器電路 圖2.2 系統結構框圖單片機是整個報警系統的核心,系統的工作原理是:先通過傳感器 (包括溫感和煙感)將現場溫度、煙霧等非電信號轉化為電信號,再通過外接電路或者芯片內置電路將所獲取的電信號轉化為單片機可讀取的信號,傳入單片機。單片機通過程

18、序的控制,對獲取的信號做出判斷,并據此控制聲、光報警器顯示電路工作。如果發生火災,系統以聲光的形式報警,并顯示著火點位置信息。本火災自動報警系統具有以下功能:(1)聲、光雙重報警及顯示編號的功能。(2)手動報警及取消報警的功能。(3)設置并顯示監測點個數功能。(4)指定檢測點功能。2.2.2 系統軟件總體構架為了便于系統維護和功能擴充,采用了模塊化程序設計方法,系統各個模塊的具體功能都是通過子程序調用實現的。本系統主要包括數據采集子程序、火災判斷、報警子程序與系統控制子程序等,系統程序流程圖如圖2.3所示。開始初始化判斷手動/自動檢測手動自動輪流檢測某些監測點指定某監測點檢測 溫度煙霧信號采集

19、無異常報警判斷異常報警取消報警是否取消報警結束圖2.3 程序流程圖2.3系統主要器件的選擇2.3.1 火災探測器的選擇1)探測器簡介火災探測器是火災報警系統的重要組成部分,直接關系到整個系統的正常運行。當火災發生時,把火災產生的各種非電量參數(如煙霧,溫度)變成電量參數傳送給控制器。其特點是模擬量傳輸,跟隨各種非電量參數的變化而變化16。火災探測器根據火災發生時所表現出來的物理現象可以分為:氣敏型、感溫型、感煙型、感光型、感聲型五大類。 (l)感溫探測器感溫探測器一般分為定溫式和差溫式。單一的感溫探測器靈敏度低、探測速度慢、探測范圍小,尤其對陰燃情況不響應,因此不適用于火災早期的探測,而在設計

20、時往往安裝在不宜安裝感煙探測器的區域17。(2)感煙探測器感煙探測器可以分為離子感煙探測器和光電感煙探測器18。感煙探測器具有非常好的早期報警功能,即使在不太好的環境條件場所也會有比較好的探測效果,它一般適用于極高的房屋或空心花板或地下室中。感煙探測器適用于火災前期及早期,產生大量的煙和少量的熱,但它不能區分火災信號與非火災信號,如廚房煙、水蒸氣等,所以誤報率較高。(3)氣體探測器氣體探測器的主要作用是在發生可燃氣體泄漏危險時,提醒有關人員采取相關措施以保護現場工作人員、生產設備的安全運轉以及周圍環境。氣體探測器適用于散發可燃氣體和可燃蒸汽的場所。但由于氣體探測器探測對像co易與還原氣體發生化

21、學反應,因此在有還原氣體的場所可能會發生誤報警。(4)圖像探測器圖像火災探測器分為煙霧圖像探測器、火焰圖像探測器、激光圖像感煙探測器等,它們都非常適合于商場大空間建筑。但煙霧圖像火災探測器對不規則物體或相似圖像可能發生誤報警;而火焰圖像探測器則對高溫物體或太陽光照射可能發生誤報警;激光圖像感煙火災探測器則由于其良好的探測性能,發生誤報警的概率小,非常適合商場建筑的火災探測19。(5)紅、紫外火焰探測器火災中能夠輻射出紅外線的不僅僅是火焰,一些高溫物體的表面都能發出與火焰紅外線頻帶相吻合的紅外線,因此這些并非火災的紅外源就容易使單波段紅外火焰探測器產生誤報警20。紫外火焰探測器靈敏度高(ms級)

22、,反應快,適合在火災時有強烈的火焰輻射而無陰燃階段且需對火焰做出快速反應的場合,但當環境中有紫外輻射、高溫物體或有太陽光直射時可能或產生誤報警,因此,紫外火焰探測器不宜用于火焰出現前有濃煙擴散或有陽光直射的地方。煙霧濃度是火災的特性參數之一,在較大范圍的監視場所,煙霧探測一直被廣泛使用的火災探測方法。火災中會產生大量的熱,溫度也是火災的另一特性參數,和環境溫度相比火災的溫升是很明顯的,所以溫度也被用來進行火災探測21。然而煙霧探測器在受到外界非火災的干擾信號會產生誤報警,且對于某些黑煙的探測并不敏感。溫度探測器可以很好地補充煙霧探測器造成的漏報,但由于只有在燃燒的后兩個階段才會發生明顯的變化,

23、報警的響應時間慢。因此根據以上情況以及本系統的要求,采用感煙探測器和感溫探測器相結合的多傳感器探測方法22,可以發揮各自的優勢、彌補不足之處,在火災發生的早期就能夠更加準確的報警。2)煙霧探測器本設計的感煙探測器采用的是mq-2氣體傳感器,其特點有:廣泛的探測范圍、 高靈敏度、快速響應恢復、優異的穩定性、壽命長、簡單的驅動電路等等。mq-2傳感器可應用于家庭和工廠的氣體泄漏監測裝置, 適宜于液化氣、丁烷、丙烷、甲烷、酒精、氫氣、煙霧等的探測。mq-2的規格3)溫度探測器溫度探測器使用的是dallas(達拉斯)公司生產的ds18b20溫度傳感器。超小的體積,超低的硬件開消,抗干擾能力強,精度高,

24、附加功能強,使得ds18b20更受歡迎。對于我們普通的電子愛好者來說,ds18b20的優勢更是我們學習單片機技術和開發溫度相關的小產品的不二選擇。ds18b20的主要特征: 全數字溫度轉換及輸出。 先進的單總線數據通信。 最高12位分辨率,精度可達土0.5攝氏度。 12位分辨率時的最大工作周期為750毫秒。 可選擇寄生工作方式。 檢測溫度范圍為55c +125c (67f +257f) 內置eeprom,限溫報警功能。 64位光刻rom,內置產品序列號,方便多機掛接。 多樣封裝形式,適應不同硬件系統。 ds18b20芯片封裝結構: ds18b20引腳功能: gnd 電壓地 dq 單數據總線 v

25、dd 電源電壓 nc 空引腳 ds18b20工作原理及應用: ds18b20的溫度檢測與數字數據輸出全集成于一個芯片之上,從而抗干擾力更強。其一個工作周期可分為兩個部分,即溫度檢測和數據處理。在講解其工作流程之前我們有必要了解18b20的內部存儲器資源。18b20共有三種形態的存儲器資源,它們分別是: rom 只讀存儲器,用于存放ds18b20id編碼,其前8位是單線系列編碼(ds18b20的編碼是19h),后面48位是芯片唯一的序列號,最后8位是以上56的位的crc碼(冗余校驗)。數據在出產時設置不由用戶更改。ds18b20共64位rom。 ram 數據暫存器,用于內部計算和數據存取,數據在

26、掉電后丟失,ds18b20共9個字節ram,每個字節為8位。第1、2個字節是溫度轉換后的數據值信息,第3、4個字節是用戶eeprom(常用于溫度報警值儲存)的鏡像。在上電復位時其值將被刷新。第5個字節則是用戶第3個eeprom的鏡像。第6、7、8個字節為計數寄存器,是為了讓用戶得到更高的溫度分辨率而設計的,同樣也是內部溫度轉換、計算的暫存單元。第9個字節為前8個字節的crc碼。eeprom 非易失性記憶體,用于存放長期需要保存的數據,上下限溫度報警值和校驗數據,ds18b20共3位eeprom,并在ram都存在鏡像,以方便用戶操作。控制器對18b20操作流程: 1, 復位:首先我們必須對ds1

27、8b20芯片進行復位,復位就是由控制器(單片機)給ds18b20單總線至少480us的低電平信號。當18b20接到此復位信號后則會在1560us后回發一個芯片的存在脈沖。 2, 存在脈沖:在復位電平結束之后,控制器應該將數據單總線拉高,以便于在1560us后接收存在脈沖,存在脈沖為一個60240us的低電平信號。至此,通信雙方已經達成了基本的協議,接下來將會是控制器與18b20間的數據通信。如果復位低電平的時間不足或是單總線的電路斷路都不會接到存在脈沖,在設計時要注意意外情況的處理。 3, 控制器發送rom指令:雙方打完了招呼之后最要將進行交流了,rom指令共有5條,每一個工作周期只能發一條,

28、rom指令分別是讀rom數據、指定匹配芯片、跳躍rom、芯片搜索、報警芯片搜索。rom指令為8位長度,功能是對片內的64位光刻rom進行操作。其主要目的是為了分辨一條總線上掛接的多個器件并作處理。誠然,單總線上可以同時掛接多個器件,并通過每個器件上所獨有的id號來區別,一般只掛接單個18b20芯片時可以跳過rom指令(注意:此處指的跳過rom指令并非不發送rom指令,而是用特有的一條“跳過指令”)。4, 控制器發送存儲器操作指令:在rom指令發送給18b20之后,緊接著(不間斷)就是發送存儲器操作指令了。操作指令同樣為8位,共6條,存儲器操作指令分別是寫ram數據、讀ram數據、將ram數據復

29、制到eeprom、溫度轉換、將eeprom中的報警值復制到ram、工作方式切換。存儲器操作指令的功能是命令18b20作什么樣的工作,是芯片控制的關鍵。 5, 執行或數據讀寫:一個存儲器操作指令結束后則將進行指令執行或數據的讀寫,這個操作要視存儲器操作指令而定。如執行溫度轉換指令則控制器(單片機)必須等待18b20執行其指令,一般轉換時間為500us。如執行數據讀寫指令則需要嚴格遵循18b20的讀寫時序來操作。數據的讀寫方法將有下文有詳細介紹。 若要讀出當前的溫度數據我們需要執行兩次工作周期,第一個周期為復位、跳過rom指令、執行溫度轉換存儲器操作指令、等待500us溫度轉換時間。緊接著執行第二

30、個周期為復位、跳過rom指令、執行讀ram的存儲器操作指令、讀數據(最多為9個字節,中途可停止,只讀簡單溫度值則讀前2個字節即可)。其它的操作流程也大同小異,在此不多介紹。2.3.2 單片機的選擇本設計的控制芯片使用的是atmel公司生產的低電壓,高性能cmos 8位單片機at89c52其片內含8k bytes的可反復擦寫的只讀程序存儲器(perom)和256 bytes 的隨機存取數據存儲器(ram),器件采用atmel公司的高密度、非易失性存儲技術生產,與標準mcs-51指令系統及8052 產品引腳兼容,片內置通用8位中央處理器(cpu )和flash由存儲單元,功能強大的at89c52單

31、片適用于許多較為復雜控制應用場合。at89c52提供以下標準功能:8字節flash閃速存儲器,256字竹內部ram , 32個i/o口線,3個16 位定時計數器,一個6向量兩級中斷結構,一個全雙工串行通信口,片內振蕩器及時鐘電路。同時,at89c52可降至ohz的靜態邏輯操作,并支持兩種軟件可選的節電上作模式。空閑方式停止cpu 的工作,但允許ram,定時計數器串行通信口及中斷系統繼續工作。掉電方式保存ram 中的內容,但振蕩器停止工作并禁止其它所有部件工作直到下一個硬件復位. 3 火災自動報警系統硬件設計3.1單片機系統基本電路3.1.1晶振電路晶振電路為單片機at89c52工作提供時鐘信號

32、,芯片中有一個用于構成內部振蕩器的高增益反相放大器,引腳xtal1和xtal2分別是該放大器的輸入端和輸出端。這個放大器與作為反饋元件的片外石英晶體或陶瓷諧振蕩器一起構成自激振蕩器。電路中的外接石英晶體及電容c1、c2接在放大器的反饋回路中構成并聯振蕩電路,系統的晶振電路如圖3.1所示。由于外接電容c1、c2的容量大小會輕微影響振蕩頻率的高低、振蕩器工作的穩定性、起振的難易程度及溫度穩定性,如果使用石英晶體,電容的容量大小范圍為;如果使用陶瓷諧振,則電容容量大小為。本設計中使用石英晶體,電容的容值設定為30pf。3.1.2 復位電路復位電路的基本功能是:系統上電時提供復位信號,直至系統電源穩定

33、后,撤銷復位信號。為可靠起見,電源穩定后還要經一定的延時才撤銷復位信號,以防電源開關或電源插頭分合過程中引起的抖動而影響復位。單片機在啟動時都需要復位,以使cpu及系統各部件處于確定的初始狀態,并從初態開始工作。at89c52的復位信號是從rst引腳輸入到芯片內的施密特觸發器中的。當系統處于正常工作狀態時,且振蕩器穩定后,如果rest引腳上有一個高電平并維持2個機器周期(24個振蕩周期)以上,則cpu就可以響應并將系統復位。單片機系統的復位方式有:手動按鈕復位和上電復位,本設計采用的是手動按鈕復位。手動按鈕復位需要人為在復位輸入端rst上加入高電平,采用的辦法是在rst端和正電源vcc之間接一

34、個按鈕。當人為按下按鈕時,則vcc的+5v電平就會直接加到rst端,系統復位。由于人的動作再快也會使按鈕保持接通達數十毫秒,所以,設計完全能夠滿足復位的時間要求。復位電路中rest為手動復位開關,電容c3可避免高頻諧波對電路的干擾。at89c52的復位電路如圖3.3所示。圖3.1 晶振電路與復位電路3.2傳感器信息采集電路mq-2氣敏元件的對不同種類、不同濃度的氣體有不同的電阻值,靈敏度的調整是很重要的。煙霧傳感器的外部電路設計圖如圖3.2。圖3.2 mq-2外圍電路ds18b20采用單數據總線傳送數據,即一個器件只占用一個at89c52芯片的io引腳,本系統要最多檢測8個位置,因此設計將at

35、89c52的p2口由于溫度采集。此設計圖中,撥碼開關sw1即模擬的是8個煙霧傳感器經過外部電路處理后傳回來的電信號。圖3.3 數據采集電路3.3聲光報警顯示電路聲光報警顯示電路在at89c52的控制下,可在外部環境異常時蜂鳴器發出警報聲,紅色led燈點亮,紅色數碼管其位置信息。at89c52的p0口加入了大小為10k歐姆的上拉電阻,因p0口是地址數據復用口線,與其它口線不一樣。所以,當p0作普通io時,必須用上拉電阻將其電平拉高,上拉電阻不起限流作用。以方便操作,選用了直流電壓控制型的蜂鳴器、紅色發光二級管以及紅色7段數碼管作為聲光報警顯示設備。為了簡化電路節省單片機的管腳,采用了74ls47

36、芯片為數碼管編碼,使得本來要占用的7個單片機管腳變為只占用4個。考慮到之后的檢測點數目的顯示也要用7段數碼管(本設計采用藍色數碼管),因此采用了兩個74hc573芯片作為鎖存器,分別于兩個數碼管連接,使得單片機只需要控制之前的4個管腳和這兩鎖存器的兩個使能管腳便能控制兩個數碼管的顯示。至此p0口的8個管腳用掉了6個,剩余的兩個管腳分別連接蜂鳴器電路和紅色led電路即可完成此部分的設計。圖3.4 聲光報警電路3.4系統控制電路系統控制電路包含了10個按鍵和一個藍色數碼管,18號按鍵分別對應著18號檢測位置,9號按鍵對應系統中的取消報警鍵,10號按鍵對應系統中的設置檢測點數目功能鍵,藍色數碼管則實

37、時地顯示當前監測點的個數,方便用戶調整。藍色數碼管的電路已在3.3中敘述。出于節省單片機管腳的考慮,10個按鍵被連接在兩個8-3編碼器上。這樣使得被來要占用的10個單片機管腳變為5個。同時為了提高程序運行的效率,本設計將兩個8-3編碼器gs輸出端通過一個與門(74ls08)連接到單片機的外部中斷0口,這樣把中斷與管腳掃描結合一體,使得程序運行效率有了大大提高。圖3.5 系統控制電路4 火災報警系統程序設計4.1軟件開發環境本系統摒棄了傳統的匯編語言而采用c語言進行程序設計。因為c語言的描述由函數組成,是一種結構化的程序設計語言,所以更容易實現模塊化,而且具有可讀性好,易于移植等優點,同時還有匯

38、編語言一樣的位操作功能的硬件詳細控制指令29。數據結構方面,可以使用結構體和數組,能夠處理復雜的數據,可用于實時處理系統。本系統的軟件編程使用的是美國keil software公司出品的keil c51,是51系列兼容單片機c語言軟件開發系統。 keil c51軟件提供豐富的庫函數和功能強大的集成開發調試工具,全windows界面。另外重要的一點,keil c51生成的目標代碼效率非常之高,多數語句生成的匯編代碼很緊湊,容易理解。在開發大型軟件時更能 體現高級語言的優勢。c52工具包的整體結構中,vision與ishell分別是c52for windows和for dos的集成開發環境(ide

39、),可以完成編輯、編譯、連接、調試、仿真等整個開發流程。開發人員可用ide本身或其它編輯器編輯c或匯編源文件。 4.2火災報警系統程序設計本系統主要包括數據采集子程序、火災判斷/報警子程序與系統控制子程序等來實現設計任務的要求。主要功能要求:(1)實時檢測至多8個監測點的環境溫度、煙霧濃度等因素變化,以判斷是否出現火警;(2)判定某監控點出現火警時進行聲光報警,并顯示此監控點編號;(3)能手動報警和取消報警;(4)能手動進行系統檢測;(5)監控點數目可以通過鍵盤設置。程序流程圖:開始初始化判斷手動/自動檢測手動自動輪流檢測某些監測點指定某監測點檢測 溫度煙霧信號采集無異常報警判斷異常報警取消報

40、警是否取消報警結束圖2.3 程序流程圖4.2.1數據采集子程序對于煙霧信息,根據電路設計可知,mq-2煙霧傳感器電路傳回單片機p1口的是高低電頻的信號。高電頻意味著沒有出現異常,低電頻意味著煙霧指數出現異常。因此,對煙霧情況的檢測實則對p1口相應管腳上高低電頻的檢測。在讀取的同時也實現了判斷功能,因此也是把報警功能和取消報警功能跟煙霧數據采集結合于一體的原因。對于溫度信息,由于ds18b20是單總線傳輸數據的器件,只需根據該器件的單總線特性設計程序。每采集一次溫度信息的流程為:讀取溫度,并轉換為所需的值器件復位跳過rom命令,設置讀模式跳過rom命令,執行溫度轉化命令并等待完成器件復位器件復位

41、溫度采集子函數:unsigned int temperature(unsigned char q)unsigned char temp1,temp2;unsigned int temp;rst18b20(q);write18b20(q,0xcc);write18b20(q,0x44);rst18b20(q);write18b20(q,0xcc);write18b20(q,0xbe);temp1=read18b20(q);/低8位temp2=read18b20(q);/高8位temp=temp2;temp=8;temp+=temp1;temp=(unsigned int)(temp*0.625)

42、; /保留一位小數return temp;此函數中的參數值的是監測點對應的位置。由于電路連接對應的是單片機的p3口,所以該函數要借助輔助子函數unsigned char getq(unsigned char i)來將18轉化為p2口的p20p27管腳即:0x01,0x02,0x04,0x10,0x20,0x40,0x80.以支持單總線操作。所以如果要檢測第8號監測點,則本函數的調用應該是:tmpt=temperature(getq(8)。4.2.2火災判斷/報警子程序根據任務要求,火災判斷報警子程序要實現兩個功能:1.對采集到的溫度、煙霧濃度值進行判斷,觸發報警;2.對取消報警按鍵的讀取,當報

43、警產生時如果被按下,則取消當前的報警,如果再次被按下,則恢復報警功能。煙霧檢測及溫度、煙霧報警判斷子函數:void checkfun(unsigned char i)unsigned char temp=0x01;tempstdt) /check temperaturewhile(cancel%2)=0)&(tmptstdt) tmpt=temperature(getq(i);led=0;buzz=0;seg7(i,2);led=1;buzz=1;seg7(0,2);此函數中的參數則指的是檢測點的位置。此函數中包含了溫度采集子函unsigned int temperature(unsigned

44、 char q)和數碼管顯示子函數。數碼管顯示子函數:void seg7(unsigned char value,unsigned char lock)if(value%2=1) aa=1;else aa=0;value/=2;if(value%2=1) bb=1;else bb=0; value/=2;if(value%2=1) cc=1;else cc=0;value/=2;if(value%2=1) dd=1;else dd=0;if(lock=1) /total numberlock1=1;delaynms(20);lock1=0;delaynms(20);lock2=0;else i

45、f(lock=2)/fire numberlock2=1;delaynms(20);lock2=0;delaynms(20);lock1=0;根據數碼管顯示部分的電路設計可知,兩個數碼管的顯示只需要控制6個單片機引腳。其中aa、bb、cc、dd引腳連接的是74ls47芯片的輸入引腳,單片機控制這四個引腳輸出的2進制數經過74ls47譯碼,控制數碼管顯示相應的十進制數字。其中lock1,lock2分別連接兩個74hc573使能端,當lock1=0,lock2=1時,紅色數碼管保持當前讀數不變,藍色數碼管根據aa、bb、cc、dd的輸出信號改變數字,當lock1=1,lock2=0時,藍色數碼管保

46、持當前讀數不變,紅色數碼管根據aa、bb、cc、dd的輸出信號改變數字。該程序中包含了毫秒延時函數。毫秒延時函數:void delaynms(unsigned int ms)unsigned int x,y;for(x=ms;x;x-)for(y=110;y;y-);此函數中的參數即延時的時間,單位為毫秒。4.2.3系統控制子程序系統控制功能主要有三個:1.指定檢測點的位置;2.設置監測點的個數;3.取消/恢復報警功能。本設計主要通過按鍵的應用來實現系統控制功能。根據設計的電路可知,10個按鍵是經過兩個8-3編碼器連接到單片機的p33p37 五個引腳上的,并且兩個8-3譯碼器的gs端還通過一個

47、與門連接到p32即外部中斷0口,所以系統控制子程序是通過外部中斷0實現的。當外部中斷0被觸發,則開始檢測p33p37上的電位信息,經過程序分析得出到底是哪個按鍵被按下,然后執行相應的控制命令。系統控制子程序:void keyvalue() interrupt 0unsigned char temp;ex0=0;ea=0;temp=p3&0xf8;switch(temp)case 0x38:keyv= 1;/0011 1000break;case 0xf0:keyv= 2;/1111 0000 break;case 0xe8:keyv= 3;/1110 1000 break;case 0xe0:

48、keyv= 4;/1110 0000 break;case 0xd8:keyv= 5;/1101 1000 break;case 0xd0:keyv= 6;/1101 0000 break;case 0xc8:keyv= 7;/1100 1000 break;case 0xc0:keyv= 8;/1100 0000 break;case 0xb8:keyv= 9;/1011 1000 break;case 0x78:keyv= 10;/0111 1000 break;if(keyv=1&keyv8) alter=1;ea=1;ex0=1;5 總結與展望5.1 總結本文設計了一種基于單片機at8

49、9c52的火災自動報警系統,系統安全可靠,誤報率低,操作方便,成本較低。本設計拋棄了傳統的使用單一傳感器探測報警,采用了溫度傳感器ds18b20和煙霧傳感器mq-2相結合的多傳感器探測方法,使系統靈敏度高、響應時間短,在火災發生的早期就能準確的報警。在系統的軟件設計方面,采用了模塊化程序設計方法,系統各個模塊的具體功能都是通過子程序調用實現的。既使得程序結構清晰,又便于以后進一步擴展其功能,也便于系統的維護。當發生火災,系統以聲光的形式發出報警。在系統中設置了1個蜂鳴器,實現聲音報警;并且還設置了1個發光二極管。如果系統出現硬件故障,能發出故障報警;如果煙霧和溫度出現異常,則說明有火災,發出火

50、災警報。由于時間緊迫和個人能力有限,本文設計的火災報警系統還存在許多需要完善和作進一步研究的問題,如:(1)火災報警系統判斷的算法有待進一步的研究改進,應用更先進的神經網絡和模糊識別等智能算法,降低系統的誤報率,提高靈敏度。(2)火災報警系統沒有聯網,當發生火災時不能通過電話網絡向消防指揮中心報警。5.2 展望二十一世紀是網絡化時代,在計算機技術、微電子技術和網絡技術的迅速發展下,火災探測報警技術的更新變化也非常明顯,總體來看,主要的發展變化是:數字技術和新工藝、新材料的應用,改進系統能力和減少維護要求,向著高可靠、低誤報和網絡化、智能化方向發展。l)早期、超早期的火災探測報警超早期火災報警的主要指導思想是:(1)提高靈敏度,在火災早期階段生成物較少的時候即可探測報警;(2)探測火災過程中尚未形成火災時的生成物即超早期火災探測報警。為此,利用提高靈敏度實現早期火災探測報警的方法中,已經將粒子計數測量技術用于火災探測。2)全新的火災判定依據從以搜集時間信息為主作為報警依據,轉為以物性信息與時間信息相結合作為報警依據。3)采用智能技術

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯系上傳者。文件的所有權益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
  • 4. 未經權益所有人同意不得將文件中的內容挪作商業或盈利用途。
  • 5. 人人文庫網僅提供信息存儲空間,僅對用戶上傳內容的表現方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
  • 6. 下載文件中如有侵權或不適當內容,請與我們聯系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論