新闻中心

EEPW首页>嵌入式系统>设计应用> 基于ZLG500的智能卡门禁系统设计

基于ZLG500的智能卡门禁系统设计

作者: 时间:2009-03-24 来源:网络 收藏

首先,在发卡系统(中央控制PC机)里把用户的卡号及个人信息输入系统数据库,并将该卡号作为合法卡号下载给所有门禁机。当有1张M1卡在门禁机的有效工作范围内时,系统会自动向卡发出命令,卡接收到命令后向门禁机反馈其SN。门禁机判断收到的卡号是否合法,合法则驱动电磁门锁开门,并实时上传其开门记录;如果是非法卡(未经授权或已挂失的卡)则拒绝开门并上传报警信息。只有最高授权者(掌握授权密码)才可以发管理员卡,管理员必须用管理员卡方可登录发卡系统进行发卡及下传合法卡号、挂失、解挂、下传黑名单等操作。
通过AT89C52对的控制完成对卡的读写。系统外围配有RS232转RS485接口能与PC机互连成网络,可以完成读卡、显示卡号和出入时间、身份识别、开锁以及保存和上传出入记录、下载黑名单、设置开门权限等功能。
门禁机模块的主控软件主要完成门禁机模块的初始化、卡的识别、开启门锁及保存有关数据和数据传输等五大功能。其总体工作流程如图4所示。

2.2 主控模块
由图3可以看出,中主控模块主要由MCU(AT89C52)、、复位电路、时钟电路、数据存储接口电路、键盘与显示接口电路及电锁等几部分组成。可以看出MCU除了完成对读写模块的控制外,还要承担其他功能的控制,主要包括4部分:数据存储和数据传输部分、实时时钟和掉电保护部分、键盘和显示部分、驱动控制部分。
2.2.1 数据存储和数据传输模块
各门禁点的出入记录可采用实时上传或定时采集的方式从门禁机传输给中央数据库,前者对系统网络速度要求较高,当网络堵塞时有丢失数据的可能。本系统采用出入记录暂时存储在门禁机中,每隔一段时间(例如每周一次)上传给中央数据库的方式。为此要求门禁机具备一定容量的存储器,用于暂存门禁数据以及由中央数据库下载的授权卡号。门禁机存储器的容量取决于一个门禁记录的长度、系统的卡容量以及定时上传周期内最大的刷卡次数等,通常应留有一定的余量以免由于超出存储容量而丢失数据。本系统采用AT24c256作为门禁机的存储器,其存储容量达64 KB,划分成2个区:一个区用来存储所读取的记录,另一个区用来存储上位机下载的授权卡号。门禁机存储器模块的电路原理如图5所示。

AT24C256是Atmel公司的具有I2C总线结构,可电擦写与编程的只读存储芯片(EEPROM)。MCU对AT24C256的读写必须遵循I2C总线传输的时序要求,与AT24C01基本一致,在此不再赘述。
对于1个单一的读写器来讲,自身的数据存储是有限的。读写器外带的数据存储器主要作为数据的临时存储,对于大量的、需要长期保存的数据,一般是通过有线或无线,甚至是网络系统传输到主控计算机中进行保存。
2.2.2主模块的软接口
下面以主模块中ZLG500与MCU(AT89C52)的通信为例来介绍中主模块的软接口。ZLG500初始化的子程序如下:


上述程序中CONFIG子程序为RC500的复位和配置子程序,是由MCU向ZLG500发出的不带数据的命令程序;REQUEST子程序是MCU向ZLG500发出的带1个字节数据的命令程序,主要是检查有效范围内是否有卡存在;ANTICOLL子程序是防冲突操作,必须在执行RE―QUEST命令后立即执行。



评论


相关推荐

技术专区

关闭