- 相關(guān)推薦
基于C和串口通信的紅外防盜報(bào)警系統(tǒng)設(shè)計(jì)
選擇熱釋電紅外傳感器搭建報(bào)警電路, 采用被動式紅外線探測技術(shù),通過無線傳輸報(bào)警信號,用串口完成單片機(jī)與PC的通信,用C#完成對紅外線報(bào)警軟件的編程,實(shí)現(xiàn)上下位機(jī)報(bào)警、異地報(bào)警的功能。下面是小編搜集整理的相關(guān)內(nèi)容的論文,歡迎大家閱讀參考。
引言
隨著時(shí)代的不斷進(jìn)步,人們對自己所處環(huán)境的安全性提出了更高的要求,尤其是在家居安全方面。由于紅外線是不可見光,有很強(qiáng)的隱蔽性和保密性,白天黑夜均可使用,而且抗干擾能力強(qiáng)。因此在防盜、警戒等安保裝置中得到了廣泛的應(yīng)用。此外,在電子防盜、人體探測等領(lǐng)域中,被動式熱釋電紅外探測器也以其價(jià)格低廉、技術(shù)性能穩(wěn)定等特點(diǎn)而得到了廣泛的應(yīng)用。本文以被動式熱釋電紅外探測器及單片機(jī)為核心電路,設(shè)計(jì)了能通過串口與PC機(jī)交互監(jiān)控信息的紅外防盜報(bào)警系統(tǒng)。
一、紅外線報(bào)警技術(shù)
存在于自然界的,任何溫度高于絕對零度的物體都會產(chǎn)生黑體輻射,溫度越高,輻射越強(qiáng),輻射波長越短。人體的體溫為37 攝氏度左右,在這個(gè)溫度上的物體輻射波長在紅外區(qū)。
被動式紅外探測器主要由光學(xué)系統(tǒng)、熱傳感器(或稱為紅外傳感器)及報(bào)警控制器等部分組成,其核心是紅外探測器件,通過光學(xué)系統(tǒng)的配合作用可以探測到某個(gè)立體防范空間內(nèi)的熱輻射的變化[1]。被動紅外探測的基本原理就是利用特殊的紅外接收元件感應(yīng)人體發(fā)出的紅外源,從而判斷是否有人進(jìn)入監(jiān)控區(qū)域。在無人或動物進(jìn)入探測區(qū)域時(shí),現(xiàn)場的紅外輻射穩(wěn)定不變,一旦有人體紅外線輻射進(jìn)來,經(jīng)光學(xué)系統(tǒng)聚焦就使熱釋電器件產(chǎn)生突變電信號,而發(fā)出警報(bào)[2]。
二、紅外報(bào)警系統(tǒng)硬件芯片及整體設(shè)計(jì)
本文設(shè)計(jì)的紅外線報(bào)警系統(tǒng)分為子報(bào)警系統(tǒng)和父報(bào)警系統(tǒng),采用被動式熱釋電紅外傳感器,同時(shí)配合菲涅爾透鏡使得檢測距離更遠(yuǎn),信號處理方面利用芯片BISS0001 對傳感器產(chǎn)生的脈沖信號進(jìn)行濾波、放大、并將輸出信號傳遞給單片機(jī)STC89C52,單片機(jī)控制語音芯片進(jìn)行發(fā)聲報(bào)警,控制無線傳輸模塊無線傳輸、串口通信,最終完成異地雙報(bào)警的功能。
本設(shè)計(jì)采用價(jià)格便宜,性能良好的熱釋電紅外傳感器RE200B, 一種基于熱電效應(yīng)原理的熱電型紅外傳感器,能以非接觸式檢測出物體放出的紅外線能量變化,并將其轉(zhuǎn)換為電信號輸出。處理電路核心采用BISS0001 芯片,BISS0001 是一款具有較高性能的傳感信號處理集成電路,它配以熱釋電紅外傳感器和少量外接元器件構(gòu)成被動式的熱釋電紅外開關(guān)[5]。單片機(jī)選用目前使用比較廣泛的STC89C52,其內(nèi)部含有大容量的Flash 存儲器,在日常生活中有著廣泛的應(yīng)用。語音芯片采用華邦公司的ISD1760,它不僅可以多段錄音,而且還有獨(dú)立按鍵和SPI 兩種工作模式供選擇。設(shè)計(jì)中選用無線通訊模塊采用基于凌陽61 單片機(jī)系列的模塊,該無線傳輸模組以 nRF2401A 芯片為核心,提供了一路的無線發(fā)射和兩路的無線接收功能,可以很方便地將其運(yùn)用于51 系列單片機(jī)上進(jìn)行無線通信。
中左端D1 為熱釋電紅外傳感器,經(jīng)2 腳輸出后,通過電容耦合,并經(jīng)過運(yùn)放組成的帶通濾波器和增益放大, 電阻組成偏置電路,將運(yùn)放偏置電壓設(shè)在1/2VCC 上。由于熱釋電紅外傳感器輸出的探測信號電壓十分微弱而且是一個(gè)變化的信號,所以就需要傳感器信號處理電路處理傳感器發(fā)出的微弱信號, 將其濾波、放大,最終輸出的信號雜波少且有足夠大的增益驅(qū)動下一級電路[4]。由OP2 輸出的檢測信號和單片機(jī)相接,實(shí)現(xiàn)智能控制。
將傳感器檢測與接收電路模塊中BISS0001 接入單片機(jī),單片機(jī)接入LED 電路,當(dāng)沒有報(bào)警信號時(shí),控制綠燈亮,檢測到報(bào)警信號時(shí),控制紅燈閃爍;同時(shí)單片機(jī)控制蜂鳴器發(fā)聲,無線模塊向父報(bào)警系統(tǒng)發(fā)送報(bào)警信號。
單片機(jī)不斷檢測無線通訊模塊是否收到報(bào)警信號,若沒有收到,則控制綠燈亮,紅燈滅;若收到則控制紅燈閃,綠燈滅,同時(shí)控制語音報(bào)警電路發(fā)出已錄好的聲音提示報(bào)警,并通過串口和PC 機(jī)進(jìn)行通信。
三、紅外報(bào)警系統(tǒng)的軟件設(shè)計(jì)
子報(bào)警系統(tǒng)的信號是由傳感器檢測端輸入,將其引入單片機(jī),作為開關(guān)量,當(dāng)檢測到輸入為高電平時(shí),相當(dāng)于“開關(guān)”閉合,報(bào)警系統(tǒng)進(jìn)入報(bào)警狀態(tài),單片機(jī)控制相應(yīng)的報(bào)警模塊報(bào)警。子報(bào)警系統(tǒng)程序流程圖。
父報(bào)警系統(tǒng)的輸入信號是由子報(bào)警系統(tǒng)通過無線通信模塊傳輸過來,父報(bào)警系統(tǒng)接收到報(bào)警信號后,進(jìn)入報(bào)警狀態(tài)單片機(jī)控制相應(yīng)的報(bào)警模塊動作,并和PC 進(jìn)行通信。父報(bào)警系統(tǒng)流程圖。
PC 報(bào)警系統(tǒng)軟件選用Microsoft Visual Studio 2012 環(huán)境下的C#語言編寫,C#語言本身深受 Java、C 和 C++ 的影響。C#是一個(gè)語言,ASP.net 是一個(gè)平臺,上面支持用C#或者VB.Net 寫代碼[6]。C#不但可以開發(fā)基于ASP.net 的應(yīng)用程序,也可以開發(fā)基于WinForm 的程序[3]。
NET 2.0 提供了對串口通信功能的支持,這其中最為重要的是SerialPort 類。SerialPort 控件用于控制串行端口文件資源[2]。SerialPort 類提供同步I/O 和事件驅(qū)動的I/O、對引腳和中斷狀態(tài)的訪問,以及對串口驅(qū)動程序?qū)傩缘脑L問,支持ASCIIEncoding、UTF8Encoding、UnicodeEncoding、UTF32Encoding 以及mscorlib.dll 中定義的編碼。
系統(tǒng)軟件的編程主要是串口數(shù)據(jù)的接收,判斷接收到的數(shù)據(jù)是否為字符“b”,如果是彈出對話框報(bào)警,并實(shí)例化一個(gè)TEXT 類textreceive 為接收顯示區(qū)。
數(shù)據(jù)接收的編程是系統(tǒng)軟件編程實(shí)現(xiàn)的重點(diǎn)。數(shù)據(jù)的接收采用事件響應(yīng)驅(qū)動方案。事件響應(yīng)驅(qū)動下的串口輸入緩沖區(qū)數(shù)據(jù)讀。.NET 中封裝了SerialPort 類表示串行端口資源。,命名空間: System.IO.Ports , 實(shí)現(xiàn)過程:
<1>在設(shè)計(jì)器編輯串口serialport1 的DataReceived 事件,
<2>加入 textreceive.text 作為串口接收數(shù)據(jù)的顯示組件
<3>在DataReceived 事件響應(yīng)函數(shù)中讀取串口輸入緩沖區(qū)中的數(shù)據(jù)DataReceived 事件響應(yīng)函數(shù)修改為如下:
private void serialPort1_DataReceived(object sender,
System.IO.Ports.SerialDataReceivedEventArgs e)
{
serialReadString = serialPort1.ReadExisting();
this.textreceive.Invoke
if (serialReadString == "b")MessageBox.Show("有人闖入!", "警告");
}
}
當(dāng)有人進(jìn)入傳感器檢測范圍內(nèi)時(shí),子報(bào)警系統(tǒng)和父報(bào)警系統(tǒng)相繼報(bào)警,同時(shí)電腦報(bào)警系統(tǒng)軟件彈出對話框顯示“有人進(jìn)入”。提示報(bào)警。
報(bào)警系統(tǒng)軟件運(yùn)行成功,達(dá)到監(jiān)控報(bào)警系統(tǒng)要求。
四、結(jié)論
紅外線報(bào)警器廣泛應(yīng)用于生活之中,為人們生活安全提供保障。本文采用被動式紅外線探測技術(shù),利用熱釋電紅外傳感器作為傳感器,并設(shè)計(jì)出子報(bào)警系統(tǒng)和父報(bào)警系統(tǒng),兩者進(jìn)行無線通信,父系統(tǒng)和PC 機(jī)之間進(jìn)行串口通信,最終設(shè)計(jì)出來的紅外線報(bào)警系統(tǒng),可以成功完成子系統(tǒng)、父系統(tǒng)、PC 三報(bào)警的功能,達(dá)到了系統(tǒng)監(jiān)控報(bào)警的功能要求。
[參考文獻(xiàn)]
[1] 劉舒祺,施國梁.基于熱釋電紅外傳感器的報(bào)警系統(tǒng) [J].國外電子元器件,2005,(3):18~20.
[2] 羅晴蘭. RS-485 總線通信技術(shù)在紅外線報(bào)警系統(tǒng)中的應(yīng)用[J].電工電氣,2012,(5):26~30.
[3] 劉銳寧.宋坤Visual C#2012 控件使用范例詳解 [M].北京:清華大學(xué)出版社,2012.
[4] 董吉虹,白明,郎培,解峰,梁為.熱釋電紅外報(bào)警器的設(shè)計(jì) [J].天津理工大學(xué)學(xué)報(bào),2007.10:71~74
[5] 楊波.陳憂先.熱釋電紅外傳感器的原理和應(yīng)用[J].儀表技術(shù),2012,6:66~68.
[6] James Foxall. Visual C# 入門經(jīng)典[M].北京:人民郵電出版社,2005.
【基于C和串口通信的紅外防盜報(bào)警系統(tǒng)設(shè)計(jì)】相關(guān)文章:
基于SNMP及串口通信的網(wǎng)絡(luò)監(jiān)控與報(bào)警系統(tǒng)03-07
基于Vxworks實(shí)時(shí)操作系統(tǒng)的串口通信程序設(shè)計(jì)與實(shí)現(xiàn)03-18
景區(qū)防盜報(bào)警系統(tǒng)簡析03-15
串口通信在雙機(jī)冗余系統(tǒng)中應(yīng)用03-20
住宅小區(qū)防盜報(bào)警系統(tǒng)方案03-19
基于ISD語音芯片的報(bào)警系統(tǒng)03-07
基于通信器S1503的門禁系統(tǒng)的設(shè)計(jì)03-19