郭同輝,朱兆優(yōu)
(東華理工大學(xué) 電子工程系,江西 撫州 344000)
門禁安全管理系統(tǒng)是一種新型智能化的安全管理系統(tǒng)。它集微機(jī)自動識別技術(shù)和現(xiàn)代安全措施為一體,涉及電子、機(jī)械、光學(xué)、計(jì)算機(jī)技術(shù)、通訊技術(shù)等諸多方面。它是解決重要部門出入口便捷控制和實(shí)現(xiàn)安全管理的有效措施,適用各種機(jī)要部門,如銀行、賓館、機(jī)房、辦公大樓、智能化小區(qū)、工廠軍械庫、機(jī)要室等。文章主要闡述了非接觸式IC卡門禁系統(tǒng)的硬件和軟件設(shè)計(jì)。
本次設(shè)計(jì)的非接觸式IC卡門禁系統(tǒng),主要由讀卡器、控制器、存儲器、時(shí)鐘模塊、通信模塊、識別卡和計(jì)算機(jī)組成。整個系統(tǒng)可以分為兩大部分:下位機(jī)部分和上位機(jī)部分。在下位機(jī)的模塊設(shè)計(jì)中,主要使用到7個I/O口。主控器選用STC12C5402單片機(jī),其特點(diǎn)如下:① 增強(qiáng)型8051CPU,1時(shí)鐘/機(jī)器周期,指令代碼完全兼容傳統(tǒng)8051;②工作頻率范圍:0-35 MHz;③ISP/IAP,無需專用編程器;④EEPROM 功能;⑤內(nèi)部集成MAX810專用復(fù)位電路;⑥時(shí)鐘源:外部高精度晶體/時(shí)鐘,內(nèi)部R/C振蕩器,用戶在下載用戶程序時(shí),可選擇是使用內(nèi)部R/C振蕩器還是外部晶體/時(shí)鐘;⑦共6個16位定時(shí)器/計(jì)數(shù)器,兩個專用16位定時(shí)器T0和T1;⑧ A/D轉(zhuǎn)換,10位精度ADC,共8路;⑨通用全雙工異步串行口(UART);⑩SPI同步通信口,主模式/從模式。其系統(tǒng)框圖如圖1 所示。
圖1 系統(tǒng)框圖
這部分主要包括讀卡模塊、時(shí)鐘模塊、通信模塊和密碼鎖電路驅(qū)動模塊等五大模塊。
(1)讀卡模塊。此模塊主要是完成卡號的讀取并臨時(shí)存入STC12C5402的RAM中。在選擇晶振和電容的過程中,我們必須注意到STC12C5402提供的幾種用戶可選擇振蕩器的選擇。STC12C5402允許根據(jù)需要從高精度至最低成本范圍內(nèi)選擇。支持的基本振蕩器類型包括低頻、中頻、高頻外接晶振或陶瓷振蕩器,也可以輸入外部時(shí)鐘信號。本系統(tǒng)選擇外接晶振片內(nèi)振蕩器,根據(jù)外接晶振的條件:振蕩器必須設(shè)置為低頻晶振、中頻晶振或高頻晶振模式之一;為限制晶振驅(qū)動電平可串聯(lián)電阻,對于低頻晶振尤其重要;對于不同的振蕩頻率,最佳電容值不同。所以本系統(tǒng)選擇高頻振蕩器,且電容都選擇33pF。選擇高頻振蕩器還因?yàn)榇讼到y(tǒng)在讀卡過程中要求相當(dāng)精確。在讀卡編程過程中,我們必需要對定時(shí)的時(shí)間精確計(jì)算,否則讀不到精確的卡號。系統(tǒng)可以使用ID4001讀卡模塊,它的每個脈沖之間的延時(shí)時(shí)間是2.6ms,選用STC12C5402芯片的P1.2和P1.3腳作為讀卡信息的兩跟數(shù)據(jù)輸入線,兩引腳被使用的也是STC12C5402芯片的最基本的I/O功能。讀卡模塊硬件圖如圖2 所示。
圖2 讀卡模塊硬件電路圖
(2)時(shí)鐘模塊。該模塊采用PCF8583日歷時(shí)鐘芯片為系統(tǒng)提供精確的時(shí)鐘。PCF8583采用32.768kHz的時(shí)鐘方式,通過片內(nèi)寄存器來設(shè)置控制計(jì)時(shí)計(jì)數(shù)器,時(shí)鐘走時(shí)精度可以達(dá)到微秒級。在PCF8583芯片使用前,首先要初始化日歷時(shí)鐘芯片PCF8583的時(shí)鐘方式,通過單片機(jī)對其設(shè)置初始時(shí)間,最后將刷卡時(shí)的準(zhǔn)確時(shí)間存儲到存儲模塊中。在PCF8583日歷時(shí)鐘芯片上,本系統(tǒng)使用了微調(diào)電容C5,目的是為了可以在小范圍內(nèi)調(diào)節(jié)時(shí)間的準(zhǔn)確性。如圖3 所示為時(shí)鐘模塊硬件電路圖。
圖3 時(shí)鐘模塊硬件電路圖
(3)通信模塊。此模塊完成單片機(jī)與PC機(jī)的通信,主要由芯片MAX232和10μF的電解電容組成。將MAX232的R2.OUT(R1.OUT)接單片機(jī)的 RXD 引腳 T2.IN(T1.IN)接 TXD引腳,當(dāng)PC機(jī)有數(shù)據(jù)要發(fā)送給單片機(jī)時(shí),電平轉(zhuǎn)換芯片MAX232將PC機(jī)發(fā)送的信號轉(zhuǎn)換成與單片機(jī)接口相匹配的電平,單片機(jī)上的跳變檢測器以波特率16倍的速率采樣RXD引腳上的電平。當(dāng)采樣檢測器采樣到RXD引腳上有1到0的負(fù)跳變時(shí),單片機(jī)將進(jìn)入串行口中斷程序,不斷地接收來自PC機(jī)的數(shù)據(jù),并將其存入存儲器中,當(dāng)數(shù)據(jù)接收完畢,單片機(jī)中斷返回。圖4 為通信模塊硬件電路圖。
(4)密碼鎖電路驅(qū)動模塊。本系統(tǒng)的密碼鎖驅(qū)動電路模塊主要由繼電器JZC、密碼鎖和驅(qū)動芯片(74LS244)來組成。在設(shè)計(jì)電路當(dāng)中使用繼電器的目的是為了使微弱的電信號產(chǎn)生較強(qiáng)的驅(qū)動電流,以至能驅(qū)動密碼鎖,產(chǎn)生自動的效果。因?yàn)槲覀冎?,要使鎖牢固,以至于不一推就開,因此鎖的旋鈕要有一定的力量,這不是一個微弱電信號能驅(qū)動的,必須放大這個電信號,由此選擇了繼電器。在密碼鎖驅(qū)動電路模塊的設(shè)計(jì)中,使用了驅(qū)動芯片(74LS244)作為繼電器的驅(qū)動,進(jìn)而通過繼電器的通斷來控制密碼鎖的打開與閉合。選擇P3.3腳作為輸出驅(qū)動信號的引腳,其電路原理圖如圖5 所示。
圖4 通信模塊硬件電路圖
圖5 密碼鎖驅(qū)動模塊硬件電路
本部分設(shè)計(jì)程序統(tǒng)一用VB6.0進(jìn)行編程,將下位機(jī)與PC機(jī)進(jìn)行串行通信,按照雙方制定的協(xié)議實(shí)現(xiàn)串行通信,并將通信所獲取到的數(shù)據(jù)存入到指定的數(shù)據(jù)庫中,用戶可以利用數(shù)據(jù)控件對其進(jìn)行訪問,并使PC機(jī)能夠?qū)ο挛粰C(jī)中有關(guān)模塊進(jìn)行操作。
基于STC12C5402單片機(jī)作為主控器的非接觸式IC卡門禁系統(tǒng)具有智能化、操作使用簡單維護(hù)方便等優(yōu)點(diǎn)。隨著智能樓宇建筑的加快,及各個行業(yè)管理的規(guī)范化,門禁系統(tǒng)能給學(xué)校、公司、機(jī)關(guān)、社區(qū)等各種需要一定程度管理的場所帶來極大的便利以及在很大程度上提高了其在安全管理方面的層次,所以它具有較好的發(fā)展前景。
[1]周航慈.單片機(jī)應(yīng)用程序設(shè)計(jì)技術(shù)[M].北京:北京航空航天大學(xué)出版社,1991.
[2]陳大人.射頻識別(RFID)技術(shù)[M].北京:電子工業(yè)出版社,2001.
[3]劉樂善.微型計(jì)算機(jī)接口技術(shù)及應(yīng)用[M].武漢:華中科技大學(xué)出版社,2000.