int measurePin = 0; //Connect dust sensor to Arduino A0 pin
int ledPower = 2; //Connect 3 led driver pins of dust sensor to Arduino D2
int samplingTime = 280;
int deltaTime = 40;
int sleepTime = 9680;
float sum = 0;
float voMeasured = 0;
float calcVoltage = 0;
float dustDensity = 0;
float average_dustDensity;
void setup(){
Serial.begin(9600);
pinMode(ledPower,OUTPUT);// 미세먼지 센서 내부 LED
}
void loop() {
average_dustDensity = particleSensing();
Serial.print("P");
Serial.println((int)average_dustDensity);
delay(500);
}
float particleSensing() {
digitalWrite(ledPower,LOW); // power on the LED
delayMicroseconds(samplingTime);
voMeasured = analogRead(measurePin);
delayMicroseconds(deltaTime);
digitalWrite(ledPower,HIGH); // turn the LED off
delayMicroseconds(sleepTime);
// 0 - 5V mapped to 0 - 1023 integer values
calcVoltage = voMeasured * (5.0 / 1024.0);
if( calcVoltage > 0.6 ) {
dustDensity =1000.0*( 0.172 * calcVoltage - 0.1);
delay(190);
}
return dustDensity;
}//프로그램 끝
'미세먼지' 카테고리의 다른 글
SPS30 미세먼지 센서 측정결과 시리얼 플로팅 (0) | 2019.03.06 |
---|---|
미세먼지를 줄이기 위한 미국의 LNG 혼소 엔진 기관차 사례 (0) | 2015.03.31 |
미세먼지제로 LNG 혼소 엔진 인젝터 방식과 기관차 Retrofit(개조) (0) | 2015.03.31 |