pcDuino帮你测PM2.5-Arduino中文社区 - Powered by Discuz!

Arduino中文社区

 找回密码
 立即注册

QQ登录

只需一步,快速开始

查看: 18141|回复: 12

pcDuino帮你测PM2.5

[复制链接]
发表于 2013-12-12 18:03 | 显示全部楼层 |阅读模式
本帖最后由 哆啦A梦 于 2013-12-13 10:30 编辑

时下,PM2.5可以说是最为热门的词语之一。入冬以来,大面积雾霾天气袭击我国,北方及华东等25省市持续雾霾天气。本帖将带你如何在pcDuino上使用Dust Sensor,检测你生活环境的空气质量如何。
%E5%9B%BE%E7%89%871.png

【关于PM2.5和雾霾】

什么是PM2.5,什么是灰霾,他们的联系是什么?
PM是英文particulate matter的缩写,意为颗粒物,气象上称为气溶胶粒子。而PM2.5就是指单位体积的空气中,等效直径小于2.5微米的气溶胶粒子的总质量,一般常用的单位是微克每立方米。人的头发的直径一般是80微米左右,2.5微米大约是头发直径的三十分之一,这是人的肉眼根本无法看见的。在世界气象组织(WMO)的《地面观测规范》中,“haze”是其中一种天气现象,是指空气中的灰尘、硫酸盐、硝酸盐、有机碳氢化合物等气溶胶粒子造成对光线的衰减作用,使水平能见度小于 10 km。对于“haze”一词的中文翻译,香港译作“烟霞”,内地译作“霾”或“灰霾”。其实灰霾这个词还是比较形象的,就是指灰蒙蒙的天。灰霾出现时,在视野开阔的地方沿着地平线向远处望去,可以看到远处被一层烟雾笼罩着。当灰霾比较严重时,城市看起来就是雾蒙蒙的,而实际上那又不是雾。由于灰霾(能见度的降低)与单位空气体积内细小颗粒物的数量关系更为密切,所以PM2.5与灰霾有着密切的联系。知道了它们的含义,那么答案就显而易见了:PM2.5就是造成灰霾天气的“真凶”!
PM2.5究竟从何而来?灰霾如何形成?
PM2.5来源广泛、成因复杂,主要为人为排放,包括燃煤、烧秸秆、烧烤、机动车出行、餐饮油烟、建筑施工扬尘、喷涂喷漆装修等,都会为增加PM2.5作“贡献”,一些排放出的气体发生化学反应也会转化成PM2.5PM2.5还有自然来源,包括风扬尘土、火山灰、森林火灾等。气象条件是灰霾形成的最重要的自然因素,当大气扩散条件较差时,就容易形成灰霾。在秋冬季,当冷空气活动偏弱,风速小,明显的逆温层使低空大气的垂直运动受限,导致大气污染物被阻滞在低空和近地面,就很容易出现灰霾天气。在春季,当“回南天”出现时,由于空气湿度加大,大气颗粒物吸收水分后粒径明显增大,造成能见度大幅下降,灰霾天气时有发生。
灰霾天气有什么危害?
灰霾最直接的影响就是使能见度下降,不仅影响交通运输,还严重影响城市环境。一个经常被阴霾笼罩和尘土飞扬城市是不会被人们喜欢的。灰霾与人的关系最密切的影响就是危害人体健康。权威的研究表面,PM2.5的浓度与呼吸道疾病、心血管疾病、癌症特别是肺癌的发病率以及死亡率均有着显著相关关系。在PM2.5面前,人体的两大屏障:血气屏障和血脑屏障形同虚设。PM2.5可以轻易进入人的肺部,引发呼吸道疾病。而一些更小的气溶胶粒子则可以进入人的肺泡,然后进入血液,破坏血管内壁,造成心血管疾病。而PM2.5中的致癌成分,比如重金属镍等,进入人体后,会提高人患癌症的风险。除了影响能见度和人体健康以外,灰霾还能影响地球的辐射平衡,影响气候变化,引起极端天气的增多。有研究表明,灰霾天气增多,会造成降水的强度增大和雷电出现的频率增加,增大暴雨和雷电对人们的生命财产造成的损失。
如何应对雾霾天气?
国家和政府已经下了决心去大力改善空气质量。作为普通老百姓,我们也可以采取一定措施来降低PM2.5的危害。一天当中PM2.5的最高浓度一般出现在凌晨到上午10时以前。所以当灰霾天气出现时,最好在下午锻炼身体而不是早晨。出现灰霾天气时,最好取消或者减少户外体育活动。当出现严重灰霾时,5岁以下儿童和有慢性呼吸道和心血管疾病的老人应该戴上口罩。这里需要强调的是,采用的口罩必须是高标准的工业口罩,因为即使是最高标准的口罩也只能够过滤一部分PM2.5,而一般的医用口罩基本没有用。我们每一个人都可以从自身做起,比如尽量采取公共交通方式、节约用电等低碳的生活方式,减少空气污染物的排放,为净化周围的空气作出贡献。

【Dust Sensor介绍】

                                                                                 %E5%9B%BE%E7%89%872-300x224.png
主要特点:
1PWM方式输出;
2、结构紧凑,重量轻;
3、容易安装;
4、单电源供电;
5、价格低。
主要应用:
1、空气净化器和空气清新机;
2、空气质量监控仪;
3、空调等相关产品。
主要参数:
1、光学原理,能够探测1微米以上的粉尘粒子;
2、两种输出模式,解决不同灵敏度使用要求,洁净环境Vout输出高电平信号(4V);
35VDC供电;
4、探测粒子范围:最大到8000pcs/283ml1um以上粒子);
附件:Dust_sensor
               
         
                        

               
         
                        
【测试运行】
硬件准备:
(1)pcDuino
(2)Dust Sensor
(3)公-母杜邦线
接线图:
Dust Sensor Pin 1  => pcDuino GND
Dust Sensor Pin 3  => pcDuino 5V
Dust Sensor Pin 4  => pcDuino D8
%E5%9B%BE%E7%89%873.png
%E5%9B%BE%E7%89%874.png
运行代码:(注意使用前需要预热3分钟左右)
(1)打开pcDuino上的arduino IDE,输入测试代码:
%E5%9B%BE%E7%89%875.png
(2)下载运行:
%E5%9B%BE%E7%89%876.png
               
         
                        

【测试代码】
[mw_shl_code=c,true]

/************************************/
/* Dust Sensor Pin 1 => pcDuino GND */
/* Dust Sensor Pin 3 => pcDuino 5V */
/* Dust Sensor Pin 4 => pcDuino D8 */
/************************************/

int pin = 5;
unsigned long duration;
unsigned long starttime;
unsigned long sampletime_ms = 30000;//sampe 30s ;
unsigned long lowpulseoccupancy = 0;
float ratio = 0;
float concentration = 0;

void setup()
{
pinMode(pin,INPUT);
starttime = millis();//get the current time;
}

void loop()
{
    duration = pulseIn(pin,LOW,1000000);
    lowpulseoccupancy += duration;

   if ((millis()-starttime) > sampletime_ms)//if the sampel time == 30s
  {
      ratio = lowpulseoccupancy/(sampletime_ms*10.0); // Integer percentage 0=>100
     concentration = 1.1*pow(ratio,3)-3.8*pow(ratio,2)+520*ratio+0.62; // using spec sheet curve
     printf(“lowpulseoccupancy: %ld \nratio: %f \nconcentration:          %f\n\n”,lowpulseoccupancy,ratio,concentration);
lowpulseoccupancy = 0;
starttime = millis();
  }
}
[/mw_shl_code]

%E5%9B%BE%E7%89%873.png
%E5%9B%BE%E7%89%874.png
发表于 2013-12-13 10:35 | 显示全部楼层
以前学习Arduino 最近刚入手一块pcDuino,正在努力学习中,到处逛逛学点经验, 你做检测pm2.5 我想做一个进化pm2.5. 求带。。。。
发表于 2013-12-13 18:32 | 显示全部楼层
本帖最后由 疯子。 于 2013-12-13 18:34 编辑

这个测出来的并不是严格意义上的PM2.5,单位都一样。一个是ug/m3,一个是pcs/0.01cf


发表于 2013-12-18 12:15 | 显示全部楼层
疯子。 发表于 2013-12-13 18:32
这个测出来的并不是严格意义上的PM2.5,单位都一样。一个是ug/m3,一个是pcs/0.01cf

这个夏普的粉尘传感器看他的datasheet,说理论上可以测pm0.8以上的颗粒
发表于 2014-1-9 15:33 | 显示全部楼层
疯子。 发表于 2013-12-13 18:32
这个测出来的并不是严格意义上的PM2.5,单位都一样。一个是ug/m3,一个是pcs/0.01cf

对啊 那怎么测PM2.5呢
发表于 2014-2-10 11:57 | 显示全部楼层
sharp 粉尘传感器 DUST SENSOR GP2Y1010 代理,可供方案支
发表于 2014-3-21 10:49 | 显示全部楼层
只能从灰尘的颗粒数/每立方英尺简单对应于微克/每立方米,且AQI不是这个单位,是需要从PM2.5的指标通过公式换算过去的
发表于 2014-4-10 18:25 | 显示全部楼层
fatblue 发表于 2014-3-21 10:49
只能从灰尘的颗粒数/每立方英尺简单对应于微克/每立方米,且AQI不是这个单位,是需要从PM2.5的指标通过公式 ...

换算公式是什么~
发表于 2014-10-22 18:40 来自手机 | 显示全部楼层
把代码输入运行显示有很多的错误。
发表于 2015-4-18 12:22 | 显示全部楼层
还可以选用更好的激光PM2.5传感器(激光散射法),传统的是灰尘传感器(Dust Sensor),粒径太小根本检测不到,激光PM2.5传感器,推荐PlanTower(攀藤科技)G1或者G3 激光PM2.5传感器,160元左右,串口输出,数据直接使用无需校准,关键还是PM2.5测的准。淘宝 搜索“激光PM2.5传感器 G1”或者“激光PM2.5传感器 G3”.
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

小黑屋|Archiver|手机版|Arduino中文社区

GMT+8, 2024-11-28 00:42 , Processed in 0.136717 second(s), 19 queries .

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

快速回复 返回顶部 返回列表