1#define BLYNK_PRINT Serial
2#include <ESP8266_Lib.h>
3#include <BlynkSimpleShieldEsp8266.h>
4#include <SimpleTimer.h>
5
6char auth[] = "fI1Hhyw20XUE7WmUhcJhJ_QAFHVYkPxQ";
7
8char ssid[] = "ABID";
9char pass[] = "8901234567";
10
11#define ESP8266_BAUD 115200
12ESP8266 wifi(&Serial);
13
14int SensorPin = A5;
15int led = 7;
16float SensorOut = 0;
17float SensorVo = 0;
18float Dust = 0;
19float Voltage_noDust = 0.12;
20float K = 0.5;
21SimpleTimer timer;
22
23void sendSensor(){
24 digitalWrite(led,LOW);
25 delayMicroseconds(280);
26 SensorOut = analogRead(SensorPin);
27 delayMicroseconds(50);
28 digitalWrite(led,HIGH);
29 delayMicroseconds(9670);
30 SensorVo = SensorOut*(5.0/1024);
31 Dust = (SensorVo-Voltage_noDust)*100/K;
32
33 if ( Dust < 0)
34 {
35 Dust = 0.00;
36 }
37 Blynk.virtualWrite(V1,Dust);
38}
39
40void setup()
41{
42 pinMode(led,OUTPUT);
43 Serial.begin(115200);
44 delay(10);
45 Serial.begin(ESP8266_BAUD);
46 delay(10);
47 Blynk.begin(auth, wifi, ssid, pass);
48 timer.setInterval(1000L, sendSensor);
49}
50
51void loop()
52{
53 Blynk.run();
54 timer.run();
55}
56
57