基于单片机控制的智能门锁设计

2024-02-05 09:20

本文主要是介绍基于单片机控制的智能门锁设计,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

摘要:阐述基于STC15F2K60S2单片机控制的智能门锁设计,包括CPU控制单元模块、液晶显示LCD、 Wi-Fi模块,实现远程控制开门,密码开门的智能化功能。

关键词:控制技术,单片机,智能门锁,远程控制。

0引言

    「J锁是每个家庭必备的家居产品,目前大部分家庭使用的传统门锁,不仅每天记得带钥匙,还要防止外出时把钥匙弄丢了。为了更好地解决这一问题,实现家居的智能化,设计在传统机械门锁的基础上改造成智能门锁。能实现输入密码或者手机远程来控制电路工作,从而控制舵机的摆动角度,完成开关门。从而更好地体验智能科技,改变生活。

1智能门锁的功能

    本设计硬件采用了STC15F2K60S2单片机为主控芯片,LCD1602为显示芯片,以点灯blinker App作为上位机软件,用来发送信号给ESP8266Wi-Fi模块接收信号,供单片机分析、处理。以AT24C02作为密码存储芯片,依靠程序编程,可以实现以下功能:  C4 )输入正确密码开门:C2)使用手机App软件远程开关门:<3)当在键盘中输入的密码是错误时,蜂鸣器鸣叫发出报警,如果输入密码连续错误三次以上,蜂鸣器长鸣发出报警并锁定键盘:<4)用户可以随时用手机重置密码来增加密码的安全性。

2系统总体设计

    本设计主要由电源模块、CPU控制单元模块,液晶显示屏LCD1602, Wi-Fi模块、键盘模块、报警电路和密码存储芯片等部分组成,电源部分采用升压充电一体电源电路升压到5V进行供电。采用矩阵键盘来输入密码,然后将输入的密码送给单片机,单片机将输入的密码后与密码存储芯片中保存的密码进行对比,判断输入的密码是否正确,然后将信号输出给报警电路和舵机。Wi-Fi模块用于远程控 制的功能实现,用户通过点灯blinker App发送信 号给Wi-Fi模块,单片机接收用户发送的信号,进 行分析处理后将引脚的高低电平传给舵机电路,从 而控制舵机的转动角度,实现开关门。在实际使用 时需要将舵机与传统门锁连接起来,由舵机转动的 角度带动门的开关。系统总体设计的框图如图1。

3  硬件设计

硬件设计考虑到是在传统门锁的基础上改造, 尽可能利用已有的条件和材料进行设计与制作, 主要采用的硬件有以下几个模块:CPU控制单元模 块、电源电路、Wi-Fi模块、矩阵键盘、AT24C02密 码存储模块、LCD1602液晶显示屏等。
(1)电源电路。考虑智能门锁的便利性和实 用性,为了实现电路更高的集成度,电源的设计采 用充电升压一体芯片TP5400。该芯片可以对电池充 电和升压放电的作用,并可以为电路提供1A的充电 电流。电源电路的充电部分是采用了TP5400芯片的 PROG引脚与地之间连接的电阻器来设定,充电状态STDBY进行反馈充电状态,升压电路是由电感、二 极管和电容完成的,电感有储存能量的作用,将其 与芯片的输入端电源相连,共同泄放,可以实现升 压的作用。
(2)Wi-Fi模块。采用手机控制的智能门锁具 有更完善、更便利的保护机制,使用智能手机下载 App进行Wi-Fi远程控制门锁的开关,用户及授权过 的用户家人不仅可以远程开关门,还可以及时掌握 门锁的开关及上锁情况。采用blinker App发送信 号给Wi-Fi模块,Wi-Fi模块接收信号,供单片机分 析、处理后通过串口指令来控制舵机模块,从而实 现自动开关门的功能。本设计的Wi-Fi模块主要的 芯片是ESP8266芯片,该芯片具有成本较低、性能 稳定的优点,兼容3.3V与5V的单片机系统,而且内 置TCP/IP协议栈,可以实现电路中串口与Wi-Fi之 间的转换。
(3)矩阵键盘模块。智能门锁依靠的是键盘 输入密码,密码键从“0”~“9”,还有确认与取 消等其他功能键,需要键盘的按键数量较多。而矩 阵键盘由行线和列线组成,每个按键连接在行线与 列线在交叉处,行线一端接按键的触点,一端接到 单片机的P1口低位。列线的一端接按键的另一个触 点,一端接到单片机P1口高位。这样可以接四条行 线,四条列线。那么单片机的一个端口可以构成16 个按键的矩阵键盘,通过程序对键盘的按键功能进 行设计。
(4)密码存储芯片。本设计采用的是AT24C02 芯片作为密码存储芯片,该芯片是低功耗CMOS型 EEPROM,可存储密码100年,也可以重写擦写密 码,擦写次数高达10000次,体积小,性能稳定, 断电后还能保存密码等特点。
(5)显示部分。为了使智能门锁密码显示效 果好,方便操作,采用的是液晶显示屏LCD1602代 替八段数码管。这种液晶显示屏可以显示字母、 数字、符号等等,还能够同时显示32个字符, LCD1602总共有16个管脚,其中RS、R/W、E这三个 管脚是单片机编程显示器初始化、写命令、写数据 比较重要的管脚。实现的显示任务是智能门锁上电 后,显示屏显示“welcome”进行初始化。在键盘 中每按一个键盘输入密码时,显示屏显示相应的数 字、字母或者符号,密码输入完成后,按下#号键 进行确认。然后单片机对输入的密码与存储的密码 进行对比,当输入密码正确时,单片机的P2.0口输 出低电平,三极管Q1导通,继电器吸合,门锁电路 打开。单片机的P2.1口连接了一个蜂鸣器,当输入 密码错误时单片机的P2.0口输出高电平,门锁电路 断开,P2.1口输出低电平,蜂鸣器响发出报警。当 密码输入连续错误三次,蜂鸣器长鸣发出报警
(6)CPU控制单元模块。CPU控制单元是智能 门锁的核心控制单元,采用STC15F2K60S2芯片作 为控制芯片。因该芯片是内部起振,不需要外接晶 振,加上两个电容就形成一个单片机最小系统。整 体的电路原理图设计如图2所示。

4  软件设计

根据硬件模块电路分析,采用Proteus仿真软 件绘制智能门锁整体的电路原理图,按照门锁的功 能要求,采用C语言编写程序,利用模块化调试的 方式,将编写完成的程序编译通过后,导入仿真软 件进行程序的调试。仿真调试成功后,下载到芯片 中,进行硬件调试。

5  结语

随着科技的进步,门锁的发展也越来越智能 化。在传统锁的基础上,加了Wi-Fi和键盘来控 制门锁的开启,大大地提高了锁的便利性。采用  STC15F2K60S2单片机作为主控芯片,采用C语言的 编写程序并结合外围的键盘输入、显示、报警、开 锁等电路设计的一款智能门锁,可应用于住宅、办 公室等场所,本设计还具有使用手机远程开关门, 按键输入密码,输入密码错误报警,修改密码等多 种功能,实用性比较强,有广泛的市场前景。

这篇关于基于单片机控制的智能门锁设计的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/680464

相关文章

Python实现局域网远程控制电脑

《Python实现局域网远程控制电脑》这篇文章主要为大家详细介绍了如何利用Python编写一个工具,可以实现远程控制局域网电脑关机,重启,注销等功能,感兴趣的小伙伴可以参考一下... 目录1.简介2. 运行效果3. 1.0版本相关源码服务端server.py客户端client.py4. 2.0版本相关源码1

Spring Security 基于表达式的权限控制

前言 spring security 3.0已经可以使用spring el表达式来控制授权,允许在表达式中使用复杂的布尔逻辑来控制访问的权限。 常见的表达式 Spring Security可用表达式对象的基类是SecurityExpressionRoot。 表达式描述hasRole([role])用户拥有制定的角色时返回true (Spring security默认会带有ROLE_前缀),去

不懂推荐算法也能设计推荐系统

本文以商业化应用推荐为例,告诉我们不懂推荐算法的产品,也能从产品侧出发, 设计出一款不错的推荐系统。 相信很多新手产品,看到算法二字,多是懵圈的。 什么排序算法、最短路径等都是相对传统的算法(注:传统是指科班出身的产品都会接触过)。但对于推荐算法,多数产品对着网上搜到的资源,都会无从下手。特别当某些推荐算法 和 “AI”扯上关系后,更是加大了理解的难度。 但,不了解推荐算法,就无法做推荐系

嵌入式QT开发:构建高效智能的嵌入式系统

摘要: 本文深入探讨了嵌入式 QT 相关的各个方面。从 QT 框架的基础架构和核心概念出发,详细阐述了其在嵌入式环境中的优势与特点。文中分析了嵌入式 QT 的开发环境搭建过程,包括交叉编译工具链的配置等关键步骤。进一步探讨了嵌入式 QT 的界面设计与开发,涵盖了从基本控件的使用到复杂界面布局的构建。同时也深入研究了信号与槽机制在嵌入式系统中的应用,以及嵌入式 QT 与硬件设备的交互,包括输入输出设

让树莓派智能语音助手实现定时提醒功能

最初的时候是想直接在rasa 的chatbot上实现,因为rasa本身是带有remindschedule模块的。不过经过一番折腾后,忽然发现,chatbot上实现的定时,语音助手不一定会有响应。因为,我目前语音助手的代码设置了长时间无应答会结束对话,这样一来,chatbot定时提醒的触发就不会被语音助手获悉。那怎么让语音助手也具有定时提醒功能呢? 我最后选择的方法是用threading.Time

怎么让1台电脑共享给7人同时流畅设计

在当今的创意设计与数字内容生产领域,图形工作站以其强大的计算能力、专业的图形处理能力和稳定的系统性能,成为了众多设计师、动画师、视频编辑师等创意工作者的必备工具。 设计团队面临资源有限,比如只有一台高性能电脑时,如何高效地让七人同时流畅地进行设计工作,便成为了一个亟待解决的问题。 一、硬件升级与配置 1.高性能处理器(CPU):选择多核、高线程的处理器,例如Intel的至强系列或AMD的Ry

智能交通(二)——Spinger特刊推荐

特刊征稿 01  期刊名称: Autonomous Intelligent Systems  特刊名称: Understanding the Policy Shift  with the Digital Twins in Smart  Transportation and Mobility 截止时间: 开放提交:2024年1月20日 提交截止日

基于 YOLOv5 的积水检测系统:打造高效智能的智慧城市应用

在城市发展中,积水问题日益严重,特别是在大雨过后,积水往往会影响交通甚至威胁人们的安全。通过现代计算机视觉技术,我们能够智能化地检测和识别积水区域,减少潜在危险。本文将介绍如何使用 YOLOv5 和 PyQt5 搭建一个积水检测系统,结合深度学习和直观的图形界面,为用户提供高效的解决方案。 源码地址: PyQt5+YoloV5 实现积水检测系统 预览: 项目背景

基于51单片机的自动转向修复系统的设计与实现

文章目录 前言资料获取设计介绍功能介绍设计清单具体实现截图参考文献设计获取 前言 💗博主介绍:✌全网粉丝10W+,CSDN特邀作者、博客专家、CSDN新星计划导师,一名热衷于单片机技术探索与分享的博主、专注于 精通51/STM32/MSP430/AVR等单片机设计 主要对象是咱们电子相关专业的大学生,希望您们都共创辉煌!✌💗 👇🏻 精彩专栏 推荐订阅👇🏻 单片机

【C++学习笔记 20】C++中的智能指针

智能指针的功能 在上一篇笔记提到了在栈和堆上创建变量的区别,使用new关键字创建变量时,需要搭配delete关键字销毁变量。而智能指针的作用就是调用new分配内存时,不必自己去调用delete,甚至不用调用new。 智能指针实际上就是对原始指针的包装。 unique_ptr 最简单的智能指针,是一种作用域指针,意思是当指针超出该作用域时,会自动调用delete。它名为unique的原因是这个