szpapas 发表于 2015-1-20 12:31:08

Arduino 驱动新的PM2.5

新的PM2.5 支持串口和电压输出,比以前好用多了。

测试代码:

串口连10,11
电压输出口,连A0


#include <SoftwareSerial.h>

SoftwareSerial mySerial(10, 11); // RX, TX

void setup()
{
// Open serial communications and wait for port to open:
Serial.begin(9600);
Serial.println("Goodnight moon!");

// set the data rate for the SoftwareSerial port
mySerial.begin(9600);

Serial.println(0x05, HEX);
Serial.println(0xFE, HEX);

pinMode(A0,INPUT);

query();
}

void query() {
// 05FEF503
uint8_t q_str;
q_str = 0x05;
q_str = 0xFE;
q_str = 0xF5;
q_str = 0x03;

mySerial.write(q_str,4);
}


int val1, val2, value;

void loop() // run over and over
{
query();
delay(1000);

int sensorValue = analogRead(A0);            
// map it to the range of the analog out:
int outputValue = map(sensorValue, 0, 1023, 20, 500);

Serial.print("sensor = " );                     
Serial.print(sensorValue);      
Serial.print("\t output = ");      
Serial.println(outputValue);   

while(mySerial.available() > 3) {
    if ( mySerial.read() == 6) {
      val1 =mySerial.read();
      val2 =mySerial.read();
      value = val1*256 + val2;

      Serial.print(6, HEX);
      Serial.print(' ');
      Serial.print(val1, HEX);
      Serial.print(' ');
      Serial.print(val2, HEX);
      Serial.print(' ');
      Serial.println(value);
      
    }
}


}

Paderboy 发表于 2015-1-20 13:59:25

不错,这个模块,有链接不?

zwltanf 发表于 2015-1-20 14:53:29

具体啥样的模块

szpapas 发表于 2015-1-20 20:28:04

GP2Y1010AU0FC01

szpapas 发表于 2015-1-20 20:29:43

GP2Y1010AU0FC01

老胖熊 发表于 2015-1-21 11:43:18

准吗?                              

dingshidong 发表于 2015-4-18 12:29:02

还可以选用更好的激光PM2.5传感器(激光散射法),传统的是灰尘传感器(Dust Sensor),粒径太小根本检测不到,激光PM2.5传感器,推荐PlanTower(攀藤科技)G1或者G3 激光PM2.5传感器,160元左右,串口输出,数据直接使用无需校准,关键还是PM2.5测的准。淘宝 搜索“激光PM2.5传感器 G1”或者“激光PM2.5传感器 G3”.

mc.six 发表于 2015-4-18 14:37:45

dingshidong 发表于 2015-4-18 12:29 static/image/common/back.gif
还可以选用更好的激光PM2.5传感器(激光散射法),传统的是灰尘传感器(Dust Sensor),粒径太小根本检测不 ...

我用的就是,还上传了例程,简单好用。例程在论坛里搜。

mondaywoo 发表于 2015-8-20 16:40:56

我用的SHARPT的GP2Y1051,读出的数据都是FF 00 00 00 55 55 AA,这样计算出来的电压是0,空气没那么干净吧。问卖家也没回应。
页: [1]
查看完整版本: Arduino 驱动新的PM2.5