stm32项目(18)——基于STM32的智能门禁门铃系统

2024-02-15 16:36

本文主要是介绍stm32项目(18)——基于STM32的智能门禁门铃系统,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

1.功能设定

        本系统由STM32F103C8T6单片机、拨动开关、按键、高亮LED灯、LCD1602液晶、蜂鸣器报警、光照检测、热释红外及电源组成。

        1、通过热释红外传感器检测是否有人,如果有人靠近门时,液晶提示:Welcome to home!,否则显示“watting for you”。夜间光线暗,并且探测到有人,高亮LED灯打开,无人时,关灯。

        2、主人可设定门铃状态,家里有人和无人两种状态。通过一个拨动开关设置,拨上去,液晶显示有人:Somebody!拨下来液晶显示没人:Nobody!有人时,客人按下门铃,蜂鸣器鸣叫提示,无人时,客人按下门铃,无任何反应。

        3、热释检测到人员逗留时间超过一定时间则发出报警提醒。

        4、检测到有人或者没有人,有状态指示灯指示。光敏传感器可以通过传感器上的电位器调节检测的灵敏度。

(需要源码的直接看最后一节)

2.硬件设计

(1)STM32F103C8T6单片机核心电路设计

STM32系列处理器是意法半导体ST公司生产的一种基于ARM 7架构的32位、支持实时仿真和跟踪的微控制器。选择此款控制芯片是因为本系统设计并非追求成本的最低或更小的功耗,而是在实现本设计功能的前提下能够提供更丰富的接口和功能以便于设计实验系统各实验项目所需的外围扩展电路。此款控制芯片在完成单片机课程的学习后上手较为容易,在医疗器械中应用广泛,具有很好的学习、实验研究价值。

一、STM32的主要优点:

(1)使用ARM最新的、先进架构的Cortex-M3内核

(2) 优异的实时性能

(3) 杰出的功耗控制

(4) 出众及创新的外设

(5) 最大程度的集成整合

(6) 易于开发,可使产品快速将进入市场

实物图如下:

(2)高亮LED灯照明电路(高电平有效)设计

超高亮LED是比一般LED发光二极管的亮度高近百倍的新型LED,其外壳是无色透明树脂封装,其发光体本身就能发出某一波长的光,从而呈现出某一种颜色。在本设计中,选择白色高亮LED灯作为照明灯使用。

一、白色高亮LED灯的优点。

(1)寿命长,可靠耐用,维护费用极为低廉,可连续使用105h,比普通白炽灯泡长100倍;

(2)高效率,其发光效率可达80%~90%,LED比节能灯还要节能1/4;

(3)点亮速度快。

在本设计中, LED灯均为高亮LED灯,通过三极管驱动LED灯的亮灭,电阻为限流电阻,保护三极管。当单片机的控制引脚为高电平时,三极管导通,此时,高亮LED灯亮。否则,高亮LED灯不亮。 高亮LED灯照明电路原理图如下图所示。

(3)蜂鸣器报警电路(高电平有效)设计 

有源蜂鸣器是一种一体化结构的电子讯响器,采用直流电压供电,广泛应用于计算机、打印机、复印机、报警器、电子玩具、汽车电子设备、电话机、定时器等电子产品中作发声器件。本系统所采用的报警模块为5V有源蜂鸣器模块,电路中采用三极管9012来驱动,只要单片机控制引脚为高电平,蜂鸣器就会鸣叫报警,反之则不鸣叫,可以通过控制单片机引脚方波输出形式控制蜂鸣器的鸣叫方式。电阻为限流电阻,保护作用。

(4)LCD1602液晶显示模块电路设计 

LCD显示器分为字段显示和字符显示两种。其中字段显示与LED显示相似,只要送对应的信号到相应的管脚就能显示。字符显示是根据需要显示基本字符。本设计采用的是字符型显示。系统中采用LCD1602作为显示器件输出信息。与传统的LED数码管显示器件相比,液晶显示模块具有体积小、功耗低、显示内容丰富等优点,而且不需要外加驱动电路,LCD1602可以显示2行16个汉字。

一、LCD1602主要技术参数如下:

(1)显示容量为16×2个字符;

(2)芯片工作电压为4.5~5.5V;

(3)工作电流为2.0mA(5.0V);

(4)模块最佳工作电压为5.0V;

(5)字符尺寸为2.95×4.35(W×H)mm。

二、LCD1602采用标准的14脚,其接口的引脚说明如下:

(1)第1脚:VSS为地电源。

(2)第2脚:VDD接5V正电源。

(3)第3脚:V0为液晶显示器对比度调整端。

(4)第4脚:RS为寄存器选择,高电平时选择数据寄存器、低电平时选择指令寄存器。

(5)第5脚:RW为读写信号线,高电平时进行读操作,低电平时进行写操作。当RS和RW共同为低电平时可以写入指令或者显示地址,当RS为低电平RW为高电平时可以读忙信号,当RS为高电平RW为低电平时可以写入数据。

(6)第6脚:E端为使能端,当E端由高电平跳变成低电平时,液晶模块执行命令。

(7)第7~14脚:D0~D7为8位双向数据线。

(8)第15~16脚:空脚

系统中采用LCD1602作为显示器件输出信息。在本电路中电位器可以调节液晶显示的对比度即清晰度。

(5)按键电路(含上拉电阻)设计

轻触按键是按键产品下属的一款分类产品,它其实相当于是一种电子开关,只要轻轻的按下按键就可以是开关接通,松开时是开关就断开连接,实现原理主要是通过轻触按键内部的金属弹片受力弹动来实现接通和断开的。

在本系统中,按键作为系统的输入,起到了人机交互的枢纽作用。按键的单片机控制引脚默认为高电平,当按键按下后,单片机的相关引脚则变成低电平。进而实现对系统的手动输入。其电路原理图如下图所示。电路中电阻作用为上拉电阻,保证按键信号的稳定输出(一般使用中考虑到电路简化,可以删除上拉电阻,不焊接)。注意,按键个数可变。

(6)GMDZ光敏电阻传感器模块电路设计

本系统选择光敏电阻传感器模块对光照进行检测,该模块可以实现对周围环境的亮度和光强进行检测。

光敏电阻是用硫化隔或硒化隔等半导体材料制成的特殊电阻器,其工作原理是基于内光电效应。光照愈强,阻值就愈低,随着光照强度的升高,电阻值迅速降低,亮电阻值可小至1KΩ以下。光敏电阻对光线十分敏感,其在无光照时,呈高阻状态,暗电阻一般可达1.5MΩ。光敏电阻的特殊性能,随着科技的发展将得到极其广泛应用。

光敏电阻器一般用于光的测量、光的控制和光电转换(将光的变化转换为电的变化)。常用的光敏电阻器硫化镉光敏电阻器,它是由半导体材料制成的。光敏电阻器对光的敏感性(即光谱特性)与人眼对可见光(0.4~0.76)μm的响应很接近,只要人眼可感受的光,都会引起它的阻值变化。设计光控电路时,都用白炽灯泡(小电珠)光线或自然光线作控制光源,使设计大为简化。

一、传感器参数

(1)采用灵敏型光敏电阻传感器,可以检测周围环境的亮度和光强

(2)灵敏度可调(图中蓝色数字电位器调节)

(3)工作电压3.3V-5V。

(4)输出形式:DO数字开关量输出(0和1)和AO模拟电压输出。

(5)电源指示灯和数字开关量输出指示灯。

(6)比较器输出,信号干净,波形好,驱动能力强,超过15mA。比较器采用LM393芯片,工作稳定。

二、接口说明

(1)VCC  外接3.3V-5V

(2)GND  外接GND

(3)DO   小板数字量输出接口(0和1)

(4)AO   小板模拟量输出接口

三、使用说明

(1)光敏电阻模块对环境光强最敏感,一般用来检测周围环境的亮度和光强。

(2)模块在无光条件或者光强达不到设定阈值时,DO口输出高电平,当外界环境光强超过设定阈值时,模块D0输出低电平;

(3)小板数字量输出D0可以与单片机直接相连,通过单片机来检测高低电平,由此来检测环境的光强改变;

(4)小板数字量输出DO可以直接驱动本店继电器模块,由此可以组成一个光电开关;

(5)小板模拟量输出AO可以和AD模块相连,通过AD转换,可以获得环境光强更精准的数值;

光敏电阻传感器模块具体接口说明如下图所示

(7)二挡拨动开关检测电路设计 

拨动开关是通过拨动开关柄使电路接通或断开,从而达到切换电路的目的的。拨动开关常用的品种有单极双位、单极三位、双极双位以及双极三位等,它一般用于低压电路,具有滑块动作灵活、性能稳定可靠的特点,拨动开关主要广泛用于:各种仪器/仪表设备,各种电动玩具,传真机,音响设备,医疗设备,美容设备,等其它电子产品领域。

简单的说,拨动开关就是通过拨动其执行机构(开关柄),来接通或断开电路。

通过拨动开关实现对信号的切换,电阻为上拉电阻。当二档拨动开关拨下去时,单片机控制引脚为低电平。当二档拨动开关拨上去时,单片机控制引脚为高电平。进而实现对信号的完美切换。其电路图如下图所示。

(8)HC-SR505人体热释感应模块电路设计

HC-SR505小型人体感应模块是基于红外线技术的自动控制产品,灵敏度高,可靠性强,超小体积,超低电压工作模式。广泛应用于各类自动感应电器设备,尤其是干电池供电的自动控制产品。

一、传感器说明

(1)全自动感应:人进入其感应范围则输出高电平,人离开感应范围则自动延时关闭高电平,输出低电平。

(2)小体积。

(3)可重复触发方式:即感应输出高电平后,在延时时间段内,如果有人体在其感应范围活动,其输出将一直保持高电平,直到人离开后才延时将高电平变为低电平(感应模块检测到人体的每一次活动后会自动顺延一个延时时间段,并且以最后一次活动的时间为延时时间的起始点)。

(4)工作电压范围宽:默认工作电压DC4.5V-20V。

(5)微功耗:静态电流<50微安,特别适合干电池供电的自动控制产品。

(6)输出高电平信号:可方便与各类电路实现对接。

二、接口说明

(1)VCC  外接3.3V-5V

(2)GND  外接GND

(3)DO   小板数字量输出接口(0和1)

(4)AO   小板模拟量输出接口

二、应用范围:

(1)人体感应灯具

(2)人体感应玩具

(3)安防产品

(4)工业自动化控制

(5)自动感应电器设备

(6)电池供电自动控制等

三、技术参数:

(1)工作电压范围:DC4.5-20V

(2)静态电流:<60uA

(3)电平输出:高3.3V/低0V

(4)触发方式:可重复触发(默认)

(5)延时时间:默认8S+-30%(可订做范围零点几秒-几十分钟)

(6)电路板外形尺寸:10*23mm

(7)电路板外形尺:<100度锥角

(8)感应距离:3米以内

(9)工作温度:-20-+80度

(10)感应透镜尺寸:直径:10mm(默认)

HC-SR505人体热释感应模块实物图:

3.电路图 

原理图为:

PCB为:

 

4.实物图

5.源文件 

STM32智能门禁门铃的设计资源-CSDN文库icon-default.png?t=N7T8https://download.csdn.net/download/guangali/88833481?spm=1001.2014.3001.5501内含:

 

这篇关于stm32项目(18)——基于STM32的智能门禁门铃系统的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



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

相关文章

vite搭建vue3项目的搭建步骤

《vite搭建vue3项目的搭建步骤》本文主要介绍了vite搭建vue3项目的搭建步骤,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学... 目录1.确保Nodejs环境2.使用vite-cli工具3.进入项目安装依赖1.确保Nodejs环境

idea+spring boot创建项目的搭建全过程

《idea+springboot创建项目的搭建全过程》SpringBoot是Spring社区发布的一个开源项目,旨在帮助开发者快速并且更简单的构建项目,:本文主要介绍idea+springb... 目录一.idea四种搭建方式1.Javaidea命名规范2JavaWebTomcat的安装一.明确tomcat

pycharm跑python项目易出错的问题总结

《pycharm跑python项目易出错的问题总结》:本文主要介绍pycharm跑python项目易出错问题的相关资料,当你在PyCharm中运行Python程序时遇到报错,可以按照以下步骤进行排... 1. 一定不要在pycharm终端里面创建环境安装别人的项目子模块等,有可能出现的问题就是你不报错都安装

uni-app小程序项目中实现前端图片压缩实现方式(附详细代码)

《uni-app小程序项目中实现前端图片压缩实现方式(附详细代码)》在uni-app开发中,文件上传和图片处理是很常见的需求,但也经常会遇到各种问题,下面:本文主要介绍uni-app小程序项目中实... 目录方式一:使用<canvas>实现图片压缩(推荐,兼容性好)示例代码(小程序平台):方式二:使用uni

Rust 智能指针的使用详解

《Rust智能指针的使用详解》Rust智能指针是内存管理核心工具,本文就来详细的介绍一下Rust智能指针(Box、Rc、RefCell、Arc、Mutex、RwLock、Weak)的原理与使用场景,... 目录一、www.chinasem.cnRust 智能指针详解1、Box<T>:堆内存分配2、Rc<T>:

MyCat分库分表的项目实践

《MyCat分库分表的项目实践》分库分表解决大数据量和高并发性能瓶颈,MyCat作为中间件支持分片、读写分离与事务处理,本文就来介绍一下MyCat分库分表的实践,感兴趣的可以了解一下... 目录一、为什么要分库分表?二、分库分表的常见方案三、MyCat简介四、MyCat分库分表深度解析1. 架构原理2. 分

linux查找java项目日志查找报错信息方式

《linux查找java项目日志查找报错信息方式》日志查找定位步骤:进入项目,用tail-f实时跟踪日志,tail-n1000查看末尾1000行,grep搜索关键词或时间,vim内精准查找并高亮定位,... 目录日志查找定位在当前文件里找到报错消息总结日志查找定位1.cd 进入项目2.正常日志 和错误日

在.NET项目中嵌入Python代码的实践指南

《在.NET项目中嵌入Python代码的实践指南》在现代开发中,.NET与Python的协作需求日益增长,从机器学习模型集成到科学计算,从脚本自动化到数据分析,然而,传统的解决方案(如HTTPAPI或... 目录一、CSnakes vs python.NET:为何选择 CSnakes?二、环境准备:从 Py

基于 Cursor 开发 Spring Boot 项目详细攻略

《基于Cursor开发SpringBoot项目详细攻略》Cursor是集成GPT4、Claude3.5等LLM的VSCode类AI编程工具,支持SpringBoot项目开发全流程,涵盖环境配... 目录cursor是什么?基于 Cursor 开发 Spring Boot 项目完整指南1. 环境准备2. 创建

Three.js构建一个 3D 商品展示空间完整实战项目

《Three.js构建一个3D商品展示空间完整实战项目》Three.js是一个强大的JavaScript库,专用于在Web浏览器中创建3D图形,:本文主要介绍Three.js构建一个3D商品展... 目录引言项目核心技术1. 项目架构与资源组织2. 多模型切换、交互热点绑定3. 移动端适配与帧率优化4. 可