新聞中心

EEPW首頁 > 嵌入式系統(tǒng) > 設(shè)計(jì)應(yīng)用 > 基于ZLG500的智能卡門禁系統(tǒng)設(shè)計(jì)

基于ZLG500的智能卡門禁系統(tǒng)設(shè)計(jì)

作者: 時(shí)間:2009-03-24 來源:網(wǎng)絡(luò) 收藏

首先,在發(fā)卡系統(tǒng)(中央控制PC機(jī))里把用戶的卡號及個(gè)人信息輸入系統(tǒng)數(shù)據(jù)庫,并將該卡號作為合法卡號下載給所有門禁機(jī)。當(dāng)有1張M1卡在門禁機(jī)的有效工作范圍內(nèi)時(shí),系統(tǒng)會(huì)自動(dòng)向卡發(fā)出命令,卡接收到命令后向門禁機(jī)反饋其SN。門禁機(jī)判斷收到的卡號是否合法,合法則驅(qū)動(dòng)電磁門鎖開門,并實(shí)時(shí)上傳其開門記錄;如果是非法卡(未經(jīng)授權(quán)或已掛失的卡)則拒絕開門并上傳報(bào)警信息。只有最高授權(quán)者(掌握授權(quán)密碼)才可以發(fā)管理員卡,管理員必須用管理員卡方可登錄發(fā)卡系統(tǒng)進(jìn)行發(fā)卡及下傳合法卡號、掛失、解掛、下傳黑名單等操作。
通過AT89C52對的控制完成對卡的讀寫。系統(tǒng)外圍配有RS232轉(zhuǎn)RS485接口能與PC機(jī)互連成網(wǎng)絡(luò),可以完成讀卡、顯示卡號和出入時(shí)間、身份識別、開鎖以及保存和上傳出入記錄、下載黑名單、設(shè)置開門權(quán)限等功能。
門禁機(jī)模塊的主控軟件主要完成門禁機(jī)模塊的初始化、卡的識別、開啟門鎖及保存有關(guān)數(shù)據(jù)和數(shù)據(jù)傳輸?shù)任宕蠊δ堋F淇傮w工作流程如圖4所示。

2.2 主控模塊
由圖3可以看出,中主控模塊主要由MCU(AT89C52)、、復(fù)位電路、時(shí)鐘電路、數(shù)據(jù)存儲(chǔ)接口電路、鍵盤與顯示接口電路及電鎖等幾部分組成。可以看出MCU除了完成對讀寫模塊的控制外,還要承擔(dān)其他功能的控制,主要包括4部分:數(shù)據(jù)存儲(chǔ)和數(shù)據(jù)傳輸部分、實(shí)時(shí)時(shí)鐘和掉電保護(hù)部分、鍵盤和顯示部分、驅(qū)動(dòng)控制部分。
2.2.1 數(shù)據(jù)存儲(chǔ)和數(shù)據(jù)傳輸模塊
各門禁點(diǎn)的出入記錄可采用實(shí)時(shí)上傳或定時(shí)采集的方式從門禁機(jī)傳輸給中央數(shù)據(jù)庫,前者對系統(tǒng)網(wǎng)絡(luò)速度要求較高,當(dāng)網(wǎng)絡(luò)堵塞時(shí)有丟失數(shù)據(jù)的可能。本系統(tǒng)采用出入記錄暫時(shí)存儲(chǔ)在門禁機(jī)中,每隔一段時(shí)間(例如每周一次)上傳給中央數(shù)據(jù)庫的方式。為此要求門禁機(jī)具備一定容量的存儲(chǔ)器,用于暫存門禁數(shù)據(jù)以及由中央數(shù)據(jù)庫下載的授權(quán)卡號。門禁機(jī)存儲(chǔ)器的容量取決于一個(gè)門禁記錄的長度、系統(tǒng)的卡容量以及定時(shí)上傳周期內(nèi)最大的刷卡次數(shù)等,通常應(yīng)留有一定的余量以免由于超出存儲(chǔ)容量而丟失數(shù)據(jù)。本系統(tǒng)采用AT24c256作為門禁機(jī)的存儲(chǔ)器,其存儲(chǔ)容量達(dá)64 KB,劃分成2個(gè)區(qū):一個(gè)區(qū)用來存儲(chǔ)所讀取的記錄,另一個(gè)區(qū)用來存儲(chǔ)上位機(jī)下載的授權(quán)卡號。門禁機(jī)存儲(chǔ)器模塊的電路原理如圖5所示。

AT24C256是Atmel公司的具有I2C總線結(jié)構(gòu),可電擦寫與編程的只讀存儲(chǔ)芯片(EEPROM)。MCU對AT24C256的讀寫必須遵循I2C總線傳輸?shù)臅r(shí)序要求,與AT24C01基本一致,在此不再贅述。
對于1個(gè)單一的讀寫器來講,自身的數(shù)據(jù)存儲(chǔ)是有限的。讀寫器外帶的數(shù)據(jù)存儲(chǔ)器主要作為數(shù)據(jù)的臨時(shí)存儲(chǔ),對于大量的、需要長期保存的數(shù)據(jù),一般是通過有線或無線,甚至是網(wǎng)絡(luò)系統(tǒng)傳輸?shù)街骺赜?jì)算機(jī)中進(jìn)行保存。
2.2.2主模塊的軟接口
下面以主模塊中ZLG500與MCU(AT89C52)的通信為例來介紹中主模塊的軟接口。ZLG500初始化的子程序如下:


上述程序中CONFIG子程序?yàn)镽C500的復(fù)位和配置子程序,是由MCU向ZLG500發(fā)出的不帶數(shù)據(jù)的命令程序;REQUEST子程序是MCU向ZLG500發(fā)出的帶1個(gè)字節(jié)數(shù)據(jù)的命令程序,主要是檢查有效范圍內(nèi)是否有卡存在;ANTICOLL子程序是防沖突操作,必須在執(zhí)行RE―QUEST命令后立即執(zhí)行。



評論


相關(guān)推薦

技術(shù)專區(qū)

關(guān)閉