Hi BDx-ian!
Tutorial untuk kali ini kita akan belajar cara untuk paparkan notifikasi melalui aplikasi Blynk dan memantau kelembapan tanah dengan menggunakan komponen sensor kelembapan tanah, LED dan ESP8266.
Konsepnya adalah NodeMCU ESP8266 akan menghantar notifikasi kepada telefon pengguna melalui aplikasi Blynk dan LED akan menyala jika peratus kelembapan tanah lebih dari 50%. Widget gauge pada dashboard Blynk digunakan untuk memantau kadar kelembapan tanah.
Bagi yang belum pernah guna aplikasi Blynk, anda boleh pergi ke pautan di bawah untuk mengetahui lebih lanjut cara nak setup aplikasi web dan mobile daripada Blynk sebelum memulakan tutorial ini.
1. Set template
Langkah pertama, bina template baru dan kemudian cipta datastream baru. Pilih Virtual Pin dan setkan datastream seperti berikut. Setelah selesai, klik Create.
Kemudian, pergi Web dashboard dan drag widget Gauge ke dalam dashboard. Setkan widget seperti berikut. Setelah selesai, klik Save.
2. Set device
Pergi ke Search dan bina device baru daripada template yang telah dibina tadi seperti berikut. Kemudian, klik Create.
3. Komponen
- Sensor kelembapan tanah (soil moisture sensor)
- LED
- Resistor 220Ω
- Jumper Wire
- Breadboard
- NodeMCU ESP8266 dan USB
- Power adapter 5V
4. Litar
Sensor kelembapan tanah
- A0 → pin A0 ESP8266
- GND → pin GND ESP8266
- VCC → pin 3V ESP8266
LED
- -ve terminal LED → GND ESP8266
- +ve terminal LED → 220 Ohm resistor → pin D5 ESP8266
5. Code
#define BLYNK_TEMPLATE_ID "Template ID anda"
#define BLYNK_DEVICE_NAME "Nama device anda"
#define BLYNK_PRINT Serial #include <ESP8266WiFi.h> #include "BlynkSimpleEsp8266.h"
char auth[] = "auth token device anda"; char ssid[] = "Nama wifi anda"; char pass[] = "Password wifi anda";
int soilHumid; int analogValue;
void setup() { Serial.begin(9600);
pinMode(14, OUTPUT); Blynk.begin(auth, ssid, pass); }
void loop() { Blynk.run(); analogValue = analogRead(A0); soilHumid = map(analogValue,0,1023,0,100); Blynk.virtualWrite (V0, soilHumid); Serial.print("Kelembapan Tanah: "); Serial.print(soilHumid); Serial.print("%"); Serial.println(" "); delay(2000);
if (soilHumid<50){ digitalWrite(14,LOW); Serial.println("tanah lembab.."); Serial.println(" "); } else { Serial.println("tanah kering.."); digitalWrite(14,HIGH); Serial.println(" "); Blynk.logEvent("warning", "siram pokok"); }
} |
Penting
Sila tukar maklumat berikut dalam code anda
#define BLYNK_TEMPLATE_ID "Template ID anda" //Dapatkan di device info
#define BLYNK_DEVICE_NAME "Nama device anda" //Dapatkan di device info
char auth[] = "auth token device anda"; //Dapatkan di device info char ssid[] = "Nama wifi anda"; char pass[] = "Password wifi anda"; |
6. Output
Masukkan probe sensor ke dalam tanah sama ada dalam keadaan lembab atau kering untuk mengukur kadar kelembapan tanah.
1. Apabila tanah dalam keadaan kering (peratus melebihi 50%)
-
- Serial Monitor
-
- Dashboard (web dan mobile)
-
- Notifikasi
-
- LED menyalah (HIGH)
2. Apabila peratus kelembapan tanah kurang 50%
-
- Serial Monitor
-
- Dashboard (web dan mobile)
-
- LED tidak menyala (LOW)
Jika anda suka dengan perkongsian tutorial dalam blog kami ni, jangan lupa untuk follow Facebook dan Instagram kami, kat situ ada bermacam info dan update terkini yang akan kami kongsikan kepada anda. Itu sahaja untuk tutorial kami. Stay update dan selamat mencuba!