王小慧 徐鹏飞
摘要:本文介绍了新时代门锁设计的背景,指纹识别,按键密码锁,RFID射频识别的基本知识,然后对新时代门锁的硬件系统、软件系统和实现方案进行了详细的介绍。本系统实现的是一个基于单片机的新时代门锁系统,其中硬件主要由STC89C52单片机、指纹识别模块、RFID射频、矩阵键盘、1602液晶显示屏、电源等组成。系统软件主要由指纹识别程序、RFID射频程序,键盘扫描程序、1602液晶显示程序等组成。
关键词:单片机;指纹识别;RFID射频;矩阵键盘
中图分类号:TP311 文献标识码:A
文章编号:1009-3044(2020)25-0216-02
1新时代门锁原理
该设计用单片机作为控制中心,用射频识别模块识别IC卡,指纹验证身份,继电器模块模拟电路的开关闭合,通过按键和显示屏来操作门锁。
RFID应用系统有标签和读写器。读写器在固定范围内产生电磁场,标签在电磁场区域感应到读写器发射出的信号,标签发送产品信息,读写器接收标签发送过来的数据后进行解码校验数据的正确性。
指纹识别首先要经由指纹采集仪来采集我们需要的指纹图像,然后处理这个指纹图像,再根据纹型特征对这个指纹进行区别,之后根据指纹的细节特征点进行提取,最后则是对实时采集的指纹与数据库中已有的指纹进行一一匹配。
密码技术是对安全提供的逻辑保障技术同时也作为信息安全的核心技术。密码技术的核心是密钥和算法,密码机制是密钥和数据加密与数据解密的两者相互结合组合而成。电子密码技术是一种通过密码输入来控制系统或是控制电路的一种密码技术。
2 硬件介绍和设计
系统硬件主要有单片机、12864液晶屏幕、AS608指纹识别模块、射频装置模块RC522、按键模块、电子锁、电源电路、蜂鸣器等组成。系统原理图如图1所示。
本次设计的主控CPU芯片为STC89C52,主要是对其他硬件进行运算和控制。采用12864液晶显示屏作为系统的显示模块,采用AS608模块、RC522模块、键盘模块作为输入设备,输入的数据通过单片机进行处理后做出反应并通过显示屏、电子锁、蜂鸣器表现出来。AS608模块采用8pin的控制接口、供电电压为3.3V、采用串口通讯;当读卡器检测到IC卡时,因为发生磁/电信号的变更所以会产生压值,然后读卡器会解码IC卡并将数据传输到单片机处理并且保存数据信息;本设计采用了矩阵按键的设计方式,采用软件消抖的方法来解决按键抖动的影响,使用逐行扫描法判断哪一个按键被按下。
3 软件设计
以下是该系统的軟件流程图。系统启动后,首先初始化各模块,然后自动进入按键密码、IC卡、指纹识别的等待模式。按键识别,用户可以输入密码进行密码识别,如果用户输入的密码是正确的密码,门将会自动打开,液晶屏幕上会有提示;如果用户输入的密码是错误的密码,液晶屏幕上也会有相应的提示,蜂鸣器会响一声,用户初始化密码为000000;IC卡识别,管理员对用户IC卡信息进行录入,然后用户可以直接用IC卡进行刷卡进入,液晶会显示对应的卡号,系统门会自动打开,并且蜂鸣器和LED灯会进行提示;指纹识别需要预先存储指纹特征,开门时用手指接触指纹识别器,STC89C52单片机向指纹识别模块发出指纹对比的命令,指纹识别模块对指纹进行采集并获取其特征值,然后将开门者的指纹与数据库中的指纹进行对比。如果指纹特征值符合,则单片机发送确认指令分别给液晶显示模块和门控装置模块处理操作,并且蜂鸣器和LED灯会进行提示,如果指纹特征不符合,则不进行任何处理。主程序流程图如图2所示。
RFID模块通过芯片对完成数据的读取、修改和储存等操作,并且能信号送回读写器,以此完成一套读写操作流程。通常情况下我们使用的读写器是由单片机、天线、特用智能模块组合而成的,并且还配有与PC的通讯接口、I/O口、打印口等。RFID模块的设计流程为开始寻卡,寻卡结束后判定卡的操作,是写卡还是读卡,在写卡过程中要获取管理员权限,只有获取管理员权限才能对IC卡进行操作,读卡时若数据库中有此卡的数据信息则可以开锁否则开锁失败。卡片是否开锁成功的具体设计如下:首先用while语句等待卡片进行开锁,当判断出有卡片的同时用uchar IC_READ( void )语句读卡,然后用void checkcard(void)语句校验卡。随后使用PutStr和Write语句显示门已打开和开门的卡号,然后进行一个delay延时,随后使用PutStr回到初始界面。else语句代表数据库中没有此卡的信息,此时使用PutStr和Write语句显示卡未注册和卡号,然后进行一个delay延时,随后使用PutStr回到初始界面。
指纹录入首先要采集指纹,将这些采集的指纹分类并提取指纹特征值,然后将这些特征信息录入到我们建成的指纹库中,把录入的指纹编辑存档并给它们相应的编号。每录入一个指纹后,再根据其ID号顺序,自动存储FLASH存储芯片中。指纹开锁就是新录入指纹与数据库中已有指纹匹配的过程,只有指纹有效且与数据库中指纹匹配门锁才会打开。指纹是否开锁成功的具体设计如下:首先用while语句等待指纹进行开锁,当判断出有指纹的同时用SFG_identify()语句检测指纹,用int_stdcallPatternMatch()语句进行指纹匹配,匹配成功后使用PutStr和Write语句显示门已打开和开门的指纹号,然后进行一个delay延时,随后使用PutStr回到初始界面。匹配不成功时使用PutStr和Write语句显示没有搜索到指纹和请重新按手指,然后进行一个delay延时,随后使用PutStr回到初始界面。
本系统的键盘模块设计流程大致如下,首先要对按键模块进行初始,这一步骤不能缺少,此时所有按键所在的位置的行线和列线皆是高电平,这时只需等待按键被按下再做出相应反应,当有按键被按下的时后通过电平检测可以判断出是否有按键被按下并且能够找到具体是哪一个按键被按下,随后进行消除抖动再对按键进行分析,然后再次等待按键被按下,具体步骤和上述一样操作。
4 系统调试
给系统和各个模块上电。按下指纹录入按键,用指纹库中的手指指纹接触指纹模块,查看指纹录入灯和蜂鸣器是否正常显示,若正常显示则指纹录入成功。返回正常工作界面,用手指接触指纹模块,如果门能够正常启动,并且延时关闭,则该装置运行完好。在正常工作界面中拿张已经注册过的IC卡放在射频模块上,液晶显示对应的卡号,如果门能够正常启动,并且延时关闭,则该装置运行完好。在正常工作界面中在矩阵键盘中输入门禁密码,并且按确定键结束,液晶是否显示对应的密码位数,如果门能够正常启动,并且延时关闭,则该装置运行完好。如果门锁都能正常打开,说明该整个系统功能都能正常使用。经过多次的调试,最终新时代门锁系统顺利实现。
5 总结
本文主要介绍了新时代门锁系统,利用指纹识别技术的触摸式感应方式和步进马达的门控装置,实现指纹的采集识别与门控开关效应;利用RFID射频技术的原理与应用,实现了IC卡的读写。硬件电路与软件系统操作简单且实用。通过测试各个模块正常运行,能够完整地实现三种不同的开锁方式。管理员可以自己更改密码、指纹数据信息以及IC数据卡信息,这样的设计是本系统的亮点。由于知识技能储备受限和时间原因,该新时代门锁系统功能还有待改进。
参考文献:
[1]张洁.基于RDID技术的智能门禁系统的设计[D].石家庄:河北科技大学,2010.
[2]安静宇.基于非接触式IC卡门禁系统的设计[D].西安:西安科技大学,2006.
【通联编辑:梁书】