王樂樂 李斌 曹驥龍 夏茳南 周欣欣

摘 要:為解決疫情期間病毒的傳染性對生活造成的不便,文章提出一種零接觸智能密碼鎖的設計,采用數字信號控制和自上而下的模塊化設計思想,以單片機為核心控制器,結合安全性和適用范圍,增強系統的可擴展性和運行的穩定性;通過紅外遙控技術實現零接觸遠程密碼開鎖,降低病毒二次傳染的風險。文章分別論述了對零接觸密碼鎖的設計思路、硬件電路設計、軟件設計。測試結果表明,系統各項功能達到了設計要求。
關鍵詞:電子密碼鎖;遙控;STC89C51
0 ? 引言
隨著科學技術的不斷發展,人們對日常生活中的安全保險器件的要求越來越高。密碼鎖具有安全性高、成本低、功耗低、易操作等優點,通過密碼輸入來控制電路或是芯片工作,從而控制機械開關的閉合,完成開鎖、閉鎖等任務[1-2]。現在應用較廣的電子密碼鎖通常以芯片為核心,其性能和安全性已大大超過了機械鎖。在疫情期間,由于病毒的傳染性與潛伏性,使用傳統的密碼鎖會因過多的接觸而導致很多不必要的麻煩[3-4]。
本文設計了一款零接觸智能密碼鎖,采用紅外遙控的方法,切斷了由于開鎖接觸導致病毒傳染的途徑,有效保障人們在公共場所的健康安全,降低病毒傳染的風險。本系統適用于學校、寫字樓等日常人員活動密集的場所[5]。
1 ? 系統硬件設計
零接觸的實現方式就是將公用的開鎖方式轉化成無線的個人開鎖方式,也就是將傳統的按鍵式密碼鎖更換為遙控式密碼鎖。在使用過程中,每個用戶都將擁有一個密碼鎖遙控器,通過遙控器的按鍵輸入密碼,實施零接觸開鎖。用戶使用時,通過連接單片機的矩陣鍵盤輸入密碼,單片機對用戶輸入的密碼與自己保存的密碼進行對比,從而判斷密碼是否正確,然后控制引腳的高低電平傳到開鎖電路或者報警電路控制開鎖還是報警。
本系統硬件設計主要由單片機核心控制模塊、鍵盤輸入模塊、密碼存儲模塊、紅外遙控模塊、復位模塊、顯示模塊、開鎖模塊等組成。系統結構如圖1所示[3]。
1.1 單片機核心控制模塊
STC89C51是一款低功耗、高性能CMOS8位微控制器,在運算處理上有著八核CPU和使用方便的編碼系統,使得STC89C51為眾多嵌入式控制應用系統提供高靈活、超有效的解決方案。本系統采用STC89C51單片機最小系統作為整個密碼鎖的控制核心,連接所有的功能模塊,將密碼鎖化為一個整體,也同樣在每個功能模塊之間起到連接的作用,它負責接收鍵盤輸入的密碼以及指令,分析密碼是否與密碼庫一致,傳遞指令給開鎖電路,顯示電路[5]。
1.2 鍵盤輸入模塊
本系統采用行列式鍵盤,鍵盤模塊用于輸入數字密碼和進行各種控制功能的實現,如確認、取消輸入、修改密碼等,同時也能減少鍵盤與單片機接口時所占用的I/O線的數目。在按鍵比較多的時候采用這樣方法,能夠有效的提高I/O利用率。通過每一條水平線和垂直線的交叉處設立一個按鍵,利用這種行列式矩陣結構只需要N條行線和M條列線,即可組成具有N×M個按鍵的鍵盤。
1.3 存儲模塊
用于存儲密碼鎖的密碼。AT24C02存儲芯片采用了I2C總線式進行數據讀寫的串行器件,占用很少的資源和I/O線,并且支持在線編程,進行數據實時的存取,十分方便,可滿足本系統設計需求。
1.4 顯示模塊
LCD1602A是一種工業字符型液晶,能夠同時顯示32個字符。在單片機系統中應用晶液顯示器作為輸出器件,液晶顯示器每一個點在收到信號后就一直保持那種色彩和亮度,恒定發光,而不像陰極射線管顯示器(CRT)那樣需要不斷刷新亮點。因此,液晶顯示器畫質高且不會閃爍。
在本系統中,LCD1602A液晶模塊用于顯示用戶輸入的數字密碼和各種提示信息,比如修改密碼后彈出“Reset Password OK”界面。顯示屏在密碼鎖中的使用也是高級密碼鎖人性化設置的體現。
1.5 紅外接收模塊
紅外線遙控是目前使用很廣泛的一種通信和遙控技術。由于紅外線遙控裝置具有體積小、功耗低、功能強、成本低等特點,因而,繼彩電、錄像機之后,在錄音機、音響設備、空凋機以及玩具等其他小型電器裝置上也紛紛得到采用。在本系統中,紅外線遙控的應用體現在密碼模塊的遠程實施,通過紅外遙控裝置,實現遠程密碼輸入和開鎖。
2 ? 系統軟件設計
本系統軟件組成主要包括:主程序、LCD顯示程序、鍵盤掃描程序、啟動程序模塊、關閉程序、密碼設置程序等。
2.1 主程序設計
本系統軟件部分由:主程序、初始化程序、LCD顯示程序、鍵盤掃描程序、鍵功能程序、密碼設置程序、EEPROM讀寫程序和延時程序等組成。
2.2 密碼設置程序
在程序設計過程中,采用分模塊式的設計思路,將整體的程序分為不同的子程序。子程序不但可以使程序化整為零,使其由繁化簡,還方便閱讀和修改。每個功能模塊都有它自己的子程序。
3 系統測試
硬件部分的測試,主要是為了測試每個端口和引腳的焊接有沒有失誤,所以使用萬能表,檢測每個引腳的狀況。軟件部分,就按照使用說明書一步步的檢測,確定每個功能正常使用。
3.1 初始化功能
新焊接好的密碼鎖要輸入管理員密碼131420,輸入管理員密碼后密碼鎖會彈出“init password”輸入初始密碼000000并確認,密碼鎖彈出“open”界面,開鎖成功。
3.2 修改密碼功能
先輸入原密碼000000,確認后密碼鎖彈出“open”界面,開鎖成功;再次輸入原密碼000000,確認后修改密碼。輸入新密碼333333,確認后再次輸入新密碼333333,確認后密碼鎖彈出“Reset Password OK”界面,密碼修改成功。輸入舊密碼000000,確認后密碼鎖顯示錯誤,開鎖失敗;輸入新密碼333333,確認后開鎖成功。
3.3 掉電保存功能
修改密碼后將密碼鎖重啟,輸入舊密碼000000,確認后密碼鎖彈出“error”界面,開鎖失敗;輸入新密碼333333,確認后密碼鎖彈出“open”界面,開鎖成功。
4 ? 結語
本文從經濟實用角度出發,設計并實現了一款零接觸智能密碼鎖。本設計通過單片機和紅外控制模塊等相結合,結合鍵盤輸入、顯示、報警等功能,實現用戶通過遙控器間接開鎖,一改傳統機械鎖的操作不易且易成為病毒人傳人的媒介,實現零接觸密碼鎖的目標,有助于疫情防控。該系統具有可控性強,經濟實惠,具有較廣闊的應用前景。
[參考文獻]
[1]馮蓉珍.基于51單片機和無線通信的紅外智能密碼鎖設計[J].甘肅科技縱橫,2019(4):1-3.
[2]劉元琦,宋人杰,王永利,等.基于樹莓派的便攜式智能眼鏡實時通信系統的設計[J].東北電力大學學報,2019(4):81-85.
[3]胡伶俐,何建銨,歐漢福,等.單片機技術基礎與應用[M].重慶:重慶大學出版社,2015.
[4]鄧昭輝,邢宏超,林順生.動態約束下可重構模塊化變壓器攀爬機器人的滑模控制研究[J].東北電力大學學報,2020(5):50-55.
[5]張毅剛,王少軍,付寧.單片機原理及接口技術[M].北京:人民郵電出版社,2015.
(編輯 姚 鑫)