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

基于单片机的塑料厂房气体检测系统设计

欢迎大家点赞、收藏、关注、评论啦 ,由于篇幅有限,只展示了部分核心代码。 技术交流认准下方 CSDN 官方提供的联系方式

文章目录

    • 概要
  • 一、设计的主要内容
  • 二、系统硬件设计
  • 三、软件设计
    • 实物
  • 四、结论
  • 五、 文章目录

概要

  本文首先分析了基于单片机的可燃气体检测系统的设计需求,完成了系统架构设计。在此基础上进行了单片机外围电路设计,液晶显示外部电路设计,MQ传感器与AD转换电路设计,电机外部电路设计,开关电路设计。在完成硬件电路设计的基础上,进行了软件流程设计,包括对LCD液晶显示控制程序,读取AD转换后的数据,按键控制程序。
经过调试与验证,基于单片机的可燃气体检测系统已经实现了初始的应用需求,可以对系统所在环境的浓度值进行判断,并通过按键对浓度值进行调整,在超过门限值的时候,能够实现蜂鸣器响、电机转动等报警功能,有着很强的可靠性与实用性。
关键词: 单片机; LCD;声光报警;可燃气体;

一、设计的主要内容

基于单片机的可燃气体检测系统架构框图,系统以STC89C52单片机作为中央处理器。系统工作频率由外部晶振提供,开关按键可以来对系统内的判决门限进行调整;由MQ-2传感器来对当前环境的气体浓度值进行不断检测,经过AD转换后,数据将会送交给单片机;单片机对该数据进行处理,与外部输入的门限值进行比较,当出现大于门限的情况,则输出相应的信号控制报警系统:蜂鸣器响、电机转动;整个工作过程的结果将会由LCD1602进行显示。
在这里插入图片描述

图1.1 基于单片机的可燃气体检测系统架构

二、系统硬件设计

2.1 绘制电路板概述
本次对基于单片机的可燃气体检测系统设计中使用的是Altium Designer软件完成电路板的绘制,包含以下一些步骤:
(1)新建空的原理图与PCB图;
(2)依据基于单片机的可燃气体检测系统所需要实现的功能选择器件,绘制原理图;
(3)绘制元器件库,如果现有库文件没有相关器件,我们需要自己进行补充,也可以方便下次设计;
(4)PCB封装;
(5)生成PCB;
(6)进行合理的元器件布局,需要充分考虑走线是否方便、散热等问题;
(7)布线,要充分考虑系统电流大小,过孔,焊盘大小等等;
(8)送去加工,找厂家进行板子的制作

三、软件设计

基于单片机的可燃气体检测系统程序架构如图3.1所示,当整个系统运行时,首先是各个部分的初始化,由于系统要实现对开关是否按下的检测,还需要完成包括单片机的中断设置等。
在这里插入图片描述

图3.1程序架构

初始化完成以后,MQ-2传感器开始工作,同时将检测到的物理量送交给AD转换器,单片机对AD转换后的数字量数据不断进行读取,而后经过计算可得到当前气体的浓度值。在此过程中,系统不断对开关按键进行检测,当检测到开关按下时,需要对设定的浓度值执行加或者减,长加或者长减。
单片机对计算得到的浓度值与设定的浓度值进行一个比较,并将检测到的浓度值实时显示。倘若当前浓度值已经超过了设定的门限,则表明处于危险状态,单片机控制蜂鸣器响、电机转动。

实物

在这里插入图片描述

四、结论

  基于单片机的可燃气体检测系统通过传感器对当前环境的可燃气体浓度值进行实时检测,经过AD转换后送交给单片机进行处理;可以通过外部按键来对系统的判决门限即最高浓度值进行设置;单片机对数据处理后,与设定的最高浓度值进行比较,若是大于该浓度值,则输出信号控制蜂鸣器响、电机转动;整个过程中的探测值、设定值均由LCD液晶来进行显示。
本文首先分析了基于单片机的可燃气体检测系统的设计需求,完成了系统架构设计。在此基础上进行了单片机外围电路设计,液晶显示外部电路设计,MQ传感器与AD转换电路设计,电机外部电路设计,开关电路设计。在完成硬件电路设计的基础上,进行了软件流程设计,包括对LCD液晶显示控制程序,读取AD转换后的数据,按键控制程序。

五、 文章目录

目 录
摘 要 I
Abstract II
引 言 3
1 系统总体架构 5
1.1 需求分析与方案设计 5
1.2 系统器件选择 5
1.3 系统架构 6
2 系统硬件设计 6
2.1 绘制电路板概述 6
2.2 单片机电路设计 7
2.2.1 STC89C52单片机介绍 7
2.2.2 STC89C52单片机外围电路设计 8
2.3 LCD1602液晶显示电路设计 10
2.3.1 LCD1602液晶显示器介绍 10
2.3.2 LCD1602液晶外围电路设计 11
2.4 传感器与AD转换电路设计 12
2.5 电机电路设计 13
2.6 按键系统 14
2.7 调试电路 15
3 系统软件流程设计 16
3.1 程序架构 16
3.2 LCD显示程序设计 17
3.3 按键控制程序设计 19
4 系统验证 22
4.1 焊接与调试 22
4.2 程序烧录与调试 23
结 论 25
参考文献 26
附录1 元器件清单 27
附录2 源程序清单 28
致 谢 44

相关文章:

基于单片机的塑料厂房气体检测系统设计

欢迎大家点赞、收藏、关注、评论啦 ,由于篇幅有限,只展示了部分核心代码。 技术交流认准下方 CSDN 官方提供的联系方式 文章目录 概要 一、设计的主要内容二、系统硬件设计三、软件设计实物 四、结论五、 文章目录 概要 本文首先分析了基于单片机的可燃…...

HTTP-FLV详解及分析

文章目录 前言一、HTTP-FLV 简介1、市场上使用 http-flv 的商家2、http-flv、rtmp 和 hls 直播的优缺点3、http-flv 技术实现 二、Nginx 配置 http-flv1、Windows 安装 nginx,已经集成 nginx-http-flv-module2、nginx.conf 配置文件3、运行 nginx 服务器4、ffmpeg 推…...

docker应用实例及dockerfile

实际应用 神经网络项目由x86cpu的linux环境移到arm cpu架构上运行,使用docker进行测试以及环境配置。 docker load -i 镜像压缩文件.tar docker load -i命令用于从一个压缩的镜像存档文件(通常是以.tar扩展名结尾)中加载镜像到本地Docker引擎…...

【Qt之QWizard】使用1

QWizard使用 描述方法枚举:enum QWizard::WizardButton枚举:enum QWizard::WizardOption枚举:enum QWizard::WizardStyle枚举:enum QWizard::WizardPixmap常用成员方法槽函数信号 示例设置标题添加page页设置按钮文本设置自定义按…...

移植LVGL到单片机的一个demo简单介绍

简介 背景: 本文使用的是主控IC为stm32f103zet6, 显示IC为ST7735s,它是128*160的像素,色深为RGB565颜色。 官方虽然说LVGL移植平台只需 64kB 闪存和 8kB RAM 就足以满足简单的用户界面。但我移植到stm32f103c8t6,不管怎么修改配…...

rust_for_linux驱动完整版记录

文章目录 [清华开源操作系统训练营]《Rust fox Linux》课程的练习1-2完整版记录。1. 环境搭建2. 编译rust内核2.1 下载源代码2.2 安装rust支持2.3 检查linux内核是否支持rust2.4 编译linux内核 3. aarch64的qemu环境3.1.下载源代码3.2. 解压编译安装3.3. 配置环境变量3.4.验证 …...

Android拖放startDragAndDrop拖拽Glide灵活加载堆叠圆角图,Kotlin(6)

Android拖放startDragAndDrop拖拽Glide灵活加载堆叠圆角图,Kotlin(6) Android拖放startDragAndDrop拖拽Glide加载堆叠圆角图,Kotlin(5)-CSDN博客文章浏览阅读1.3k次。Android Dyna…...

计算机网络课后作业2023秋

计算机网络第三版吴功宜版 课后作业 第一章作业三、计算与问答3.73.8 第二章作业三、计算与问答3.23.53.6 第三章作业三、计算与问答3.13.53.73.8 第四章作业三、计算与问答3.13.2 第五章作业三、计算与问答3.13.33.4VLAN交换机模式模式切换重置交换机VLAN配置命令其…...

阿里云国际站:全球加速GA

文章目录 一、前言 二、阿里云全球加速的概念 三、阿里云全球加速的功能优势 四、阿里云全球加速的原理 五、阿里云全球加速的应用场景 六、写在最后 一、前言 随着互联网的快速发展,网站速度已经成为了用户访问体验的一个重要指标。阿里云加速作为一种新的技…...

M2LC-Net

模型结构 作者未提供代码...

Jenkins 质量扫描

代码质量扫描工具(SonarQube) 质量评审 SonarQube有四个关键组件 ◼ SonarQube Server运行有三个组件 ◆ Web Server:UI ◆ Search Server:为UI提供搜索功能,基于ElasticSearch ◆ Compute Engine Server&#xff1a…...

【LeetCode刷题笔记】滑动窗口

992. K 个不同整数的子数组 解题思路: 滑动窗口 , 题目问题转化为: 求 「最多存在 K 个不同整数的子数组的个数」 与 「最多存在 K - 1 个不同整数的子数组的个数」 之差, 就是题目所求的 「恰好存在 K 个不同整数的子数组的个数」 , 最终问题就变成求解滑动窗口内,以 R …...

笔试题之指针和数组的精讲

𝙉𝙞𝙘𝙚!!👏🏻‧✧̣̥̇‧✦👏🏻‧✧̣̥̇‧✦ 👏🏻‧✧̣̥̇:Solitary-walk ⸝⋆ ━━━┓ - 个性标签 - :来于“云”的“羽球人”。…...

.secret勒索病毒数据恢复|金蝶、用友、管家婆、OA、速达、ERP等软件数据库恢复

导言: 勒索病毒成为了网络安全的一项严峻挑战,其中.secret勒索病毒尤为引人注目。这种恶意软件通过加密用户的数据文件,使其无法访问,并勒索受害者支付赎金以获取解密密钥。本文将介绍.secret勒索病毒的基本信息,以及…...

junit写搜索树测试

用法 assertTrue(range.contains("Two")); 2个参数,右边错就打印左边. AbstractSelfBalancingBinarySearchTree abt; AbstractBinarySearchTree.Node node; Before public void setUp() { abt new AbstractSelfBalancingBinarySearchTree() { Override protecte…...

顺丰接口对接-订单创建与取消(java单元测试)

api文档 下单接口 :https://qiao.sf-express.com/Api/ApiDetails?level3393&interName%E4%B8%8B%E8%AE%A2%E5%8D%95%E6%8E%A5%E5%8F%A3-EXP_RECE_CREATE_ORDER 取消订单接口: https://qiao.sf-express.com/Api/ApiDetails?level3339&interNa…...

C++:OJ练习(每日练习!)

编程题: 题一:计算日期到天数的转换 计算日期到天数转换_牛客题霸_牛客网 (nowcoder.com) 示例1 输入: 2012 12 31 输出: 366 思路一: 第一步:创建年,月,日的变量,并按…...

GPTs Hunter 是什么?

原文: https://openaigptguide.com/openai-gpts-hunter/ GPTs Hunter 是一个功能强大的免费导航网站,支持多语言,提供用户友好的界面。 GPTs Hunter:功能强大的免费导航网站 GPTs Hunter是一个功能强大的免费导航网站&#xff…...

【移远QuecPython】EC800M物联网开发板的硬件TIM定时器精准延时

【移远QuecPython】EC800M物联网开发板的硬件TIM定时器精准延时 文章目录 导入库定时器初始化延时函数定时中断回调调用函数打包附录:列表的赋值类型和py打包列表赋值BUG复现代码改进优化总结 py打包 首先 这个定时器是硬件底层级别的 优先级最高 如果调用 会导致GN…...

HDU 1027:Ignatius and the Princess II ← next_permutation()

【题目来源】http://acm.hdu.edu.cn/showproblem.php?pid1027【题目描述】 Now our hero finds the door to the BEelzebub feng5166. He opens the door and finds feng5166 is about to kill our pretty Princess. But now the BEelzebub has to beat our hero first. feng5…...

k8s从入门到放弃之Ingress七层负载

k8s从入门到放弃之Ingress七层负载 在Kubernetes(简称K8s)中,Ingress是一个API对象,它允许你定义如何从集群外部访问集群内部的服务。Ingress可以提供负载均衡、SSL终结和基于名称的虚拟主机等功能。通过Ingress,你可…...

前端倒计时误差!

提示:记录工作中遇到的需求及解决办法 文章目录 前言一、误差从何而来?二、五大解决方案1. 动态校准法(基础版)2. Web Worker 计时3. 服务器时间同步4. Performance API 高精度计时5. 页面可见性API优化三、生产环境最佳实践四、终极解决方案架构前言 前几天听说公司某个项…...

PPT|230页| 制造集团企业供应链端到端的数字化解决方案:从需求到结算的全链路业务闭环构建

制造业采购供应链管理是企业运营的核心环节,供应链协同管理在供应链上下游企业之间建立紧密的合作关系,通过信息共享、资源整合、业务协同等方式,实现供应链的全面管理和优化,提高供应链的效率和透明度,降低供应链的成…...

OkHttp 中实现断点续传 demo

在 OkHttp 中实现断点续传主要通过以下步骤完成,核心是利用 HTTP 协议的 Range 请求头指定下载范围: 实现原理 Range 请求头:向服务器请求文件的特定字节范围(如 Range: bytes1024-) 本地文件记录:保存已…...

ArcGIS Pro制作水平横向图例+多级标注

今天介绍下载ArcGIS Pro中如何设置水平横向图例。 之前我们介绍了ArcGIS的横向图例制作:ArcGIS横向、多列图例、顺序重排、符号居中、批量更改图例符号等等(ArcGIS出图图例8大技巧),那这次我们看看ArcGIS Pro如何更加快捷的操作。…...

重启Eureka集群中的节点,对已经注册的服务有什么影响

先看答案,如果正确地操作,重启Eureka集群中的节点,对已经注册的服务影响非常小,甚至可以做到无感知。 但如果操作不当,可能会引发短暂的服务发现问题。 下面我们从Eureka的核心工作原理来详细分析这个问题。 Eureka的…...

Git 3天2K星标:Datawhale 的 Happy-LLM 项目介绍(附教程)

引言 在人工智能飞速发展的今天,大语言模型(Large Language Models, LLMs)已成为技术领域的焦点。从智能写作到代码生成,LLM 的应用场景不断扩展,深刻改变了我们的工作和生活方式。然而,理解这些模型的内部…...

Python实现简单音频数据压缩与解压算法

Python实现简单音频数据压缩与解压算法 引言 在音频数据处理中,压缩算法是降低存储成本和传输效率的关键技术。Python作为一门灵活且功能强大的编程语言,提供了丰富的库和工具来实现音频数据的压缩与解压。本文将通过一个简单的音频数据压缩与解压算法…...

WEB3全栈开发——面试专业技能点P7前端与链上集成

一、Next.js技术栈 ✅ 概念介绍 Next.js 是一个基于 React 的 服务端渲染(SSR)与静态网站生成(SSG) 框架,由 Vercel 开发。它简化了构建生产级 React 应用的过程,并内置了很多特性: ✅ 文件系…...

ui框架-文件列表展示

ui框架-文件列表展示 介绍 UI框架的文件列表展示组件,可以展示文件夹,支持列表展示和图标展示模式。组件提供了丰富的功能和可配置选项,适用于文件管理、文件上传等场景。 功能特性 支持列表模式和网格模式的切换展示支持文件和文件夹的层…...