当前位置: 首页 > news >正文

基于单片机的自动感应门设计

博主主页:单片机辅导设计
博主简介:专注单片机技术领域和毕业设计项目。
主要内容:毕业设计、简历模板、学习资料、技术咨询。

文章目录

  • 主要介绍
  • 一、自动感应门设计的功能概述
  • 二、系统总体方案
    • 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编码格式&#xff0c…...

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人工智能大模型应用如何落地?

人工智能大模型是近年来人工智能领域的一项重要技术突破&#xff0c;其具备强大的计算能力和学习能力&#xff0c;能够处理大规模的数据和复杂的任务。 然而&#xff0c;要将人工智能大模型应用落地并实现实际价值&#xff0c;还需要克服一些挑战和问题。 首先&#xff0c;人…...

【优选算法系列】第一节.栈的简介(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有什么作用

在互联网的蓬勃发展中&#xff0c;IP地址作为网络通信的基础&#xff0c;一直扮演着举足轻重的角色。而在诸多IP地址中&#xff0c;高匿IP地址则是一种特殊类型&#xff0c;其作用和价值在某些特定场合下尤为突出。那么&#xff0c;高匿IP地址究竟有哪些用处呢&#xff1f; 首先…...

Ubuntu Linux 23.10安装manimgl

1. 简介&#xff1a;manimgl是使用Python语言开发数学动画的一个库。用来创建数学动画。版本有很多&#xff0c;今天介绍manimgl&#xff0c;他要依赖OpenGL库。 2. 打开Shell命令行&#xff0c;连接上互联网。先安装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 层&#xff1a;4.2 Service 实现层&#xff1a; 5、测试 前言 首先我们看下传统记录日志的方式是什么样的&#xff1a; DeleteMapping("/deleteUserById/{userId}") …...

多式联运路径优化问题:基于拓扑排序的遗传算法染色体编码

一、什么是拓扑排序 在图论中&#xff0c;拓扑排序&#xff08;Topological Sorting&#xff09;是一个有向无环图&#xff08;DAG, Directed Acyclic Graph&#xff09;的所有顶点的线性序列。且该序列必须满足下面两个条件&#xff1a; 每个顶点出现且只出现一次。若存在一…...

Go 方法集合与选择receiver类型

Go 方法集合与选择receiver类型 文章目录 Go 方法集合与选择receiver类型一、receiver 参数类型对 Go 方法的影响二、选择 receiver 参数类型原则2.1 选择 receiver 参数类型的第一个原则2.2 选择 receiver 参数类型的第二个原则 三、方法集合&#xff08;Method Set&#xff0…...

Unity AudioClip和PCM音频数据的转化

1 PCM音频数据转化AudioClip 假设PCM音频当前是16Khz采样率&#xff0c;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] <…...

uni-app学习笔记二十二---使用vite.config.js全局导入常用依赖

在前面的练习中&#xff0c;每个页面需要使用ref&#xff0c;onShow等生命周期钩子函数时都需要像下面这样导入 import {onMounted, ref} from "vue" 如果不想每个页面都导入&#xff0c;需要使用node.js命令npm安装unplugin-auto-import npm install unplugin-au…...

macOS多出来了:Google云端硬盘、YouTube、表格、幻灯片、Gmail、Google文档等应用

文章目录 问题现象问题原因解决办法 问题现象 macOS启动台&#xff08;Launchpad&#xff09;多出来了&#xff1a;Google云端硬盘、YouTube、表格、幻灯片、Gmail、Google文档等应用。 问题原因 很明显&#xff0c;都是Google家的办公全家桶。这些应用并不是通过独立安装的…...

3403. 从盒子中找出字典序最大的字符串 I

3403. 从盒子中找出字典序最大的字符串 I 题目链接&#xff1a;3403. 从盒子中找出字典序最大的字符串 I 代码如下&#xff1a; class Solution { public:string answerString(string word, int numFriends) {if (numFriends 1) {return word;}string res;for (int i 0;i &…...

QT: `long long` 类型转换为 `QString` 2025.6.5

在 Qt 中&#xff0c;将 long long 类型转换为 QString 可以通过以下两种常用方法实现&#xff1a; 方法 1&#xff1a;使用 QString::number() 直接调用 QString 的静态方法 number()&#xff0c;将数值转换为字符串&#xff1a; long long value 1234567890123456789LL; …...

Typeerror: cannot read properties of undefined (reading ‘XXX‘)

最近需要在离线机器上运行软件&#xff0c;所以得把软件用docker打包起来&#xff0c;大部分功能都没问题&#xff0c;出了一个奇怪的事情。同样的代码&#xff0c;在本机上用vscode可以运行起来&#xff0c;但是打包之后在docker里出现了问题。使用的是dialog组件&#xff0c;…...

python报错No module named ‘tensorflow.keras‘

是由于不同版本的tensorflow下的keras所在的路径不同&#xff0c;结合所安装的tensorflow的目录结构修改from语句即可。 原语句&#xff1a; from tensorflow.keras.layers import Conv1D, MaxPooling1D, LSTM, Dense 修改后&#xff1a; from tensorflow.python.keras.lay…...

【电力电子】基于STM32F103C8T6单片机双极性SPWM逆变(硬件篇)

本项目是基于 STM32F103C8T6 微控制器的 SPWM(正弦脉宽调制)电源模块,能够生成可调频率和幅值的正弦波交流电源输出。该项目适用于逆变器、UPS电源、变频器等应用场景。 供电电源 输入电压采集 上图为本设计的电源电路,图中 D1 为二极管, 其目的是防止正负极电源反接, …...

C#中的CLR属性、依赖属性与附加属性

CLR属性的主要特征 封装性&#xff1a; 隐藏字段的实现细节 提供对字段的受控访问 访问控制&#xff1a; 可单独设置get/set访问器的可见性 可创建只读或只写属性 计算属性&#xff1a; 可以在getter中执行计算逻辑 不需要直接对应一个字段 验证逻辑&#xff1a; 可以…...

使用SSE解决获取状态不一致问题

使用SSE解决获取状态不一致问题 1. 问题描述2. SSE介绍2.1 SSE 的工作原理2.2 SSE 的事件格式规范2.3 SSE与其他技术对比2.4 SSE 的优缺点 3. 实战代码 1. 问题描述 目前做的一个功能是上传多个文件&#xff0c;这个上传文件是整体功能的一部分&#xff0c;文件在上传的过程中…...

WebRTC调研

WebRTC是什么&#xff0c;为什么&#xff0c;如何使用 WebRTC有什么优势 WebRTC Architecture Amazon KVS WebRTC 其它厂商WebRTC 海康门禁WebRTC 海康门禁其他界面整理 威视通WebRTC 局域网 Google浏览器 Microsoft Edge 公网 RTSP RTMP NVR ONVIF SIP SRT WebRTC协…...