一.引言
在数字技术、网络技术飞速发展的今天,门禁技术得到了迅猛的发展。门禁系统早已超越了单纯的门道及钥匙管理,它已经逐渐发展成为一套完整的出入管理系统。
门禁系统的发展在经历了单一密码键盘门禁系统、IC卡门禁系统、非接触式IC卡门禁系统,到现在最新的生物识别门禁系统。非接触式IC卡门禁系统由于其技术成熟、价格低廉、使用方便等优异的性能,得到了广泛的应用。某音乐学院琴房14层大厦300多个琴房,过去一直采用的管理办法是学生在琴房管理中心登记领用钥匙使用琴房。这种管理办法存在着很多弊端,例如学生会私自配备琴房的钥匙从而不通过琴房管理中心登记私自使用琴房,或者学生在退还钥匙离开时不能保证琴房里已经无人。而且琴房内设备贵重的数百万若有损坏难以确定损坏人,给学校的财产安全带来隐患。因此给琴房的管理带来了一定的难度。
二.系统结构
系统采用分层次分布式集中控制方案,将所有门禁读卡器组成一个分布式网络,其组成如图1所示。整个系统包括管理中心服务器、楼层PC、门禁读卡器三个层次结构。
管理中心服务器是整个门禁系统的管理和控制中心,同时运行有琴房管理系统程序和数据库。数据库采用支持网络通讯的数据库结构,方便功能的扩展。为了达到对所有琴房进行统一管理的目的,使用琴房的学生要用学生一卡通在管理中心通过琴房管理系统登记分配琴房,并将学生个人信息存入数据库。使用后要在管理中心通过琴房管理系统退还房间,以便考勤及查询。通过管理系统程序可以清晰的查询到每个房间的使用状态、进出记录等。
楼层PC上运行门禁控制服务程序,是负责门禁读卡器与管理中心服务器沟通的桥梁。门禁控制服务程序实现数据转发的功能,实现RS485和TCP/IP通讯协议的转换,本身并不直接控制门禁读卡器的动作。向上通过局域网以TCP/IP协议与管理中心服务器进行通讯,传递门禁读卡器的刷卡请求和管理中心的服务器的各种控制命令。向下通过485总线通过轮寻的方式与门禁读卡器进行信息的交互。记录从门禁读卡器采集的数据的采集时间,如
图1基于射频识别技术的联机型门禁系统结构图
如果长时间不能和管理中心服务器通讯,一定时间后丢弃掉过时的读卡数据。门禁控制服务仅具有进行后台数据交换和转发功能,除了进程启动和停止外,没有和用户交互的信息,设计作为Windows系统的服务进程运行,而不需要设计和用户的交互界面,仅产生运行日志文件即可。
三.门禁读卡器设计
系统以学生的非接触式IC卡校园一卡通作为系统的用户卡,非接触式IC卡是根据电磁感应原理产生的,只需将卡片放在门禁读卡器的感应区之内就能实现数据交换,无需任何接触,使用非常方便、快捷,且不易损坏。因此在公交、门禁、校园、企事业人事管理等方面有着广泛的应用。PHILIPS公司的Mifare卡是现在非接触式IC卡市场的主流产品,其典型型号为Mifare1S50,它有1K的EEPROM用于存放数据,分为16个扇区,每个扇区都有自己独立的密码,完善的安全机制,使Mifare1S50具有一卡多用的特性。Mifare卡是一种智能卡(smartcard),嵌有中央微处理器(MCU)和ASIC等,使其安全保密性、认证逻辑、算术运算等微操作控制有序进行[1]。
1.工作原理
非接触式IC卡门禁读卡器以射频识别技术为核心,主要使用了一片Mifare卡专用的读写处理芯片MFRC530。它是一个小型的、最大操作距离达10厘米的Mifare卡射频基站,其功能包括调制、解调、产生射频信号、安全管理和防冲撞机制。内部结构分为射频区和接口区:射频区内含调制解调器和电源供电电路,直接与天线连接。接口区有与单片机相连的端口,还具有与射频区相连的收/发器、64B的数据缓冲器、存放3套寄存器初始化文件的EEPROM、存放16套密钥的只写存储器以及进行三次验证和数据加密的密码机制、防冲撞处理的防冲撞模块和控制单元。这是与射频卡实现无线通信的核心模块,也是读写Mifare卡的关键接口[2]。
门禁读卡器工作时,与Mifare卡专用的读卡芯片MFRC530相连的天线线圈不断地向外发出一组固定频率的电磁波(13.56M),当有非接触式IC卡靠近时,卡片内有一个LC串联谐振电路,其频率与读写器的发射频率相同。这样在电磁波的激励下,谐振电路产生共振,从而使电容充电而产生电荷。在电容另一端,接有一个单向导电的电子泵将电容内的电荷送到另一个电容内存储。当电容充电达到2V时,此电容就作为电源为卡片上的其他电路提供工作电压,将卡内数据发射出去或接收门禁读卡器发来的数据并保存[3]。本系统中当有卡进入射频天线感应区内时,门禁读卡器读 得非接触式IC卡的卡号,并将所读卡号及刷卡的时间发送给楼层PC同时将其存入存储器FM24C256,并在LCD显示器上显示服务信息。没有卡进入门禁读卡器天线感应区时,MCU读实时时钟芯片中的时间,并在显示器上显示当前时间及日期。
2.硬件组成
每个门禁读卡器都相当于一个智能的节点,它能独立完成门状态和锁状态的监控、判断卡类型、实时监控刷卡动作、控制电磁门锁和报警器、设置门禁号等一系列的操作。门禁读卡器的硬件部分主要包括监测和控制部分、声光报警电路、RS485接口电路、存储、时钟显示部分、门禁号设置部分、看门狗及复位电路、射频基站部分。电路的硬件框图如图2所示[4]。
图2门禁读卡器系统组成
采用意法半导体公司(STMicroelectronics)公司STC89C53RC单片机作MCU,即常用的MCS-51系列单片机,它具有良好的温度特性、稳定性和性价比。内置15K的Flash存储器和512字节RAM,具有3个16位计数器和一个标准的串行通信口,并具有P4口,支持ISP程序下载。
门禁号设置电路采用8位并入串出的移位寄存器芯片74HC165配合两个4位拨码开关构成8位的设置门禁号单元。系统上电后74HC165将并行数据以串行移位的方式发送给MCU将其作为在485网络中通讯的本机ID号。
射频基站部分采用了飞利浦公司的MFRC530芯片,MFRC530是与射频卡实现无线通信的核心模块。它根据寄存器的设定对发送缓冲区中的数据进行调制得到发送的信号,通过由TX1,TX2脚驱动的天线以电磁波的形式发出去,非接触式IC卡采用RF场的负载调制进行响应。天线拾取非接触式IC卡的响应信号经过天线匹配电路送到RX脚,MFRC530内部接收缓冲器对信号进行检测和解调并根据寄存器的设定进行处理。处理后的数据发送到数据总线上等待MCU读取。MCU与MFRC530采用SPI总线方式进行通讯,可实现与非接触式IC卡数据的无线传输。
有卡进入感应区刷卡时需要记录刷卡的时间,可用外接硬件实时时钟芯片的办法为系统提供一个准确可靠的时钟,用3V备用电池保证在系统掉电时也能正常计时。本设计选用体积小、接口简单的实时时钟芯片DS1302,是美国DALLAS公司推出的低功耗串行通信接口专用芯片,采用3线串行方式与单片机进行数据通信:SCLK作为时钟输入,SDA作为串行数据输入和输出,RST作为通讯允许信号。其内部寄存器地址中00H~06H分别对应存放秒、分、时、日、月、星期及年信息的寄存器,07H为写保护控制寄存器,08H为电池充电控制寄存器。时钟数据以BCD码格式存放在00H~06H这7个寄存器中。
系统存储部分采用了RAMTRONINTERNATIONAL公司生产的一种铁电存贮器(FRAM)FM24C256,是一个256kbit的FRAM,存储器内部被逻辑组织为32768×8字节存储方式,地址空间为0000~7FFFH。其总线频率可高达1MHz,具有10亿次以上的读写次数且功耗很低,与外部接口采用工业标准IIC总线。由于MCU不具有IIC总线接口,因此采用P2.3和P2.4口线来模拟IIC总线,FM24C256的SDA和SCL为开漏输出,故接10kΩ的上拉电阻。
监测部分实时监测门、锁状态和通讯的状态,并对长时间的异常状态作出报警;控制部分主要负责执行上位机的各种控制信息,如执行开锁、执行报警等;LCD显示部分选用以ST7920为控制器的128×6带汉字库的液晶模块,用以显示时间日期及各种服务信息,作为人机交互的界面。为了防止外界对系统的干扰,选用MAXIM公司的MAX813L作为系统的硬件看门狗。
3.软件设计
门禁读卡器的程序包括:MFRC530对Mifare卡操作的程序、MCU与MFRC530通信中断处理程序、485通信中断处理程序、读写时钟及LCD显示程序、获得门禁号程序、检测门和锁状态程序及存储器读写程序等。主程序流程图如图3所示。
对卡操作的过程是一个很复杂的程序执行过程,要对MFRC530内部一系列的寄存器进行配置,而且这些操作对时序要求非常严格。对非接触式IC卡的典型操作为:寻卡(得到卡类型代码)、防冲突(得到卡号)、选卡、验证密码、读写操作、挂起并且这些操作必须按固定的顺序执行。因为门禁读卡器只需要得到卡片卡号,故只执行寻卡、防冲突、挂起就可达到要求,对卡类型判断后将卡号通过楼层PC发送到服务器,由服务器来判断卡是否合法。在没有卡进入射频天线有效范围时,在LCD显示当前时间及日期,当有卡进入到射频天线的有效范围时,LCD上显示卡号并显示“请稍候……”等服务信息。
图3门禁读卡器主程序流程
四.结束语
本文将射频识别理论应用到门禁控制领域,采用多层网络型系统结构 ,提出了一种以单片机为核心,配合射频基站MFRC530及单片机外围电路的非接触式IC卡门禁读卡器硬件和软件设计。该门禁系统已成功应用于某音乐学院的琴房管理系统。实践表明,系统运行稳定、实时性好。