学物联网,来万物简单IoT物联网!!
一、产品简介
MQ3是汉威电子出品的乙醇传感器,它有快速相应、高敏感度、稳定、寿命长以及外围电路简单等多个优点,常用于酒精监测、呼吸分析仪等场景。
引脚定义
- VCC: 3.3V
- A0: ADC
- D0: GPIO
- GND: 电源地
二、技术参数
- 预热时间:不少于48小时
- 监测乙醇浓度范围:0.05mg/L - 10mg/L
- 使用温度范围: -10 - 50摄氏度
三、软件接口
MQ3(adcObj) - 创建MQ3驱动对象
- 函数原型:
mq3Obj = MQ3(adcObj)
-
参数说明:
| 参数 | 类型 | 必选参数? | 说明 |
| — | — | — | — |
| adcObj | ADC | 是 | 传入ADC对象 | -
返回值:
创建对象成功,返回MQ3对象;MQ3对象创建失败,抛出Exception -
示例代码:
from machine import ADC, Pin
import mq3 # MQ3乙醇传感器驱动库
# 初始化ADC类型的设备
adcObj = ADC(Pin(32))
mq3Obj = mq3.MQ3(adcObj)
- 输出:
无
getVoltage - 测量乙醇浓度电压值
- 函数功能:
量测乙醇并返回测量结果 - 函数原型:
MQ3.getVoltage()
- 参数说明:
无 - 返回值:
成功返回温度测量结果(数据类型:浮点型;单位:mV);失败抛出Exception - 示例:
from machine import ADC, Pin
import mq3 # MQ3乙醇传感器驱动库
# 初始化ADC类型的设备
adcObj = ADC(Pin(32))
mq3Obj = mq3.MQ3(adcObj)
while True:
voltage = mq3Obj.getVoltage()
print("voltage:%d" % voltage)
sleep_ms(500)
- 输出:
voltage: 800.0
四、接口案例
- 代码:
# Python代码
from machine import ADC, Pin
import mq3 # MQ3乙醇传感器驱动库
import utime # 延时API所在组件
# 初始化ADC类型的设备
adcObj = ADC(Pin(32))
mq3Obj = mq3.MQ3(adcObj)
while True:
voltage = mq3Obj.getVoltage()
print("voltage:%d" % voltage)
utime.sleep_ms(500)
- 输出:
...
Testing mq3 ...
voltage: 500
...
五、通信协议
主控芯片通过ADC读取MQ3传感器的乙醇数据。
六、工作原理
mq-3 需要预热, 从下面对结构图中可以看到它周围有两层叫做防爆网的钢罩,这样可以确保当我们测量乙醇浓度的时候传感器不会发生爆炸。
从下图可以看到mq-3内部集成的乙醇传感器对乙醇最敏感,并且随着乙醇浓度的升高,乙醇传感器的电阻会变小。
参考文献及购买链接
[1] MQ3乙醇传感器参考手册
[2] 商品购买链接