基于STC89C52RC的智能电子锁设计
2021-09-10杨清志徐宏
杨清志 徐宏
【摘 要】 设计一种基于STC89C52RC单片机的廉价智能电子锁。采用单片机作为控制核心,可通过编程选择实现修改开锁模式和异常开锁报警等功能,相比于市场上同类产品,使用更灵活、安全性更高、成本更低,具有较高的实用价值。
【关键词】 指纹识别;矩阵键盘;STC89C52RC;报警
Design of An Intelligent Electronic Lock Based on STC89C52RC
Yang Qingzhi, Xu Hong
(Bozhou Vocational and Technical College, Bozhou 236800, China)
【Abstract】 This paper designs a cheap intelligent electronic lock based on STC89C52RC. Compared with the similar products in the market, this design adopts the one-chip computer as the control core. It has some practical functions, such as selecting and modifying the unlocking mode through programming and abnormal unlocking alarm. It has characteristics like flexibility of usage, high standard safety and low cost, thus holding high practical value.
【Key words】 fingerprint identification; matrix keyboard; STC89C52RC; alarm
0 引言
传统的机械锁或智能IC卡锁需要配备钥匙,使用不便,特别是对于实验室、办公室、机房等相对重要而门锁又较多的场所,管理人员往往需要配备大盘钥匙。工作人员时常会因为遗忘钥匙或IC卡损坏等原因而无法开门,同时还存在因丢失钥匙而造成的安全隐患。为了克服这一缺点,目前市场上已推出了无需利用钥匙开锁的指纹锁和电子密码锁,因其使用方便、安全高效而成为一种趋势。但目前市场上的指纹锁或电子密码锁价格普遍较高,且开锁模式单一、使用不够灵活[1-2]。针对这种情况,本文用FPM10A模块进行指纹采集,用矩阵键盘进行密码输入,用STC89C52RC单片机作为控制器,设计了一种廉价的智能电子锁。设计的电子锁成本较低、安全性能高,能实现异常开锁报警,同时预留了其他功能开发,具有较高的实用价值。
1 系统设计
本设计由指纹模块、密码键盘、功能切换按键、存储模块、主控单片机、声光报警器、液晶显示器以及电源模块等组成,系统结构如图1所示。其基本工作原理是:存储模块存储程序设置参数,包括开锁模式、指纹信息和密码信息。主控单片机将输入部分的输入信息,根据程序设置与存储信息进行对比、确认,然后将处理结果送给输出部分进行相应操作。其中,输入部分包括指纹信息获取模块、密码输入键盘和功能选择切换按键。为了开锁方便,系统默认首选指纹开锁,然后是密码开锁。若要进行其他操作,可按下功能切换键进入管理模式,此时需要输入超级密码,验证通过后可进行指纹录入与删除、开锁密码修改、临时开锁密码设置以及开锁模式修改等,比如为了增强安全性,可以将默认的“指纹或密码”的开锁方式修改为“指纹+密码”的开锁方式。控制部分采用STC89C52RC单片机作为控制核心,根据程序设置输入指令执行相应操作。输出部分包括报警器、显示器和继电器控制,报警器进行开锁异常情况报警,比如连续三次输入指纹或密码错误;显示器显示输入信息;继电器用于控制电磁锁开锁机构的动作。由于各个模块的工作电压不完全相同,由电源管理模块完成各模块的供电管理。
2 硬件选择与设计
2.1 指纹识别模块
本设计中指纹识别模块选用技术比较成熟的FPM10A型光学指纹识别模块[3],该模块图像录入快,存储容量大(最大可达880枚指纹信息),错误接受率 (False Acceptance Rate,FAR)<0.001%,错误拒绝率 False Rejection Rate,FRR)<1.0%,工作电压3.6 ~ 6V,设计中采用5.0V电压供电,其电路如图2所示。
2.2 密码键盘
本设计的密码键盘采用4×4矩阵键盘[4],各键代表的符号意义如图3所示,电路设计如图4所示。密码键盘工作原理是:第一步,判斷是否有按键。若有按键会使该键所在的行线和列线电平发生变化;第二步,判断按键所在位置。根据行线和列线电平变化,寻找该键所在位置;第三步,建码计算。根据各键所代表的符号及意义,执行相应操作,若按键为特殊功能键(“确定”、“取消”、“退出”、“重置”)会进行即时操作,其中“重置”为管理员模式,需要输入超级密码,然后进入管理模式。若按键为普通符号键(“0~9”及“*”和“#”)则按顺序排列记忆存储,直至按下“确认”键结束,然后与存储的密码进行对比确认,执行后续开锁、报警等操作。为了安全起见,若按键后超过10秒无操作,系统自动退出。
2.3 电磁锁控制模块
本设计采用继电器控制电磁锁锁舌的动作,电路设计如图5所示[5]。为了安全起见,保证电磁锁的可靠动作,设计采用电源适配器提供12V直流电压对电磁锁供电,继电器则采用5V直流电压供电。当接收到开锁指令后,单片机会通过P2.2口输出一个低电平信号使光耦得电导通,从而接通继电器工作,执行开锁操作。未接到开锁指令时,P2.2口为高电平,光耦不工作,电磁锁处于闭锁状态。
2.4 存储模块
本设计的存储模块采用AT24C02[6]。AT24C02采用低功耗CMOS工艺,具有100万次擦写周期,数据保存达100年,不会因为断电而丢失数据,完全满足设计需要,且价格相对较低。AT24C02模块的SDA(管脚5)和SCL(管脚6)分别于单片机的P3.5和P3.4口连接,连接电路如图6所示。
2.5 单片机及其外围电路
本设计没有太复杂的数据运算,但要求可靠性高。综合比较各种微控器,选用宏晶公司的8位增强型单片机STC89C52RC[7-8]。该单片机技术成熟、成本低,自带ADC,简化外围器件设计。信息存储采用AT24C02模块,液晶显示器采用LCD1602显示器,报警器采用声光报警,当输入指纹或密码连续三次错误时,输入模块强制退出,同时单片机会通过P2.1端口输出一个低电平信号使三极管Q2导通,接通声光报警器进行声光报警。
2.6 电源模块
本系统设计中,电磁锁采用12V电压供电,可直接采用电源适配器供电,单片机和继电器、显示器等外围器件采用5V电压供电,设计采用LM2596-5模块将电源适配器输出电压转化成5.0V电压[9]。
3 程序设计
3.1 默认解锁程序
考虑到指纹解锁快捷、方便,系统首选指纹解锁,如果指纹识别模块无动作则进入到密码解锁。指纹解锁中,如果指纹比对失败会通过液晶显示器进行提示,超过三次则关闭指纹识别模块。考虑到指纹模块可能会因为手指出汗等原因比对失败,此时不报警,提示选择输入密码解锁。密码解锁中,设置了6位由“0”~“9”及“*”和“#”12个符号组成的普通解锁密码和临时解锁密码,位数过低会降低安全性,位数过高又会影响工作效率与可靠性。若选择“重置”键则进入管理员模式,可进行密码修改、指纹录入与删除等操作,此时需要输入9位超级密码。无论是普通解锁密码、临时解锁密码还是超级密码,输入错误系统会进行提示,如果错误输入超过三次则自动关闭解锁系统,同时启动声光报警。声光报警器延时10秒退出,解锁系统关闭150秒后恢复待机状态,系统工作流程如图7所示。
3.2 重置与拓展功能
为了增加系统使用的灵活性,本系统设计的程序可以进行修改、重置。
(1)修改密码。在不太重要的场合,可以采用4位密码,快速高效。同样,在重要的场合可以采用9位密码及更多位数的超级密码。临时密码默认使用一次即失效,也可以改为按时间记忆,比如启动12小时后失效。
(2)开锁模式。在非常重要的场合,为了提高安全防护级别,可以采用“密码+指纹”的方式开锁。此时安全级别高,不设置临时密码,开锁时系统首先验证密码,三次错误即报警。然后再次验证指纹(管理员模式的超级密码除外),三次比对错误也报警。但“密码+指纹”的验证方式要确保指纹录入无误,手指不能有汗渍、油污及伤口等。
(3)功能拓展。由于采用单片机作为控制器,这种智能电子锁可以通过无线通信的方式与其他设备建立联系,实现遥控解锁。比如手机终端解锁、红外遥控器解锁等[10-11]。
4 系统测试
为检验设计的可靠性,进行了系统的硬件测试。针对预定的指纹解锁、密码解锁以及错误报警等功能进行逐一测试,结果显示,系统误动和报警器误报均为零,证明了系统工作的可靠性。
5 结语
本文设计的智能电子锁利用指纹或密码即可开锁,无需配备钥匙或IC卡等开锁装置,使用方便,符合门禁系统发展趋势;采用单片机作为控制核心,可以通过程序设定选择和修改开锁模式,使用灵活,安全性高;设计的智能锁利用单片机与外界的通信链接,很容易与智能家居、物联网、5G技术、大数据与区块链等深度融合,实现联网控制与报警等功能拓展,有着广阔的应用前景。
[参考文献]
[1] 张萍,马树军,史可福.基于51单片机的指纹電子密码锁的设计与实现[J].实验室研究与探索,2018(8):134-138+161.
[2] 李永伟.基于STC89C52的电子指纹密码锁设计[J].太原学院学报,2017(4):44-47.
[3] 杨鹏飞,聂亮,陈靖,等.基于STC89C52单片机的指纹密码锁系设计[J].传感器与微系统,2020(5):81-83+86.
[4] 刘志君,王亭.基于单片机的密码锁设计[J].辽宁科技学院学报,2017(12):7-9.
[5] 杨清志,王杰.基于SHT21的中药材仓库温湿度无线监控与自动调节系统设计[J].廊坊师范学院学报(自然科学版),2016,16(2):36-39.
[6] 徐金荣,高磊. 多功能生物识别智能锁系统设计与实现[J].电子技术与软件工程,2019(16):78-81.
[7] 杨清志,孙式运.基于热释电传感器多点监控与无线报警系统的设计[J].曲靖师范学院学报,2017(3):49-52.
[8] 杨清志,张喜红.基于STC89C52输液监测报警系统的设计与实现[J].廊坊师范学院学报(自然科学版), 2015,
15(6):51-54.
[9] 杨清志,蒋伟,许春雷.基于多智能体的交直流混合微电网监控设计与分层控制研究[J].高电压技术,2020,
46(7):2327-2339.
[10] 冯蓉珍. 基于51单片机和无线通信的红外智能密码锁设计 [J].甘肃科技纵横,2019(4):1-3.
[11] 鄢秋荣,马耀中,柏欢,等. 基于STM32单片机和移动通信模块的门户智能锁网络[J].实验室研究与探索,2016(3):115-118+146.