• 基于STM32的烟雾浓度检测报警仿真设计(仿真+程序+讲解视频)



    基于STM32的烟雾浓度检测报警仿真设计(仿真+程序+讲解)

    仿真图proteus 8.9

    程序编译器:keil 5

    编程语言:C语言

    设计编号:C0085

    📑1.主要功能

    功能说明:

    1、以STM32单片机和MQ-2控制核心设计烟雾浓度检测报警设计;

    2、通过液晶屏LCD1602和串口上位机显示烟雾浓度,MV表示检测值,ALM表示报警值;

    3、可以通过按键设置烟雾浓度ALM报警值大小。

    4、监测烟雾浓度大于报警值时蜂鸣器报警电路导通,蜂鸣器报警。拨动开关打开情况下,风扇转动通风。

    5、默认监测到烟雾浓度高于200ppm蜂鸣器报警。

    主要硬件设备:STM32F103单片机

    📑2.仿真

    整体设计方案

    本实验利用STM32单片机的ADC、GPIO、定时器等资源,将软、硬件有机地结合起来,使得系统能够正确地进识别输入模拟烟雾浓度传感器的AD值,LCD1602能够正确地显示,蜂鸣器根据烟雾浓度报警值工作。需注意的是,proteus是没有MQ-2等烟雾浓度传感器的,本设计使用滑动变阻器模拟烟雾浓度变化,不能直接用于实物设计,有需要的需跟据实物调试。

    本测试如下所示:

    仿真运行情况:

    开始仿真后LCD1602实时显示检测到的烟雾浓度,可以通过滑动变阻器改变测量值。可通过按键设置报警值浓度,按下设置键进入设置模式,通过设置+调高报警值,通过设置-调低报警值。蜂鸣器报警电路在烟雾浓度高于报警值时启动,有嘟嘟报警声,低于不启动。

    本设计采用电磁式蜂鸣器进行。电磁式蜂鸣器由振荡器、电磁线圈、磁铁、振动膜片及外壳等组成。接通电源后,振荡器产生的音频信号电流通过电磁线圈,使电磁线圈产生磁场。振动膜片在电磁线圈和磁铁的相互作用下,周期性地振动发声。因此需要一定的电流才能驱动它,单片机I/O引脚输出的电流较小,单片机输出的TTL电平基本上驱动不了蜂鸣器,因此需要增加一个电流放大的电路。蜂鸣器的正极接到VCC(+5V)电源上面,蜂鸣器的负极接到三极管的集电极C,三极管的基极B经过限流电阻后由单片机的BEEP引脚控制,当BEEP输出低电平时,三级管QS截止,没有电流流过线圈,蜂鸣器不发声;当BEEP输出高电平时,三级管导通,这样蜂鸣器的电流形成回路,发出声音。

    下图检测到烟雾浓度是192ppm,低于报警值200,蜂鸣器电路不工作。

    img

    下图检测到烟雾浓度是204ppm,大于等于报警值,三极管导通,蜂鸣器报警img

    📑3. 程序

    程序是用keil5 mdk版本打开的,如果打开有问题,核实下keil的版本。程序是HAL库版本编写的,有注释可以结合讲解视频理解。

    img

    img

    📑4. 资料清单&下载链接

    0、常见使用问题及解决方法–必读!!!!

    1、程序代码

    2、Proteus仿真

    3、功能要求

    4、讲解视频

    Altium Designer 软件资料

    filename.bat

    KEIL软件资料

    MQ135-2.jpg

    MQ135.jpg

    MQ系列传感器工作原理.txt

    Proteus软件资料

    单片机学习资料

    答辩技巧

    设计报告常用描述

    鼠标双击打开查找更多51 STM32单片机课程毕业设计.url

    img

    📑资料下载链接

  • 相关阅读:
    适合学生党的蓝牙耳机有哪些?学生党蓝牙耳机推荐
    2023年江西省职业院校技能竞赛“网络安全”赛项样题
    安科瑞为数据中心绿色高质量发展贡献力量
    信息安全管理体系认证对企业的好处
    Linux 学习总结(93)—— Linux 管道符使用总结
    VMware虚拟机中ubuntu网络连接不上
    算法训练---Day3
    腾讯前端二面常考react面试题总结
    文件包含漏洞-知识点
    客服呼叫中心的变革之路:从传统到智能的跨越
  • 原文地址:https://blog.csdn.net/weixin_52733843/article/details/134564937