Coding Monitor Kualitas Air Limbah
Coding Monitor Kualitas Air Limbah
Coding Monitor Kualitas Air Limbah
#include <LiquidCrystal_I2C.h>
#include <OneWire.h>
#include <DallasTemperature.h>
#include <ESP8266WiFi.h>
#include <BlynkSimpleEsp8266.h>
#define ONE_WIRE_BUS D7
#define pTurbidity A0
#define pBuang D5
#define pBalik D6
BlynkTimer timer;
BLYNK_CONNECTED()
{
// Change Web Link Button message to "Congratulations!"
Blynk.setProperty(V3, "offImageUrl", "https://static-
image.nyc3.cdn.digitaloceanspaces.com/general/fte/congratulations.png");
Blynk.setProperty(V3, "onImageUrl", "https://static-
image.nyc3.cdn.digitaloceanspaces.com/general/fte/congratulations_pressed.png");
Blynk.setProperty(V3, "url", "https://docs.blynk.io/en/getting-started/what-do-i-
need-to-blynk/how-quickstart-device-was-made");
}
void setup()
{
Serial.begin(9600);
sensors.begin();
Blynk.begin(BLYNK_AUTH_TOKEN, ssid, pass);
pinMode(pBuang, OUTPUT);
pinMode(pBalik, OUTPUT);
pinMode(pTurbidity, INPUT);
// initialize LCD
lcd.init();
// turn on LCD backlight
lcd.backlight();
lcd.setCursor(0, 0);
lcd.print("MONITOR SUHU");
lcd.setCursor(0, 1);
lcd.print("DAN KEKERUHAN");
delay(2000);
lcd.clear();
}
void loop() {
Blynk.run();
timer.run();
sensors.requestTemperatures();
float tempC = sensors.getTempCByIndex(0);
Serial.println(tempC);
Blynk.virtualWrite(V0, tempC);
lcd.setCursor(0, 1);
lcd.print("S: ");
lcd.setCursor(3, 1);
lcd.print(tempC);
if (tempC < 32) {
lcd.setCursor(9, 1);
lcd.print("BUANG ");
Serial.println(" COOL ");
}
else {
lcd.setCursor(9, 1);
lcd.print("BALIK ");
Serial.println(" HOT ");
}
Blynk.virtualWrite(V1, turbidity);
delay(100);
lcd.setCursor(0, 0);
lcd.print("T: ");
lcd.setCursor(3, 0);
lcd.print(turbidity);
lcd.print(" ");
delay(100);
if (turbidity < 25) {
lcd.setCursor(9, 0);
lcd.print("BUANG ");
Serial.println(" its CLEAR ");
}
else {
lcd.setCursor(9, 0);
lcd.print("BALIK ");
Serial.println(" its DIRTY ");
}
if (turbidity < 25 && tempC <32) {
digitalWrite(pBuang, HIGH);
digitalWrite(pBalik, LOW);
}
else {
digitalWrite(pBuang, LOW);
digitalWrite(pBalik, HIGH);
}
}