学物联网,来万物简单IoT物联网!!
一、产品简介
GP2Y10粉尘传感器用于检测非常细的空气漂浮颗粒物,主要用于空气净化系统中,传感器外观引脚如下图所示。
引脚定义
- GND:地
- VCC:5V
- LED:输入信号
- OUT:模拟信号输出
二、技术参数
工作电压:5V~7V
工作电流:20mA
最小粒子检出值:0.8微米
灵敏度:0.5V/(0.1mg/m3)
工作温度:-10°C~65°C
存储温度:-20°C~80°C
模块重量:15g
板子尺寸:46mm x 30mm x 17.6mm
三、软件接口
GP2Y10(adcObj,gpioObj) - 创建粉尘传感器驱动对象
- 函数原型
gp2y10Obj = GP2Y10(adcObj,gpioObj)
- 参数说明
参数 | 类型 | 必选参数? | 说明 |
---|---|---|---|
adcObj | ADC | 是 | 传感器OUT配置引脚 传入ADC对象 |
gpioObj | GPIO | 是 | 传感器LED配置引脚 传入Pin对象 |
- 返回值
GP2Y10对象成功,返回GP2Y10对象;GP2Y10对象创建失败,抛出Exception
- 示例代码
import gp2y10
from machine import GPIO,ADC
adcObj = ADC(Pin(32))
gpioObj = Pin(2,Pin.OUT)
gp2y10Obj=gp2y10.GP2Y10(adcObj,gpioObj)
print("gp2y10Obj inited!")
- 输出
gp2y10Obj inited!
getVoltage() - 获取当前adc值
- 函数功能:
获取当前adc值
- 函数原型:
GP2Y10.getVoltage()
- 参数说明:
无
- 返回值:
返回当前adc值
- 示例:
import gp2y10
from machine import GPIO,ADC
import utime
adcObj = ADC(Pin(32))
gpioObj = Pin(2,Pin.OUT)
gp2y10Obj=gp2y10.GP2Y10(adcObj,gpioObj)
print("gp2y10Obj inited!")
while True:
readvalue = gp2y10Obj.getVoltage()
print("value is ", readvalue)
utime.sleep(1)
- 输出
gp2y10Obj inited!
value is 8
value is 11
value is 13
value is 9
value is 13
四、接口案例
- 案例代码
import gp2y10
from machine import GPIO,ADC
import utime
adcObj = ADC(Pin(32))
gpioObj = Pin(2,Pin.OUT)
gp2y10Obj=gp2y10.GP2Y10(adcObj,gpioObj)
print("gp2y10Obj inited!")
while True:
readvalue = gp2y10Obj.getVoltage()
print("value is ", readvalue)
utime.sleep(1)
- 输出
gp2y10Obj inited!
value is 8
value is 11
value is 13
value is 9
value is 13
五、工作原理
其原理是粉尘传感器中心有个孔,可以让空气自由流过,定向发射LED光,通过检测经过空气中灰尘折射过后的光线来判断灰尘的含量。传感器装置中有一个红外发光二极管和光电晶体管,对角布置成允许其检测到在空气中的灰尘发射光。传感器内部电路图如下所示:
参考文献及购买链接
[1] 粉尘传感器
[2] 粉尘传感器购买链接