第十四章 消防安全系统-Arduino中文社区 - Powered by Discuz!

Arduino中文社区

 找回密码
 立即注册

QQ登录

只需一步,快速开始

查看: 2172|回复: 0

第十四章 消防安全系统

[复制链接]
发表于 2022-2-9 14:48 | 显示全部楼层 |阅读模式

[md]## 消防安全系统
前面的各个单章节当中,我们一般都是为了分步由浅入深的讲解OpenJumper的Arduino套件的模块使用,还有mixly的编程模块学习。用到的硬件一般就2-3个模块,用到的软件部分也相对来说比较简单,通过第一到第九章的练习,我们已经掌握了Arduino的软硬件寄出模块。到这里本教程就要结束了,我们是不是应该弄一个综合性的大项目呢,虽然是相对的大项目,但是希望能够抛砖引玉。希望各位朋友们,在学习完本教程过后,对电子软硬件开发有着更浓厚的兴趣,打开你未来开发的大门。

在社会越发发达的今天,人们对于安全的重视程度越来越高,我们的生活空间里依然有着众多的不安全因数,所有我们在持续的通过技术手段来辅助的提高安全性。不管是在工厂还是在小区家中,消防安全预警系统几乎是每个企业和小区住宅的标准配置。那我们就一起来自制一个简单的消防安全预警系统。

## 功能分析

综合的消防预警系统至少有高温预警,烟雾报警器,能够在火灾发生时,烟雾浓度升高,温度升高时,快速检测作出反应。同时拉响警报,引起人们的主意!在消防预警系统控制中心可以检测到温度,烟雾浓度,在对应的面板上有不同颜色的LED灯显示。当温度或者烟雾浓度或者模拟光线达到黄色警戒的时候,黄色LED灯亮起,开始报警,响一声停一声。当数值超过红色警戒时,警报强度变大一直不停。液晶屏轮番显示超警戒数据。
所以我们要实现目标:

1、当温度、烟雾浓度正常时,液晶屏显示实际的温度和气体浓度值,不发出报警。

2、只要2个参数中有1一个进入黄色警戒值,黄色LED灯亮,并慢速报警

3、只要2个参数中有1一个进入红色警戒值,红色LED灯亮,并快速报警。

## 硬件连接

LM35 —— A0    MQ2 —— A1   蜂鸣器 —— D4    黄色LED灯 —— D5   红色LED灯 —— D6
01.jpg
## 程序编写
为了程序简介,我们将黄色警报和红色警报新建成执行函数,方便主程序调用。并新建一个none的执行函数,将LED熄灭。
02.jpg
03.jpg
04.jpg
在初始化程序中,我们将LCD进行初始化,并声明两个参数temp 和 mq 用于存放检测到的温度和烟雾值。
05.jpg
在主程序中,首先将检测到的温度和气体浓度值存放在temp和mq参数中。然后将读取的数值显示在LCD屏幕上。
06.jpg
为了程序简洁,我们将显示部分程序也制作成函数,可以在主程序中直接调用。这里我们设置阈值 (20 < 温度 < 25)  (150 < 气体浓度 < 201) ,如果满足着两个条件中的其中一个,那么就执行黄色警戒。当(温度 > 24)(气体浓度 > 200)满足着两个条件的其中一个,那么就执行红色警戒程序。其他条件下,不执行动作。

这里的温度阈值和气体浓度阈值可以根据实际情况再进行设置,以调整报警的警戒线。
07.jpg
在显示函数中,温度值我们一般在100度以内,所以是一个两位数。在第一行第6列显示十位数(temp/10)%10 , 个位数为temp%10。同理:如果这个数是百位数,那么百位数是temp/100 。

程序完成后,我们将其进行编译上传至Arduino主板,就可以尝试看看效果了,比如捂住模拟光线传感器,看看数据,看看是否会报警。比如让温度升高到20℃以上,或者对着MQ2气体传感器吹起,观察实际效果。

## 发散思维大课堂

在第十章我们做了一个综合性的项目,对我们整个过程进行了综合运用,锻炼了大家的实际操作能力,相信大家在思考第十章的需求分析的时候,肯定会有自己的想法。那么我们不妨多发散思维下,看看有没有更好的综合项目,有没有更好的消防预警系统实现。那么我在这里抛砖引玉提出几个延伸:

+ 是否可以将报警的声音更改为某个乐谱?

+ 警戒区域黄色、红色的LED是不是可以造成闪烁效果?[/md]
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

小黑屋|Archiver|手机版|Arduino中文社区

GMT+8, 2024-11-30 23:44 , Processed in 0.287876 second(s), 18 queries .

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

快速回复 返回顶部 返回列表