基于单片机的自动感应门设计
博主主页:单片机辅导设计
博主简介:专注单片机技术领域和毕业设计项目。
主要内容:毕业设计、简历模板、学习资料、技术咨询。
文章目录
- 主要介绍
- 一、自动感应门设计的功能概述
- 二、系统总体方案
- 2.1系统的总体计划
- 2.2元器件的介绍
- 2.2.1单片机的定义及引脚简单介绍
- 三、控制系统设计
- 4.1 主程序的流程图
- 总结
- 目录
主要介绍
本次毕业设计主要采用单片机AT89C51为控制核心,热释电型红外传感器,电机等相结合的设计作品。本次设计产品充分发挥了单片机的性能,其优点为电路简单,软件功能具备,控制系统完善等。
关键词: 自动感应门 单片机 电机 热释电红外传感器
一、自动感应门设计的功能概述
本次设计的自动门感应门主要有以下3点功能:
(1)当有人进出门的时。当人走到离自动门一定的距离时,安装在自动门上的热释红外线传感器信号检测器探头检测到有人移动时,就会传输信号给单片机,经过软件编译后,把控制信号传输给电机,进行开门。
(2)当人离开后延迟关门。当然人离开后,热释红外线传感器信号检测器没有检测到有人在离门一定的范围内移动时,在延迟几秒后,传输信号给单片机,经过软件编译后,把控制信号传输给电机,进行关门。
(3)当在关门的时候检测到来人时,将立即开门。当关门时,热释红外线传感器信号检测器探头突然检测到在离门一定的范围内有人移动,则传输信号给单片机,经过软件编译后,把控制信号传输给电机,立刻停止关门,进行开门。
二、系统总体方案
2.1系统的总体计划
本次毕业设计主要是以单片机为核心的自动感应门。当自动感应门在工作的时候,单片机将不间断的检测红外检测电路的输出信号,然后把红外检测电路的输出信号传输给单片机,经过软件的编译后,再把控制信号传输给电机,电机根据控制信号带动自动门运行。当系统检测到红外检测电路的输出信号发生改变时,就转换的对应的模式。如自动门在关门的过程中遇到阻碍时,自动门将立即开门。本毕业设计系统的原理方框图如2-1所示。

2.2元器件的介绍
2.2.1单片机的定义及引脚简单介绍
AT89C51是一种高性能的CMOS8位单片机,其中AT89C51内含有128bytes的随机储存器(RAM)和4K bytes的可反复擦写的只读22程序存储器(PEROM)。AT89C51采用非易失性储存、高密度的生产技术,它与标准的MCS-51系列的单片机指令和引脚是一样的,所以可以兼容MCS-51系统,AT89C51主要优势是内置Flash储存单元和通用8位中央处理器(CPU)。AT89C51的引脚图为图2-2-1:

图2-2-1 AT89C51引脚图
三、控制系统设计
本次毕业设计的软件方面采用C语言编程。这个控制程序分为手动模式和自动模式两个方面。当在手动模式的时候,需要自己进行控制电机开关门;在自动模式时,由热释红外线传感器信号检测器检测到有人进出时,电机正传自动开门,在人离开后,延迟10秒钟后,没人情况下电机反转自动关门,若是有人进出电机将继续延迟,直到10内检测不到人,电机反转自动关门,无需手动控制。
4.1 主程序的流程图

图4-1主程的流程图

总结
在这次毕业设计的这段时间里,我从中学到了许多的知识,不像是在书上说的那样简单,在自己操作起来,就会发现中间的困难。从一开始的收集相关的资料、购买所需的元件器材,再到中间的PCB原理图的绘制、万能板的焊接、程序的设计修改,最后进行整体的调试和修改。这些都使我学到了好多书上学不到东西,成长了好多。在查找各种资料文献的时候,我熟练的运用学过的信息检索方法,让我从资料库中快速找到我所需的资料;在焊接电路的时候教会了细心,任何一次的错误都有可能使自己的努力付之一炬,只能细心在再心细,不能犯一丝一毫的错误;在调试过程培养了我的坚持能力,在不断地面对失败后,重新审视自己的设计,不断的修改,这个过程打磨了我的性格,使自己更加的沉稳。这次毕业设计的制作不仅扩充了我的知识层面,还培养了实践能力,教会了我做事的方法。在此次毕业设计的过程里遇到各种困难,自己也在不断的攻克困难中飞速的成长,让我能够以更好地姿态走向社会,迎接美好的未来。
本次毕业设计以89C51为核心的自动门感应门,它的硬件设计简单,易于开发,并格低廉,安全可靠,操作方便,在以后市场上的发展空间巨大。
目录
目录
1绪论 1
1.1自动感应门设计的背景 1
1.2自动门的发展历史 1
1.3自动感应门设计的功能概述 1
2 系统总体方案 3
2.1系统的总体规划 3
2.2元器件介绍 3
2.2.1单片机的引脚及定义介绍 3
2.2.2热释电红外传感 9
3 硬件设计 11
3.1基本的单片机系统 11
3.2 红外检测电路 11
3.2.1 放大信号电路 12
3.3 步进电机电路 14
3.4 LCD液晶显示器简介 15
3.4.1 液晶原理介绍 15
3.4.2液晶模块简介 16
3.4.3液晶显示部分与89C51的接口 17
3.5键盘模块设计 18
4控制系统软件设计 19
4.1 主程序设计 19
4.1.1 主程序流程图 19
4.2调试 20
4.2.1 硬件调试 20
4.2.2 软件调试 20
4.2.3 调试中出现的问题 20
5总结与展望 22
致谢 23
参考文献 24
相关文章:
基于单片机的自动感应门设计
博主主页:单片机辅导设计 博主简介:专注单片机技术领域和毕业设计项目。 主要内容:毕业设计、简历模板、学习资料、技术咨询。 文章目录 主要介绍一、自动感应门设计的功能概述二、系统总体方案2.1系统的总体计划2.2元器件的介绍2.2.1单片机的…...
【密评】商用密码应用安全性评估从业人员考核题库(二十-完结)
商用密码应用安全性评估从业人员考核题库(二十-完结) 国密局给的参考题库5000道只是基础题,后续更新完5000还会继续更其他高质量题库,持续学习,共同进步。 4640 单项选择题 在测评过程中遇到的PEM编码格式,…...
Tigger绕过激活锁/屏幕锁隐藏工具,支持登入iCloud有消息通知,支持iOS12.0-14.8.1。
绕过激活锁工具Tigger可以用来帮助因为忘记自己的ID或者密码而导致iPhone/iPad无法激活的工具来绕过自己的iPhone/iPad。工具支持Windows和Mac。 工具支持的功能: 1.Hello界面两网/三网/无基带/乱码绕过,可以完美重启,支持iCloud登录、有消…...
VueX mapState、mapGetters、mapActions和mapMutaions 的使用
一、mapState和mapGetters 如果我们想要读取VueX中的State数据的Getters数据时,需要使用$store.state.数据名 和 $store.getters.数据名。 当我们State和getters中的数据多了以后,书写会很麻烦: 如果我们想要使用方便可以配置计算属性来简化…...
GMP标准的制药级层流细胞实验室核心要点
随着生物医药技术的飞速发展,制药行业对细胞疗法和细胞药物的需求日益增长。这推动了制药级层流细胞实验室的发展,其作为生物医药研发的关键基础设施,为制药企业提供了进行细胞培养、基因编辑、疫苗研发等工作的高效平台。本文就围绕GMP标准的…...
[免费] 适用于 Windows的10 的十大数据恢复软件
Windows 10是微软开发的跨平台和设备应用程序的操作系统。它启动速度更快,具有熟悉且扩展的“开始”菜单,甚至可以在多种设备上以新的方式工作。所以,Windows 10非常流行,我们用它来保存我们的照片、音乐、文档和更多文件。但有时…...
【halcon踩坑】区域为空但个数是1
背景 我在做瑕疵检测的时候,通过计算瑕疵区域的个数(count_obj())是否为0,来判断是否有瑕疵,如果不为0,那边我就会在图片上标记这个瑕疵的位置! 但是有一次我发现明明没…...
第二十四章 BEV感知系列一(车道线感知)
前言 近期参与到了手写AI的车道线检测的学习中去,以此系列笔记记录学习与思考的全过程。车道线检测系列会持续更新,力求完整精炼,引人启示。所需前期知识,可以结合手写AI进行系统的学习。 BEV感知系列是对论文Delving into the De…...
C++入门讲解第一篇
大家好,我是Dark Fire,终于进入了C的学习,我知道面对我的将是什么,就算变成秃头佬,也要把C学好,今天是C入门第一篇,我会尽全力将知识以清晰易懂的方式表达出,希望我们一起加油&#…...
项目实战:分页功能实战
1、在index.html添加点击事件 <!DOCTYPE html> <html lang"en"> <head><meta charset"UTF-8"><title>Title</title><link rel"stylesheet" href"style/index.css"><script src"scr…...
AI人工智能大模型应用如何落地?
人工智能大模型是近年来人工智能领域的一项重要技术突破,其具备强大的计算能力和学习能力,能够处理大规模的数据和复杂的任务。 然而,要将人工智能大模型应用落地并实现实际价值,还需要克服一些挑战和问题。 首先,人…...
【优选算法系列】第一节.栈的简介(1047. 删除字符串中的所有相邻重复项和844. 比较含退格的字符串)
文章目录 前言一、删除字符串中的所有相邻重复项和 1.1 题目描述 1.2 题目解析 1.2.1 算法原理 1.2.2 代码编写二、比较含退格的字符串 2.1 题目描述 2.2 题目解析 2.2.1 算法原理 2.2.2 代码编写总结 前言 …...
PostgreSQL逻辑管理结构
1.数据库逻辑结构介绍 2.数据库基本操作 2.1 创建数据库 CREATE DATABASE name [ [ WITH ] [ OWNER [] user_name ] [ TEMPLATE [] template ] [ ENCODING [] encoding ] [ LC_COLLATE [] lc_collate ] [ LC_CTYPE [] lc_ctype ] [ TABLESPACE [] tablespace ] [ CONNECTION L…...
高匿IP有什么作用
在互联网的蓬勃发展中,IP地址作为网络通信的基础,一直扮演着举足轻重的角色。而在诸多IP地址中,高匿IP地址则是一种特殊类型,其作用和价值在某些特定场合下尤为突出。那么,高匿IP地址究竟有哪些用处呢? 首先…...
Ubuntu Linux 23.10安装manimgl
1. 简介:manimgl是使用Python语言开发数学动画的一个库。用来创建数学动画。版本有很多,今天介绍manimgl,他要依赖OpenGL库。 2. 打开Shell命令行,连接上互联网。先安装opengl。 Shell>>> sudo apt install l…...
modesim verilog仿真验证基本流程(新建工程方式)
文章目录 环境搭建一、在modelsim里创建一个新的工程二、新建verilog设计文件及仿真激励文件三、仿真结果本文演示如何使用modelsim新建工程进行功能仿真。 环境搭建 本文中采用的modelsim版本如下: modelsim altera 10.3d一、在modelsim里创建一个新的工程 打开modelsim软…...
SpringBoot+AOP+自定义注解,优雅实现日志记录
文章目录 前言准备阶段1、数据库日志表2、自定义注解编写3、AOP切面类编写4、业务层4.1、Service 层:4.2 Service 实现层: 5、测试 前言 首先我们看下传统记录日志的方式是什么样的: DeleteMapping("/deleteUserById/{userId}") …...
多式联运路径优化问题:基于拓扑排序的遗传算法染色体编码
一、什么是拓扑排序 在图论中,拓扑排序(Topological Sorting)是一个有向无环图(DAG, Directed Acyclic Graph)的所有顶点的线性序列。且该序列必须满足下面两个条件: 每个顶点出现且只出现一次。若存在一…...
Go 方法集合与选择receiver类型
Go 方法集合与选择receiver类型 文章目录 Go 方法集合与选择receiver类型一、receiver 参数类型对 Go 方法的影响二、选择 receiver 参数类型原则2.1 选择 receiver 参数类型的第一个原则2.2 选择 receiver 参数类型的第二个原则 三、方法集合(Method Set࿰…...
Unity AudioClip和PCM音频数据的转化
1 PCM音频数据转化AudioClip 假设PCM音频当前是16Khz采样率,16bit数据 byte[] pcmBytesnew byte[10240];float[] floatClipData new float[audioBytes.Length/2];for (int i 0; i < audioBytes.Length; i2){ floatData[i / 2] (short)((audioBytes[i 1] <…...
SkyWalking 10.2.0 SWCK 配置过程
SkyWalking 10.2.0 & SWCK 配置过程 skywalking oap-server & ui 使用Docker安装在K8S集群以外,K8S集群中的微服务使用initContainer按命名空间将skywalking-java-agent注入到业务容器中。 SWCK有整套的解决方案,全安装在K8S群集中。 具体可参…...
【人工智能】神经网络的优化器optimizer(二):Adagrad自适应学习率优化器
一.自适应梯度算法Adagrad概述 Adagrad(Adaptive Gradient Algorithm)是一种自适应学习率的优化算法,由Duchi等人在2011年提出。其核心思想是针对不同参数自动调整学习率,适合处理稀疏数据和不同参数梯度差异较大的场景。Adagrad通…...
【Java学习笔记】Arrays类
Arrays 类 1. 导入包:import java.util.Arrays 2. 常用方法一览表 方法描述Arrays.toString()返回数组的字符串形式Arrays.sort()排序(自然排序和定制排序)Arrays.binarySearch()通过二分搜索法进行查找(前提:数组是…...
c++ 面试题(1)-----深度优先搜索(DFS)实现
操作系统:ubuntu22.04 IDE:Visual Studio Code 编程语言:C11 题目描述 地上有一个 m 行 n 列的方格,从坐标 [0,0] 起始。一个机器人可以从某一格移动到上下左右四个格子,但不能进入行坐标和列坐标的数位之和大于 k 的格子。 例…...
《通信之道——从微积分到 5G》读书总结
第1章 绪 论 1.1 这是一本什么样的书 通信技术,说到底就是数学。 那些最基础、最本质的部分。 1.2 什么是通信 通信 发送方 接收方 承载信息的信号 解调出其中承载的信息 信息在发送方那里被加工成信号(调制) 把信息从信号中抽取出来&am…...
跨链模式:多链互操作架构与性能扩展方案
跨链模式:多链互操作架构与性能扩展方案 ——构建下一代区块链互联网的技术基石 一、跨链架构的核心范式演进 1. 分层协议栈:模块化解耦设计 现代跨链系统采用分层协议栈实现灵活扩展(H2Cross架构): 适配层…...
C++ 基础特性深度解析
目录 引言 一、命名空间(namespace) C 中的命名空间 与 C 语言的对比 二、缺省参数 C 中的缺省参数 与 C 语言的对比 三、引用(reference) C 中的引用 与 C 语言的对比 四、inline(内联函数…...
【git】把本地更改提交远程新分支feature_g
创建并切换新分支 git checkout -b feature_g 添加并提交更改 git add . git commit -m “实现图片上传功能” 推送到远程 git push -u origin feature_g...
令牌桶 滑动窗口->限流 分布式信号量->限并发的原理 lua脚本分析介绍
文章目录 前言限流限制并发的实际理解限流令牌桶代码实现结果分析令牌桶lua的模拟实现原理总结: 滑动窗口代码实现结果分析lua脚本原理解析 限并发分布式信号量代码实现结果分析lua脚本实现原理 双注解去实现限流 并发结果分析: 实际业务去理解体会统一注…...
土地利用/土地覆盖遥感解译与基于CLUE模型未来变化情景预测;从基础到高级,涵盖ArcGIS数据处理、ENVI遥感解译与CLUE模型情景模拟等
🔍 土地利用/土地覆盖数据是生态、环境和气象等诸多领域模型的关键输入参数。通过遥感影像解译技术,可以精准获取历史或当前任何一个区域的土地利用/土地覆盖情况。这些数据不仅能够用于评估区域生态环境的变化趋势,还能有效评价重大生态工程…...
