气体传感器阈值报警

2022-03-031.4万
精华项目
AI 快速预览详细 收起
本文介绍了如何使用DFRobot的Gravity气体传感器和Arduino平台搭建气体检测报警系统。所需材料包括DFRduino UNO R3、一氧化碳传感器、传感器扩展板、LCD 1602显示屏和蜂鸣器。通过I2C通信方式连接传感器,并使用关键函数如changeAcquireMode、readGasConcentrationPPM、queryGasType和setThresholdAlarm来实现气体浓度监测和报警功能。当一氧化碳浓度超过设定阈值时,屏幕显示“warning!!!”提示,同时蜂鸣器报警。


一氧化碳气体无色、无臭、无味,无法感觉它的存在,但它却有着致命的威胁,一氧化碳中毒的事件时常发生,我们又该如何避免悲剧的发生。
于是有了基于Arduino开源平台,使用DFRobot推出的Gravity气体传感器,搭建的气体检测报警系统。




材料清单:

PS:所需硬件均可在DF创客商城找到


一氧化碳传感器
气体传感器阈值报警图4
PS:
这是一款能够检测气体浓度的气体传感器,具有CO、O2、H2S、SO2等十余种型号,可以快速、准确的测量环境中对应气体的浓度,支持模拟量、I2C和UART三种输出方式,探头采用电化学原理,具有抗干扰能力强、稳定性高、灵敏度高等特点。广泛适用于工厂、矿井、废气处理系统等需要进行有害气体浓度检测的场景。





电路连接:

UNO R3      一氧化碳传感器
SDA   ————  D/T
SCL    ————  C/R
GND  ————  GND
5V      ————  VCC
4        ————  ALA

UNO R3      LCD 1602显示屏
A4     ————  SDA
A5     ————  SCL
GND  ————  GND
5V      ————  VCC

UNO R3       蜂鸣器
3        ————  输入
GND  ————  GND
5V      ————  VCC

电路连接
气体传感器阈值报警图5




关键函数:模式选择函数changeAcquireMode()
“INITIATIVE”主动上传模式,传感器1秒1次上传参数。
“PASSIVITY”被动应答模式,只有在调用数据读取函数时,传感器才会反馈一次参数。
  1. gas.changeAcquireMode(gas.INITIATIVE)
  2. /*
  3.       gas.INITIATIVE            // 主动上传模式
  4.       gas.PASSIVITY             // 被动应答模式
  5. */
复制代码



读取气体浓度函数readGasConcentrationPPM()
通过该函数,读取气体传感器的反馈气体浓度数值。
  1. gas.readGasConcentrationPPM();
复制代码



读取探头类型函数queryGasType()
可以获取当前气体探头的类型,返回
  1. gas.queryGasType();
复制代码



阈值报警函数setThresholdAlarm()
可以配置阈值报警,当气体浓度超过设定阈值时ALA引脚跳转为设定电平。
  1. gas.setThresholdAlarm(gas.ON, 200, gas.LOW_THRESHOLD_ALA ,gas.queryGasType());
  2. /*
  3.     gas.ON      开启
  4.       gas.OFF        关闭
  5.       200            设置阈值
  6.       gas.LOW_THRESHOLD_ALA 报警时跳转低电平
  7.       gas.HIGH_THRESHOLD_ALA 报警时跳转高电平
  8. */
复制代码






传感器与uno通信:
使用I2C通信,将传感器上的拨码开关SEL拨到0。I2C地址默认为0x74。如果需要修改I2C地址,可通过模块上的拨码开关配置硬件I2C地址。
拨码开关与I2C地址参数对应关系如下:
  • ADDRESS_0:0x74, A0=0, A1=0
  • ADDRESS_1:0x75, A0=0, A1=1
  • ADDRESS_2:0x76, A0=1, A1=0
  • ADDRESS_3:0x77, A0=1, A1=1

气体传感器阈值报警图3






检测报警效果:
串口监视器显示对应的气体类型/浓度/报警。当一氧化碳浓度超过阈值,屏幕显示“warning!!!”提示,同时蜂鸣器报警。
气体传感器阈值报警图6
气体传感器阈值报警图1



总结:
搭配传感器扩展板可以避免复杂的接线,更方便、更快速的完成项目搭建。
为保证数据精准,初次通电需要预热5分钟以上,切换通信方式和改变I2C地址后系统需要全部断电重新通电。
确保所需库文件已安装,否则程序无法通过编译。


所需要的库以及程序:
DFRobot_GasSensor库
气体传感器阈值报警图1



创作许可协议

本项目采用 None(不开放任何权利,保留所有权利) 进行许可。

评论(7)
大胆的去做
大胆的去做
以后还有比较好玩的东西一一可以分享出来
派大星ym
派大星ym
作者
回复大胆的去做
哈哈哈哈哈
大胆的去做
大胆的去做
这个做完给自己家孩子玩挺有乐趣的
Mr-k
Mr-k
厉害厉害
三春牛-创客
三春牛-创客
我有这个,你用的那个太贵了
三春牛-创客
三春牛-创客
请问这款一氧化碳传感器能用吗?https://www.dfrobot.com.cn/goods-544.html
NanaWang
NanaWang回复三春牛-创客
新的是出厂校准的,自己带了阈值功能,你用的那款如果wiki有阈值就应该可以用
三春牛-创客
三春牛-创客回复派大星ym
哦,好的
共3条回复,已加载2条,点击查看更多共3条回复,已加载全部
三春牛-创客
三春牛-创客
赞赞赞!
三春牛-创客
三春牛-创客
这个不错
- 没有更多了 -