极客工坊

 找回密码
 注册

QQ登录

只需一步,快速开始

楼主: davidce

自制基于Arduino移动式城市环境信息采集器

  [复制链接]
发表于 2012-8-15 12:57:33 | 显示全部楼层
请问楼主

我只用了DSM501A模块,发现数据飘的厉害,是在办公室室内测试的,有无正常数据范围可以参考?
难道真的是我们办公室空气污染严重?

12:47:33.718> PM1.0:63  PM2.5:991
12:48:04.718> PM1.0:70  PM2.5:505
12:48:35.781> PM1.0:33  PM2.5:792
12:49:06.531> PM1.0:472  PM2.5:165
12:49:36.843> PM1.0:591  PM2.5:32
12:50:07.531> PM1.0:1224  PM2.5:368
12:50:37.843> PM1.0:552  PM2.5:0
12:51:09.031> PM1.0:602  PM2.5:79
12:51:39.500> PM1.0:1295  PM2.5:597
12:52:10.437> PM1.0:1447  PM2.5:261
12:52:41.437> PM1.0:1110  PM2.5:201
12:53:12.062> PM1.0:765  PM2.5:22
12:53:43.500> PM1.0:1376  PM2.5:312
12:54:13.875> PM1.0:1025  PM2.5:250
12:54:44.125> PM1.0:697  PM2.5:44
12:55:15.437> PM1.0:1184  PM2.5:345
12:55:45.625> PM1.0:677  PM2.5:222
12:56:16.625> PM1.0:932  PM2.5:85
回复 支持 反对

使用道具 举报

 楼主| 发表于 2012-8-15 18:35:24 | 显示全部楼层
Jerry 发表于 2012-8-15 12:57
请问楼主

我只用了DSM501A模块,发现数据飘的厉害,是在办公室室内测试的,有无正常数据范围可以参考?
...

http://www.howmuchsnow.com/arduino/airquality/grovedust/ 可以参考这篇文章
回复 支持 反对

使用道具 举报

发表于 2012-9-4 18:02:12 | 显示全部楼层
谢谢。有兴趣做一个,用于监测小区空气。


回复 支持 反对

使用道具 举报

发表于 2012-12-3 14:19:06 | 显示全部楼层
楼主,方便留个qq或者电话吗?
或者加我qq:120706203.
有一些问题要请教。
回复 支持 反对

使用道具 举报

 楼主| 发表于 2012-12-4 09:33:34 | 显示全部楼层
有问题在这提就可以了
回复 支持 反对

使用道具 举报

发表于 2012-12-4 09:48:44 | 显示全部楼层
我想找厂家,批量生产这样的测试设备(自己用),主要测量室内PM2.5、二氧化碳、温湿度。
我想请教一下,我大概找什么样的厂家可以做这个东西?
回复 支持 反对

使用道具 举报

 楼主| 发表于 2012-12-4 11:14:42 | 显示全部楼层
luodehasen 发表于 2012-12-4 09:48
我想找厂家,批量生产这样的测试设备(自己用),主要测量室内PM2.5、二氧化碳、温湿度。
我想请教一下,我 ...

这个我i就不清楚了,我这都是自己玩的
回复 支持 反对

使用道具 举报

发表于 2013-1-30 11:50:40 | 显示全部楼层
传感器价格好贵
这套下来价格不低呀~
回复 支持 反对

使用道具 举报

 楼主| 发表于 2013-1-30 16:22:53 | 显示全部楼层
relaxlife 发表于 2013-1-30 11:50
传感器价格好贵
这套下来价格不低呀~

与有些传感器现在看起来是多余了
回复 支持 反对

使用道具 举报

发表于 2013-2-5 23:27:33 | 显示全部楼层
怎么0022的编译有些错误啊

sketch_feb05f.cpp:4:19: error: SHT1x.h: No such file or directory
sketch_feb05f:11: error: 'SHT1x' does not name a type
sketch_feb05f.cpp: In function 'void loop()':
sketch_feb05f:119: error: 'sht1x' was not declared in this scope
回复 支持 反对

使用道具 举报

 楼主| 发表于 2013-2-6 11:44:03 | 显示全部楼层
elvaw80 发表于 2013-2-5 23:27
怎么0022的编译有些错误啊

sketch_feb05f.cpp:4:19: error: SHT1x.h: No such file or directory

你需要SHT1x 这个库,是温湿度传感器的
回复 支持 反对

使用道具 举报

发表于 2013-2-7 17:52:19 | 显示全部楼层
照着lz做了一个一样的粉尘检测器,奇怪的是PM2.5的值经常为0,PM1的值倒是在100-800之间变化,不知道是不是灵敏度不够,过几天打算试试sharp的灰尘传感器
回复 支持 反对

使用道具 举报

 楼主| 发表于 2013-2-7 18:42:30 | 显示全部楼层
andy_skiff 发表于 2013-2-7 17:52
照着lz做了一个一样的粉尘检测器,奇怪的是PM2.5的值经常为0,PM1的值倒是在100-800之间变化,不知道是不是 ...

sharp 的那个更好用一些,电压输出,也更省电
回复 支持 反对

使用道具 举报

发表于 2013-3-9 18:09:01 | 显示全部楼层
楼主 向您咨询下:
代码复制您的:

unsigned long currentMillis;
    boolean goloop=true;
    partMillis=0;
    unsigned long duration1_0=0;
    unsigned long duration2_5=0;
    long temp1_0=0;
    long temp2_5=0;
   
   while(goloop)      //loop
    {
      currentMillis = micros();
      if(currentMillis<previousMillis)
      {
        partMillis = 4294967295 -  previousMillis +1;
        previousMillis = 0;  
      }
      if(currentMillis - previousMillis - partMillis < mintev)
      {
        //1.0
        if(temp1_0==0)
        {
          temp1_0=-1;
          temp1_0=pulseIn(DSMPin1_0, LOW);
        }
        if(temp1_0>0)
        {
          duration1_0 =duration1_0 + temp1_0;
          temp1_0=0;
        }
        //2.5
        if(temp2_5==0)
        {
          temp2_5=-1;
          temp2_5=pulseIn(DSMPin2_5, LOW);
        }
        if(temp2_5>0)
        {
          duration2_5 =duration2_5 + temp2_5;
          temp2_5=0;
        }
      }
      else
      {
        goloop=false;
        previousMillis=currentMillis;
      }
      
    }
  Serial.println("duration1_0:");
  Serial.println(duration1_0);
  Serial.println("duration2_5:");
  Serial.println(duration2_5);  
   double per =double(duration1_0)/double(interval);// had multiply 1000
    int pcs1_0 = -1;
    pcs1_0 =  per * 50.0;
    per =double(duration2_5)/double(interval);// had multiply 1000
    int pcs2_5 = -1;
    pcs2_5 =  per * 50.0;
  Serial.println("PM2.5:");
  Serial.println(pcs2_5);  
  Serial.println("PM1.0:");
  Serial.println(pcs1_0);



为什么最后的数据是:
PM2.5:
14248
PM1.0:
14543


回复 支持 反对

使用道具 举报

 楼主| 发表于 2013-3-9 19:50:40 | 显示全部楼层
30秒的粒子数
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则

Archiver|联系我们|极客工坊 ( 浙ICP备09023225号 )

GMT+8, 2020-7-9 20:30 , Processed in 0.180768 second(s), 23 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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