基于RS485總線和RFID的智能門禁系統(tǒng)實(shí)現(xiàn)
485總線收發(fā)器采用MAXIM 公司的MAX485,其電路原理見圖2。其中加入光隔離以實(shí)現(xiàn)抗干擾及保護(hù)功能。利用單片機(jī)的P2.3引腳對(duì)其內(nèi)部的發(fā)送和接收驅(qū)動(dòng)器進(jìn)行控制,通過(guò)單片機(jī)的一個(gè)串口與之通信。
2.2 工作原理
W77E58具有2個(gè)串口,這一點(diǎn)在該系統(tǒng)是至關(guān)重要的。單片機(jī)控制器既要通過(guò)串口與RFID讀卡器通信,又要通過(guò)串口與485總線控制器MAX485通信,因此選擇具有2個(gè)串口的單片機(jī)是解決這一矛盾的最佳方案。而且在相同的時(shí)鐘頻率下,它的指令執(zhí)行速度比標(biāo)準(zhǔn)8051快2.5倍,這對(duì)于作為門禁控制器核心的單片機(jī)來(lái)說(shuō)也是大有優(yōu)勢(shì)的。
鍵盤具有12個(gè)按鍵,各按鍵的功能定義為:數(shù)字鍵0-9、確認(rèn)鍵及取消鍵。用戶可以通過(guò)鍵盤輸入密碼信息,也可以通過(guò)鍵盤呼叫開門。EEPROM 存儲(chǔ)器AT24C256用來(lái)存儲(chǔ)用戶密鑰信息及RFID卡的卡號(hào)和密碼信息,它具有IIC總線功能,可以在IIC總線的時(shí)序下對(duì)它進(jìn)行讀寫操作;DS1302時(shí)鐘芯片用來(lái)向系統(tǒng)提供時(shí)鐘,為了方便,該時(shí)鐘應(yīng)與上位機(jī)一致;另外,采用MAX813看門狗芯片監(jiān)視程序的運(yùn)行;采用EA_D20040AR液晶顯示器顯示用戶通過(guò)鍵盤輸入的密碼、實(shí)時(shí)操作信息及系統(tǒng)時(shí)間信息等;采用DS2Y—S繼電器控制電門的開關(guān)狀態(tài)。
3 系統(tǒng)軟件設(shè)計(jì)
系統(tǒng)軟件由上位機(jī)管理平臺(tái)和下位機(jī)門禁控制程序組成。
上位機(jī)管理軟件是在Windows XP操作平臺(tái)上,利用Visual C++6.0開發(fā)的,功能包括RFID卡注冊(cè)注銷、住戶信息添加、刪除、查找、編輯、排序、顯示、實(shí)時(shí)監(jiān)控、管理員登錄驗(yàn)證等,具有友好的人機(jī)交互界面,顯示直觀,操作方便。系統(tǒng)運(yùn)行時(shí),各門禁控制器將采集到的卡信息、鍵盤信息及實(shí)時(shí)操作信息以TxT文件的形式存儲(chǔ)在上位機(jī)中;各小區(qū)的單元住戶信息以“樹”視圖的形式顯示在平臺(tái)界面的左側(cè)窗口中。點(diǎn)擊相應(yīng)的節(jié)點(diǎn),各單元的住戶信息以數(shù)據(jù)庫(kù)表的形式顯示在平臺(tái)界面的右側(cè)窗口中。平臺(tái)下面的“Tab”控件用來(lái)實(shí)時(shí)顯示各門禁控制器的實(shí)時(shí)操作信息。
下位機(jī)控制程序采用8OC51語(yǔ)言編程,Wave6000編譯仿真。該部分實(shí)現(xiàn)的主要功能包括:按鍵密碼及卡信息的讀取和驗(yàn)證、液晶LCD及LED顯示、時(shí)間設(shè)置和讀取、經(jīng)由485總線接收及發(fā)送操作信息等。軟件主程序流程見圖4。
3.1 485通信
通信波特率設(shè)為9600bit·S-1 。通信協(xié)議為起始字符+本機(jī)地址+功能字符+數(shù)據(jù)長(zhǎng)度+數(shù)據(jù)信息+結(jié)束字符其中,起始字符為’@ @@ ’,結(jié)束字符為’$$$’,本機(jī)地址為:0~32(可以按照需要選擇);廣告地址為:Oxffo功能字符為:’0’~’F’。
3.2 串口中斷處理
串口的功能包括:其一,向上位機(jī)發(fā)送操作信息,例如刷卡或者密碼認(rèn)證信息等;其二,接收上位機(jī)發(fā)送的密碼修改和卡注冊(cè)注銷信息,并依此修改EEPROM 相應(yīng)內(nèi)容,達(dá)到實(shí)時(shí)更新。中斷流程見圖5。
3.3 卡及密碼管理與認(rèn)證機(jī)制
一般情況下每個(gè)門禁控制節(jié)點(diǎn)的密碼只有一個(gè),該密碼既存儲(chǔ)在上位機(jī)的數(shù)據(jù)庫(kù)里,也存儲(chǔ)在EEPR0M里,當(dāng)上位機(jī)修改此密碼時(shí),將修改信息經(jīng)由總線發(fā)送給下位機(jī),進(jìn)行同步修改。
用戶的卡信息存儲(chǔ)方式與密碼相同,不同的是每個(gè)節(jié)點(diǎn)下的卡號(hào)信息不止一個(gè),可以幾十個(gè)。當(dāng)用戶通過(guò)上位機(jī)注冊(cè)或者注銷卡時(shí),需要將改動(dòng)信息經(jīng)由總線發(fā)送給下位機(jī),實(shí)現(xiàn)同步修改。認(rèn)證過(guò)程如下:當(dāng)住戶通過(guò)鍵盤輸入密碼時(shí),控制器將該信息與EEPROM 中的密碼信息進(jìn)行校對(duì)。如果正確,則通過(guò)繼電器將門打開,并經(jīng)由總線按照協(xié)議向上位機(jī)發(fā)送密碼開門正確信息;反之,則操作相反。刷卡操作與密碼大致相同。
3.4 數(shù)據(jù)庫(kù)與實(shí)時(shí)信息管理
對(duì)用戶信息(卡、密碼)的管理采用數(shù)據(jù)庫(kù)的形式。利用Access2000創(chuàng)建數(shù)據(jù)庫(kù),包括所有門禁控制節(jié)點(diǎn)的密碼表和各門禁控制節(jié)點(diǎn)住戶信息表。通過(guò)數(shù)據(jù)庫(kù)類的成員變量In—pSet對(duì)數(shù)據(jù)庫(kù)進(jìn)行讀寫操作,可以通過(guò)管理平臺(tái)添加或者刪除用戶信息。上位機(jī)以文件的形式記錄各門禁節(jié)點(diǎn)的實(shí)時(shí)操作信息,文件格式為TxT格式,共創(chuàng)建4個(gè)文件,分別用來(lái)存儲(chǔ):實(shí)時(shí)操作信息、注冊(cè)和注銷信息、卡認(rèn)證信息和鍵盤操作信息。
4 結(jié)語(yǔ)
本系統(tǒng)實(shí)現(xiàn)了射頻RFID卡識(shí)別,門禁系統(tǒng)密碼認(rèn)證,實(shí)時(shí)信息顯示,上位機(jī)數(shù)據(jù)庫(kù)管理與存儲(chǔ)等功能。該系統(tǒng)具有很大的擴(kuò)展空間,根據(jù)需要不僅可以進(jìn)行門禁控制器節(jié)點(diǎn)的擴(kuò)展,而且在功能上可以加入攝像頭等監(jiān)控工具。經(jīng)實(shí)驗(yàn)證明,系統(tǒng)設(shè)計(jì)合理、工作可靠、開發(fā)成本低、性價(jià)比高,具有很強(qiáng)的應(yīng)用價(jià)值和廣闊的市場(chǎng)前景。
基金項(xiàng)目:國(guó)家自然科學(xué)基金資助項(xiàng)目(59978018)
作者簡(jiǎn)介:楊莉(1983~),女,吉林大學(xué)電子科學(xué)與工程學(xué)院 碩士研究生.
參考文獻(xiàn)
[1]彭月平,戰(zhàn)仁軍,劉軍,等.基于通信器S1503的門禁系統(tǒng)的設(shè)計(jì)[J].電子技術(shù)應(yīng)用,2003,29(07):77~80.
[2]李元忠,馬勇,楊旭東.不停車車輛門禁管理系統(tǒng)[J].信息與電子工程,2003,1(4):308—311.
[3]杜玉梅.射頻識(shí)別技術(shù)(RFID)及其在物流系統(tǒng)中的應(yīng)用[J].企業(yè)技術(shù)開發(fā),2004,23(10):12-15.
[4]鄒麗新,朱桂榮,陸家昌,等.基于RS-485總線的多點(diǎn)式空氣潔凈度監(jiān)測(cè)系統(tǒng)I-J].電子技術(shù)應(yīng)用,2006,32(8):135—136.
[5]陳斗雪,黎毅明,陳一天,等.無(wú)線射頻識(shí)別及其在制造業(yè)中的應(yīng)用[J].計(jì)算機(jī)工程與設(shè)計(jì),2006,27(8):1359—136
評(píng)論