APP下载

基于MCU 的智能密码锁控制系统

2021-05-07孙鹏宇魏立明

北方建筑 2021年2期
关键词:密码锁液晶屏继电器

孙鹏宇,魏立明

(吉林建筑大学电气与计算机学院,吉林 长春 130118)

0 引言

智能密码锁是靠密码控制锁的正常工作,当人们输入密码的时候,采用电路进行开锁。智能锁的样式种类繁多:采用数字逻辑电路、采用FPGA 中VHDL 语言来控制、也有采用在电子行业中最基本的51 单片机驱动的。目前市场上应用较为广泛的智能锁都是以芯片为核心,通过编程使得软硬件结合实现智能锁的基本功能,以达到人们所需的基本要求。该智能锁的性能及安全性已经远远超过了传统的机械锁,并且该锁的特点在于保密性强,随机输入密码成功开锁的概率为零;可以随时修改自己设置的密码,从而防止密码被窃;无需像传统的机械锁携带钥匙才能开锁,操作性简单,使用的灵活性好并且寿命长。

1 系统简介及工作原理

1.1 系统简介

本文设计的电路是以STC89C52 为核心组成的闭环控制系统。利用单片机的灵活编程特点和I/O端口控制的准确性,从而实现智能密码锁的基本功能。该系统设计的总体框架如图1 所示。

1.2 主芯片的原理

图1 智能锁设计的总框图

本设计采用STC89C52,它是一款性价比高的芯片[1]。芯片中的掉电模式,该模式中除外部中断外,复位电路、晶体振荡器电路、定时器、串口等其他外部电路均处于停止工作状态。另外一种模式是休眠模式,该模式中相关的外围电路皆处于运作状态,单片机中一些没有接触到的存储器及寄存器里面的数值保持不变。因此,芯片正常工作时的功耗为4 mA~7 mA,在空闲模式时其功耗降至2 mA。STC89C52 的结构有40 个引脚,芯片的引脚可以分为电源引脚、时钟引脚、控制引脚。该芯片内部结构和引脚分配如图2 所示。

图2 STC89C52 引脚分配图

1.3 继电器的原理

本文使用的继电器主要用于解锁功能。它是一种电控装置,具有输入输出相互转换的关系特性。每当输入电压和输入电流达到一定值时,继电器就会被电路控制的输出电路断开或接通。继电器模块本身具有非常明显的特点,例如:占用空间小、使用寿命长、运行相对稳定等。该器件的内部是由3 个部分组成,即线圈、铁片、接触簧片。该器件的工作原理如下:插电时线圈就会自动产生电流从而发生磁现象,该器件当中的铁片会因为磁性的关系,自动把弹簧贴到铁片上,从而使继电器正常工作[2]。相反,当电源断开时,它们会互相排斥,从而达到电路通断的效果。该继电器的引脚如图3 所示。

图3 继电器引脚图

2 系统硬件电路设计模块

2.1 液晶屏显示设计模块

为了使密码锁的密码显示效果更好,本系统采用LCD12864 液晶显示器,本显示器自带中文库,显示时会更加简洁[3]。因此,本设计的密码显示模块采用液晶屏LCD12864 来完成。该液晶屏的工作原理是每当按下键盘上面的启动键时,液晶屏就会自行开启,使该显示处于开启状态。反之,按下关闭键盘后,屏幕变黑处于关闭状态。如果启动键和关闭键都没有按下去,液晶屏就会一直处于出厂时的状态。当智能密码锁进行开启时,只要按下开启键,利用矩阵键盘上的数字0~9 来输入自己所设置的密码,当按下相应的数字,液晶显示器就会自动显示出一个*,设置了多少位密码,该屏幕也会显示对应的个数。当密码输入完成后按下确认键时,若密码正确,该12864 型的LCD 显示屏会显示正确,从而会使单片机其中的引脚输出低电平,会与液晶显示屏模块相连的器件自动导通,从而使密码锁打开,一旦输入密码错误,显示不正确,此时单片机当中的引脚输出高电平,使得密码锁无法打开。因此,只要利用该显示模块,就可以完全知道该智能锁是否处于开锁状态。该液晶显示模块原理如图4 所示。

2.2 开锁设计模块

本文开锁模块采用继电器进行设计以实现模拟开锁,该模块主要是由电磁式继电器、三极管及电阻组成[4]。该电路的主要功能就是当密码输入正确后会实现开锁,本电路电阻的一个引脚与单片机其中的一个引脚相连接时,单片机产生低电平的时候,经过电阻和三极管的放大之后,从而驱动继电器中的电磁阀以实现开锁。当输入密码正确后,单片机才能将继电器控制,继电器中的阀门打开之后使电磁片下压,从而使智能密码锁开锁,反之一直处于初始状态[5]。开锁模块的核心原理如图5 所示。

图4 12864 型LCD 液晶显示模块原理图

图5 继电器驱动开锁模块原理图

3 系统软件设计

3.1 主程序模块设计

本文主要采用C 语言来进行程序设计,利用51单片机的编译器完成。该智能密码锁的软件设计主要是由主程序、矩阵键盘程序、报警程序、密码设置程序、显示程序等组成,其整体流程如图6 所示。

3.2 开锁程序模块设计

本模块当中,开锁的程序也是跟之前一样,当密码输入完成后,单片机会自动判断出密码正确与否,要是输入密码正确的话,继电器就相当于模拟成开关,会自动的开锁,要是输入的密码不正确且>3 次,单片机中的报警模块也会自动发生报警,该密码锁的程序流程如图7 所示。

图6 智能密码锁整体流程图

图7 智能锁程序流程图

4 系统调试

程序调试及编译过程中如果出现错误需要订正,根据对话框的错误提示双击,自动会显示错误的地方然后修改,一直修改到正确为止,但由于程序的复杂性,若出现了小警告,可是没有出现错误,在此也可以忽略小警告,如图8 所示。

图8 文件调试成功

5 结论

本文采取STC89C52 为核心模块进行智能密码锁的控制设计,设计中将各个模块电路区分开以形成模块化,使得设计简洁明了。硬件中对开锁模块、继电器模块、液晶显示屏等进行详细阐述,软件程序中对主程序、开锁程序的流程图进行了说明。最后进行系统编译与调试,为智能密码锁的应用奠定理论基础。

猜你喜欢

密码锁液晶屏继电器
继电器控制及诊断在电动汽车动力电池包的应用
关于汽车继电器的解析
继电器在电气工程自动化低压电器中的应用探讨
基于FPGA的车内环境监测系统设计
一种消除液晶屏高温MURA的工艺研究
开启密码锁
基于单片机的点餐系统硬件设计
基于机器视觉的液晶屏字符缺陷检测系统设计
电磁继电器示教板