0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

雾霾远离我:PM2.5检测器自制解析

454398 来源:电子电路网 作者:佚名 2014-09-30 14:00 次阅读

各位心灵手巧的Maker小伙伴们,是时候动手做一个空气污染监测装置了。利用一个空气监测传感器搭配Arduino控制器和扩展板,马上就可以搭建出一个简易空气监测装置。即使没有那些专业的监测设备和砖家的报告,你也能科学客观的了解你时刻呼吸的空气质量!

硬件列表

-Sharp GP2Y10 空气质量传感器

- DFRduino UNO R3

- IO 传感器扩展板 V7

-转接板(如果没有转接板 可选150欧、220uF电容、面包板)

-杜邦线

步骤一:硬件连接

图 1 完整连接图

1、I/O扩展板插在UNO上

2、粉尘传感器与转接板通过杜邦线连接

3、转接板上标有分别标有D和A的两个接口

D → 数字口 2

A → 模拟口 0

只要轻松的插上几根线就完成连接,是不是很方便呀?

步骤二:烧入代码

按照教程代码烧入DFRduino UNO R3

完成之后,得到一串的数字是不是还是很模糊呀?我们先简单了解下粉尘传感器,可以对应代码一起看。

(当然,如果觉得不需要了解的话,只需直接下载代码即可使用。)

雾霾远离我:PM2.5检测器自制解析

上图是个粉尘传感器的内部结构图以及硬件说明。

可以从图中看出,在发射端,我们需要驱动一个红外发射管,也就是引脚3。对应程序中定义的ledPower。同样,我们也可以看出输出是引脚5,输出的是模拟量,对应到程序中的measurePin。

那我们如何得到我们想要的值呢?

下图截自 datasheet,你可以看出粉尘传感器的输出电压是几乎呈线性的。dustDensity = 0.17 * calcVoltage - 0.1; 这个公式曲线近似转换过来的(来自Chris Nafis)。这里dustDensity是粉尘密度值,单位mg/m3。calcVoltage是输出电压值。

雾霾远离我:PM2.5检测器自制解析

我们都知道输出0~5V电压对应UNO模拟口读出的是0~1023。calcVoltage = voMeasured * (5.0 / 1024.0); 这个公式就是模拟值转为电压值。voMeasured 模拟口输出量。

雾霾远离我:PM2.5检测器自制解析

根据datasheet,也就是上图可看出,我们需要开启内部的LED并等待280μs(微秒),之后再读取输出值。

雾霾远离我:PM2.5检测器自制解析

上图可以看出,整个脉冲持续时间为320μs。因此,我们还需再等待40μs,才能将LED关闭。

以上就是对程序以及,粉尘传感器工作原理的简单说明。

步骤三:没有转接板的情况

雾霾远离我:PM2.5检测器自制解析

还有个问题,有人说如果没有转接板怎么办,那就接着看上面这张图。

看出来了吗?我们需要在引脚1外接一个150欧的电阻,并且并联一个220uF的电容。这也就是我们使用转接板的原因,把这个部分在转接板上完成了,大大方便了连线,也增加了稳定性。

下面来看下实物图上的引脚位置,如果是需要自己外接电阻、电容的朋友们请继续往下看。“

粉尘传感器对应的Arduino引脚:

雾霾远离我:PM2.5检测器自制解析

雾霾远离我:PM2.5检测器自制解析

雾霾远离我:PM2.5检测器自制解析

照着连就可以了,连接完成之后,同样下载教程的样例代码。

PM2.5检测器 代码如下:

int measurePin = 0; // 连接模拟口0

int ledPower = 2; // 连接数字口2

int samplingTime = 280;

int deltaTime = 40;

int sleepTime = 9680;

float voMeasured = 0;

float calcVoltage = 0;

float dustDensity = 0;

void setup(){

Serial.begin(9600);

pinMode(ledPower,OUTPUT);

}

void loop(){

digitalWrite(ledPower,LOW); //开启内部LED

delayMicroseconds(samplingTime); // 开启LED后的280us的等待时间

voMeasured = analogRead(measurePin); // 读取模拟值

delayMicroseconds(deltaTime); // 40us等待时间

digitalWrite(ledPower,HIGH); // 关闭LED

delayMicroseconds(sleepTime);

// 0 - 5V mapped to 0 - 1023 integer values

// recover voltage

calcVoltage = voMeasured * (5.0 / 1024.0); //将模拟值转换为电压值

dustDensity = 0.17 * calcVoltage - 0.1; //将电压值转换为粉尘密度输出单位

Serial.print(“Raw Signal Value (0-1023): ”);

Serial.print(voMeasured);

Serial.print(“ - Voltage: ”);

Serial.print(calcVoltage);

Serial.print(“ - Dust Density: ”);

Serial.println(dustDensity); // 输出单位: 毫克/立方米

delay(1000);

}

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • 传感器技术
    +关注

    关注

    51

    文章

    330

    浏览量

    97235
  • DIY
    DIY
    +关注

    关注

    176

    文章

    883

    浏览量

    345909
收藏 人收藏

    评论

    相关推荐

    华曼PM2.5粉尘传感/模块助力绿色城市建设

    华曼PM2.5粉尘传感/模块助力绿色城市建设 持续的天气,各大医院被挤满的呼吸科,让人们真正体会到了大气污染的危害性。资料显示:
    发表于 04-18 08:33

    【CANNON申请】基于STM32的PM2.5无线检测装置

    个室内的PM2.5无线检测器,让人们每天起床的时候都能够准确得知室外室内的PM2.5含量。2.初步设计方案:主要是由控制PM2.5传感
    发表于 01-26 14:26

    自制PM2.5检测

    先晒一张完成品的图:PM2.5监测仪的核心传感就是 Dust Sensor,它能够检测大于0.8um的灰尘颗粒浓度,使用也比较方便,只需要四个引脚。准备材料:UNO PLUSI/O
    发表于 03-28 14:34

    PM2.5检测仪什么牌子好用?思乐智的PM2.5检测仪,PM2.5测试仪器怎么样?

    PM2.5检测仪什么牌子好用?思乐智的PM2.5检测仪,PM2.5测试仪器怎么样?伴随着经济的迅速发展,空气污染、
    发表于 11-29 16:54

    利用支持MicroPython的TPYBoard开发板自制PM2.5检测

    仪。 接下来我介绍一个在1个小时内制作一个PM2.5的方法,也就是利用拥有自家的解析器、编译、虚拟机和类库等,也就是具备二次开发和环境的TPYBoard开发板制作一个PM2.5
    发表于 01-04 08:52

    霍尼韦尔传感助力监控PM2.5

    持续的天气,各大医院被挤满的呼吸科,让人们真正体会到了大气污染的危害性。资料显示:主要是由二氧化硫、氮氧化物和可吸入颗粒物这三项构成,前两者为气态污染物,最后一项颗粒物更是加重
    发表于 05-04 06:43

    如何设计基于Multisim的检测器

    检测器的设计。基本要求:1以夏普GP2Y1010AU0F为传感,设计
    发表于 05-29 21:19

    霍尼韦尔传感可以助力PM2.5监控

      持续的天气,各大医院被挤满的呼吸科,让人们真正体会到了大气污染的危害性。资料显示:主要是由二氧化硫、氮氧化物和可吸入颗粒物这三项构成,前两者为气态污染物,最后一项颗粒物更是
    发表于 08-27 07:57

    基于单片机的PM2.5检测系统有哪些功能

    自动降尘;标签:51单片机、LCD1602、PM2.5、自动降尘题目扩展:灰尘检测、降尘系统资料预览效果图:总体资料:原理图:软件设计流程:系统框图:本设计以STC89C52单片机为核心控制,加上其他的模块一起组成
    发表于 11-19 06:48

    如何去实现一种基于单片机PM2.5检测处理控制设计

    LCD P0//***it PM2_5 = P2^1;//PM2.5模块PWM输入口***it busy=P0^7;// "忙"标志位***it add=.
    发表于 01-13 07:29

    PM2.5检测技术详解

    PM2.5检测技术详解
    发表于 02-07 16:15 56次下载

    使用Arduino制作检测PM2.5检测器的程序详细资料免费下载

    本文档的主要内容详细介绍的是使用Arduino制作检测PM2.5检测器的程序详细资料免费下载。
    发表于 02-26 08:00 9次下载
    使用Arduino制作<b class='flag-5'>检测</b><b class='flag-5'>PM2.5</b><b class='flag-5'>检测器</b>的程序详细资料免费下载

    对于PM2.5检测仪,它更适合用哪种PM2.5传感器

    PM2.5检测仪是指专用于测量空气中PM2.5(可入肺颗粒物)数值的专用检测仪器。由于近年来空气质量变差,城市中PM2.5浓度过高导致雾霾频
    发表于 07-30 14:54 1432次阅读

    扬尘pm2.5检测仪是什么

    扬尘pm2.5检测仪FT-YC09根据最新污染源解析的结果,建筑水泥扬尘对大气颗粒物的年分担率为18%,采暖季为12%,非采暖季为23%。建筑水泥尘对PM的年分担率为13%,采暖季为7
    发表于 05-20 09:08 666次阅读

    测量PM2.5检测仪有哪些?

    雾霾现象的主要成因,除了能直接进入人体,入侵肺泡导致肺部病变外,还能成为病菌的载体,传播疾病。测量PM2.5的仪器有哪些?1.室内PM2.5检测仪这是一款手持式PM2.5
    的头像 发表于 02-23 10:38 1094次阅读
    测量<b class='flag-5'>PM2.5</b>的<b class='flag-5'>检测</b>仪有哪些?