Overview

本项目将利用MQ-7CO传感器模块,在树莓派上设计CO气体检测器,可以检测环境中CO气体浓度。MQ-7气体传感器所使用的气敏材料是在清洁空气中电导率较低的二氧化锡(SnO2),传感器的电导率随空气中一氧化碳气体浓度增加而增大,模块可以将电导率的变化,转换为与该气体浓度相对应的输出信号。 MQ-7气体传感器对一氧化碳的灵敏度高,是一款适合多种应用的低成本传感器。

DSC_5498

Parts

本项目将用到如下器件

PI
Pi3 x1
6
 MQ-7模块 x1
MCP3008
  模数转换器 x1
LACC2006AD-12
 面包板 x1
LACC2006AD-31
 公对公跳线 x若干
19
公对母跳线 x若干

Hardware

Raspberry Pi只能处理数字信号,但是本项目中要用到MQ-7模块输出的模拟信号,所以需要用到模数转换器。本项目中利用MCP3008把MQ-7模块输出的电压信号转换成数字信号,根据转换后电压的大小来判断环境中CO浓度。

其中MQ-7模块工作在5V电压下,具有模拟信号和数字信号双路输出,当模块检测到CO气体的时候,信号指示灯亮起,数字信号输出口输出低电平。模块上面有一个可调电阻,通过调节可调电阻能够调节模块的灵敏度。
模块之间与树莓派具体连接请参考下图
mq-7

在接线的时候请认清模块正负极,不要接反了,否则会烧坏你的Pi和模块。模块的上的GND接Pi上的0V;模块上的VCC接5V。对于如何识别Pi的IO口请参考这篇文章: How to read Raspberry Pi i/o pin diagram (GPIO pin graph)

Software

可以把pi直接接到显示器上,也可以通过SSH方式远程登录Pi。

1)编写代码

在/home/pi路径下用nano新建一个mq-7.py(名字随意,你喜欢就好!)

sudo nano mq-7.py

并往新建的文件中写入示例代码,代码可以通过执行下面的shell命令得到

sudo wget http://osoyoo.com/driver/mq-7.py

2)执行python程序

sudo python ./mq-7.py

3)测试

程序让mq-7模块上电后先预热20s,待数据稳定后再输出,所以刚开始的20S没有数据输出。如果出现模块有细微发烫是正常的。打火机大火会生成部分CO气体,将打火机对着模块打火屏幕会打印出来”CO is detected”的字样,并且打印出当前传感器输出电压,信号指示灯亮起,如果没有上述现象,可通过顺时针调节可调电阻,直到出现上述现象为止。

2017-03-31-064234_1824x984_scrot