基于Zigbee的智能門鎖控制終端設(shè)計(jì)
作者 沈凡 席飛 杭磊 陳城 淮陰工學(xué)院 電子信息工程學(xué)院(江蘇 淮安223001)
本文引用地址:http://m.butianyuan.cn/article/201810/393370.htm摘要:本文介紹了基于Zigbee通信協(xié)議的智能門鎖,從低成本、低功耗的角度出發(fā),設(shè)計(jì)了一種具有實(shí)用價(jià)值的智能門鎖控制終端,智能門鎖控制終端以CC2530作為處理器,以Zigbee協(xié)議棧為通信載體,設(shè)計(jì)了相應(yīng)外圍電路,如門鎖驅(qū)動(dòng)電路、液晶顯示電路、鍵盤輸入電路和RFID讀卡器電路。實(shí)現(xiàn)了以RFID讀取卡號(hào)與密碼輸入的方式采集身份信息,將身份信息發(fā)送至上位控制機(jī)進(jìn)行身份核實(shí),上位控制器返回核實(shí)信息結(jié)果,智能門鎖控制終端根據(jù)核實(shí)后的結(jié)果進(jìn)行開關(guān)門操作及液晶顯示頁面的更新。
0 引言
現(xiàn)代人的生活越來越信息化,人們對(duì)于生活質(zhì)量的要求也越來越高,家庭房屋安全就變成頭等大事,現(xiàn)在的犯罪分子盜竊手段也在日益進(jìn)步,入室偷竊也是頻繁發(fā)生,對(duì)于偷竊問題目前還很難做到完全杜絕,只能夠通過提升家庭安防技術(shù),來提高安全系數(shù)?,F(xiàn)在市場(chǎng)上的一些智能門鎖設(shè)備,都是自帶處理功能的,很難抵御不法分子的盜竊手段。所以無線通信方式控制的智能門鎖應(yīng)運(yùn)而生,他的優(yōu)點(diǎn)在于不進(jìn)行數(shù)據(jù)對(duì)比處理,只做數(shù)據(jù)采集以及數(shù)據(jù)傳輸,更為安全可靠,而且無線智能門鎖使用較為方便,不需要大量布線;而且可以和智能家居控制系統(tǒng)相結(jié)合,以提高家庭安防性能 [1-2]。
1 Zigbee技術(shù)
1.1 Zigbee無線通信技術(shù)
Zigbee技術(shù)是一種短距離、低功耗的無線網(wǎng)絡(luò)通訊技術(shù),其采用了IEEE802.15.4協(xié)議規(guī)范,具有低數(shù)據(jù)速率、低功耗、低成本、安全可靠,具有自組網(wǎng)和自恢復(fù)能力等優(yōu)點(diǎn)。本文選用的是TI公司的第二代片上系統(tǒng)CC2530,相比以前的產(chǎn)品,CC2530具有更優(yōu)越的RF性能,支持多種協(xié)議如ZigbeePRO、ZigbeeRF4CE等。本文介紹的智能門鎖控制終端使用到CC2530作為處理器,用來驅(qū)動(dòng)液晶顯示電路、AD模擬鍵盤以及RFID讀取控制電路,以達(dá)到優(yōu)化智能門鎖的目的,從而降低成本。
1.2 Zigbee無線傳輸優(yōu)勢(shì)與其余方式的比較
本文采用Zigbee技術(shù)進(jìn)行無線通信,是因?yàn)橄啾扔谒{(lán)牙技術(shù)而言Zigbee傳輸距離比藍(lán)牙遠(yuǎn)的多, WiFi相比Zigbee傳輸速率快但是耗電量較高,WiFi適合快速發(fā)送數(shù)據(jù),而Zigbee相比于藍(lán)牙雖然傳輸速率慢,但是功耗比藍(lán)牙低,通過電池供電就能維持較長時(shí)間,適合傳輸數(shù)據(jù)量不大、傳輸不頻繁的設(shè)備。正因?yàn)閆igbee的功耗低和數(shù)據(jù)傳輸不頻繁的特點(diǎn),所以采用Zigbee無線傳輸技術(shù)。
2 系統(tǒng)結(jié)構(gòu)
2.1 智能門鎖控制終端系統(tǒng)結(jié)構(gòu)
本文智能門鎖控制終端內(nèi)部包括:ZigbeeCC2530通信模塊、RFID閱讀器、按鍵鍵盤和19232顯示液晶,系統(tǒng)結(jié)構(gòu)圖如圖1所示。
使用ZigbeeCC2530讀取RFID卡號(hào)與鍵盤輸入的密碼數(shù)據(jù),將讀取的RFID卡號(hào)數(shù)據(jù)或密碼數(shù)據(jù)打包成數(shù)據(jù)包,通過Zigbee通信模塊無線傳輸數(shù)據(jù),將數(shù)據(jù)傳輸至終端設(shè)備,終端設(shè)備返回?cái)?shù)據(jù)對(duì)比信息至智能門鎖控制終端,用于是否進(jìn)行開門操作。液晶的主要是用于顯示使用者的當(dāng)前操作狀態(tài)。具體設(shè)計(jì)制作產(chǎn)品如圖2所示。
2.2 硬件設(shè)計(jì)
1)Zigbee處理器電路
本文選用TI公司最新Zigbee芯片CC2530F256作為處理器,以Zigbee協(xié)議棧為通信載體,此芯片射頻組是在2.4GHz頻段,電路圖如圖3所示。
CC2530芯片是最實(shí)用的片上系統(tǒng)首選,不僅成本低而且功耗也很小,是TI公司專門設(shè)計(jì)基于IEEE 802.15.4協(xié)議的Zigbee芯片,這塊芯片上集成了8051內(nèi)核,帶有256 KB的內(nèi)存和8 KB的RAM,足以提供智能門鎖控制終端的信息處理與控制操作[4]。
2)門鎖控制電路
本文智能門鎖控制終端所使用的機(jī)械門鎖為靈性鎖,靈性鎖使用的是步進(jìn)電機(jī)進(jìn)行鎖芯的伸縮控制,由于步進(jìn)電機(jī)的工作電壓是直流12 V,而CC2530的驅(qū)動(dòng)電壓為直流3.3 V,所以本文采用一個(gè)復(fù)合管電路進(jìn)行門鎖的控制,電路圖如圖4所示。
門鎖驅(qū)動(dòng)端口接CC2530的P2_0端口,作用是CC2530可以通過P2_0驅(qū)動(dòng)門鎖電路,發(fā)送一個(gè)低電壓信號(hào)就可控制12 V驅(qū)動(dòng)電機(jī)工作。低電壓信號(hào)控制高電壓信號(hào)也可以采用繼電器來進(jìn)行驅(qū)動(dòng),但是本文為了門鎖功耗、安全性能與門鎖設(shè)計(jì)體積的考慮,采用復(fù)合管電路進(jìn)行門鎖驅(qū)動(dòng)控制。
3)RFID讀卡接口電路
本文采用的RFID讀卡器電路為RC522讀卡器電路,射頻識(shí)別技術(shù)是不需要接觸就可以實(shí)現(xiàn)數(shù)據(jù)通信,它主要是通過交變的電磁場(chǎng)進(jìn)行通信。RC522讀卡器電路是由閱讀器、天線、應(yīng)答器三大部分組成。閱讀器主要是用來讀取應(yīng)答器的信息;天線是在應(yīng)答器與閱讀器之間進(jìn)行數(shù)據(jù)的傳遞;應(yīng)答器主要由耦合電路元件和芯片組成,每一個(gè)應(yīng)答器都有一個(gè)獨(dú)一無二的ID碼,這個(gè)碼在芯片制作的時(shí)候就儲(chǔ)存在芯片的ROM中,無法進(jìn)行更改,智能門鎖設(shè)計(jì)中主要就是利用這個(gè)編碼來確認(rèn)應(yīng)答器的身份。RFID讀卡器與CC2530接口電路圖如圖5所示。
RC522讀卡器部分只用了5個(gè)接口連接到CC2530芯片處理器,SDA是RC522的數(shù)據(jù)接口用來傳輸數(shù)據(jù),連接在CC2530芯片上的P1_7口;SCK是RC522的時(shí)鐘接口,連接在芯片的P0_1口;MOSI是RC522的主輸出從輸入,連接在芯片上的P1_2口;MISO是RC522的主輸入從輸出,連接在芯片上的P0_4接口;RST為RC522的復(fù)位接口,連接在芯片上的P1_3口用來復(fù)位電路。
4)模擬鍵盤電路
本文為了節(jié)省端口數(shù)量,所使用的按鍵采用了分壓式模擬,電路圖如圖6所示。
當(dāng)不同的按鍵被按下后,輸出不同的電壓信號(hào),使用Zigbee自帶的AD轉(zhuǎn)換器,采集電壓信號(hào),根據(jù)不同的電壓值來判定不同的按鍵。根據(jù)計(jì)算可得,二極管鉗制了大約0.6 V電壓,一共13個(gè)200 Ω電阻,理想情況下,大約每個(gè)電阻分的0.2 V電壓,通過CC2530芯片P0_0端口使用AD轉(zhuǎn)換器功能將模擬信號(hào)轉(zhuǎn)化為數(shù)字信號(hào)識(shí)別按鍵。
4)液晶顯示電路
本文中使用的液晶為19232液晶顯示器,液晶顯示器與CC2530之前采用的是串行傳輸?shù)姆绞?,硬件電路連接只需要3根線,與CC2530數(shù)據(jù)傳輸也只需要3個(gè)IO口,占用芯片的引腳少,接口6是液晶顯示屏的使能端,與CC2530芯片的P0_7引腳連接;接口5是液晶顯示屏的數(shù)據(jù)輸入端,與芯片的P0_6引腳連接;接口4是液晶顯示屏的時(shí)鐘輸入端,與芯片的P0_5引腳連接。并且可以通過調(diào)節(jié)RT可變電阻可以調(diào)節(jié)液晶的的對(duì)比度,使液晶顯示屏上的字更加清晰。
2.3 軟件設(shè)計(jì)
1)主流程設(shè)計(jì)
在系統(tǒng)軟件程序設(shè)計(jì)時(shí),選擇IAR公司的IAR Embedded Workbench作為開發(fā)環(huán)境,智能門鎖控制端作為Zigbee無線傳輸網(wǎng)絡(luò)中的一個(gè)終端節(jié)點(diǎn),終端設(shè)備作為一個(gè)協(xié)調(diào)器來工作。主程序流程圖如圖7所示。
首先進(jìn)行各個(gè)部分的初始化操作,如將液晶進(jìn)行初始化以及RFID讀卡器進(jìn)行模式設(shè)置等一些操作,初始化完成后;調(diào)用液晶顯示子函數(shù),顯示歡迎光臨頁面,接著液晶會(huì)根據(jù)不同的狀態(tài)而現(xiàn)實(shí)不同的頁面。接著調(diào)用RFID讀卡程序與按鍵檢測(cè)程序,同時(shí)檢測(cè)讀取RFID卡號(hào)與密碼鍵入,當(dāng)讀取到RFID卡號(hào)或4位密碼后,發(fā)送身份審核數(shù)據(jù)包,并且等待上位終端返回審核結(jié)果,以執(zhí)行門鎖驅(qū)動(dòng)操作。
2)RFID讀卡流程設(shè)計(jì)
RFID讀卡流程圖如圖8所示。
RFID射頻卡放到讀卡器上時(shí),則進(jìn)入讀卡程序。首先是開始尋找RFID卡,讀取RFID序列號(hào),為了RFID的讀卡穩(wěn)定,在程序中設(shè)計(jì)了兩次尋卡過程,當(dāng)兩次讀卡號(hào)為相同時(shí)則會(huì)保存下來。同時(shí)為了避免多張射頻卡同時(shí)放在讀卡器上面時(shí)會(huì)數(shù)據(jù)碰撞,在尋卡結(jié)束后會(huì)進(jìn)行防沖撞檢測(cè),當(dāng)通過防沖撞檢測(cè)后,則確認(rèn)為有效卡號(hào),并將卡號(hào)打包成數(shù)據(jù)包后加密發(fā)送至上位控制器審核身份,等待返回信息,以返回信息來判斷是否進(jìn)行開門操作[5-6]。
3)鍵值讀取流程設(shè)計(jì)
按鍵讀取程序程序設(shè)計(jì)由CC2530處理器不斷檢測(cè)按鍵AD端口的數(shù)據(jù),判斷轉(zhuǎn)換的數(shù)據(jù)是否在有效鍵值內(nèi)的數(shù)據(jù),如果是則將數(shù)據(jù)保存下來,如果連續(xù)保存下16個(gè)相同的有效鍵值后,則可以確認(rèn)為按下了一個(gè)有效按鍵,等待4位密碼輸入完成后,將4位密碼打包成數(shù)據(jù)包加密后發(fā)送給上位控制器,等待審核信息,進(jìn)行開關(guān)門操作。
3 基于密碼本的數(shù)據(jù)加密技術(shù)
本文中為了提高安全性能,所使用的無線傳輸數(shù)據(jù)包是需要數(shù)據(jù)加密的,所采用的數(shù)據(jù)加密方式是基于普通加密方式上的一種升級(jí)版,是為了增加安防的可靠性而設(shè)計(jì)的,將Zigbee傳輸?shù)拇贏SCLL碼數(shù)據(jù)進(jìn)行加密,在我們現(xiàn)實(shí)生活中,普通的加密方式有很多,比如:移位加密、DES和CC2530自帶的AES等;本文采取的數(shù)據(jù)加密方式核心是基于同或及異或的一種加密方式,我們通過將數(shù)據(jù)所需加密的數(shù)據(jù)進(jìn)行一定的加密;所需加密的數(shù)據(jù)可以查詢密碼本得到,密碼本內(nèi)數(shù)據(jù)是通過外部軟件隨機(jī)獲得,寫入到ROM中,為了使加密的數(shù)據(jù)可以達(dá)到更高等級(jí)安全系數(shù),密碼本的數(shù)據(jù)可以更加具有隨機(jī)性,或者可以進(jìn)行多次加密計(jì)算。
本文中所傳輸中的數(shù)據(jù)包是一個(gè)具有16位的字符型數(shù)據(jù)的數(shù)組,格式如圖9所示;其中包括5位發(fā)送者ID位、8位數(shù)據(jù)位、2位加密位和1位結(jié)束位(0xff),加密位即是將5位發(fā)送者ID和8位數(shù)據(jù)位加密,加密程序如圖10所示,2位加密位本文中設(shè)計(jì)的是前者為同或加密,后者為異或加密,具體過程為:首先將同或加密位數(shù)據(jù)在密碼本中查找到真正的有效數(shù)據(jù),本文采用的是雙重提取的方式提取數(shù)據(jù),比如同或位為0時(shí),我們?cè)诿艽a表中查得數(shù)據(jù)為0x67,此時(shí)再次查找0x67位置的數(shù)據(jù)就是真正的有效同或數(shù)據(jù),將有效數(shù)據(jù)與數(shù)據(jù)相同或后,再使用同種方式將后者的異或加密的有效數(shù)據(jù)取出,將同或后的數(shù)據(jù)再進(jìn)行異或操作。操作完成后,即是加密后所需傳輸?shù)臄?shù)據(jù)。解密方式即與加密方式是個(gè)相同操作,即可將數(shù)據(jù)還原。
本次密碼加密設(shè)計(jì)可以多種方式來提高安全性能,比如通過更改密碼本中數(shù)據(jù)位置提高安全性能,密碼本中一共有256個(gè)數(shù)據(jù),即0x00~0xff;通過電腦軟件Excel將256個(gè)數(shù)據(jù)隨機(jī)排列,制作成密碼本,256個(gè)數(shù)據(jù)排列順序有256256的數(shù)據(jù)排列方式。還可以通過增加加密位來提高安全性能,本次設(shè)計(jì)只執(zhí)行了同或和異或兩次運(yùn)算,如增加加密位,再進(jìn)行相應(yīng)運(yùn)算,可以在同或與異或的基礎(chǔ)上添置加減移位等一系列計(jì)算,會(huì)使加密更為安全。
4 結(jié)論
本文設(shè)計(jì)了實(shí)現(xiàn)密碼或者射頻卡打開門鎖,為了能讓它低功耗又能減少浪費(fèi)資源,所以在硬件設(shè)計(jì)時(shí)使用Zigbee與終端設(shè)備進(jìn)行通信連接,使用方便簡單,只需要對(duì)它軟件進(jìn)行設(shè)計(jì),將Z-Stack協(xié)議棧導(dǎo)入到Zigbee核心芯片CC2530中,節(jié)點(diǎn)與協(xié)調(diào)器之間會(huì)實(shí)現(xiàn)自動(dòng)組網(wǎng),即可驅(qū)動(dòng)液晶顯示與RFID讀卡器進(jìn)行顯示與讀卡,而且根據(jù)分壓原理制作的AD式輸入鍵盤,優(yōu)點(diǎn)在于只需要一根線即可檢測(cè)鍵值,減少了不必要的資源浪費(fèi)。還有智能門鎖使用頻率較低,無線信號(hào)傳輸?shù)乃俾薀o需太頻繁,Zigbee無線傳輸足以滿足要求。
參考文獻(xiàn):
[1]邱凌.淺談智能家居[J].網(wǎng)絡(luò)信息技術(shù)應(yīng)用與自動(dòng)化,2008,(5):01-02.
[2]秦茂盛. 基于Zigbee的智能家居系統(tǒng)設(shè)計(jì)[D].太原理工大學(xué),2011.
[3]孫華,李揚(yáng).熱釋電紅外傳感器原理及其應(yīng)用[J].內(nèi)江科技,2010,31(12):116+160.
[4]孫靜,陳佰紅.Zigbee協(xié)議棧及應(yīng)用實(shí)現(xiàn)[J].通化師范學(xué)院學(xué)報(bào),2007(04):35-37.
[5]高金轉(zhuǎn),彭旭鋒,張會(huì)新,等.基于Zigbee無線傳感網(wǎng)絡(luò)的環(huán)境監(jiān)測(cè)系統(tǒng)的設(shè)計(jì)[J].電子器件,2016,39(3):546-550.
[6]羅凱. 基于Zigbee的智能家居控制節(jié)點(diǎn)設(shè)計(jì)與實(shí)現(xiàn)[D].電子科技大學(xué),2013.
本文來源于《電子產(chǎn)品世界》2018年第11期第46頁,歡迎您寫論文時(shí)引用,并注明出處。
評(píng)論