江陰職業技術學院電子信息工程系 楊建松 孫朝偉 井新宇
隨著現在社會科技水平的不斷進步,生活水平質量的不斷提升,人們對安全防范意識也變得更加重視,對家庭防盜意識也越來越高。傳統機械鎖的結構過于簡單,防盜系數過低已無法保證人們的家庭安全,有的還因此損失錢財。而具有現場可編程功能的FPGA芯片,跟基于單片機密碼鎖和傳統密碼鎖相比較,如果拿它來構成系統,可靠性能會更好,這樣有利于密碼鎖的更改與升級,使之變得更加便捷。
本次設計硬件方面需要使用FPGA開發板以及軟件Quartus II,VHDL語言編程設計密碼鎖電路實現密碼鎖電路功能。
設計要求:
產品有按鍵輸入密碼和手機藍牙輸入密碼兩種方式,用戶可自行選擇輸入密碼方式。
產品在按鍵模式下輸入密碼成功可以進行修改密碼操作,手機藍牙模式下不能修改密碼。
密碼輸入成功之后會有LED提示開鎖成功,密碼輸入失敗后蜂鳴器會響應20S,期間不能再輸入密碼。
直流電機的工作原理就是把電樞線圈中感應的交變電動勢,靠換向器配合電刷的換向作用,使之從電刷端引出時變為直流電動勢的原理。感應電動勢的方向按右手定則確定。導體受力的方向用左手定則確定。
藍牙設備使用無線電波連接手機和電腦。藍牙產品包含一塊小小的藍牙模塊以及支持連接的藍牙無線電和軟件。當兩臺藍牙設備想要相互交流時,它們需要進行配對。藍牙設備之間的通信在短程的臨時網絡中進行。
本系統使用5V外接電源,EP1C3T144CN單片機讀取有沒有人按按鍵,并且按照按鍵指令進行相對應的操作。如果通過按鍵或手機藍牙成功輸入密碼后LED燈顯示開鎖的狀態,單片機打開門鎖。如果沒有在規定時間內通過按鍵或手機輸入正確的密碼,LED燈顯示關鎖狀態,并且蜂鳴器發出警報,在此期間不得再次輸入密碼。
系統原理圖如圖1所示。
圖1 系統原理圖
EP1C3T144C8N是一個表面貼裝現場可編程門陣列芯片,它具有著2910個邏輯元件。它是一款入門級的FPGA芯片,大約3000個LE,引腳的個位數為144,具有8ns的內部門延遲時間。工作電源電壓:1.5V~3.3V;最大工作頻率:250MHz。
FPGA采用5V供電,AMS1117-3.3V得到3.3V,AMS1117-1.2V得到1.2V。并裝配了自恢復PTC保險絲,可最大程度的降低使用過程中意外短路引起的電路損壞。
FPGA采用了2個4位8段共陽LED數碼管,通過S8550芯片驅動位信號,數碼管采用共陽數碼管,點亮段碼和位碼均為低電平有效。
圖2 藍牙門鎖原理圖
FPGA裝配了1個無源蜂鳴器,低電平有效,S8050進行驅動,此時FPGA可以通過產生一定頻率的方波來驅動發聲一定頻率對應著一定的音調。
這里我選用的是HC-06藍牙串口通信模塊,是基于Bluetooth Specification V2.0帶EDR藍牙協議的數傳模塊。無線工作頻段為2.4GHz ISM,調制方式是GFSK。模塊最大發射功率為4dBm,接收靈敏度-85dBm,板載PCB天線,可以實現10m距離通信。藍牙電路原理如圖3所示。
圖3 藍牙電路原理圖
這里我采用門鎖電機,TC118S(單通道直流馬達驅動器)。電機驅動電路原理如圖4所示。
圖4 電機驅動電路原理圖
軟件模塊:
藍牙智能門鎖軟件模塊如圖6所示。
圖6 藍牙智能門鎖軟件模塊
(1)按鍵處理模塊
系統時鐘頻率為50MHz,經過50000分頻,得到1KHz脈沖信號,作為按鍵消抖出理的時鐘信號,通過狀態轉換檢測按鍵狀態實現按鍵延時消抖,RST-修改密碼按鍵、Set_PWD-數字選擇按鍵、Sel_DIG-輸入密碼按鍵、Inp_OK-修改密碼確認按鍵、Set_OK-復位按鍵。
(2)密碼設置與開鎖控制模塊
系統復位時,密碼為系統原始密碼;只有輸入密碼正確并且設置密碼按鍵(RST)按下后才能修改密碼,即完成密碼的裝載;在非設置密碼狀態,按下數字選擇鍵(Set_PWD),輸入密碼和蜂鳴器響應20S(OvSPK)均未完成時,啟動StSPK蜂鳴開啟信號;按數字選擇鍵(Set_PWD),選擇0~9數字;按數字輸入完成鍵(Sel_DIG),統計輸入密碼個數為1~4;在不違時的情況下(EnSPK=0)可以進行輸入密碼;非設置密碼情況下,輸出密碼,密碼正確驅動電磁鎖開鎖,設置密碼情況下,輸入設置的密碼,輸出新密碼。StSPK為啟動發聲信號,EnSPK為發聲使能信號,OvSPK為發聲完成信號。
(3)顯示譯碼模塊
采用數碼管動態掃描的原理,將4為二進制密碼(Password)譯碼為7段碼,在LED數碼管顯示。動態掃描的頻率有系統時鐘頻率分頻得到。
(4)發聲控制模塊
模塊得到StSPK啟動發聲信號啟動蜂鳴器,準備5s,鳴響20s,并產生EnSPK發聲使能信號和OvSPK發聲完成信號,鳴響的頻率為1KHz。
表1 藍牙門鎖使用情況
本文設計的藍牙門鎖,基于FPGA和藍牙模塊,可以使用兩種方式進行開門處理,一種是按鍵密碼開鎖,另一種是設計藍牙密碼開鎖,兩種都可以進行開鎖,不過只有按鍵方式可以修改密碼,藍牙不能修改密碼。