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

STM32项目分享:智能厨房安全检测系统

目录

一、前言

二、项目简介

1.功能详解

2.主要器件

三、原理图设计

四、PCB硬件设计

PCB图 

五、程序设计 

六、实验效果 

七、资料内容

项目分享


一、前言

项目成品图片:

哔哩哔哩视频链接:

STM32智能厨房安全检测系统

(资料分享见文末) 

二、项目简介

1.功能详解

STM32智能厨房安全检测系统

功能如下:

  1. 单片机STM32F103C8T6核心板
  2. OLED显示当前烟雾浓度,当前环境温湿度
  3. 火焰传感器检测当前厨房是否发生火灾
  4. 按键可用于调节报警阈值
  5. 火灾、燃气泄漏、温度过高触发蜂鸣器报警
  6. 报警下触发执行动作:浇水灭火、打开窗、排风等
  7. 手机APP检测环境信息以及报警显示
  8. 手机APP可远程设置阈值大小

2.主要器件

  • STM32F103C8T6最小系统板
  • DS18B20温度传感器
  • OLED 屏幕
  • 火焰传感器
  • MQ-7一氧化碳传感器
  • ESP8266-01S模块(WIFI)
  • 继电器
  • 风扇模块
  • 水泵模块
  • 舵机

三、原理图设计

四、PCB硬件设计

PCB图 

五、程序设计 

int main(void)
{delay_init();	           //延时函数初始化	 NVIC_Configuration();	   //中断优先级配置I2C_Configuration();     //IIC初始化KEY_GPIO_Init();        //按键引脚初始化delay_ms(200); OLED_Init();             //OLED液晶初始化OLED_CLS();              //清屏OLED_ShowStr(0, 2, "   loading...   ", 2,0);//显示加载中ESP8266_Init();       //ESP8266初始化Adc_Init();           //adc初始化MOTOR_GPIO_Init();     //舵机初始化DS18B20_GPIO_Init();    //温度初始化DS18B20_Init();         //初始化显示delay_ms(1000);delay_ms(1000);OLED_CLS();              //清屏displayInitInterface(); //显示初始界面TIM3_Init(99,71);   //定时器初始化,定时100usGet_Temperature();   //获取温度delay_ms(100);Get_Temperature();   //获取温度delay_ms(1000);//Tout = ((arr+1)*(psc+1))/Tclk ; //Tclk:定时器输入频率(单位MHZ)//Tout:定时器溢出时间(单位us)while(1){ keyscan();  //按键扫描if(setn == 0){if(shuaxin == 1)   //大概300ms刷新一次数据{Get_Temperature();   //获取温度Get_Smoke();         //获取烟雾shuaxin = 0;}if(FLAME == 0)          //检测到火焰{delay_ms(10);if(FLAME == 0){if(flameFlag == 0){OLED_DrawBMP(88,4,120,8,(unsigned char *)BMP);  //显示火焰图片}flameFlag = 1;RELAY = 1;  //检测到有火,开启水泵}}else{if(flameFlag == 1){OLED_ShowStr(88, 4, "    ", 2,0);OLED_ShowStr(88, 6, "    ", 2,0);}flameFlag = 0;RELAY = 0;  //关闭水泵}if(temperature>=setTempValue || smoke>=setSmokeValue || flameFlag)BEEP=1;else BEEP=0;  //检测到温度烟雾超标火焰蜂鸣器报警if(temperature>=setTempValue || smoke>=setSmokeValue)FAN=1;else FAN=0;      //烟雾温度超标都开启风扇if(smoke>=setSmokeValue || flameFlag)PWM=15;else PWM=5;                    //烟雾超标或者是检测到火焰,舵机动作,模拟关闭阀门}UsartSendReceiveData();delay_ms(10);}
}

六、实验效果 

七、资料内容

项目分享

http://www.lryc.cn/news/526849.html

相关文章:

  • 2025美赛数学建模MCM/ICM选题建议与分析,思路+模型+代码
  • 高并发问题的多维度解决之道
  • Ubuntu环境 nginx 源码 编译安装
  • K8S中的数据存储之基本存储
  • 编码器和扩散模型
  • PAT甲级-1024 Palindromic Number
  • FS8405 Release FS0B
  • IGBT的损耗计算的学习【2025/1/24】
  • Unity|小游戏复刻|见缝插针1(C#)
  • No.1|Godot|俄罗斯方块复刻|棋盘和初始方块的设置
  • SSM框架探秘:Spring 整合 SpringMVC 框架
  • 2025.1.20——二、buuctf BUU UPLOAD COURSE 1 1 文件上传
  • 【架构面试】三、高可用高性能架构设计
  • 11.渲染管线——光栅化阶段
  • 【数据分享】1929-2024年全球站点的逐月平均能见度(Shp\Excel\免费获取)
  • 二叉树的深度
  • MySQL命令及用法(精华版)
  • R语言学习笔记之高效数据操作
  • 将 OneLake 数据索引到 Elasticsearch - 第二部分
  • Linux——冯 • 诺依曼体系结构
  • Java进阶(一)
  • appium自动化环境搭建
  • Qt 5.14.2 学习记录 —— 이십 QFile和多线程
  • 積分方程與簡單的泛函分析7.希爾伯特-施密特定理
  • 使用vitepress搭建自己的博客项目
  • 开始步入达梦中级dba
  • 如何在docker中的mysql容器内执行命令与执行SQL文件
  • S4 HANA更改Tax base Amount的字段控制
  • Linux权限有关
  • 【github 使用相关】提交pr和commit message Conventional Commits 规范 代码提交的描述该写什么?