Senin, 16 Desember 2024

Control 4 Relay IoT dengan Blynk


Berikut adalah panduan langkah-langkah untuk memprogram ESP8266 guna mengontrol 4 relay menggunakan aplikasi Blynk. Relay akan dikendalikan melalui antarmuka Blynk yang memungkinkan kontrol perangkat secara jarak jauh melalui smartphone.


Komponen yang Dibutuhkan

  1. ESP8266 (NodeMCU atau Wemos D1 Mini).
  2. Modul 4-Relay.
  3. Kabel Jumper.
  4. Sumber Daya: Power supply 5V untuk relay dan ESP8266.

Langkah-Langkah

1. Instalasi Perangkat Lunak

  1. Arduino IDE: Pastikan Anda memiliki Arduino IDE yang diinstal di komputer Anda.

  2. Tambahkan Board ESP8266 ke Arduino IDE:

    • Buka File > Preferences di Arduino IDE.
    • Masukkan URL berikut di kolom Additional Board Manager URLs:
      http://arduino.esp8266.com/stable/package_esp8266com_index.json
    • Pergi ke Tools > Board > Boards Manager, cari ESP8266, dan instal.
  3. Instal Library Blynk:

    • Pergi ke Tools > Manage Libraries.
    • Cari Blynk dan instal library terbaru.

2. Membuat Project di Blynk

  1. Unduh aplikasi Blynk IoT dari Google Play Store atau App Store.
  2. Buat akun dan login.
  3. Buat New Template:
    • Masukkan nama proyek, pilih perangkat ESP8266, dan koneksi Wi-Fi.
  4. Tambahkan Button Widgets untuk masing-masing relay (4 button).
    • Atur masing-masing button untuk Pin Virtual (V0, V1, V2, V3).
  5. Simpan dan salin Auth Token dari proyek Anda.

3. Skema Koneksi

  1. Hubungkan modul relay ke ESP8266:

    • Relay 1 → D1 (GPIO 5)
    • Relay 2 → D2 (GPIO 4)
    • Relay 3 → D3 (GPIO 0)
    • Relay 4 → D4 (GPIO 2)
  2. Sambungkan VCC relay ke 5V dan GND relay ke GND ESP8266.

  3. Sambungkan perangkat beban (lampu, kipas, dll.) ke terminal NO (Normally Open) dan COM pada modul relay.


4. Kode Program

Berikut adalah kode untuk mengontrol 4 relay menggunakan ESP8266 dan Blynk:

#define BLYNK_TEMPLATE_ID "YourTemplateID" #define BLYNK_DEVICE_NAME "4-Relay Controller" #define BLYNK_AUTH_TOKEN "YourAuthToken" #include <ESP8266WiFi.h> #include <BlynkSimpleEsp8266.h> // Kredensial Wi-Fi char ssid[] = "YourWiFiSSID"; char pass[] = "YourWiFiPassword"; // Pin untuk relay #define RELAY_1 D1 #define RELAY_2 D2 #define RELAY_3 D3 #define RELAY_4 D4 void setup() { // Inisialisasi Serial Monitor Serial.begin(115200); // Inisialisasi Blynk Blynk.begin(BLYNK_AUTH_TOKEN, ssid, pass); // Atur pin relay sebagai output pinMode(RELAY_1, OUTPUT); pinMode(RELAY_2, OUTPUT); pinMode(RELAY_3, OUTPUT); pinMode(RELAY_4, OUTPUT); // Matikan semua relay saat awal digitalWrite(RELAY_1, HIGH); digitalWrite(RELAY_2, HIGH); digitalWrite(RELAY_3, HIGH); digitalWrite(RELAY_4, HIGH); Serial.println("System Ready!"); } void loop() { // Jalankan Blynk Blynk.run(); } // Fungsi untuk kontrol relay melalui Blynk BLYNK_WRITE(V0) { int state = param.asInt(); // Membaca nilai dari button V0 digitalWrite(RELAY_1, !state); // Kontrol Relay 1 } BLYNK_WRITE(V1) { int state = param.asInt(); // Membaca nilai dari button V1 digitalWrite(RELAY_2, !state); // Kontrol Relay 2 } BLYNK_WRITE(V2) { int state = param.asInt(); // Membaca nilai dari button V2 digitalWrite(RELAY_3, !state); // Kontrol Relay 3 } BLYNK_WRITE(V3) { int state = param.asInt(); // Membaca nilai dari button V3 digitalWrite(RELAY_4, !state); // Kontrol Relay 4 }

5. Penjelasan Kode

  1. Inisialisasi Relay:
    Relay diatur sebagai output dengan perintah pinMode.

  2. Virtual Pins:

    • V0: Mengontrol relay 1.
    • V1: Mengontrol relay 2.
    • V2: Mengontrol relay 3.
    • V3: Mengontrol relay 4.
  3. Logika HIGH/LOW:
    Relay aktif saat menerima LOW dan mati saat menerima HIGH (logika terbalik).


6. Uji Sistem

  1. Unggah Kode:
    Hubungkan ESP8266 ke komputer, pilih port COM, dan unggah kode melalui Arduino IDE.

  2. Buka Serial Monitor:
    Periksa log koneksi Wi-Fi dan Blynk di Serial Monitor.

  3. Kontrol Relay:

    • Gunakan aplikasi Blynk untuk mengontrol relay melalui button yang telah diatur.
    • Periksa apakah beban (lampu, kipas, dll.) dapat dikontrol dengan respons yang sesuai.

Pengembangan Lanjutan

  1. Otomasi Relay:
    Tambahkan logika otomatis berdasarkan waktu atau sensor (misalnya, sensor suhu atau cahaya).

  2. Notifikasi:
    Kirim notifikasi ke aplikasi Blynk saat relay diaktifkan atau dimatikan.

  3. Monitoring Daya:
    Tambahkan sensor arus atau tegangan untuk memantau konsumsi daya.

Tidak ada komentar: