目前,市場上有多種基于IC卡設計的電子鎖,廣泛應用于賓館、公寓、倉庫、學校等場所。這些場合能夠提供很好的直流或交流電源,電子鎖的控制部分可以長時間方便地獲取穩定的電源。但是,在野外環境中往往不能為控制部分方便地提供電源,需要手持部分為控制部分提供電源,執行*和閉鎖操作,因此傳統由控制部分提供電源的電子鎖不能滿足野外環境的需要,例如采油井、注水站、電信通訊井等,在這些地方,尤其是偏遠的地方,往往對安全性要求較高,提供電源又較為困難。 本文介紹了一種電子鎖,電子鎖系統分為控制和手持兩部分。手持部分的電源采用鋰電池,控制部分的工作電源由手持部分提供,數據線和電源線共用一根線,有效解決了上述問題,使用方便。 1 硬件系統設計 電子鎖由控制部分和手持部分組成。控制部分由STCl2C2052單片機、信號接收電路、電機驅動電路、保護電路構成,主要完成電子鎖鑰匙密碼的接收、驗證、直流電機驅動、電機保護功能;手持部分主要由STCl2C2052單片機、可充電電源電路、信號發送電路、鎖開關按鍵電路構成,主要完成電子鎖系統電源的提供,*、閉鎖信號和鑰匙密碼信號的發送功能。為了使用方便,控制部分和手持部分的連接采用紐扣式接頭,外部為地,內部為電源線,通過單根電源線實現數據傳輸和控制功能。*、閉鎖操作的執行由3 V直流變速電機完成,直流變速電機可以降低轉速,增大力矩。硬件系統結構示意圖如圖1所示。 1.1 STCl2C2052單片機 控制部分和手持部分微處理器采用STCl2C2052單片機。STCl2C2052除了具有運算器、控制器、RAM、FLASH、定時器、串行接口等功能部件外,還具有以下特點:SOP-20封裝,體積小;3.5~5.5 V寬工作電壓,具有ESD保護,高抗靜電干擾,抗4 kV快速脈沖干擾;-40~+80℃工作溫度范圍,低功耗的空閑和掉電工作模式,2 KB芯片內E2PROM,ISP系統在線可編程,硬件看門狗(WDT)等特點,適用于野外環境。 1.2 信號發送電路 手持部分的信號發送電路將*、閉鎖信號和鑰匙密碼信號通過電源線發送到控制部分。信號發送電路由三極管Q1、二極管D1、電阻R1和線圈L1構成,如圖2所示。當單片機的P3.1輸出高電平時,Q1截止,輸出低電平時,Q1導通,電源正極通過D1、限流電阻R1和Q1接地。此時,會在電源線上產生一個瞬時的低脈沖,表明有信號發送,低脈沖信號的不同頻率代表發送的是“0”,還是“1”。 1.3 信號接收電路 控制部分信號接收電路通過電源線接收*、閉鎖控制信號和鑰匙密碼信號。接收電路包括電容C1,三極管Q2和一個反向器。電源通過線圈L2給控制部分提供電源,如圖3所示。手持部分通過電源線發送信號,產生瞬時的低電平脈沖,低脈沖信號通過C1加載到Q2的基極,使得Q2處于截止狀態。此時,反向器輸出低電平信號。無脈沖信號時,Q2處于飽和導通狀態。此時,反向器輸出高電平信號。根據信號頻率可以判斷發送來的是“0”,還是“1”。 1.4 直流電機倒向驅動電路 系統采用帶有變速器的3 V直流電機,通過電機的順時針、逆時針旋轉完成*、閉鎖操作。倒向驅動電路由三極管Q4,Q6,Q8,Q10,Q5,Q7,Q9,Q11組成,單片機的P1.O,P1.1,P1.2,P1.3分別經反相器后接Q4,Q6,Q8,Q10的基極。電路如圖4所示。 當單片機的P1.O,P1.1,P1.2,P1.3為低電平時,Q4,Q6,Q8,Q10截止,V1和V2處于浮空狀態,電機靜止;當*時,單片機的P1.0,P1.3為高電平,P1.1,P1.2為低電平,Q4,Q5,Q10,Q11導通,Q6,Q7,Q8,Q9截止,V1為正,V2為負,電機正轉*;當閉鎖時,單片機的P1.0,P1.3為低電平,P1.1,P1.2為高電平,Q4,Q5,Q10,Q11截止,Q6,Q7,Q8,Q9導通,V1為負,V2為正,電機反轉閉鎖。 在程序實現時,必須注意嚴禁P1.0,P1.1,P1.2,P1.3同時為高電平,即Q4,Q6,Q8,Q10同時處于導通狀態。 1.5 電機保護電路 直流變速電機執行*、閉鎖操作一定時間后,外部機械裝置會迫使電機停止轉動,如果不采取措施,會產生較大電流,損壞直流電機,所以保護電路是必不可少的。 保護電路由TLV2252運算放大器、電阻R4,R5,R6組成,電路如圖5所示。TLV2252的1IN+(引腳3)接R5,R6構成分壓電路;11N-(引腳2)接電阻R4,電阻R4串聯到電機倒向驅動電路的公共輸出端。當電機正常工作時,通過R4的電流較小,TLV2252的輸出(引腳1)經兩個反向驅動后送給單片機的P3.3,此時為“1”,進行正常的開關操作。當外部機械裝置迫使電機停止轉動時,由于直流電機負載過大,通過R4的電流較大,這時放大器TLV2522輸出經兩個反向驅動后送給單片機的P3.3,此時為“O”,利用此信號產生中斷信號,停止*、閉鎖操作,以此起到對電機的保護作用。 2 軟件系統設計 系統軟件由控制部分主程序、數據接收程序、電機驅動程序、手持部分主程序、數據發送程序組成。控制部分與手持部分傳送開門、關門信號和鑰匙密碼信號,其中鑰匙密碼信號用1l位二進制數,具有較好的安全性。 2.1 數據“0”,“1”傳送方法 采用異步FSK通訊方式,使用信號的不同頻率來區分“0”和“1”,如圖6所示。 當信號頻率為20 kHz時,代表傳輸為“O”;當信號頻率為10 kHz時,代表傳輸為“1”。當晶振為12 MHz時,機器周期大約為1μs。在接收部分,定時器/計數器1用來記錄機器周期的個數。當記錄的機器周期個數在30~70之間時,可以確定接收到的是“O”(O的標準個數為50個);當記錄的機器周期個數在80~120之間時,確定接收到的是“1”(1的標準個數為100個),其他情況按錯誤處理。 2.2 通信協議設計 在傳送的信息中,一部分是*、閉鎖控制命令信號,另一部分是鑰匙密碼信息。控制部分接收到鑰匙密碼信息,經驗證與本機的密碼一致后可以執行*、閉鎖操作。采用異步通信方式,定義協議格式為起始位、鑰匙密碼信息位、開/關位、校驗位。其中,起始位為1位;鑰匙密碼信息為11位;開/關位為1位;校驗位為4位。當起始位為“0"時,表示一幀數據的開始,加上此后連續的16位為一幀數據。 鑰匙信息共有2048種組合,開/關位為“1”,代表*操作;開/關位為“0”,代表閉鎖操作;校驗位由11鑰匙信息位和1為開/關位共12位(由高到低4位為1組)經2次異或操作得到。 2.3 程序設計 手持部分主程序完成系統初始化、讀取按鍵,形成數幀,啟動發送等任務。使用定時中斷T1,完成數據的發送過程。當為數據“0”時,定時器初值為65 535-50=65 485=FFCO(H);當為數據“1”時,定時器初值為65535-100=FF9B(H),逐次發送各位,直到將一幀數據發送結束。手持部分主程序和T1中斷程序流程如圖7和圖8所示。 控制部分采用定時器T0和外部中斷O實現,初始化設置定時器為內部計數方式,計數初值為0。當手持部分信號到達控制部分時,單片機的外部中斷O產生中斷,在中斷程序中讀取計數器的計數值t。當30≤t≤70時,接收到的位為“0”;當80≤t≤120時,接收到的位為“1”。將接收的各位組合起來恢復發送的一幀數據,經檢驗處理正確無誤后進行*或閉鎖操作。 3 結語 電子鎖系統的數據線和電源線采用一線制連接,使用方便;鑰匙密碼以加密的方式寫入存儲器中,具有很高的安全性;不需要現場提供電源,解決了傳統電子鎖需要現場提供電源的問題。電子鎖系統已在勝利油田孤島采油廠、東辛采油廠注水井的安全保護和東營移動通信公司通信線路地井的防盜裝置上得到了應用,具有較好的實用推廣價值。 |