搜索
查看
编辑修改
首页
UNITY
NODEJS
PYTHON
AI
GIT
PHP
GO
CEF3
JAVA
HTML
CSS
搜索
知新_RL
这个屌丝很懒,什么也没留下!
关注作者
热门标签
jquery
HTML
CSS
PHP
ASP
PYTHON
GO
AI
C
C++
C#
PHOTOSHOP
UNITY
iOS
android
vue
xml
爬虫
SEO
LINUX
WINDOWS
JAVA
MFC
CEF3
CAD
NODEJS
GIT
Pyppeteer
article
热门文章
1
Visual Studio Code如何连接Gitee仓库进行代码管理——详细步骤_vscode连接gitee
2
java学习之 并发编程从入门到进阶(面试必考,建议收藏)_java并发编程
3
Android面试题大全_android 面试题
4
LeetCode刷题-- 双指针(回文)_双指针 回文
5
Gradle学习二(Gradle构建)
6
Android的四大组件:Activity、Service、Content Provider、Broadcast Receiver_在android中,哪些组件可以启动service? a activity b content pr
7
centos7下 源码安装 apache记录_centos7下源码包安装的apache无法启动如何查看日志
8
前端实现excel导出表格(纯前端实现)_前端导出excel
9
探索高级计量经济学的宝藏——ResEcon 703开源课程解析
10
vue2项目详细使用高德地图教程,超详细!!!_vue2高德地图请求接口数据格式
当前位置:
article
> 正文
基于机智云的STM32单片机智能安防系统
作者:知新_RL | 2024-08-04 20:41:08
赞
踩
基于机智云的STM32单片机智能安防系统
针对高校实验室的安防需求,确保及时消除安全隐患,最大限度减少实验室安全事故,保障校园安全、生命和财产安全。本文设计了基于
STM32
单片机的物联网实验室智能安防系统。该系统采用STM32F103C8T6作为主控芯片,各传感器通过Wi-Fi模块上传数据至
机智云
平台,实时监测实验室的温湿度、非法入侵、火情和烟雾等情况,实现精准环境监控。用户可通过人机交互界面下发指令,控制下位机模块,使系统更智能化,显著降低实验室安全风险。
引言
近年来,随着高等教育迅速发展,越来越多院校建设专业实验室。尽管硬件投入力度大,管理却存在短板。部分实验室管理不完善,安全防范不够重视。近年来国内发生的严重实验室事故更是为此敲响警钟,给单位和个人带来巨大损失。实验室内操作设备众多,必须严格遵守电气作业规程,否则易引发火灾。设备价格昂贵,对环境温湿度要求高,空间较大且设备分散,实验操作时间具有一定随机性。
实验室环境监测面临挑战,考虑到这些因素,设计了基于STM32单片机的智能安防系统。系统利用各类传感器采集环境数据,并实时监控参数。通过手机端和OLED显示屏显示监测结果,支持人机交互功能,可控制下位机模块,提升实验室安全管理水平,具备推广应用潜力。
1 总体设计
基于STM32单片机构建实验室智能安防系统,系统分为感知层、控制层、传输层、应用层四层,系统总体设计框架如图1所示。
图1 系统总体设计框架图
感知层采用多点检测的方式,以提高环境采集的准确性。该层由多源传感器组成,用于采集实验室环境信息,包括温度、湿度、人体红外、火焰、烟雾等数据。
控制层由单片机、电风扇、排气扇、燃气阀及蜂鸣器等组成,负责动作执行。使用者能根据当前温度湿度环境、人体红外、火焰、烟雾数据情况判断当前实验室的风险情况,并下发相关的控制指令。控制层能够对室内空气的温度、湿度进行调节,对室内空气进行净化处理,对闯入情况进行告警处理。传输层通过构建Wi-Fi模块进行数据传输,通过Wi-Fi模块接入互联网,实现上位机和下位机之间的数据传输。应用层通过机智云App实现人机交互功能,主要用于接收用户指令,并下发相关控制。用户可以在移动端实时查看各传感器所采集的数据,同时OLED显示屏可显示当前系统和实验室环境的状态。
2 功能设计
实验室智能安防系统利用先进的信息技术手段对实验室空间进行智能化监测和控制,主要包括温湿度检测、安防检测、火灾检测、烟雾检测4个部分,能有效提高安全性、可靠性和实用性。系统模块划分为三部分:一是监控模块。将各传感器分别安装在实验室各空间内,在OLED显示屏上实时显示当前的温湿度、是否监测到非法闯入、当前环境是否出现火情和烟雾。二是防护模块。
采集的数据通过Wi-Fi模块上传至机智云云平台,在手机端实时查看各传感器所采集的数据,并发送相关的控制指令至相关下机位。三是控制模块。当监测到当前温湿度异常时,可以远程打开电风扇;当监测到当前有非法闯入时,可以远程打开蜂鸣器报警;当监测到当前环境存在火焰时,可以远程关闭燃气阀;当监测到当前环境存在烟雾时,可以远程打开排气扇。功能设计如图2所示。
图2 功能设计图
3 硬件模块设计
本设计的硬件电路由STM32单片机模块、温湿度传感器模块、人体红外传感器模块、火焰传感器模块、烟雾传感器模块、OLED显示屏、Wi-Fi模块、舵机模块、蜂鸣器模块、模拟电机模块等组成。
3.1 STM32单片机模块
STM32单片机模块选用型号STM32F103C8T6,STM32F103C8T6是一款基于ARM Cortex-M内核的32位微控制器,既能直接使用寄存器进行编程,也可根据官方库文件进行编程。程序存储器和RAM容量大小分别为64KB和20KB,并拥有丰富的接口资源,包括32个通用I/O口,7个定时器,系统时钟最高可以达到72MHz。
3.2 温湿度传感器模块
温湿度传感器模块选用型号DHT11,DHT11内部已有一个校准数字信号输出器,数据引脚可通过单总线协议直接将数据传输至单片机。模块实现环境的湿度温度监控作用,将所采集的数据传输至主控芯片。在使用该模块时,电源正负极要对应连接单片机的电源与地,数据引脚与单片机的PB12引脚相连,数据引脚与单片机的串口连接时需上拉一个5K左右的电阻。
人体红外传感器模块
人体红外传感器模块选用型号HC-SR501,HC-SR501是一款采用红外线技术的传感器。当模块检测到红外信号后,数据引脚输出一个高电平。模块的电源正负极与单片机的电源正负极相连接,数据引脚与单片机的PB13引脚相连接,两者通过串口实现通信。
3.4 火焰传感器模块
火焰传感器模块通过检测火焰的波长和光谱识别当前环境是否出现火情,所在环境的火焰波长长度超过预先设定的数值时,数据引脚输出一个低电平,反之输出一个高电平。模块的正负极与单片机的电源与电源地相连接,数据引脚与单片机的PA6引脚相连进行串口通信,实现模块与单片机之间的数据传输。
3.5 烟雾传感器模块
烟雾传感器模块选用型号MQ-2,通过烟雾与可燃气体二氧化锡的接触改变材料的电阻特性从而影响输出的电压。单片机以输出的电压值作为依据,以判定是否存在有可燃气体或烟雾。该模块与单片机的电源相连接,对模块进行供电,以保证正常工作,模块的数据引脚与单片机的PB15连接,利用串口通信实现数据的传输。
3.6 OLED显示屏
系统选用0.96寸的OLED显示屏,采用IIC协议与单片机进行通信。该模块有4个引脚,分别是VCC、GND、SCL、SDA,前两个进行供电,后两个分别是时钟线和数据线,使用时将显示屏电源线与单片机的电源相连接,SDA引脚接单片机的PB10引脚,SCL引脚接单片机的PB11引脚。
3.7 Wi-Fi模块
Wi-Fi模块选用型号
esp8266
-01S,通过选用不同的联网方式将设备接入至局域网或物联网,采用USART串口与单片机进行通信。在使用时,除进行正常供电外,还须给Wi-Fi模块的EN引脚一个高电平,Wi-Fi模块的TXD引脚与单片机的PA3引脚(USART1的RXD)相连,Wi-Fi模块的RXD引脚与单片机的PA2引脚(USART1的TXD)相连。
3.8 舵机模块
燃气阀的控制部分选用舵机模块进行模拟,通过控制舵机力矩的转动模拟燃气阀的开与关。舵机模块选用型号SG90,SG90有三根导线,一根导线负责PWM波信号的输入,另外两根分别接电源和地,舵机的数据引脚接单片机的PB6引脚(TIM4的输出通道1)。
3.9 蜂鸣器模块
蜂鸣器是一款具备一体化结构的电子讯响器,蜂鸣器导通电后会导致其内部的膜片震动然后发出蜂鸣声。蜂鸣器的电源端与单片机的电源相连接,蜂鸣器的地端与单片机的PC14引脚相接,当单片机的PC14引脚输出一个低电平蜂鸣器即可发出蜂鸣声。
3.10 模拟电机模块
电风扇和排气扇选用型号L9110,L9110有VCC、GND、INA、INB四个引脚。通过向INA和INB两个引脚输入相对应的PWM波转动风扇,INA输入高电平模拟电机正向转动,INB输入高电平模拟电机则反向转动,转动的速度由输入PWM波的占空比决定。电风扇模块的INA与单片机的P8引脚(TIM4的通道3)相接,INB引脚与单片机的PB9引脚(TIM4的通道4)相接。排气扇模块的INA与单片机的地端相接,INB与单片机的PB7引脚(TIM4的通道2)相接。
4 软件设计
机智云是供物联网与硬件开发者使用的一款云平台,开发者可根据机智云平台提供的协议与设备端的模组系统
GAgent
对接,硬件可快速接入物联网,并能与大多数的Wi-Fi模块和移动网络模块兼容,通过平台提供的SDK可快速实现App的开发。系统软件通过Wi-Fi模块ESP8266-01s实现把各传感器检测的数据上传至机智云平台上位机以及把相关的控制指令下发至下位机。软件界面如图3所示。
图3 软件界面图
5 模块间的通信设计
单片机与各模块之间的通信主要采用IIC和USART通信总线。具体通信方式如下:
OLED显示屏与单片机的通信方式为IIC。IIC是一种半双工串行通信总线,使用多主从架构,适用于主控制器和从器件间的通信。它由两条总线线路组成:SDA串行数据线和SCL串行时钟线。
各个器件之间可以相互通信,也可根据需求设置主机和从机。主机可自主设置为主机发送器或接收器,通信时主机向从机发送命令,从机给出应答。IIC总线通过上拉电阻接正电源。当SCL信号为低电平时,SDA的状态随之发生改变。
Wi-Fi模块与单片机的通信方式为USART。USART是一种通信双方可同时接收和发送数据的串行收发器。它拥有高精度的波特率发生器,不须占用定时器的资源。USART的收发模块分为接收器、时钟发生器、数据发送器三大模块,共同作用下实现数据通信。USART的串口信号线包括RXD(接收数据)和TXD(发送数据)两种。
6 实验结果
根据各传感器模块的工作特点,模拟通过改变环境参数,观察各传感器模块采集的数据能否随着相对应的环境参数的变化而变化,以检测传感器模块是否正常工作。对系统进行整体实际实验室环境的测试,检测出不同环境情况下的参数显示,实时发送指令和控制相应下位机的情况,以验证本系统的准确性。
6.1 温湿度传感器测试
通过吹气、打火机加热、吹风机加热三种不同方式模拟环境的升温,每一种方式提升的温湿度的幅度具有一定的差异,经实验,温度传感器所采集的温湿度值能随着环境温湿度的变化而变化,说明温湿度传感器模块可正常工作。温湿度数值对比如表1所示。
表1 温湿度数值对比表
6.2 人体红外传感器测试
通过环境有人和模拟无人实施人体红外传感器的检测。根据实验测试的结果显示,人体红外传感器可以正确检测当前环境是否有人,说明人体红外传感器模块可正常工作。人体红外参数对比如表2所示。
表2 人体红外参数对比表
6.3 火焰传感器测试
通过环境中有火焰和无火焰模拟火焰传感器检测,根据实验测试的结果显示,火焰传感器可以正确检测当前环境中是否有火焰的出现,说明火焰传感器模块可正常工作。火焰参数对比如表3所示。
表3 火焰参数对比表
6.4 烟雾传感器测试
通过环境中有烟雾和无烟雾模拟火焰传感器检测,根据实验测试的结果显示,烟雾传感器可以正确监测当前环境中是否有烟雾的出现,说明烟雾传感器可正常工作。烟雾参数对比如表4所示。
表4 烟雾参数对比表
6.5 系统整体测试
将系统实物板放入实训室并上电,一台手机打开数据热点,系统实物板连通热点后,另一台手机打开机智云App。给系统检测模块制造相关的模拟环境,传感器采集的数据在OLED屏幕上正确显示,采集的数据可成功传输至机智云
物联网平台
,在机智云App上依次点击打开和关闭电风扇、燃气阀、蜂鸣器、排气扇的按钮,相对应的控制模块都可以实现。实物图正面如图4所示,火焰靠近火焰传感器系统显示如图5所示。
图4 实物图
本系统设计也存在一定的不足,如各传感器采集的数据具有一定的误差,感应的距离也存在一定的限制。温湿度传感器采集的温度的误差在2℃左右,湿度的误差在6%左右。人体红外传感器的精准感应范围为3m,火焰传感器精准感应范围为45cm左右,超出范围则存在些许误差。烟雾传感器可检测打火机中的气体以及纸张燃烧的气体,但反应时间略长。
图5 火靠近火焰传感器系统显示图
7 结束语
本文研发了基于STM32F103C8T6的实验室智能安防系统,采用多点检测方式提升实验室各区域环境监测的精准度。通过移动端App对环境异常进行实时判断和处理,系统智能化程度显著提升。该系统可靠、安全且操作便捷,可根据需求增加传感器模块以实现更精确的实验室环境监测,具备强大的扩展性。
声明:
本文内容由网友自发贡献,转载请注明出处:
【wpsshop】
推荐阅读
article
视觉
巡线
小车
(
STM32
+
OpenMV
)——总结_基于
stm32
的循线
小车
...
基于前面的系列文章,已基本介绍完了基于
STM32
+
OpenMV
的
视觉
巡线
小车
,本文将以小编自己的
小车
对其进行一下总结。如...
赞
踩
article
STM32
PWM
设置
TIM
_
OCMODE
_
PWM
1与
TIM
_
OCMODE
_
PWM
2的电平区别_ti...
当
PWM
设置为
TIM
_
OCMODE
_
PWM
1时,定时器周期溢出时,OC输出为高电平,最后拉低是因为调用了库函数HAL_T...
赞
踩
article
5
.
STM32
TIM
PWM
库函数
(基于正点原子
STM32
板)
_
timepwm
库函数
...
TIM
通用计时器介绍
TIM
配置void
TIM
_
Config(uint16
_
t Channel2Pulse, uint1...
赞
踩
article
STM32
库函数学习
TIM
篇_
htim
->
instance
=
=
tim3
...
1、HAL_StatusTypeDef HAL_
TIM
_Base_Init (
TIM
_HandleTypeDef * h...
赞
踩
article
stm32
TIM
定时器
中断
函数
学习笔记(一)
_
中断
函数
计时器
怎么用...
函数
意义: 第一个参数为需要选择哪个
定时器
,
TIM
1-8;第二个参数为时基单元的参数结构体。(在使用该
函数
前,需要定义时...
赞
踩
article
STM32
配置
TIM
定时
中断常用库
函数
_
stm32
定时
器
中断
函数
...
单片机学习!_
stm32
定时
器
中断
函数
stm32
定时
器
中断
函数
单片机学习! 目录 ...
赞
踩
article
STM32
(四):
Systick
(标准
库函数
)_
stm32
标准
库函数
配置
systick
...
本文详细介绍了如何使用
STM32
单片机的
Systick
定时器实现LED灯的交替闪烁,包括
Systick
的工作原理、寄存器...
赞
踩
article
STM32
HAL
库
定时
中断
和编码输入_
htim
->
instance
...
这些基础的东西看视频很费时间而且有过基础的在学习只是库不太清楚,希望我总结的库使用的一些使用能节约一点大家的时间。voi...
赞
踩
article
STM32
HAL
库函数——
HAL
_
TIM
_
Base
_
Start
_IT()详解_hal-
tim
-ba...
以
STM32
G030C8T6中的
HAL
_
TIM
_
Base
_
Start
_IT()函数为例,进行解释;_hal-
tim
-ba...
赞
踩
article
STM32
--
定时器
中断
TIM
_回调
函数
中关闭
中断
...
定时器
中断
TIM
_回调
函数
中关闭
中断
回调
函数
中关闭
中断
...
赞
踩
article
【
>
STM
>
3>2>】(
>
3>)
>
串口>通信实验
>
_>
>
huart>-
>
>
instance>...
>
串口>通信实验( 1 )定义函数uart
>
_>init用来调用HAL
>
_>UART
>
_>Init初始化
>
串口>参数配置:UART
>
_>Hand...
赞
踩
article
STM32
-
HAL
库03-
TIM
定时器
实现
LED
闪烁_
tim3
hal
库配置...
STM32
HAL
库
TIM
定时器
实现
LED
闪烁_
tim3
hal
库配置
tim3
hal
库配置 ...
赞
踩
article
【
STM32
】基于
蓝桥
杯
嵌入式
开发板实现
按
键
单击
、双击、长
按
(通用模板)_
蓝桥
杯
按
键
长
按
...
基于
蓝桥
杯
嵌入式
开发板实现
按
键
的
单击
,双击,长
按
检测与处理,使用定时器后台检测,防止占用前台资源,可以随便移植到任何单片...
赞
踩
article
【
STM32
】
FPU
的启用和基于
ARM
-
DSP
库函数的实时
信号
RMS
计算_
stm32f4
开启fpu...
最近,由于项目需要,学习了一下F4的
FPU
浮点数运算单元的使用方法和
DSP
库函数的建立使用,在此简单总结记录。_stm3...
赞
踩
article
STM32
——
中断
篇_
stm32
中断
...
本文详细介绍了
STM32
中的
中断
机制,包括
中断
的概念、
中断
优先级、NVIC的作用、EXTI的外部
中断
功能、AFIO的复用...
赞
踩
article
视觉
巡线
小车——
STM32
+
OpenMV
_
csdn
巡线
小车...
该系列文章主要介绍,如何使用来实现一个基于视觉处理的自主
巡线
小车。主要包括,减速电机的驱动,速度采集,PID速度闭环控制...
赞
踩
article
视觉
巡线
小车
——
STM32
+
OpenMV
(一)_
stm32
openmv
循迹
小车
...
通过本文,就可以对减速电机进行简单的控制,以及速度的采集了。同时可以自行加入OLED等显示屏,显示所采集的速度,也可以通...
赞
踩
article
视觉
巡线
小车
——
STM32
+
OpenMV
(二)_
stm32
巡线
小车
...
通过本文,使减速电机实现了速度闭环控制,利用野火PID调试助手进行PID参数的整定,得到满意的参数。_
stm32
巡线
小车
...
赞
踩
article
物
联网
毕设
--
智能
天气
时钟
(
STM32
+
WIFI
+
时钟
+知心
天气
)_南邮电装实习创新
项目
天气
时钟
...
这个智能设备通过硬件端和APP端协同工作,实现了多方面的功能。硬件端包括
STM32
F103C8T6微控制器进行程序中控和...
赞
踩
article
FFT
STM32
+
ap
FFT
程序源代码_
fftstm32
...
适用于
STM32
F103平台,使用AD7606同步采集两路正弦信号,内置1024点全相位快速傅里叶变换(
ap
FFT
)算法...
赞
踩
相关标签
stm32
OpenMV
视觉巡线
小车
电赛
单片机
嵌入式硬件
c#
定时中断
pwm
编码器输入
STM32
串口通信