,,,
(哈爾濱理工大學(xué) 榮成學(xué)院,山東 榮成 264300)
隨著全球信息化進(jìn)程的飛速發(fā)展,人類社會(huì)正逐步蛻變?yōu)橐灾橇Y源為首要依托的智能型社會(huì)[1]。人們生活水平的提高,生活品質(zhì)的追求更是推動(dòng)了科學(xué)技術(shù)的迅速發(fā)展,各種類型的智能產(chǎn)品應(yīng)運(yùn)而生。門控系統(tǒng)作為方便人類生活的環(huán)節(jié)之一,也開始踏上多樣化、智能化的道路,其運(yùn)用以計(jì)算機(jī)技術(shù)為核心,包括通訊技術(shù)、電子技術(shù)在內(nèi)的信息技術(shù)與現(xiàn)代建筑技術(shù)相結(jié)合,為人們多方位提供自動(dòng)化應(yīng)用功能的服務(wù)。
為滿足人們對(duì)產(chǎn)品的需求,市場(chǎng)上出現(xiàn)了一些遙控開門的裝置[1],但遙控信號(hào)傳輸不穩(wěn)定,且無法實(shí)現(xiàn)實(shí)時(shí)監(jiān)測(cè),給用戶的實(shí)際使用帶來了諸多不便。此研究系統(tǒng)利用Openwrt可以掛載攝像頭這一功能,不僅能夠做到實(shí)時(shí)監(jiān)測(cè),實(shí)現(xiàn)了居家防盜的目的,而且還具有短信通知與控制功能[1],不僅實(shí)現(xiàn)了程控開門,同時(shí)可及時(shí)回饋當(dāng)前狀態(tài)。與市面上同類產(chǎn)品相比,降低了使用難度,方便用戶的使用,節(jié)省了用戶的時(shí)間成本,具有一定的現(xiàn)實(shí)價(jià)值。
系統(tǒng)以STC公司的12系列單片機(jī)作為主控制器。此系統(tǒng)主要由訪客識(shí)別系統(tǒng)、圖像傳輸系統(tǒng)、防盜報(bào)警系統(tǒng)以及電機(jī)驅(qū)動(dòng)系統(tǒng)四大部分組成:訪客識(shí)別系統(tǒng)由振動(dòng)傳感器、人體感應(yīng)模塊、按鍵電路構(gòu)成;圖像傳輸模塊由HG255D路由器、USB攝像頭組成;防盜報(bào)警系統(tǒng)獨(dú)立于主進(jìn)程,作為系統(tǒng)的第二模式,由ESP8288作為控制核心,外設(shè)連接振動(dòng)與紅外傳感器。在主進(jìn)程運(yùn)行時(shí),訪客控制系統(tǒng)識(shí)別到訪客請(qǐng)求便向單片機(jī)發(fā)送信號(hào)同時(shí)驅(qū)動(dòng)蜂鳴器,然后單片機(jī)控制SIM900A模塊向用戶發(fā)送通知短信。用戶接收短信后打開用花生殼設(shè)置好的網(wǎng)頁可以對(duì)門外情況進(jìn)行實(shí)時(shí)查看,之后可以以短信的形式向單片機(jī)回送開門指令,接收指令后單片機(jī)通過驅(qū)動(dòng)板驅(qū)動(dòng)直流電機(jī)轉(zhuǎn)動(dòng),為訪客開門。系統(tǒng)總體結(jié)構(gòu)如圖1所示。
圖1 系統(tǒng)總體結(jié)構(gòu)框圖
圖像傳輸系統(tǒng)采用HG255D路由器刷取其固件,固件里至少要包括兩個(gè)與攝像頭相關(guān)內(nèi)核kmod-video-core,kmod-video-u-vc,以及mjpeg-streamer軟件,應(yīng)用Linux的開源版本的特性,實(shí)現(xiàn)圖像的遠(yuǎn)程傳輸。此研究中搭載了實(shí)現(xiàn)視頻傳輸?shù)膍jpeg-streamer軟件,用于將mjpeg格式的文件變成流媒體輸出,由于其自帶web網(wǎng)頁且支持用戶密碼登陸,所以用戶可以用瀏覽器來查看攝像頭的圖像,安全性也較高。為了實(shí)現(xiàn)外網(wǎng)訪問攝像頭,可以使用花生殼進(jìn)行內(nèi)網(wǎng)穿透。此外在攝像頭的選擇上,采用了微軟的HD3000 720P高清攝像頭,因?yàn)槠涿怛?qū)并支持MJPEG,去除了HD5000里作用不大的自動(dòng)對(duì)焦功能,同時(shí)價(jià)格比HD5000更加親民。
門禁系統(tǒng)以STC12單片機(jī)的最小系統(tǒng)為主體,HG255D路由器與最小系統(tǒng)并行工作。在單片機(jī)的I/O接口連接獨(dú)立按鍵、蜂鳴器、SW-420傳感器、人體感應(yīng)模塊、直流電機(jī)驅(qū)動(dòng)板。單片機(jī)最小系統(tǒng)由單片機(jī)芯片,時(shí)鐘電路、復(fù)位電路[2]和電源構(gòu)成。
當(dāng)訪客來訪時(shí),表現(xiàn)出的行為體現(xiàn)在對(duì)門的敲擊和按壓門鈴。利用這些特征設(shè)計(jì)訪客行為識(shí)別系統(tǒng),門鈴的引腳與單片機(jī)的I/O口通過電路相接,門鈴按下時(shí)通過按鍵電路產(chǎn)生低電平信號(hào),單片機(jī)采用掃描法讀取到低電平,控制蜂鳴器響的同時(shí)給用戶發(fā)送來訪信息,告知用戶有人來訪;采用SW-420振動(dòng)開關(guān)搭建的振動(dòng)傳感器模塊,當(dāng)有人敲門時(shí)帶動(dòng)傳感器內(nèi)彈簧震動(dòng)輸出低電平,把敲擊門的振動(dòng)轉(zhuǎn)換成電平的變化。此外,系統(tǒng)還使用了HC-SR501人體紅外感應(yīng)模塊來確保振動(dòng)是由人體活動(dòng)所引起的,人體感應(yīng)模塊感應(yīng)角度最大可達(dá)100°錐角,識(shí)別范圍最大7米,能夠識(shí)別用戶門前所有大型生命體的存在,如果在檢測(cè)范圍內(nèi)有人出現(xiàn),人體感應(yīng)模塊將會(huì)輸出低電平信號(hào)。當(dāng)且僅當(dāng)振動(dòng)傳感器與人體感應(yīng)模塊同時(shí)發(fā)生電平變化時(shí)才向單片機(jī)發(fā)出請(qǐng)求信號(hào)。傳感器模擬信號(hào)輸出與LM393集成運(yùn)放相連,將模擬輸入量放大作為ADC0809芯片的輸入。如圖2所示。
圖2 訪客識(shí)別系統(tǒng)電路圖
系統(tǒng)的主控電路以單片機(jī)最小系統(tǒng)為核心,采用軟件上電復(fù)位。STC12c5a60s2單片機(jī)內(nèi)部含有兩個(gè)串口,可同時(shí)向手機(jī)發(fā)送信息和在PC端進(jìn)行調(diào)試,抗干擾性強(qiáng),成本較低,比傳統(tǒng)的51系列單片機(jī)速度快8-12倍,可以滿足軟實(shí)時(shí)性下的系統(tǒng)設(shè)計(jì)。如圖3所示,單片機(jī)共40個(gè)I/O引腳,選擇P3口推挽輸出,P2口作電機(jī)驅(qū)動(dòng)信號(hào)輸出,P0口連接傳感器和蜂鳴器,各引腳之間相互獨(dú)立。220 V市電經(jīng)過電源適配器輸入單片機(jī),7805具有穩(wěn)壓和過流保護(hù)的作用。外部晶振11.0592 MHz,用于為單片機(jī)提供時(shí)鐘信號(hào)。系統(tǒng)主體電路如圖3所示。
圖3 系統(tǒng)主體電路圖
為了滿足電機(jī)的功率需求,設(shè)計(jì)了L298N驅(qū)動(dòng)電路。L298N芯片可以用來驅(qū)動(dòng)兩個(gè)二相電機(jī),也可以驅(qū)動(dòng)一個(gè)四相電機(jī),輸出電壓可達(dá)50V,可以直接通過電源來調(diào)節(jié)輸出電壓;也可以直接用單片機(jī)的IO口提供信號(hào)[3]。單片機(jī)的P2.6-P2.7引腳控制電機(jī)的轉(zhuǎn)動(dòng)及方向,直接與驅(qū)動(dòng)芯片的INA、INB連接,當(dāng)收到開門信號(hào)單片機(jī)通過這兩個(gè)引腳向INA、INB發(fā)送一個(gè)PWM波,控制電機(jī)轉(zhuǎn)動(dòng)。降壓模塊將經(jīng)過適配器的24 V電壓降至9 V,通過IN+和IN-引腳輸入驅(qū)動(dòng)提供工作電壓[4]。電機(jī)驅(qū)動(dòng)電路如圖4所示。
圖4 電機(jī)驅(qū)動(dòng)電路圖
系統(tǒng)的開發(fā)平臺(tái)是Keil公司的μvision,采用C語言編程,是面向過程的語言,具有可讀性強(qiáng)的特點(diǎn)。主要針對(duì)單片機(jī)STC12C5A60S2進(jìn)行設(shè)計(jì),包含主程序、訪客識(shí)別程序以及電機(jī)控制子程序。
主程序主要包括系統(tǒng)初始化程序、和對(duì)其他子程序的調(diào)用。系統(tǒng)的初始化包括定時(shí)器、檢測(cè)信號(hào)的I/O引腳、時(shí)鐘、串口的初始化。初始化完成后,進(jìn)入while死循環(huán)執(zhí)行系統(tǒng)所需的子函數(shù),同時(shí)等待外部中斷與串行口中斷。根據(jù)程序設(shè)計(jì),傳感器能感知訪客到來并通過總線向單片機(jī)發(fā)出請(qǐng)求,傳感器的輸出由高電平變?yōu)榈碗娖?,下降沿從單片機(jī)的外部中斷引腳輸入給單片機(jī),該信號(hào)被系統(tǒng)檢測(cè)到后驅(qū)動(dòng)SIM900A模塊向用戶發(fā)送短信。若傳感器信號(hào)無變化,則在循環(huán)內(nèi)等待[5]。若用戶對(duì)系統(tǒng)請(qǐng)求作出回應(yīng),單片機(jī)則驅(qū)動(dòng)電機(jī)做出相應(yīng)的控制。傳感器的I/O采用的是程序傳送方式,串行口采用的中斷傳輸方式。程序流程如圖5所示。
圖5 系統(tǒng)軟件流程圖
由于傳感器采用電平觸發(fā)方式[6],訪客行為會(huì)在短時(shí)間內(nèi)向單片機(jī)發(fā)出多次信號(hào),單片機(jī)向用戶連續(xù)多次發(fā)出來訪通知。這種情形既占用了單片機(jī)線程資源又給用戶帶來了困擾,針對(duì)這一問題,添加了一個(gè)標(biāo)志位cmdd,設(shè)計(jì)出了訪客行為識(shí)別算法,算法框圖如圖6所示。
圖6 訪客行為識(shí)別流程圖
系統(tǒng)上電之后,在主程序里對(duì)訪客識(shí)別所需的軟硬件進(jìn)行初始化,將軟件里的標(biāo)志位cmdd初始化為0。初始化完畢后,程序設(shè)定對(duì)與傳感器相連的I/O口進(jìn)行輪詢,只有在兩個(gè)傳感器都向單片機(jī)發(fā)出高電平信號(hào),單片機(jī)才控制sim900A模塊向用戶發(fā)送信息,并將cmdd置1,否則就將一直對(duì)I/O進(jìn)行檢測(cè)。當(dāng)用戶收到短信并給系統(tǒng)以開門的指令系統(tǒng)將設(shè)定的標(biāo)志位cmdd置0,否則就保持標(biāo)志位不變[7]。這樣,即便訪客連續(xù)多次觸發(fā)傳感器與按鍵,系統(tǒng)也只在短時(shí)間內(nèi)向用戶通知一次,避免了一次來訪行為向用戶發(fā)送多次短信。
當(dāng)系統(tǒng)接收到用戶的開門指令,就要控制電機(jī)完成開門的動(dòng)作。開門動(dòng)作主要分為兩大部分,一部分是將門把手下拉,另一部分是將下拉的門把手復(fù)位,使用PWM波控制電機(jī)的轉(zhuǎn)動(dòng)[8],并用2個(gè)光電傳感器配合完成門的開啟。電機(jī)控制相關(guān)程序的流程如圖7所示。
圖7 電機(jī)控制流程圖
兩個(gè)光電傳感器分別位于門把手移動(dòng)位置的上限與下限。單片機(jī)通過P2.6和P2.7引腳向電機(jī)驅(qū)動(dòng)芯片L298N發(fā)出PWM波[9],控制直流電機(jī)轉(zhuǎn)動(dòng),帶動(dòng)門把手下移,當(dāng)把手下移至光電傳感器1的位置,光電傳感器1輸出低電平給單片機(jī),此時(shí)系統(tǒng)延時(shí)等待5S(多次測(cè)試得出),給訪客充足的開門的時(shí)間,隨后輸出反相的PWM波,控制電機(jī)反轉(zhuǎn),將門把手復(fù)位,當(dāng)把手上移至光電傳感器2所處的位置,光電傳感器2輸出低電平給單片機(jī),隨后,單片機(jī)停止對(duì)電機(jī)的控制,電機(jī)停轉(zhuǎn),整個(gè)開門動(dòng)作完成。
系統(tǒng)的實(shí)用性是首要的,為了定量衡量系統(tǒng)的實(shí)用性[10],進(jìn)行對(duì)照實(shí)驗(yàn),比較完成一次開門動(dòng)作系統(tǒng)所需時(shí)間與人工所需時(shí)間。實(shí)驗(yàn)組對(duì)象是新型開門系統(tǒng),對(duì)照組是大學(xué)校園里5名年齡在20~22歲的志愿者,其中,男性志愿者3名,女性志愿者兩名。實(shí)驗(yàn)組對(duì)系統(tǒng)進(jìn)行100次整機(jī)測(cè)試,采集了如下幾類信息:1)識(shí)別訪客時(shí)間(從訪客敲門至系統(tǒng)檢測(cè)到有人來訪所需時(shí)間);2)短信發(fā)送到用戶手機(jī)的時(shí)間;3)開門信息發(fā)出到達(dá)用系統(tǒng)開門的時(shí)間差??紤]到實(shí)驗(yàn)組在測(cè)試過程中外界環(huán)境的影響與信道中噪聲的干擾,對(duì)采集到的數(shù)據(jù)用三次立方法進(jìn)行去噪,然后采用KS檢驗(yàn)篩選出滿足一致性檢驗(yàn)的數(shù)據(jù),將滿足假設(shè)檢驗(yàn)的數(shù)據(jù)進(jìn)行算術(shù)平均作為系統(tǒng)穩(wěn)定性的指標(biāo)。穩(wěn)定性相關(guān)數(shù)據(jù)如表1所示。
表1 整機(jī)測(cè)試相關(guān)參數(shù) s
對(duì)照組模擬正常情況下訪客來訪時(shí)屋里的人員從離開當(dāng)前所在位置到在門前確定完門外情況給訪客開門的整套動(dòng)作。我們選用的實(shí)驗(yàn)場(chǎng)地是面積約為25平方米的正方形,測(cè)試者與門連線恰為場(chǎng)地的對(duì)角線。每個(gè)測(cè)試者進(jìn)行5次測(cè)試,用秒表分別測(cè)量測(cè)試者從接收到來訪信號(hào)到啟動(dòng)的時(shí)間(稱之為反應(yīng)時(shí)間)、從起始位置到達(dá)門前的時(shí)間(稱之為運(yùn)動(dòng)時(shí)間)以及確認(rèn)門外情況所用時(shí)間(稱之為確認(rèn)時(shí)間)。測(cè)試結(jié)果如表2所示。
對(duì)測(cè)試得到數(shù)據(jù)進(jìn)行分析,可以直觀的看到,開門系統(tǒng)完成一次操作所需時(shí)間平均為11.42 s,遠(yuǎn)低于測(cè)試者親自完成為訪客開門所用時(shí)間(25.5 s)。雖然實(shí)驗(yàn)選取的測(cè)試者年齡沒有明顯的分層,場(chǎng)地大小固定,但是,由于青年人的運(yùn)動(dòng)速度明顯快于其他年齡段的人,故實(shí)驗(yàn)可以證明系統(tǒng)有較高的實(shí)際效用,確實(shí)能夠大大節(jié)省用戶的時(shí)間成本。
表2 志愿者測(cè)試相關(guān)參數(shù) s
新型門控系統(tǒng),采用智能化、模塊化的設(shè)計(jì),實(shí)現(xiàn)了遠(yuǎn)程控制和實(shí)時(shí)監(jiān)測(cè)功能。本系統(tǒng)利用單片機(jī)作為主控制器,使整個(gè)控制系統(tǒng)更加簡(jiǎn)潔。同時(shí)通過手機(jī)短信控制系統(tǒng)的運(yùn)行,當(dāng)遇到異常情況時(shí)就向用戶發(fā)送報(bào)警短信,提高系統(tǒng)的安全性,由于短信控制的操作簡(jiǎn)單,適合各年齡段人群使用,所以實(shí)用性、靈活性更強(qiáng)。此外本研究加入的視頻傳輸功能,使用戶可以實(shí)時(shí)看到家里的情況,安全性、有效性得到了進(jìn)一步的提升。本設(shè)計(jì)匯聚當(dāng)下炙手可熱的安全、智能等話題,不僅符合大眾對(duì)智能生活的追求,其人性化的設(shè)計(jì),網(wǎng)絡(luò)化的服務(wù)更為人們提供了不一樣的生活品質(zhì),同時(shí)也為智能家居的發(fā)展做出了一定的貢獻(xiàn),具有一定的市場(chǎng)價(jià)值與實(shí)用價(jià)值。