閆昊陽++楊森
摘 要針對目前電子密碼鎖安全性低和易用性差的問題,本文基于智能手機設計了一款無線電子密碼鎖。系統(tǒng)采用STC89C51單片機作為主控芯片,通過C語言編寫程序來驗證用戶輸入的密碼是否與存儲芯片中的密碼一致,并做出繼電器通電及蜂鳴器報警等反饋。用戶可通過智能手機等無線藍牙遙控方式進行解鎖加密等功能,為生活中的安全加密需求提供了良好的解決方案。
【關鍵詞】密碼鎖 智能手機 STC89C51 藍牙遙控
引言作為論文的開端,應以簡短的篇幅介紹論文的寫作背景和目的,以及相關領域內(nèi)前人所做的工作和研究的概況,說明本研究與前人工作的關系,目前研究的熱點、存在的問題及作者工作的意義。引言不應與摘要雷同也不應是摘要的注釋。引言一般應與結(jié)論相呼應,在引言中提出的問題,要在結(jié)論中應有解答,但要絕對避免與結(jié)論雷同。不應過多敘述同行熟知的及教科書中的常識性內(nèi)容,確有必要提及他人的研究成果和基本原理時,只需以參考引文的形式標出即可。目前,電子密碼鎖的種類繁多、應用廣泛,但其并不能完全取代傳統(tǒng)的機械鎖,究其原因主要是各類電子密碼鎖本身技術所限,不能完全滿足人們的需求。筆者對目前市場上的電子密碼鎖進行了分析,發(fā)現(xiàn):以單片機為主控模塊,采用藍牙或者紅外信號傳輸?shù)姆绞竭M行無線操控的電子密碼鎖,控制器多為無線遙控器,不同的密碼鎖需要匹配不同的遙控器,使用和攜帶很不方便;應用數(shù)字鍵盤,通過手動輸入密碼控制的電子密碼鎖,由于密碼鍵盤暴露在外,存在潛在的安全隱患,即不法之徒可以通過多此嘗試破解密碼;通過指紋識別的電子密碼鎖,由于指紋識別技術要求較高,因此成本過高,不容易普及;且不具便捷性。綜上所述,筆者對電子密碼鎖進行好了改進設計,使用智能手機作為無線遙控設備通過紅外線發(fā)射裝置輸入密碼遙控解鎖,這樣既能免去鑰匙、卡片需要攜帶的煩惱,又能省去外置的密碼輸入鍵盤,很好的解決了上述的問題,設計在低成本的基礎上保證了使用的安全性、便捷性。
1 無線電子密碼鎖的總體設計
基于智能手機的無線電子密碼鎖的硬件電路分為兩個主要功能模塊:主控模塊和無線通信模塊。
1.1 主控模塊設計
由于其功能強、體積小、可靠性高、造價低和開發(fā)周期短等優(yōu)點,基于單片機的設計在實時檢測和自動控制領域中得到了廣泛的應用。本設計根據(jù)功耗及成本的考慮,主控模塊選擇了STC89C51單片機,其基本功能如表1所示。
STC89C51是一種低功耗、高性能CMOS 8位微控制器,使用Atmel 公司高密度、非易失性存儲器技術制造,與工業(yè)80C51 產(chǎn)品指令和引腳完全兼容,因而STC89C51在嵌入式控制應用系統(tǒng)中得到廣泛應用。
1.2 無線通信模塊
近幾年,隨著智能家居技術的發(fā)展,各種短距離無線通信技術成為了熱門的研究對象, 其中WiFi(Wireless Fidelity),ZigBee和Bluetooth是當前連接智能家居產(chǎn)品的主要手段。
ZigBee是IEEE 802.15.4協(xié)議的簡稱,主要適合用于自動控制和遠程控制領域,可以嵌入各種設備,但是由于傳輸速率低,且目前絕大部分智能手機中不配置該模塊,因此不適用于本設計。
WiFi是一種允許電子設備連接到一個無線局域網(wǎng)的技術,是IEEE 802.11協(xié)議的簡稱,俗稱無線寬帶。WiFi支持數(shù)據(jù)、圖像、語音和多媒體的短程無線傳輸,傳輸速率可達54Mb/s,覆蓋范圍可達百米。但由于功耗和體積太大,而且節(jié)點數(shù)量太多,不符合密碼鎖的設計。
Bluetooth(藍牙協(xié)議),是一種無線技術標準,可實現(xiàn)固定設備、移動設備和樓宇個人域網(wǎng)之間的短距離數(shù)據(jù)交換。藍牙使用跳頻技術,將傳輸?shù)臄?shù)據(jù)分割成數(shù)據(jù)包,通過79個指定的藍牙頻道分別傳輸數(shù)據(jù)包。每個頻道的頻寬為1 MHz。藍牙是基于數(shù)據(jù)包、有著主從架構的協(xié)議。采用分散式網(wǎng)絡結(jié)構以及快跳頻和短包技術,支持點對點及點對多點通信,工作在全球通用的2.4GHz ISM(即工業(yè)、科學、醫(yī)學)頻段。
因此經(jīng)過比較,由于藍牙無線通信更容易實現(xiàn),更容易操作,體積小、便于集成,而且具有抗干擾性強、單一連接性的特點,符合密碼鎖的設計要求,因此本設計選擇HC-06藍牙模塊實現(xiàn)手機遠程控制。HC-06是專為智能無線數(shù)據(jù)傳輸而開發(fā)的一款藍牙模塊, 遵循藍牙V2.0 + EDR藍牙規(guī)范,傳輸距離>20米,最高傳輸速率達2.1M,支持SPP藍牙串口協(xié)議,并支持UART接口,具有低成本、小體積、收發(fā)靈敏性高等優(yōu)點,只需配備少許的外圍元件就能實現(xiàn)其強大功能。
1.3 系統(tǒng)功能設計
本設計利用AT89C51芯片來實現(xiàn)51單片機模塊功能,完成數(shù)碼管、發(fā)光二極管的實現(xiàn),同時利用HC06藍牙模塊來實現(xiàn)手機遠程控制功能。其設計總框圖如圖1所示。
其工作原理為:通過在51單片機開發(fā)板對AT89C52芯片寫入程序,建立單片機與藍牙模塊之間的串口通信,并通過手機輸入指令輸入到藍牙模塊之中,通過程序利用單片機串口將藍牙與51單片機進行通信,并控制單片機的引腳,從而控制外圍電路的LED燈的亮滅和數(shù)碼管的功能實現(xiàn)。
主要實現(xiàn)如下功能:
(1)設計開鎖密碼為六位密碼的電子密碼鎖;
(2)實現(xiàn)輸入密碼錯誤次數(shù)超過限定的三次即將電子密碼鎖鎖定的功能;
(3)用戶可以自定義系統(tǒng)解鎖密碼,并且可以多次進行修改;
(4)設計藍牙接收模塊,接收智能手機發(fā)送的藍牙信號并由單片機來處理;
(5)設計外接電磁繼電器模塊,控制鎖芯。
2 系統(tǒng)主要電路設計實現(xiàn)
2.1 復位及振蕩電路
單片機中的復位及振蕩電路如圖2所示。
復位電路由上電復位和按鍵復位兩部分組成。上電復位:在復位引腳 RST 上連接一個電容到 VCC,連接一個電阻到 GND, 進而形成RC 充放電回路,保證在上電時 RST 腳上有足夠時間的高電平進而使單片機復位。按鍵復位:在復位電容上并聯(lián)一個開關,當開關按下時電容被放電、RST被拉到高電平,由于電容的充電,會保持一段時間的高電平從而使單片機復位。endprint
MCS51的振蕩源使用11.0592MHz的晶體振蕩器。由于單片機內(nèi)部帶有振蕩電路,因此外部只要連接一個晶振和兩個容量在15pF至50pF之間的電容即可。
2.2 密碼存儲模塊
由于需要保證系統(tǒng)正確密碼的可靠而且掉電不丟失,所以需要一塊外部存儲器來保存它,經(jīng)過分析后選用了AT24C02這一芯片來作為外部存儲裝置。通電后,它可以工作在電壓為2.5~5.5 V的環(huán)境下,每次最多只能寫入8位數(shù)據(jù)來保證效率提高速度,并且它有很強的抗干擾能力,以防由于電壓不穩(wěn)定造成的數(shù)據(jù)丟失。AT24C02具有256×8位存儲空間,完全滿足存儲一組6位的數(shù)字密碼的需求。同時,它大于一萬次的可擦寫能力為用戶進行修改密碼提供了完善的功能保證。當進行一個字節(jié)數(shù)據(jù)的讀出或者寫入時,芯片片內(nèi)的地址寄存器會進行加1計數(shù)操作,以此來保證下一個存儲單元數(shù)據(jù)的讀寫,標識準確的順序。芯片內(nèi)采用了二線制總線系統(tǒng),采用主/從機雙向通信方式,通過串行數(shù)據(jù)線及串行時鐘線在連到總線上的器件之間進行可靠的傳輸數(shù)據(jù),并完成每個元器件的識別工作。主從機都可以工作于接收器和發(fā)送器狀態(tài),主機通過產(chǎn)生串行時鐘信號并發(fā)出控制字,控制總線的傳送方向,產(chǎn)生開始和停止的條件。它的控制字由8位的二進制數(shù)構成,當開始信號發(fā)出,隨后主機就會發(fā)出控制字選擇從機,并控制總線傳送的方向。其接線如圖3所示。
2.3 報警模塊
報警模塊在整個設計中的作用是當輸入時做出提示以及輸入錯誤時進行警告。當密碼鎖通電后,報警模塊會進行初始化,這時如果用戶進行密碼輸入,每進行一次按鍵就會發(fā)聲一次提醒輸入有效;另一種情況則是輸入密碼的錯誤次數(shù)大于三次時發(fā)出連續(xù)的聲音進行報警,從另一方面提升密碼鎖的安全性。電路中的三極管收到引腳電平信號導通后就發(fā)出聲音。
2.4 繼電器控制模塊
該模塊主要是為了實現(xiàn)外接機械鎖達到真實解鎖這一功能,所以需要用到一款微型的電磁繼電器。繼電器主要由銜鐵、線圈、鐵芯、彈簧片組成,彈簧片可以外接各式各樣的機械鎖。它利用了電磁效應的原理,當電路中產(chǎn)生的電流流經(jīng)繼電器內(nèi)部的線圈時,產(chǎn)生的電磁力會隨電流大小而動態(tài)的變化,當達到一定的值會抵消掉彈簧對銜鐵的拉力讓它吸向鐵芯,控制觸點的開閉,從而決定了電路的導通來驅(qū)動鎖芯。電磁吸力的產(chǎn)生是主要是由電路中電壓電流確定的,所以在通電的情況下繼電器才會起作用,如果發(fā)聲斷電,彈起的鎖芯就會在彈簧的拉力下返回原位置,鎖就會變回上鎖狀態(tài)。
3 系統(tǒng)編程設計
系統(tǒng)總流程圖如圖4所示。
首先系統(tǒng)初始化,系統(tǒng)開始運行,當手機輸入數(shù)字密碼時,數(shù)碼管會以加密的方式顯示輸入狀態(tài),若是6位密碼輸入正確,則LED亮起(代表鎖打開),否則熄滅。在LED燈亮起的前提下,可以輸入命令“c”進入更改密碼模式,然后重新輸入新密碼,此時數(shù)碼管顯示的是不加密的明文。輸入新密碼完成之后輸入命令“d ”對新密碼進行確認,所有的操作均在手機端的APP中完成。在手機按鍵操作之下點擊“close”可以直接關閉密碼鎖,點擊“retryc”能夠重新開始輸入密碼。本密碼鎖能實現(xiàn)掉電密碼保存功能,即使斷電重啟也不會重新恢復初始密碼,大大提高了電子密碼鎖的實用性和安全性。而更改密碼這一功能是在高級模式下更改的,一般人即使知道了密碼但是不知道更改密碼的命令是無法更改密碼的,安全保障更上一層。
注:更改密碼為此密碼鎖的高級模式,普通權限下使用的是“鍵盤模式”。
本系統(tǒng)采用C語言作為編程語言,Keil 4作為軟件開發(fā)平臺,并對單片機系統(tǒng)進行調(diào)試修改。
其中軟件部分主要需要完成的是主程序的編程、初始化程序的編程、EPROM讀寫程序的編程、密碼設置程序的編程、LCD顯示程序的編程、鍵盤掃描程序的編程,以及啟動程序、關閉程序和報警程序的編程。
4 系統(tǒng)仿真與調(diào)試
4.1 程序調(diào)試與仿真
經(jīng)過以上的設計和分析,在進行硬件系統(tǒng)組裝、軟件編程后,對系統(tǒng)進行調(diào)試。
首先對軟件編譯,編譯鏈接成功之后,生成二進制HEX文件。
程序檢測無誤后,在Proteus軟件中將各個模塊連接,進行仿真測試
仿真測試成功之后,將編寫的軟件燒錄到單片機的內(nèi)存中,這樣系統(tǒng)上電時軟、硬件配合才能完美運行。
4.2 硬件測試
(1)用手機連上HC06模塊的藍牙之后,在手機APP中的鍵盤模式里面輸入初始密碼“012345”并觀察單片機的變化,測試結(jié)果:數(shù)碼管上顯示輸入密碼的狀態(tài),6位密碼均被用“—”進行加密,從手機APP的圖上面可以看出輸入的密碼為“012345”,密碼輸入正確,數(shù)碼管下方的一排LED燈亮起。
(2)在手機APP的命令模式中輸入“c”(在開鎖的狀態(tài)下),設置新密碼為“201778”,此時新密碼設置的過程為明文在數(shù)碼管上顯示。然后輸入“d”對新密碼進行確認。
(3)進入APP鍵盤模式,點擊“close”按鈕,關閉密碼鎖,然后重新掉電啟動密碼鎖,輸入“012345”舊密碼,數(shù)碼管右下方的LED燈沒有亮起,說明輸入密碼錯誤。
(4)點擊APP鍵盤模式里面的“retry”重新輸入密碼。輸入密碼為“201778”結(jié)果顯示輸入正確的新密碼之后可以成功開啟密碼鎖,而原始的密碼則不能。說明密碼更改成功。
5 結(jié)論
由于智能手機的使用已很普及,幾乎人手一部,而且每天都會隨身攜帶。因此筆者通過設計應用智能手機來解鎖,可以實現(xiàn)一機多用,既能免去鑰匙、IC卡需要攜帶的煩惱,又能省去外置的密碼輸入鍵盤,而且成本較低,易于實現(xiàn),很好的克服了上述各類密碼鎖存在的問題。
綜上所述,本設計具有無線操控、自由修改密碼、錯誤報警以及外接多類型實體鎖等多種功能,兼具造價低、安全性、便捷性等優(yōu)點,具有一定的使用、推廣價值。endprint
參考文獻
[1]崔巖, 吳國興, 顧媛媛等.基于FPGA的紅外遙控密碼鎖的設計[J].電子技術應用,2013,39(11):44-46.
[2]魏雅,杜云.基于單片機的電子密碼鎖設計[J].電子設計工程,2016,24(15).
[3]Cai Meiqin.MSC-51 series single-chip microcomputer system and its application[M].高等教育出版社,2011.
[4]余飛.多智能小車一致性分析及其控制系統(tǒng)硬件平臺研究[D].西安電子科技大學,2011.
[5]秦莉,岳文秀,楊偉東.基于DS18B20的多點溫度測量體系的設計與仿真[J].實驗室科學,2012,15(01):104-107.
[6]趙磊,李雨珊,桂桐等.近距離無線通信技術現(xiàn)狀研究[J].科技視界,2015(29):100-100.
[7]解春玉,陳玉鵬.幾種無線通信技術在地震儀器中的應用[J].物探裝備,2016,26(04).
[8]汪國強,李尚甫,王飛等.基于FPGA的四位電子密碼鎖設計與實現(xiàn)[J].無線電通信技術,2016,42(04).
[9]楊斐,黃軍,康浩.多功能電子密碼鎖的VHDL設計[J].現(xiàn)代電子技術,2013(22):143-146.
[10]董慶賀.基于GSM的防盜密碼鎖系統(tǒng)設計與實現(xiàn)[J].電子技術應用,2011,37(09):64-66.
[11]任葛榮.可編程智能電子鎖控制器的設計與實現(xiàn)[D].華南理工大學,2011.
[12]陳進超.新型無線遙控電子密碼鎖系統(tǒng)的研究[D].碩博學位論文,2012.
[13]曹文俊,王少杰.基于STC12C5A60S2單片機的電子密碼鎖設計[J].電子世界,2017(09):42.
[14]魏雅,杜云.基于單片機的電子密碼鎖設計[J].電子設計工程,2016,24(15):165-167.
[15]林歡,許建明,陳炯明.基于單片機的電子密碼鎖設計[J].電子世界,2016(10):176.
[16]孫琪皓.基于圖像識別的智能電子鎖系統(tǒng)設計[D].湖南科技大學,2016.
作者單位
山西大學商務學院信息學院 山西省太原市 030031endprint