陳劍棟 張林 彭國文
摘 ?要:隨著智能門鎖的廣泛應(yīng)用,用戶對于其安全可靠性和高效便捷性等方面提出了新的要求,本文通過使用ZigBee無線技術(shù),實(shí)現(xiàn)了智能門鎖的聯(lián)網(wǎng)系統(tǒng),使智能門鎖能實(shí)現(xiàn)集中監(jiān)控和管理。本系統(tǒng)適用于酒店公寓、宿舍等需要對智能門鎖進(jìn)行集中管理的場所。
關(guān)鍵詞:物聯(lián)網(wǎng);智能門鎖系統(tǒng);集中監(jiān)控;ZigBee無線技術(shù)
中圖分類號(hào):TP273.5;TN92 ? ? 文獻(xiàn)標(biāo)識(shí)碼:A 文章編號(hào):2096-4706(2019)14-0169-03
Intelligent Door Lock System Design Based on ZigBee Technology
CHEN Jiandong1,ZHANG Lin1,PENG Guowen2
(1.Guangzhou Zhiyuan Electronics Co.,Ltd.,Guangzhou ?510660,China;
2.Guangzhou Ligong Science and Technology Co.,Ltd.,Guangzhou ?510660,China)
Abstract:With the wide application of intelligent door locks,new requirements are put forward for safety,reliability,efficiency and convenience,and so on. In this paper,ZigBee wireless technology is used to realize the network system of intelligent door locks,so that intelligent door locks can realize centralized monitoring and management. This system is especially suitable for hotel apartments,dormitories and other intelligent door locks that need centralized management.
Keywords:internet of things;intelligent door lock system;centralized monitoring;ZigBee wireless technology
0 ?引 ?言
隨著電子技術(shù)的發(fā)展,RF智能卡技術(shù)在門禁系統(tǒng)、金融支付等領(lǐng)域得到了廣泛的應(yīng)用。RF智能卡門鎖具有加密強(qiáng)度大、不易被復(fù)制、防偽性好、可靠性高、使用便捷等優(yōu)點(diǎn),RF智能卡門鎖有逐漸取代傳統(tǒng)機(jī)械鑰匙門鎖的趨勢。隨著物聯(lián)網(wǎng)的發(fā)展,使用各種無線技術(shù)把智能門鎖進(jìn)行聯(lián)網(wǎng),給酒店公寓、宿舍等需要對智能門鎖進(jìn)行集中監(jiān)控和管理的場合提供了極大的便利。本文通過使用ZigBee無線技術(shù),進(jìn)行了對RF智能卡門鎖的集中監(jiān)控和管理系統(tǒng)的設(shè)計(jì)。
1 ?系統(tǒng)概述
1.1 ?系統(tǒng)組成
智能門鎖系統(tǒng)主要分為3部分:終端門鎖、無線網(wǎng)關(guān)和服務(wù)平臺(tái)軟件。終端門鎖使用ZigBee無線通信把各種刷卡信息通過無線網(wǎng)關(guān)上報(bào)到服務(wù)平臺(tái)軟件,系統(tǒng)管理員使用服務(wù)平臺(tái)軟件通過無線網(wǎng)關(guān)把開鎖白名單下發(fā)到終端門鎖或執(zhí)行遠(yuǎn)程開鎖等操作。無線網(wǎng)關(guān)設(shè)計(jì)為同時(shí)支持4通道的ZigBee無線網(wǎng)絡(luò),即一個(gè)無線網(wǎng)關(guān)可同時(shí)支持4個(gè)不同信道的終端門鎖接入,大大提高了終端門鎖的接入容量。系統(tǒng)組成如圖1所示。
1.2 ?系統(tǒng)的主要功能
智能門鎖系統(tǒng)包括如下功能:(1)終端門鎖根據(jù)存儲(chǔ)的開鎖白名單,只允許白名單的智能卡開鎖,非授權(quán)卡用戶不能開鎖;(2)終端門鎖向服務(wù)平臺(tái)上報(bào)刷卡流水信息;(3)系統(tǒng)管理員通過服務(wù)平臺(tái)下發(fā)授權(quán)終端門鎖的開鎖白名單;(4)系統(tǒng)管理員通過服務(wù)平臺(tái)執(zhí)行遠(yuǎn)程開鎖;(5)服務(wù)平臺(tái)提供查看各門鎖的刷卡流水信息和非授權(quán)卡的刷卡信息。
1.3 ?系統(tǒng)工作方式
終端門鎖具有地址和信道兩組撥碼開關(guān),終端門鎖在安裝前先通過撥碼開關(guān)設(shè)置門鎖的地址和使用的通信信道。終端門鎖上電后,門鎖先向服務(wù)平臺(tái)發(fā)送請求校時(shí)命令,校時(shí)成功后,門鎖進(jìn)入休眠模式。門鎖設(shè)置RF讀卡模塊定時(shí)1秒喚醒一次,進(jìn)行低功耗尋卡,用于識(shí)別用戶刷卡開門行為,當(dāng)檢測到開鎖白名單里的智能卡時(shí),控制開鎖機(jī)構(gòu)執(zhí)行開鎖,并把當(dāng)前這條開鎖信息和時(shí)間戳保存到存儲(chǔ)器里。
終端門鎖在上報(bào)校時(shí)命令給服務(wù)平臺(tái)軟件時(shí),服務(wù)平臺(tái)根據(jù)管理的門鎖數(shù)量、門鎖的地址、門鎖的無線喚醒周期等給每個(gè)終端門鎖分配一個(gè)獨(dú)立的無線傳輸時(shí)間片,讓每個(gè)終端門鎖在上報(bào)喚醒報(bào)文和刷卡流水等信息時(shí)達(dá)到分時(shí)復(fù)用的效果,避免多個(gè)終端門鎖同時(shí)上報(bào)數(shù)據(jù)造成無線信號(hào)的沖突。根據(jù)工程經(jīng)驗(yàn),系統(tǒng)給終端門鎖設(shè)置的喚醒周期為5秒,即門鎖會(huì)根據(jù)分配的時(shí)間片定時(shí)5秒被喚醒一次,門鎖喚醒后如果有刷卡流水信息則上報(bào)流水信息給服務(wù)平臺(tái),否則就上報(bào)喚醒報(bào)文,服務(wù)平臺(tái)接收到刷卡流水信息或喚醒報(bào)文后,給門鎖回復(fù)應(yīng)答信息,回復(fù)的應(yīng)答信息里可包含給門鎖下發(fā)的開鎖白名單和遠(yuǎn)程開鎖指令。
無線網(wǎng)關(guān)是連接終端門鎖和服務(wù)平臺(tái)的橋梁,負(fù)責(zé)把無線數(shù)據(jù)報(bào)文轉(zhuǎn)換成以太網(wǎng)數(shù)據(jù)報(bào)文。為使信號(hào)能覆蓋得更廣,本系統(tǒng)采用多個(gè)無線網(wǎng)關(guān)同時(shí)部署重疊覆蓋的方式,在終端門鎖上報(bào)數(shù)據(jù)時(shí),在信號(hào)覆蓋范圍內(nèi)的無線網(wǎng)關(guān)能同時(shí)收到同一個(gè)終端門鎖的數(shù)據(jù)報(bào)文,無線網(wǎng)關(guān)對門鎖數(shù)據(jù)報(bào)文經(jīng)過協(xié)議轉(zhuǎn)換后,并把無線網(wǎng)關(guān)接收終端門鎖的無線信號(hào)強(qiáng)度附帶到數(shù)據(jù)報(bào)文里并轉(zhuǎn)發(fā)到服務(wù)平臺(tái),服務(wù)平臺(tái)在從多個(gè)無線網(wǎng)關(guān)接收到相同的數(shù)據(jù)報(bào)文時(shí),根據(jù)每個(gè)相同報(bào)文附帶的信號(hào)強(qiáng)度,選擇信號(hào)強(qiáng)度最好的無線網(wǎng)關(guān)給終端門鎖進(jìn)行回復(fù)。采用這種多個(gè)無線網(wǎng)關(guān)同時(shí)覆蓋部署的方式,使現(xiàn)場施工調(diào)試難度降低,而且當(dāng)后期如果信號(hào)受到干擾導(dǎo)致網(wǎng)關(guān)覆蓋范圍變小時(shí),可隨時(shí)增加無線網(wǎng)關(guān)的部署,而無須改變整個(gè)系統(tǒng)結(jié)構(gòu)。
2 ?系統(tǒng)設(shè)計(jì)
2.1 ?終端門鎖的設(shè)計(jì)
2.1.1 ?終端門鎖硬件設(shè)計(jì)
終端門鎖的硬件構(gòu)成包括微控制器MCU、門鎖執(zhí)行機(jī)構(gòu)、RF讀卡模塊、ZigBee無線模塊等,終端門鎖設(shè)計(jì)框圖如圖2所示。
終端門鎖的微控制器采用飛思卡爾的Cortex-M0+處理器MKL26Z128,該處理器內(nèi)置有RTC(實(shí)時(shí)時(shí)鐘),當(dāng)處理器以能通過RTC喚醒的LLS模式工作時(shí)的功耗約為1.98μA,能滿足終端門鎖利用RTC實(shí)時(shí)時(shí)鐘實(shí)現(xiàn)分時(shí)復(fù)用的功能,并且休眠電流很小,降低了整個(gè)終端門鎖的功耗。
讀卡器模塊芯片采用中科微的超低功耗13.56M芯片SI522,該讀卡器模塊支持ISO/IEC 14443 A/MIFARE標(biāo)準(zhǔn),模塊內(nèi)部集成低功耗自動(dòng)尋卡與定時(shí)喚醒功能,尋卡過程無需MCU操作,尋卡成功通過中斷喚醒MCU。
ZigBee模塊芯片采用NXP的JN5161芯片,該模塊在深度休眠模式下功耗極低,約為209nA,發(fā)射功率為2.5dBm。
存儲(chǔ)器采用一片2M的SPI Flash用于存儲(chǔ)門鎖的開鎖白名單及未上報(bào)的刷卡流水信息。SPI Flash的電源使用MOS管控制,當(dāng)SPI Flash不需要操作時(shí),MCU通過控制MOS管關(guān)閉Flash的電源,從而降低系統(tǒng)的整體功耗。
2.1.2 ?終端門鎖軟件設(shè)計(jì)
門鎖與服務(wù)平臺(tái)軟件間的交互協(xié)議包括:RTC校時(shí)、刷卡流水上報(bào)、喚醒報(bào)文上報(bào)、開鎖白名單下發(fā)、遠(yuǎn)程開鎖等命令幀,各命令幀的流向圖如圖3所示。
終端門鎖與無線網(wǎng)關(guān)間采用IEEE 802.15.4 ZigBee標(biāo)準(zhǔn)協(xié)議幀進(jìn)行傳輸,傳輸?shù)膸袷饺绫?所示。
終端門鎖與服務(wù)平臺(tái)軟件間的交互協(xié)議存放在ZigBee協(xié)議幀的MAC層數(shù)據(jù)里,交互協(xié)議的報(bào)文幀格式如表2所示。
交互協(xié)議的幀頭使用一個(gè)字節(jié)0xA5表示數(shù)據(jù)幀開始;幀類型包括校時(shí)幀(數(shù)值為0x01)、喚醒報(bào)文幀(數(shù)值為0x 02)和刷卡報(bào)文幀(數(shù)值為0x03);幀內(nèi)容長度和幀內(nèi)容根據(jù)幀類型字段填充;幀尾使用一個(gè)字節(jié)0x5A表示數(shù)據(jù)幀結(jié)束。
2.2 ?無線網(wǎng)關(guān)的設(shè)計(jì)
2.2.1 ?無線網(wǎng)關(guān)硬件設(shè)計(jì)
無線網(wǎng)關(guān)的硬件構(gòu)成包括帶網(wǎng)絡(luò)接口的MCU、多路ZigBee無線模塊、工作指示燈等,其設(shè)計(jì)框圖如圖4所示。
無線網(wǎng)關(guān)的微控制器采用NXP的Cortex-M3處理器LPC1778,該處理器具有1路的以太網(wǎng)接口,5路的UART接口,可滿足一個(gè)網(wǎng)關(guān)同時(shí)支持4通道的ZigBee通信的應(yīng)用。
2.2.2 ?無線網(wǎng)關(guān)軟件設(shè)計(jì)
無線網(wǎng)關(guān)負(fù)責(zé)完成終端門鎖和服務(wù)平臺(tái)間的ZigBee報(bào)文和以太網(wǎng)報(bào)文交互協(xié)議的轉(zhuǎn)換工作。
終端門鎖上報(bào)數(shù)據(jù)信息時(shí),無線網(wǎng)關(guān)把終端門鎖發(fā)送的ZigBee通訊報(bào)文MAC層的交互協(xié)議剝離出來,并在交互協(xié)議上填充門鎖地址、無線網(wǎng)關(guān)地址及當(dāng)前無線報(bào)文的信號(hào)強(qiáng)度三個(gè)協(xié)議字段。經(jīng)過無線網(wǎng)關(guān)轉(zhuǎn)換后的交互協(xié)議如表3所示。
無線網(wǎng)關(guān)把轉(zhuǎn)換后的交互協(xié)議通過以太網(wǎng)發(fā)送到服務(wù)平臺(tái)軟件,服務(wù)平臺(tái)軟件根據(jù)多個(gè)無線網(wǎng)關(guān)上報(bào)的信息幀,通過門鎖地址和幀內(nèi)容兩個(gè)協(xié)議字段剔除相同的報(bào)文幀,并根據(jù)不同網(wǎng)關(guān)上傳的報(bào)文幀里的信號(hào)強(qiáng)度字段,評判出上報(bào)信息的門鎖與哪個(gè)網(wǎng)關(guān)的通信質(zhì)量是最好的,選擇通信質(zhì)量最好的網(wǎng)關(guān)給門鎖回復(fù)應(yīng)答報(bào)文。
2.3 ?服務(wù)平臺(tái)的設(shè)計(jì)
服務(wù)平臺(tái)軟件采用MVC的設(shè)計(jì)模型,包括模型層、視圖層和控制層。模型層是應(yīng)用程序中用于處理應(yīng)用程序數(shù)據(jù)邏輯的部分,通常模型對象負(fù)責(zé)在數(shù)據(jù)中存取數(shù)據(jù);視圖層是應(yīng)用程序中處理數(shù)據(jù)顯示的部分,通常視圖是依據(jù)模型數(shù)據(jù)創(chuàng)建的;控制層是應(yīng)用程序中處理用戶交互的部分,通??刂破髫?fù)責(zé)從視圖讀取數(shù)據(jù),控制用戶輸入,并向模型發(fā)送數(shù)據(jù)。MVC分層有助于管理復(fù)雜的應(yīng)用程序,并同時(shí)簡化了分組開發(fā),使不同的開發(fā)人員可同時(shí)開發(fā)視圖、控制器邏輯和業(yè)務(wù)邏輯。服務(wù)平臺(tái)軟件的MVC框架如圖5所示。
服務(wù)平臺(tái)的前端頁面主要包括用戶登錄界面、查詢刷卡流水界面、授權(quán)界面及遠(yuǎn)程開鎖界面等,用戶的刷卡信息存儲(chǔ)到MySQL數(shù)據(jù)庫中。系統(tǒng)管理員登錄后可根據(jù)門鎖所在的房間號(hào)和日期查詢門鎖的刷卡信息。服務(wù)平臺(tái)連接智能卡讀卡器,可把讀取到的卡信息下發(fā)到指定的門鎖,作為開鎖白名單。
3 ?系統(tǒng)性能
3.1 ?系統(tǒng)容量
一幀ZigBee報(bào)文的傳輸時(shí)間約為10ms,門鎖和服務(wù)平臺(tái)完成一次交互需要傳輸2幀ZigBee報(bào)文,傳輸時(shí)間約為20ms,考慮到數(shù)據(jù)有丟包重傳的情況出現(xiàn),系統(tǒng)分配給終端門鎖的時(shí)間片為100ms,終端門鎖的喚醒上報(bào)周期為5s,即單個(gè)信道的ZigBee網(wǎng)絡(luò)最多可管理的終端門鎖數(shù)量為:
單信道終端門鎖數(shù)量==50個(gè)。
本系統(tǒng)的無線網(wǎng)關(guān)采用四信道ZigBee的設(shè)計(jì)方案,4個(gè)信道最多可管理的終端門鎖數(shù)量為50*4=200個(gè)。
ZigBee網(wǎng)絡(luò)可用的信道總共有16個(gè),采用每4個(gè)信道作為一組網(wǎng)絡(luò),把ZigBee的16個(gè)信道不重復(fù)使用的話最多可管理的終端門鎖數(shù)量為200*4=800個(gè)。
3.2 ?系統(tǒng)功耗
終端門鎖休眠電流約為6μA,工作電流約為22mA,每間隔5秒喚醒的工作時(shí)間為100ms,按照電池容量為2450mAh計(jì)算,終端門鎖的使用時(shí)長為:
使用時(shí)長=()=20171300s。
轉(zhuǎn)換成天數(shù)為:使用時(shí)長==233天。
4 ?結(jié) ?論
本文通過對智能卡門鎖系統(tǒng)中終端門鎖、無線網(wǎng)關(guān)和服務(wù)平臺(tái)的軟硬件設(shè)計(jì)方案介紹,實(shí)現(xiàn)了智能卡門鎖通過ZigBee無線技術(shù)進(jìn)行聯(lián)網(wǎng),并根據(jù)方案的設(shè)計(jì)特點(diǎn)分析并計(jì)算系統(tǒng)管理終端門鎖的容量及門鎖持續(xù)使用的時(shí)長,為智能卡門鎖進(jìn)行集中監(jiān)控和管理提供了合理的設(shè)計(jì)方案。方案中實(shí)現(xiàn)的多個(gè)網(wǎng)關(guān)重疊覆蓋部署的方式也為其他的無線組網(wǎng)應(yīng)用提供了有利的參考。
參考文獻(xiàn):
[1] 吳葉蘭.智能卡表技術(shù)與應(yīng)用 [M].北京:機(jī)械工業(yè)出版社,2012:23-56.
[2] 杜軍朝,劉惠,劉傳益,等.ZigBee技術(shù)原理與實(shí)戰(zhàn) [M].北京:機(jī)械工業(yè)出版社,2015:48-92.
[3] 周立功.面向AMetal框架和接口的C編程 [M].北京:北京航空航天大學(xué)出版社,2018:509-580.
[4] 周立功.面向AWorks框架和接口的C編程(上) [M].北京:北京航空航天大學(xué)出版社,2018:78-81.
[5] 孫鑫.Servlet/JSP深入詳解 [M].北京:電子工業(yè)出版社,2019:20-72.
作者簡介:陳劍棟(1982-),男,漢族,廣東廣州人,嵌入式軟件工程師,工學(xué)學(xué)士,研究方向:嵌入式軟件、無線通信。