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);
}
}
}
不错,这个模块,有链接不? 具体啥样的模块 GP2Y1010AU0FC01 GP2Y1010AU0FC01 准吗? 还可以选用更好的激光PM2.5传感器(激光散射法),传统的是灰尘传感器(Dust Sensor),粒径太小根本检测不到,激光PM2.5传感器,推荐PlanTower(攀藤科技)G1或者G3 激光PM2.5传感器,160元左右,串口输出,数据直接使用无需校准,关键还是PM2.5测的准。淘宝 搜索“激光PM2.5传感器 G1”或者“激光PM2.5传感器 G3”. dingshidong 发表于 2015-4-18 12:29 static/image/common/back.gif
还可以选用更好的激光PM2.5传感器(激光散射法),传统的是灰尘传感器(Dust Sensor),粒径太小根本检测不 ...
我用的就是,还上传了例程,简单好用。例程在论坛里搜。 我用的SHARPT的GP2Y1051,读出的数据都是FF 00 00 00 55 55 AA,这样计算出来的电压是0,空气没那么干净吧。问卖家也没回应。
页:
[1]