一种简易IC 卡门禁系统的设计
2021-03-23刘艳
刘艳
(河南建筑职业技术学院信息工程系,河南 郑州450064)
本文主要介绍了该系统的结构组成、硬件设计和读卡写卡程序等部分软件设计过程,最后通过系统的功能测试验证了该门禁系统的可行性。
1 门禁系统的结构组成
该IC 卡门禁系统主要由PC 机实时管理软件和基于STC89C52 单片机的门禁控制器两部分组成,并通过MAX232 芯片进行数据传输。PC 机实时管理软件的功能主要是处理系统中IC 卡基本信息和进出人员信息的查询、增加、删除、修改等相关信息[1]。当持卡人进入射频区域内时,射频读卡器将自动读取IC 卡上的信息。读卡器将读取到的IC 卡信息传输给控制器,控制器通过PC 端RS-232 接口与PC 机实时管理软件实现通信连接。
PC 机实时管理软件通过查询数据库,比较IC 卡信息是否合法。若合法则返回合法信息,控制器打开;若不合法则控制器关闭[2]。
2 系统的硬件设计
该系统的硬件设计主要由单片机ST89C52、MFRC500 读卡器、MAX232 通信模块、液晶显示和报警等模块。下图是该系统的总框图:
图1 门禁系统的总框图
该系统选用了单片机STC89C52 为主控模块,LCD1602 液晶显示屏,MCM500 读卡器模块,以及MAX232 通信芯片、显示屏、蜂鸣器为外围器件。当正确的IC 卡对着读卡器的射频区间内刷卡时,MCM500 会将IC 卡上的信息传给主控芯片。主控芯片通过通信传输模块完成串口通信,将信息上传给PC 机。PC 机实时管理软件通过查询数据库判断IC 卡信息是否合法;若合法则将合法信息传给主控芯片,主控芯片会控制蜂鸣器发出提示音[3]。此时LCD1602 显示屏上会显示持卡人信息以及验证成功提示;而当以非法的IC 卡对着射频模块刷时,液晶显示屏上会显示非法闯入。以下简单介绍主要硬件模块:
2.1 单片机STC89C52 主控模块
单片机STC89C52 具有8Kb 的Flash、256 字节随机存取存储器、32 位输入/输出端口线、内置4KB 字节的带电可擦可编程只读存储器、看门狗定时器、MAX810 复位电路、2 个数据指针、3 个16 位定时器/计数器、4 个外部中断、1 个7 向量4 级中断结构、全双工串行口、片内晶振及时钟电路[4]。
另外,STC89C52 可以0Hz 下支持两种节电操作,其中一种为空闲模式,在此模式下CPU 不在执行进程但是随机存取存储器工作,另一种为掉电保护模式,在这种模式下只保存随机存取存储器的内容,其余部分进入断电状态。
2.2 读卡器
该系统的读卡器芯片选择芯片MFRC500,该芯片集成了非接触式IC 卡的通信协议和数据传输方式,具有高性能、高集成性的特点。芯片内部的发送器不需要外加电源就可以直接对近距离天线进行操作。因为MFRC500 内置有天线和数字处理电路,因此不需要外加接口电路,直接通过MFRC500 芯片的TX1、TX2、RX 引脚信号芯片选择合适的电路进行信号的处理。
2.3 通信模块
结合实际距离的需求,在单片机STC89C52 与PC 机之间的串口通信接口采用RS232 接口以及为RS232 接口设计的工作电压为+5V 的MAX232 芯片。RS232 接口更适合短距离设备之间的点对点的通信。RS232 接口具有接口信号电平低不易损坏芯片、高传输速率、一根信号线和一根信号返回线更加安全、传输距离远的优点[5]。
2.4 显示模块
根据门禁系统的要求,持卡人手持IC 卡进入感应区间时需要在液晶显示屏显示IC 卡卡号、时间信息、姓名以及IC 卡信息验证是否合格等提示信息。该系统选用的LCD1602 液晶显示屏是一种点阵型液晶模块,拥有16×2 点阵,可以用来显示汉字、数字等。结合具体的汉字在汉字库中的相应区位码,就可以实现点阵上的亮点显示出汉字。
2.5 报警模块设计
该系统的报警模块蜂鸣器主要功能是在读卡和写卡操作成功的时候发出指示音。单片机STC89C52 输出通过驱动电平经过PNP 型晶体管组成晶体管驱动电路后再驱动蜂鸣器。
勒维斯之后,警方再也没有发现新的嫌疑人。随着时间流逝,找到真凶的机会越来越渺茫。但泰诺投毒案的影响不止于此。自从该案之后,类似案件愈演愈烈,时不时有人吃到了有毒的巧克力或是喝了含有杀虫剂的果汁。仅在一年时间内,全美就发生了270起食品、药品污染案,其中有36起被确认为故意投毒。
3 门禁系统软件设计
新的IC 卡完成注册才能正常使用,注册时需在信息管理模块中填入个人的基本信息,点击“生成卡号”。生成IC 卡号后将个人信息与生成的IC 卡编号写入对应的数据库。PC 机实时管理软件通过MAX232 芯片将写卡命令以及IC 卡号分别发送给单片机STC89C52,对空白IC 卡写入IC 卡号,完成后返回成功提示。
3.1 数据表设计
通过实际过程中数据的分析使用SQL Server2000 软件工具设计了数据库door,选取如下几项内容加以说明:
3.1.1 人员信息存储表:储存IC 卡个人的基本信息。其中,用户编号和个人编号、IC 卡编号都是唯一且一一对应的。
3.1.2 IC 卡信息表:Card 表存储了IC 卡的地区编号、密码、类别等信息,通过对IC 卡编号的查询可以和地区编号及其它表格进行互联。
3.1.3 Inout 表(进出时间表):记录了IC 卡的写入时间,通过IC卡编号的查询持卡人的信息,具体进出的时间等信息。
3.1.4 实时管理软件用户表:存储的是使用实时管理软件的人员信息以及使用时间等信息。
3.1.5 串口通信参数设置表:存储了在串口数据通信过程中所使用的一些参数。
3.2 系统参数管理模块
PC 端RS232 接口与MAX232 芯片进行串口通信的参数包括:通信端口的设置、波特率设置、停止位、奇偶校验位和数据位等。其中,串口通信端口设置为COM1,波特率设置为9600[6]。
3.3 信息管理功能模块
3.4 信息查询功能模块
通过信息查询模块调用数据库可以实现对持卡人的个人信息、IC 卡信息、进出信息等进行查询。
3.5 读卡器写卡功能模块
当MAX232 芯片接收到写卡指令后,读卡器根据生成的IC 卡编号写入新IC 卡中。写卡模块的部分代码如下:
3.6 读卡器读卡功能模块
当IC 卡进入射频工作范围时,读卡器自动读取IC 卡信息后传输到PC 机,实时管理软件通过查询功能判断IC 卡信息是否合法。读卡模块的部分代码如下:
4 门禁系统的功能测试
对门禁系统进行功能性测试以验证该系统能否实现基本功能满足实际需求。本次测试主要包括以下几个过程:
4.1 对空白的IC 卡进行注册。PC 机实时管理软件输入IC 卡编号、持卡人姓名等基本信息对空白的IC 卡进行注册。
4.2 在实时管理软件的信息管理界面输入持卡人信息,生成卡号。
4.3 将门禁控制系统通电,系统进入工作状态。将已注册的IC卡放入读卡器的工作区间,若IC 卡为已注册的IC 卡,显示屏上则显示IC 卡的地区编号和持卡人信息,如图2 所示:
图2 显示屏显示验证信息图
上述的功能测试通过完成IC 卡的注册和读卡过程验证了本文提出的简易IC 卡系统的设计可行性,基本满足了日常生活中人员的出入等安全方面的需求,具有一定的使用价值。
5 结论
本文结合实际生活需求,提出了一种实现信息管理、实时查询、液晶显示、蜂鸣报警等功能的简易IC 卡门禁系统。系统的硬件方面选取STC89C52 单片机作为主控模块的芯片;非接触式IC 卡的读写操作选用了MFRC500 芯片;通信模块为完成PC 端和单片机之间的通信选用MAX232 芯片;在报警模块中,采用由PNP 型晶体管组成晶体管驱动电路。在实时管理系统的软件设计中简单介绍了数据表设计、系统参数管理、信息管理、信息查询、写卡和读卡等模块,并给出了写卡和读卡的部分代码。最后,系统的功能测试验证了该门禁系统设计的可行性,基本满足了日常生活中人员的出入等安全方面的需求,具有一定的使用价值。
随着科技的快速发展,门禁系统也会向更智能化方向发展,尤其是以大数据为核心技术的门禁系统发展,如:人脸识别门禁系统、二维码识别门禁系统、指纹识别门禁系统等[7]。随着大数据技术的发展,智能化门禁系统将成为我们日常生活安全管理工作中重要的组成部分,而这些门禁系统将会更快捷更准确地识别人员的基本信息并将更好地服务社会。