stm32项目(4)——基于stm32的厨房安全检测系统

2024-02-14 14:59

本文主要是介绍stm32项目(4)——基于stm32的厨房安全检测系统,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

目录

 1.功能介绍

2.硬件方案

     1.单片机的选择

2.显示屏的选择

3.温湿度传感器

4.烟雾传感器

5.甲醛传感器

6.排气风扇

3.程序设计

        1.接线方式

        2.大致思路


 1.功能介绍

  本次设计的厨房安全检测系统的功能如下:

        利用单片机、烟雾传感器、甲醛传感器、温湿度传感器、OLED显示屏幕及其他元器件,实现厨房温湿度检测及显示,并可检测天燃气及甲醛气体浓度且显示,并在达到危害浓度时报警,同时启动排风扇将危害气体排出,同时LED灯亮。

        功能完成后的实物图如下:

        
        

 屏幕第一行左侧显示的是测到的实时温度数值,右侧是温度阈值。

         第二行左侧显示的是测到的实时湿度数值,右侧是湿度阈值。

        第三行左侧显示的是测到的实时烟雾数值,右侧是烟雾阈值。

        第四行左侧显示的是测到的实时甲醛数值,右侧是甲醛阈值。

2.硬件方案

     1.单片机的选择

        单片机选择的是stm32f103c8t6最小系统板,实物图如下:

        

        STM32F103C8T6是一款由STMicroelectronics公司生产的32位ARM Cortex-M3内核微控制器。以下是该芯片的一些特点:

        1. 32位ARM Cortex-M3内核:该芯片采用了32位的ARM Cortex-M3处理器,具有较高的性能和较低的功耗。

        2. 高主频运行:STM32F103C8T6芯片的主频可以高达72MHz,使其具备较快的运行速度。

        3. 64KB闪存和20KB RAM:该芯片内置64KB的闪存和20KB的RAM,可以存储程序代码和数据。

        4. 优秀的通信能力:STM32F103C8T6芯片支持多种通信接口,包括SPI、I2C和USART等,便于与外部设备进行通信。

        5. 丰富的外设资源:该芯片提供了多个GPIO引脚、定时器、PWM输出、ADC和DAC等外设资源,方便连接和控制外部设备。

        6. 低功耗模式:STM32F103C8T6芯片在休眠模式下具有低功耗特性,可有效延长电池寿命。

        7. 多种封装形式:该芯片提供了多种封装形式,如TQFP48和LQFP48等,适应不同的应用需求。

        综上所述,STM32F103C8T6具备较高的性能、丰富的外设资源和通信能力,是一款适用于嵌入式系统和物联网应用的微控制器。

2.显示屏的选择

        显示屏选择的是0.96寸OLED液晶屏幕,实物图如下所示:

         0.96寸OLED显示屏是一种较小尺寸的有机发光二极管(OLED)显示屏,具有以下特点:

        1. 高对比度:OLED显示屏可以实现真正的黑色,因为它的每个像素都可以独立发光或关闭。这使得它能够提供非常高的对比度,产生鲜明清晰的图像和文字。

        2. 自发光:OLED显示屏的每个像素都是自发光的,不需要背光源。这意味着它可以在没有背光的情况下显示图像,进一步提高对比度和能效。

        3. 宽视角:OLED显示屏具有很广的视角范围,即从不同的角度观察时图像的颜色和亮度变化较小。这使得它非常适合用于各种观看角度的应用场景。

        4. 快速响应时间:OLED显示屏具有快速的像素响应时间,可以在切换像素时呈现流畅的动态图像,不会出现拖影或模糊。

        5. 薄型轻便:OLED显示屏采用非常薄的物理结构,使得显示屏具有较小的厚度和重量。这使得它在需要轻薄设计的电子设备中具有很好的应用前景。

        6. 低功耗:OLED显示屏在显示黑色像素时消耗的能量较少,因为黑色像素可以完全关闭。这在显示大量黑色内容时可以显著节能。

综上所述,0.96寸OLED显示屏具有高对比度、自发光、宽视角、快速响应时间、薄型轻便和低功耗等特点,适用于需要小尺寸高质量显示的各种电子设备和应用。

3.温湿度传感器

        温湿度传感器选择的是DHT11,实物图如下:

 

        DHT11是一种数字温湿度传感器,具有以下特点:

        1. 简单易用:DHT11是一款数字传感器,采用单总线数字信号接口,只需要一根信号线就可以与微控制器连接。它提供了简单的API和功能库,使用起来非常方便。

        2. 温湿度测量范围:DHT11可以测量的温度范围是0°C至50°C,并且湿度范围是20%RH至90%RH。这使得它适用于多种常见环境下的温湿度测量。

        3. 数字输出:DHT11以数字形式输出温度和湿度数据,无需进行模数转换或校准。它通过单总线协议将数据进行传输,简化了数据处理过程。

        4. 低功耗:DHT11的工作电压范围广泛,从3V到5V都可以工作,且在测量过程中的功耗非常低。这使得它非常适合用于低功耗或电池供电的应用中。

        5. 响应速度快:DHT11传感器具有较快的响应速度,可以在几秒内获取温湿度数据,使得实时监测和控制变得更加高效。

        6. 低成本:DHT11是一种经济实惠的温湿度传感器,因其简单的设计和低成本的制造,使得它成为许多嵌入式项目的选择之一。

        需要注意的是,DHT11虽然简单易用且成本低廉,但其精度相对较低。如果对于高精度温湿度测量有要求,可以考虑使用更高级别的温湿度传感器。

4.烟雾传感器

        烟雾传感器选择的是MQ2,实物图如下:

        

 

        MQ2是一种烟雾传感器,常用于检测可燃气体和烟雾。它具有以下特点:

        1. 多功能性:MQ2传感器可以检测多种可燃气体,如甲烷、液化气、丙烷、氢气等,同时也可以检测烟雾和一些易挥发的气体。

        2. 高灵敏度:MQ2传感器具有高灵敏度,可以快速、准确地检测到目标气体的存在。它能够检测到低浓度的气体,并产生输出信号以进行进一步的处理。

        3. 快速响应:MQ2传感器响应速度快,可以在很短的时间内检测到气体浓度变化,并及时输出相应的信号。

        4. 低功耗:MQ2传感器的功耗较低,适合在低功耗或电池供电的应用中使用。

        5. 易于使用:MQ2传感器采用模拟输出方式,输出信号可直接连接到微控制器的模拟输入引脚上。它还可以通过调整电路中的电位器来设置传感器的灵敏度。

        6. 廉价实惠:MQ2传感器价格相对较低,而且易于获得,使得它成为许多嵌入式项目和家庭安防系统中的常用传感器之一。

        需要注意的是,MQ2传感器对于不同的气体有不同的灵敏度和响应特性,因此在具体应用中需要根据需要对传感器进行校准和配置,以获取准确的检测结果。此外,MQ2传感器不具备用于定量测量气体浓度的能力,一般用于发现气体存在和预警的目的。

5.甲醛传感器

检测甲醛的传感器选择的是SGP30,实物图如下:

 

        SPG30是一款气体颗粒物传感器,用于检测空气中的颗粒物浓度。以下是SPG30的一些特点:

        1. 高灵敏度:SPG30传感器具有高灵敏度,能够快速、准确地检测空气中的微小颗粒物浓度。它可以检测到直径为1微米的颗粒物。

        2. 多功能性:SPG30传感器可以检测多种颗粒物,包括可吸入颗粒物(PM2.5和PM10),细颗粒物(PM1.0),以及粗颗粒物(PM10-PM2.5)。它适用于各种环境中的颗粒物监测。

        3. 数字输出:SPG30传感器采用数字输出方式,通过I2C接口输出颗粒物浓度数据。这使得数据的读取和处理变得更加方便。

        4. 可编程性:SPG30传感器具有一些可编程的特性,如传感器的工作模式和测量周期可以通过I2C接口进行设置和调整。

        5. 实时监测:SPG30传感器可以实时监测颗粒物浓度的变化,并及时输出测量结果。这有助于进行空气质量监测和预警。

        6. 低功耗:SPG30传感器的功耗较低,适合在低功耗或电池供电的应用中使用。

        7. 小尺寸:SPG30传感器体积小巧,便于集成到各种设备和系统中。

        需要注意的是,SPG30传感器提供的是颗粒物浓度的相对值,不具备绝对定量测量能力。在实际应用中,可能需要进行校准和与其他传感器进行比较,以获取准确的颗粒物浓度数据。

6.排气风扇

         这种风扇自带驱动,直接用单片机IO口就可以控制它的转动,非常方便,不需要外加驱动模块,可以大大提高便利性。

3.程序设计

        1.接线方式

/*
连线方式: OLED-->SCL   PA6
          OLED-->SDA   PA7
          
 烟雾传感器的模拟输出口---->PA0
 电机模块 INA--->GND   INB--->PB5
 
 DHT11的信号输出口:----->PA5
 甲醛传感器:     SDA--->PB1
                 SCL--->PB0
*/

        2.大致思路

定义一些变量及阈值

初始化必要的外设

 

各变量的检测与显示,及其相应的控制逻辑:

 

        需要完整代码的请私信。 

这篇关于stm32项目(4)——基于stm32的厨房安全检测系统的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



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

相关文章

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终端里面创建环境安装别人的项目子模块等,有可能出现的问题就是你不报错都安装

linux系统中java的cacerts的优先级详解

《linux系统中java的cacerts的优先级详解》文章讲解了Java信任库(cacerts)的优先级与管理方式,指出JDK自带的cacerts默认优先级更高,系统级cacerts需手动同步或显式... 目录Java 默认使用哪个?如何检查当前使用的信任库?简要了解Java的信任库总结了解 Java 信

C#自动化实现检测并删除PDF文件中的空白页面

《C#自动化实现检测并删除PDF文件中的空白页面》PDF文档在日常工作和生活中扮演着重要的角色,本文将深入探讨如何使用C#编程语言,结合强大的PDF处理库,自动化地检测并删除PDF文件中的空白页面,感... 目录理解PDF空白页的定义与挑战引入Spire.PDF for .NET库核心实现:检测并删除空白页

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

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

Java JUC并发集合详解之线程安全容器完全攻略

《JavaJUC并发集合详解之线程安全容器完全攻略》Java通过java.util.concurrent(JUC)包提供了一整套线程安全的并发容器,它们不仅是简单的同步包装,更是基于精妙并发算法构建... 目录一、为什么需要JUC并发集合?二、核心并发集合分类与详解三、选型指南:如何选择合适的并发容器?在多

MyCat分库分表的项目实践

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

Oracle数据库在windows系统上重启步骤

《Oracle数据库在windows系统上重启步骤》有时候在服务中重启了oracle之后,数据库并不能正常访问,下面:本文主要介绍Oracle数据库在windows系统上重启的相关资料,文中通过代... oracle数据库在Windows上重启的方法我这里是使用oracle自带的sqlplus工具实现的方

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

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