摘 要針對(duì)公寓安全問題,利用FPGA設(shè)計(jì)了公寓安全控制器。利用多種傳感器對(duì)房間的安全狀態(tài)進(jìn)行實(shí)時(shí)感知與監(jiān)測,安全控制器通過接收和分析不同傳感器的數(shù)據(jù)分別實(shí)現(xiàn)門禁刷卡錯(cuò)誤報(bào)警、火災(zāi)報(bào)警、防盜報(bào)警以及大功率電器使用報(bào)警等功能。利用ICL7135對(duì)供電電流進(jìn)行A/D轉(zhuǎn)換進(jìn)而判斷是否有大功率電器使用;通過串口通信方式接收門禁讀卡器送出的ID卡信息并與正確的卡號(hào)進(jìn)行逐位比對(duì)判斷。時(shí)序仿真實(shí)驗(yàn)表明系統(tǒng)可以實(shí)現(xiàn)對(duì)學(xué)生公寓安全狀態(tài)的監(jiān)控與報(bào)警。
【關(guān)鍵詞】防盜報(bào)警 傳感器 安全控制器 FPGA
學(xué)生公寓的安全事故時(shí)有發(fā)生而且近年來呈上升趨勢,給學(xué)生個(gè)人以及學(xué)校都造成了重大的經(jīng)濟(jì)損失和不良的社會(huì)影響,學(xué)生公寓的安全成為社會(huì)尤其是學(xué)生家長和教育界關(guān)注的焦點(diǎn)問題,很多學(xué)者對(duì)學(xué)生公寓安全的監(jiān)測與控制進(jìn)行了大量的研究工作[1-3]。
現(xiàn)場可編程門陣列(FPGA)器件是一種新型的高密度可編程邏輯器件,采用CMOS-SRAM工藝制造。它不僅具有很高的速度和可靠性,而且具有可重復(fù)編程的特點(diǎn)。因此,現(xiàn)場可編程門陣列使數(shù)字電路系統(tǒng)的設(shè)計(jì)非常靈活,在信號(hào)采集與處理、復(fù)雜邏輯控制等方面得到了廣泛的應(yīng)用[4-11]。
本文利用ALTERA公司的EP4CE6E22C8芯片作為控制芯片構(gòu)建了公寓安全控制器,利用VERILOG語言設(shè)計(jì)了FPGA各個(gè)模塊電路。
1 系統(tǒng)框圖
公寓安全控制器系統(tǒng)框圖如圖1所示,系統(tǒng)由FPGA主控芯片、ID卡識(shí)別電路、火災(zāi)檢測電路、紅外防盜電路、大功率電器檢測電路以及供電控制電路組成??刂菩酒捎肊P4CE6E22C8,內(nèi)含6272個(gè)邏輯單元數(shù)和276480位存儲(chǔ)單元。
火災(zāi)檢測電路負(fù)責(zé)采集煙霧數(shù)據(jù),并將信息傳送給FPGA用以判斷是否有火災(zāi)發(fā)生,如果確認(rèn)有火災(zāi)發(fā)生則立即通過供電控制電路切斷電源。紅外防盜電路負(fù)責(zé)檢測是否有陌生人闖入房間,一旦發(fā)現(xiàn)立即發(fā)出聲光報(bào)警。大功率電器檢測電路負(fù)責(zé)檢測是否有大功率電器使用,一旦發(fā)現(xiàn)立即通過供電控制電路切斷電源并發(fā)出聲音警告,間隔一定時(shí)間后自動(dòng)恢復(fù)供電。ID卡識(shí)別電路用于識(shí)別用戶的刷卡信息,并將用戶卡號(hào)傳送給FPGA進(jìn)行識(shí)別,如果卡號(hào)正確則開門并且關(guān)閉紅外防盜功能以免誤報(bào)警,如果卡號(hào)錯(cuò)誤發(fā)出聲音警告。
2 模塊電路設(shè)計(jì)
2.1 A/D控制模塊設(shè)計(jì)
利用ICL7135實(shí)現(xiàn)對(duì)大功率電器檢測電路的輸出電壓信號(hào)進(jìn)行A/D 轉(zhuǎn)換,ICL7135是高精度4位半CMOS雙積分型A/D轉(zhuǎn)換器,具有雙極性高阻抗差動(dòng)輸入、自動(dòng)調(diào)零、自動(dòng)極性和超量程判別等功能,具有±20000個(gè)計(jì)數(shù)分辨率,A/D轉(zhuǎn)換后的數(shù)字碼有串行輸出與分時(shí)并行輸出兩種輸出方式,與微處理器接口十分方便。
FPGA與ICL7135的接口電路如圖2所示。電流互感器串聯(lián)在220V交流電路中,輸出的電流信號(hào)經(jīng)過信號(hào)調(diào)理電路得到與電流呈線性關(guān)系的電壓峰值信號(hào)Um。Um輸入到A/D 轉(zhuǎn)換ICL7135轉(zhuǎn)換為對(duì)應(yīng)的數(shù)字量并經(jīng)過FPGA計(jì)算可以得到房間供電的視在功率。
設(shè)置FPGA的rh引腳為高電平,啟動(dòng)ICL7135進(jìn)行A/D轉(zhuǎn)換,ICL7135的BUSY引腳出現(xiàn)上升沿。FPGA的busy引腳檢測到上升沿時(shí)啟動(dòng)內(nèi)部計(jì)數(shù)器對(duì)clkin引腳輸入的脈沖(即ICL7135的時(shí)鐘脈沖CLOCK)進(jìn)行計(jì)數(shù)。當(dāng)A/D轉(zhuǎn)換結(jié)束時(shí),ICL7135的BUSY引腳出現(xiàn)下降沿,F(xiàn)PGA的busy引腳檢測到下降沿時(shí)停止內(nèi)部計(jì)數(shù)器,計(jì)數(shù)器的計(jì)數(shù)結(jié)果S即完成A/D轉(zhuǎn)換所需的時(shí)鐘脈沖數(shù)。假設(shè)交流電流到Um的變換系數(shù)為K,A/D轉(zhuǎn)換器的基準(zhǔn)電壓為Vref,則可以計(jì)算出供電線路的供電電流IAC的大小為:
(1)
一旦發(fā)現(xiàn)電流增加值超過程序設(shè)定的閾值則判定為有大功率電器使用,F(xiàn)PGA立即通過供電控制電路切斷電源以防止引起電氣火災(zāi),同時(shí)發(fā)出聲音警告,間隔一定時(shí)間后自動(dòng)恢復(fù)供電。
A/D控制模塊的時(shí)序仿真圖如圖3所示,rh引腳出現(xiàn)正脈沖啟動(dòng)A/D轉(zhuǎn)換,在整個(gè)轉(zhuǎn)換期間busy引腳是高電平,busy信號(hào)和clkin信號(hào)做與運(yùn)算,則clkout為busy高電平期間通過的clkin脈沖。計(jì)數(shù)器對(duì)clkout脈沖進(jìn)行計(jì)數(shù),計(jì)數(shù)結(jié)果放在clkcnt寄存器中,如果給定(1)式中的IAC閾值,則計(jì)數(shù)器的計(jì)數(shù)閾值確定,若果clkcnt的計(jì)數(shù)值S超過此計(jì)數(shù)閾值,則報(bào)警輸出信號(hào)power_alert輸出高電平。圖3(a)中計(jì)數(shù)值沒有達(dá)到計(jì)數(shù)閾值, power_alert輸出低電平不進(jìn)行報(bào)警;圖3(b)中計(jì)數(shù)值達(dá)到計(jì)數(shù)閾值,power_alert輸出高電平進(jìn)行報(bào)警。
2.2 串口通信模塊
FPGA的串口通信模塊用于接收ID卡識(shí)別電路的輸出信號(hào),串口通信格式采用9600bps波特率、無奇偶校驗(yàn)、8位數(shù)據(jù)位、1位停止位。FPGA將串口接收到的ID卡號(hào)與預(yù)先存儲(chǔ)的所有正確卡號(hào)進(jìn)行逐一校對(duì),如果是正確的用戶信息則通過繼電器控制電磁鎖開門,如果是錯(cuò)誤的用戶信息則進(jìn)行報(bào)警提示。
串口通信模塊的時(shí)序仿真圖如圖4所示,rx232_rx為串口數(shù)據(jù)輸入引腳,rx_data_r為串口數(shù)據(jù)接收寄存器,alert_out為讀卡錯(cuò)誤報(bào)警輸出信號(hào)。 ID卡的卡號(hào)由10個(gè)數(shù)字組成,即讀卡器每次發(fā)送的卡號(hào)為10個(gè)字節(jié),由rx232_rx引腳接收的數(shù)據(jù)以字節(jié)形式存儲(chǔ)在rx_data_r寄存器中并與正確的卡號(hào)逐位比較。如果卡號(hào)正確alert_out引腳輸出低電平不報(bào)警,如圖(a)所示,反之如果卡號(hào)錯(cuò)誤alert_out引腳輸出高電平進(jìn)行報(bào)警,如圖(b)所示。
2.3 邊沿檢測模塊
FPGA的邊沿檢測模塊負(fù)責(zé)接收防火防盜電路的輸出信號(hào)。紅外防盜電路利用紅外熱釋電傳感器檢測是否有陌生人闖入房間,一旦發(fā)現(xiàn)立即發(fā)出聲光報(bào)警。紅外熱釋電傳感器是一種以非接觸的形式感應(yīng)紅外輻射并將其轉(zhuǎn)換為電信號(hào)的儀器,利用熱電效應(yīng)原理來完成對(duì)移動(dòng)物體紅外輻射的感應(yīng)。具有功耗小、成本低、隱蔽性好、靈敏度高等特點(diǎn)。熱釋電傳感器沒有檢測到人體移動(dòng)時(shí)輸出低電平,反之當(dāng)熱釋電傳感器檢測到人體移動(dòng)時(shí)輸出高電平,即輸出端會(huì)出現(xiàn)由低到高的上升沿信號(hào)。
火災(zāi)檢測電路利用煙霧傳感器檢測CO煙霧濃度用以判斷是否發(fā)生火災(zāi)。煙霧傳感器屬于氣敏傳感器,它將可燃性氣體在空氣中的含量(即濃度)轉(zhuǎn)化成電壓或者電流信號(hào),通過比較電路可以設(shè)置檢測的靈敏度,比較電路的輸出為數(shù)字量。沒有檢測到CO煙霧比較電路輸出低電平,如果檢測到CO煙霧并且超過參考值則比較電路輸出高電平,即輸出端會(huì)出現(xiàn)由低到高的上升沿信號(hào)。
FPGA的邊沿檢測模塊具有兩個(gè)輸入引腳分別檢測紅外防盜電路輸出的上升沿和火災(zāi)檢測電路輸出的上升沿。如果檢測到上升沿信號(hào)則確定有盜竊或者火災(zāi)情況,并立即進(jìn)行報(bào)警提示。
邊沿檢測模塊的時(shí)序仿真圖如圖5所示,fire引腳接收火災(zāi)檢測電路的輸出,theft引腳接收紅外防盜電路的輸出,safe_alert[1..0]引腳為報(bào)警輸出引腳。如果檢測到fire引腳上升沿到來就表示有火災(zāi)發(fā)生,safe_alert t[1..0]引腳輸出二進(jìn)制01,如圖(a)所示,如果檢測到theft引腳上升沿到來就表示有盜竊發(fā)生,safe_alert t[1..0]引腳輸出二進(jìn)制10,如圖(b)所示。
3 結(jié)束語
本文利用FPGA設(shè)計(jì)了一個(gè)公寓安全監(jiān)測與控制系統(tǒng),利用QUARTUSII軟件基于VERILOG語言編寫了各個(gè)模塊電路的程序,通過QUARTUSII軟件自帶的仿真環(huán)境進(jìn)行了時(shí)序仿真,仿真實(shí)驗(yàn)表明系統(tǒng)可以實(shí)現(xiàn)ID卡識(shí)別與錯(cuò)誤信息報(bào)警、紅外防盜報(bào)警、大功率電器使用報(bào)警以及火災(zāi)報(bào)警功能,為公寓安全提供了全面防護(hù)。
參考文獻(xiàn)
[1]周維龍,肖伸平,陳剛等.基于物聯(lián)網(wǎng)的大功率電器監(jiān)控系統(tǒng)設(shè)計(jì)[J].湖南工業(yè)大學(xué)學(xué)報(bào),2012,28(05):95-99.
[2]洪樹亮.基于STM32F103住宅智能防火防盜報(bào)警系統(tǒng)的設(shè)計(jì)[D].蘭州交通大學(xué),2015.
[3]李清琳,高國偉,陳亞京等.無線防火防盜智能報(bào)警裝置[J].傳感器世界,2016,22(06):24-28.
[4]王碩,馬永奎,高玉龍等.基于FPGA的改進(jìn)結(jié)構(gòu)的DDS設(shè)計(jì)與實(shí)現(xiàn)[J].電子技術(shù)應(yīng)用,2016,42(03):28-30,34.
[5]江燦輝,孫希延,嚴(yán)素清等.基于DSP和FPGA的衛(wèi)星信號(hào)模擬器設(shè)計(jì)與實(shí)現(xiàn)[J].電子技術(shù)應(yīng)用,2016,42(09):51-54.
[6]蘇文虎,陳迅.基于FPGA的寬頻超聲波電源頻率跟蹤系統(tǒng)設(shè)計(jì)[J].電子技術(shù)應(yīng)用,2017,43(03):59-62.
[7]翁天陽,莊宇,于瑋等.基于HPS和FPGA的圖像壓縮感知編解碼系統(tǒng)[J].電子技術(shù)應(yīng)用,2017,40(05):90-93.
[8]楊秀增,楊仁桓.基于FPGA的高精度超聲波測距儀設(shè)計(jì)[J].現(xiàn)代電子技術(shù),2017,40(01):137-139,144.
[9]叢子林.基于溫度傳感器和FPGA室內(nèi)溫度智能無線控制設(shè)計(jì)[J].現(xiàn)代電子技術(shù),2016,39(06):70-72.
[10]朱宇.一種基于真隨機(jī)序列和安全散列算法可靠加密FPGA設(shè)計(jì)的方法[J].現(xiàn)代電子技術(shù),2017,40(07):78-80,84.
[11]徐海剛,李朋偉.智能視頻監(jiān)控系統(tǒng)中多視角目標(biāo)跟蹤研究與FPGA實(shí)現(xiàn)[J].現(xiàn)代電子技術(shù),2016,39(17):6-11.
作者簡介
史振江(1979-),男,河北省唐山市人。碩士學(xué)位。副教授職稱。主要研究方向?yàn)橹悄軝z測與控制技術(shù)。
作者單位
石家莊鐵路職業(yè)技術(shù)學(xué)院 河北省石家莊市 050041