基于手機(jī) APP 管理的智能門鎖系統(tǒng)設(shè)計
掃描二維碼
隨時隨地手機(jī)看文章
引 言
伴隨計算機(jī)技術(shù)、網(wǎng)絡(luò)技術(shù)及大規(guī)模集成電路的發(fā)展, 室內(nèi)智能化倍受期待,智能化產(chǎn)品也越來越受到人們的關(guān)注和使用 [1]。門鎖是家的第一道安全屏障,是家庭中每天都會用到的安全設(shè)備,在智能家居的大浪潮下,門鎖的智能化已經(jīng)形成了一種趨勢,智能門鎖應(yīng)運(yùn)而生。
本文提出一種較為新穎的智能鎖工作模式,以 WiFi 網(wǎng)絡(luò)為基礎(chǔ),將門鎖、手機(jī)、服務(wù)器三者聯(lián)接起來。手機(jī)用戶通過 APP 發(fā)送指令控制開鎖密碼更變,開鎖時發(fā)送即時開鎖密碼信息至手機(jī)用戶,從而實時了解開鎖情況,有效提升安全性能 [2]。
1 系統(tǒng)結(jié)構(gòu)
智能鎖系統(tǒng)包括智能鎖具微控制器系統(tǒng)、云服務(wù)器、用戶遠(yuǎn)程控制的手機(jī) APP 以及實現(xiàn)這三者聯(lián)系的無線通信系統(tǒng) [3],系統(tǒng)結(jié)構(gòu)如圖 1 所示。
微控制器系統(tǒng)通過 WiFi 無線模塊接入云服務(wù)器,手機(jī)客戶端通過 3G/4G 通信網(wǎng)接入云服務(wù)器。通過云服務(wù)器,手機(jī)客戶端的指令可轉(zhuǎn)發(fā)至門鎖端,門鎖端上傳的信息也可發(fā)送到手機(jī)客戶端,實現(xiàn)用戶對門鎖的遠(yuǎn)程控制與信息跟蹤 [4]。該系統(tǒng)的工作過程為 :用戶通過手機(jī) APP 設(shè)置解鎖密碼,主控芯片將此密碼保存下來,并通過門鎖端的密碼輸入界面輸入密碼,達(dá)到解鎖的目的。
2 硬件電路設(shè)計
門鎖硬件電路的整體設(shè)計主要考慮系統(tǒng)的穩(wěn)定性、可靠性、高效性、實用性、簡潔性等方面 [5]。系統(tǒng)硬件電路如圖 2 所示。
主控芯片采用最常見的 51內(nèi)核單片機(jī) STC12C5A60S2 作為主控芯片, 其主頻范圍為 11~32MHz, 同時具有32個 I/O口, 且價格低廉, 技術(shù)實現(xiàn)難度低。為了提高與 WiFi模塊傳輸?shù)膫鬏斔俾?,該系統(tǒng)選擇使用的波特率為115 200 b/s,晶振頻率為 22.118 4 MHz[6]。
WiFi通信采用 ESP8266-12F模塊, 它是高性能無線SoC,以最低成本提供最大實用性。該模塊支持標(biāo)準(zhǔn)的 IEEE 802.11b/g/n協(xié)議,完整的 TCP/IP 協(xié)議棧。使用該模塊使主控芯片與云服務(wù)器之間具備通信條件 [7]。
鍵盤采用 12 位電容式按鍵模塊(10 個數(shù)字、“*”“#”),通過 I2C 接口進(jìn)行控制,僅需要 2 個 I/O 口,相比于傳統(tǒng)矩陣鍵盤更加美觀且操作方便。其中,“#”設(shè)置為確認(rèn)鍵,“*”設(shè)置為清除鍵。
顯示采用 OLED 顯示屏。OLED 分辨率高、功耗低,且可顯示圖片,相較于液晶屏幕操作性更高。
電子鎖體驅(qū)動采用 TB6612FNG 模塊,電機(jī)電源接口帶有反接保護(hù)電路,相較于傳統(tǒng)的 L298N 提高了效率,體積也大幅減小。
3 軟件設(shè)計
3.1 門鎖端
門鎖端工作流程如圖 3所示。接通電源后,系統(tǒng)進(jìn)行初始化,隨后不斷地等待新事件發(fā)生。當(dāng)用戶按下電容鍵盤對 應(yīng)區(qū)域時,便會保留此刻的鍵值,如果輸入錯誤,可以按下“*”鍵刪除。當(dāng)獲取到 4個鍵值并收到最終結(jié)束符“#”時, 主控開始對比密碼,如果密碼與主控中存有的所有正確密碼 都不匹配,蜂鳴器將會發(fā)出短促聲響,并提示密碼輸入錯誤 ; 如果密碼輸入正確,蜂鳴器將會發(fā)出“嘀”聲長鳴,隨后發(fā) 送控制信號至電機(jī)驅(qū)動芯片 TB6612FNG,控制電子門鎖解鎖,并通過 WiFi透傳,將開門信息和開門密碼傳至服務(wù)器, 服務(wù)器收到后再傳至手機(jī)端,從而得到每次開門的信息。若 想增加新的開門密碼,只需在手機(jī)端 APP界面輸入一個四位密碼并點(diǎn)擊確認(rèn),新的密碼便通過服務(wù)器傳輸至門鎖裝置 端。確認(rèn)新的密碼信息后,主控使用一個數(shù)組空間保存這個 密碼。若想刪除密碼,也需通過手機(jī)端將其中配置好的密碼 刪除,刪除信息通過服務(wù)器傳至門鎖端,主控芯片刪除原先 存放的密碼。
3.2 手機(jī)端
手機(jī)端的主要功能為 :通過服務(wù)器從智能鎖獲取門鎖密碼信息并顯示 ;設(shè)置門鎖密碼與密碼權(quán)限,并發(fā)送至服務(wù)器 [8]。APP 界面如圖 4 所示。
APP 功能流程如圖 5 所示。APP 登錄后將連接 TCP 服務(wù)器,從鎖體端獲取密碼信息,并顯示在 APP 界面上。若獲取失敗,則彈出提醒框,此時可再次點(diǎn)擊,直到成功獲取所有可開鎖的密碼為止。若設(shè)置密碼,只需點(diǎn)擊 0 ~ 9 編號鎖定密碼存放空間,隨后彈出四個選項框,分別為設(shè)置普通密碼(永久開鎖密碼)、設(shè)置臨時密碼(某一時間段內(nèi)密碼有效)、設(shè)置次數(shù)密碼(密碼開鎖次數(shù)上限)、刪除密碼。點(diǎn)擊設(shè)置類選項,將會彈出鍵盤,輸入密碼后將此密碼發(fā)送至服務(wù)器 ;點(diǎn)擊“刪除密碼”,原編號內(nèi)的密碼將被直接刪除。
3.3 云服務(wù)器
云服務(wù)器的主要功能為轉(zhuǎn)發(fā)信息。該系統(tǒng)使用 NodeJS 編寫服務(wù)器程序 [9],建立 TCP 服務(wù)器和 WebSocket 協(xié)議,分別供門鎖端和手機(jī)端連接以及信息傳輸[10],具體流程如圖 6 所示。通過初始代碼建立服務(wù)器,并生成連接到服務(wù)器端口, 等待客戶端連接。建立連接后開始監(jiān)聽端口信息,判斷信息來自門鎖端或手機(jī)端,并將門鎖端發(fā)來的信息轉(zhuǎn)發(fā)至手機(jī)端或?qū)⑹謾C(jī)端發(fā)來的信息轉(zhuǎn)發(fā)至門鎖端。
4 系統(tǒng)測試
硬件效果如圖7 所示。系統(tǒng)工作時,OLED屏幕顯示兩行,第一行顯示“hello world”,第二行顯示“****”,代表輸入的四位密碼。通過電容觸摸屏依次按下四位密碼,每按下一位,對應(yīng)的“*”就會變成相應(yīng)的數(shù)字,當(dāng)輸入完四位密碼后, 按下“#”鍵代表輸入完成,蜂鳴器發(fā)出聲響代表解鎖成功。最終APP界面如圖 8 所示,標(biāo)號 0 ~ 2 以及 4,5 為普通密碼,標(biāo)號 6,7 為次數(shù)密碼。
5 結(jié) 語
本文主要介紹了一款利用手機(jī)通過聯(lián)網(wǎng)控制的智能密碼鎖系統(tǒng),在傳統(tǒng)鎖的基礎(chǔ)上進(jìn)行改進(jìn)與創(chuàng)新,使其具備了手機(jī)設(shè)置密碼開鎖、防盜提醒等功能。該門鎖結(jié)合“互聯(lián)網(wǎng) +” 技術(shù),大大提升了安全性,符合基本實際需求,對智能電子鎖的進(jìn)一步推廣起到了促進(jìn)作用。