回到首页 返回首页
回到顶部 回到顶部
返回上一页 返回上一页

#成长营第四期#煤气报警器 简单

头像 DeadWalking 2024.01.02 158 6

【项目由来】

       每年,单位都会有消防安全的讲座,讲解一些安全知识要点。煤气泄露作为一项比较隐蔽的消防安全隐患也时常在生活中发生。同时煤气公司也会按年来家里进行安全测试,看看有没有管道松动的问题。对于65岁以上独居老人,社区街道也提供了单独的煤气报警器作为关爱孤寡老人的一项举措。

        借着暑期活动的福利,有一个模拟一氧化碳传感器,尝试着是否也能做一个类似的报警器,在平时生活中自己也能测试一下,保证煤气使用安全。

        打开产品资料库,提供的是uno案例。打开mind+软件,找了一下microbit也可以这样操作,于是就开始模仿制作煤气报警器。

 

【解决方案】

        首先我们需要了解煤气报警器一般会监测哪些可燃气体?找GPT问问。

1.天然气(Natural Gas):主要成分为甲烷,是一种无色、无味、无毒的气体。  

2.液化石油气(LPG):主要成分为丙烷和丁烷,是一种无色、有气味的气体。

3.  煤气(Coal Gas):主要成分为氢气、甲烷和一氧化碳等,是一种有毒的气体。

4.  乙炔(Acetylene):一种无色、有气味的气体,常用于焊接和切割等工业领域。 

5. 氢气(Hydrogen):一种无色、无味、无毒的气体,但具有极高的易燃性和爆炸性。  

      煤气报警器通常会设置不同的检测通道,以监测不同种类的可燃气体。当其中任何一种气体浓度超过安全阈值时,报警器就会发出警报。

 

       因为传感器检测的是一氧化碳模拟量,所以我就进一步进行了询问。煤气报警器监测一氧化碳的阈值一般为多少?得到如下回答:

      

     需要注意的是,这些数值只是一般情况下的标准值,具体的报警阈值还需要根据实际情况进行调整。例如,在密闭空间内使用煤气设备时,一氧化碳浓度可能会比室外更高,因此需要设置更低的报警阈值。

      一氧化碳是一种无色、无味、有毒的气体,在空气一中般存来在说的,浓一度氧范化围碳很报宽警。浓度阈值设定在500ppm至1000ppm之间。当空气中一氧化碳浓度达到这个范围时,报警器就会发出警报。微信截图_20240102150832.png

        根据图示,我们以400ppm浓度为报警阈值,进行模拟实验。

        根据产品介绍,MQ7是一种简单易用的一氧化碳(CO)传感器,适用于检测空气中的CO浓度。 它可以检测20到2000ppm之间的CO气体浓度。 可以通过电位计调节灵敏度。根据咨询DF技术了解到串口显示打印出来的数值为0到1023,需要进行数据映射,即20~2000ppm对应0~1023数值。

   

计算方式如下:

      要将0~1023的模拟量映射到20~2000ppm的一氧化碳浓度范围,可以使用线性插值的方法。  首先,需要确定两个范围之间的比例关系:  20ppm ~ 2000ppm 的范围对应的数值为 0~1023 0~1023 的范围对应的数值为 0~1023 。因此,比例关系为:  (20ppm ~ 2000ppm) / (0~1023) = (x ~ y) / (0~1023) , 其中,x和y分别表示要映射的一氧化碳浓度范围。 接下来,可以使用以下公式进行线性插值:  value = (x - min_x) / (max_x - min_x) * (max_y - min_y) + min_y  其中,value表示要映射的数值,min_x和max_x表示原始数据范围的最小值和最大值,min_y和max_y表示目标数据范围的最小值和最大值。  例如,如果要将40ppm的一氧化碳浓度映射到0~1023的范围内,可以使用以下公式:  value = (40 - 20) / (2000 - 20) * (1023 - 0) + 0 = 678.5  因此,40ppm的一氧化碳浓度对应的数值为678.5。  对于400ppm的一氧化碳浓度,也可以使用相同的公式进行计算:  value = (400 - 20) / (2000 - 20) * (1023 - 0) + 0 = 986.5  因此,400ppm的一氧化碳浓度对应的数值为986.5。  (内容由讯飞星火AI生成)

 

由此得到模拟量阈值为986.5。通过阈值控制microbit点阵图显示不同图案来进行预警,配合2.0版本扬声器功能,可以用报警声进一步进行报警。

 

 

【制作原型】

利用3P线,将模拟一氧化碳传感器接在扩展板P0端口,microbit插在扩展板上,数据线连接microbit供电和传输数据。微信截图_20240102151913.png

 

实际接线如下:

微信截图_20240102152125.png

程序代码截图如下:

微信截图_20240102152502.png

【测试】

      上传程序,进行测试。需要注意的是,因为是居家安全报警器,对于测试的位置也很有讲究。

居住安全是我们不能忽视的问题,尤其厨房空间内涉及到明火、水源以及燃气等有一定安全隐患的东西,所以更应该在装修时注意使用安全。其中,燃气泄漏我们很难察觉,如果在房间内都能闻到刺鼻气味,说明泄漏已经比较严重了,那么安装燃气报警器就是不错的选择。但是燃气报警器也要安装到正确的地方才能发挥其作用,安在厨房哪个位置比较合适?  

1.距离范围  燃气报警器不能距离气源太远,如果距离太远不能及时发现燃气泄漏,也有一定的风险。所以一般燃气报警器安装时距离范围要控制在气源0.5-1.5米的范围内,并且通风良好的地方。 

 2.相对距离  这里就要对燃气报警器进行细分,不同种类的报警器安装位置有所差异。报警器分为燃气报警器和液化气报警器,也可分为壁挂式和顶吸式,液化气比空气重,应安装在距地面约30公分处,而天然气、城市煤气、一氧化碳等比空气轻,壁挂式燃气报警器应安装在距天花板约30公分处,顶吸式燃气报警器应安装在距离气源1.5米范围内的天花上。

 

目前仅在办公室进行了测试,串口输入如下:

微信截图_20240102152906.png

      上午测得数据为538,说明传感器在测量过程中还是存在一定的误差,如有需要还是购买专业的消防安全仪器设备。

 

微信截图_20240102153244.png

      microbit显示爱心点阵图,说明是安全的。

 

     本项目后续将利用扩展板电池,在更多范围内进行数据监测,以获得更准确的一氧化碳模拟数据,帮助改进模拟报警器的实用意义。

 

(本文部分内容来自星火认知大模型、百度)

材料清单

  • Gravity: 模拟一氧化碳气体传感器 (MQ7) X1 链接
  • micro:bit V2 编程入门开发板 X1 链接
  • micro:bit掌控I/O扩展板 X1 链接
代码
/*!
 * MindPlus
 * microbit
 *
 */
#include <Microbit_Sound.h>
#include <Microbit_Matrix.h>
// 静态常量
const uint8_t bbcBitmap[][5] = {
	{B01010,B10101,B10001,B01010,B00100},
	{B01110,B10101,B11111,B01110,B01110}
};


// 主程序开始
void setup() {
	Serial.begin(9600);
}
void loop() {
	Serial.println((String(analogRead(0)) + String("DEC")));
	delay(1000);
	if ((analogRead(0)<986.5)) {
		MMatrix.show(bbcBitmap[0]);
	}
	else {
		MMatrix.show(bbcBitmap[1]);
		for (int index = 0; index < 10; index++) {
			MSound.play(100, BA_DING, OnceInBackground);
			yield();
		}
	}
}

评论

user-avatar
  • 伦**

    伦**2024.03.11

    厉害!!!

    1
    • DeadWalking

      DeadWalking2024.03.13

      谢谢支持!

  • 小徐的MC

    小徐的MC2024.02.04

    6啊

    1
    • DeadWalking

      DeadWalking2024.03.13

      感谢支持

  • 许培享

    许培享2024.01.04

    学习学习

    1
    • DeadWalking

      DeadWalking2024.01.04

      客气 一起交流