BLYNK_TEMPLATE_ID = "TMPLgwKssgggsnFXp"
BLYNK_DEVICE_NAME = "Air Quality Monitoring"
BLYNK_AUTH_TOKEN =
"k03gT6nJosdsfsffesrJV_S5SXEAdgdsdghhgPZvXEwSKDfj&qu
ot;
BLYNK_PRINT = Serial
import ESP8266WiFi
import BlynkSimpleEsp8266
import DHT
import LiquidCrystal_I2C
lcd = LiquidCrystal_I2C(0x27, 16, 2)
degree_symbol = [
0b00111,
0b00101,
0b00111,
0b00000,
0b00000,
0b00000,
0b00000,
0b00000
]
auth = BLYNK_AUTH_TOKEN
ssid = "" # type your wifi name
pass = "" # type your wifi password
timer = BlynkTimer()
gas = A0
sensorThreshold = 100
DHTPIN = 2 # Connect Out pin to D2 in NODE MCU
DHTTYPE = DHT11
dht = DHT(DHTPIN, DHTTYPE)
def sendSensor():
h = dht.readHumidity()
t = dht.readTemperature() # or dht.readTemperature(true) for Fahrenheit
if (isnan(h) or isnan(t)):
Serial.println("Failed to read from DHT sensor!")
return
analogSensor = analogRead(gas)
Blynk.virtualWrite(V2, analogSensor)
Serial.print("Gas Value: ")
Serial.println(analogSensor)
# You can send any value at any time.
# Please don't send more that 10 values per second.
Blynk.virtualWrite(V0, t)
Blynk.virtualWrite(V1, h)
print("Temperature : ", t)
print(" Humidity : ", h)
def setup():
Serial.begin(115200)
Blynk.begin(auth, ssid, pass)
dht.begin()
timer.setInterval(30000, sendSensor)
lcd.begin()
lcd.setCursor(3,0)
lcd.print("Air Quality")
lcd.setCursor(3,1)
lcd.print("Monitoring")
delay(2000)
lcd.clear()
def loop():
Blynk.run()
timer.run()
h = dht.readHumidity()
t = dht.readTemperature()
gasValue = analogRead(gas)
lcd.setCursor(0,0)
lcd.print("Temperature ")
lcd.setCursor(0,1)
lcd.print(t)
lcd.setCursor(6,1)
lcd.write(1)
lcd.createChar(1, degree_symbol)
lcd.setCursor(7,1)
lcd.print("C")
delay(4000)
lcd.clear()
lcd.setCursor(0, 0)
lcd.print("Humidity ")
lcd.print(h)
lcd.print("%")
delay(4000)
lcd.clear()
if gasValue < 600:
lcd.setCursor(0,0)
lcd.print("Gas Value: ")
lcd.print(gasValue)
lcd.setCursor(0, 1)
lcd.print("Fresh Air")
print("Fresh Air")
delay(4000)
lcd.clear()
elif gasValue > 600:
cpp
lcd.setCursor(0,0)
lcd.print(gasValue)
lcd.setCursor(0, 1)
lcd.print("Bad Air")
print("Bad Air")
time.sleep(4)
lcd.clear()
if gasValue > 600:
Blynk.logEvent("pollution_alert", "Bad Air")