CV. ZENTRONIC - Perusahaan Jasa Listrik dan Elektronika

Jumat, 17 Maret 2023

Menggunakan ESP8266 dan MIT App Inventor untuk mengontrol Relay | IoT

Dalam otomatisasi rumah, otomatisasi rumah nirkabel (menggunakan Wi-Fi atau koneksi internet untuk menghubungkan peralatan listrik di rumah Anda) menjadi semakin populer. Proyek selanjutnya ini berfokus pada penggunaan ESP8266 (microchip Wi-Fi berbiaya rendah) untuk mengontrol Relay.

ESP8266 (ESP-01) adalah modul kecil yang memungkinkan mikrokontroler terhubung ke jaringan Wi-Fi dan membuat koneksi IP (Internet Protocol) sederhana. Itu dapat diprogram dengan menggunakan Arduino, NodeMCU IDE atau ESP8266 SDK. Beberapa modul lain seperti ESP-02, ESP-07 juga dirilis. Semua ini pada dasarnya didasarkan pada ESP8266, satu-satunya perbedaan adalah jumlah pin GPIO.

Kami juga akan menggunakan aplikasi yang dikembangkan oleh MIT App Inventor melalui perangkat Android dalam proyek ini. Aplikasi ini dapat diinstal pada perangkat android Anda dan kemudian dengan menghubungkannya ke ESp8266, Anda dapat mengontrol Relay melalui koneksi Wi-Fi yang sama dengan yang digunakan ponsel Anda.

Circuit Diagram.

Diagram sirkuit untuk proyek "Kontrol Relay menggunakan ESP8266" ditunjukkan pada gambar di bawah ini. Anda dapat melihat bahwa saya telah menggunakan modul relai saluran tunggal dalam diagram sirkuit.

 

Komponen yang diperlukan :

ESP8266

    Arduino UNO

    Resistors (1KΩ and 2.2KΩ) – both are ¼ Watt Resistors

    Jumper Wires

    Relay Module

    Small 5V Bulb

    Push Button

    SPDT Switch

    Android App

    Android Phone

    Computer with Internet
 

Deskripsi Komponen:

1:ESP8266:

Modul Wi-Fi ESP8266 (ESP-01) akan digunakan untuk menghubungkan Relay Anda dan untuk mengontrolnya melalui jaringan Wi-Fi Anda. Klien akan mengirim instruksi atau perintah melalui Aplikasi Android yang akan diterima ESP8266 dan akan melakukan operasi. Untuk informasi lebih lanjut Baca: Pelajari Cara Setup Modul Wifi ESP8266 Menggunakan Hanya Arduino IDE

2: Relay:

Modul Relay yang digunakan dalam proyek ini memiliki dua saluran tetapi hanya satu saluran yang akan digunakan. Modul relai dapat digunakan dengan catu daya AC, namun dalam proyek ini, kami menggunakan bola lampu kecil 5V untuk menampilkan output. Modul Relay yang digunakan di sini adalah modul Active LOW.

 

Modul ESP8266 ESP-01 memiliki 8 pin. Ini adalah VCC, GND, TX, RX, RST, CH_PD, GPIO0 dan GPIO2. Hubungkan VCC dan GND ke 3.3V (modul ESP-01 tidak kompatibel dengan 5V jadi 3.3V lebih disukai). Koneksi lainnya dibuat sesuai (GND ke GND, pin TX ke TX dari Arduino). Satu-satunya perbedaan adalah pin GPIO2 terhubung ke INPUT Relay.

Coding :

#include <ESP8266WiFi.h>
int value;

const char* ssid = "Ketik SSID disini";
const char* password = "Ketik Password disini";
int RelayPin = 2; // GPIO2
WiFiServer server(80);

void setup()
{
Serial.begin(115200);
delay(10);
pinMode(RelayPin, OUTPUT);
digitalWrite(RelayPin, LOW);

// Connect to WiFi network

Serial.println();
Serial.println();
Serial.print("Connecting to ");
Serial.println(ssid);
WiFi.begin(ssid, password);

while (WiFi.status() != WL_CONNECTED) {
 delay(500);
 Serial.print(".");
 }
 Serial.println("");
 Serial.println("WiFi connected");
  // Start the server
  server.begin();
  Serial.println("Server started");
  // Print the IP address
  Serial.print("Use this URL to connect: ");
  Serial.print("http://");
  Serial.print(WiFi.localIP());
  Serial.println("");
}

void loop() {

  // Check if a client has connected
  WiFiClient client = server.available();
  if (!client) {
    return;
  }

  // Wait until the client sends some data
  Serial.println("new client");
  while(!client.available()){
  delay(1);
  }

  // Read the first line of the request
  String request = client.readStringUntil('\r');
  Serial.println(request);
  client.flush();

  // Match the request
    
  if (request.indexOf("/RelayON") != -1)  {
    digitalWrite(RelayPin, LOW);
    value = LOW;
  }
  if (request.indexOf("/RelayOFF") != -1)  {
    digitalWrite(RelayPin, HIGH);
    value = HIGH;
  }
  digitalWrite(2, value);

  // Return the response
client.println("HTTP/1.1 200 OK");
client.println("Content-Type: text/html");
client.println(""); //  IMPORTANT
client.println("<!DOCTYPE HTML>");
client.println("<html>");
 
client.print("Status of the Lamp: ");
 
if(value == LOW)
{
client.print("ON");  
}
else
{
client.print("OFF");
}
  delay(1);
  Serial.println("Client disonnected");
  Serial.println("");
}

Kode Sumber Proyek sangat bersih dan mudah dipahami tetapi Anda perlu melakukan beberapa perubahan kecil sebelum mengunggah kode sumber Anda ke dalam modul. Pertama, Anda perlu Menambahkan Nama dan kata sandi router wifi sebagai ganti "SSID" dan "Kata Sandi". Yang paling penting adalah alokasi IP Address Statis yang tidak terpakai ke modul ESP8266, dalam kode kami, kami telah menggunakan "192,168,1,254" sebagai IP Statis kami. Bagus, Jika ip ini berfungsi untuk Anda, gunakan alamat IP yang berbeda.

Aplikasi Android menggunakan Aplikasi MIT Inventor :

Untuk menggunakan MIT App Inventor, Anda diharuskan menautkan akun Google Anda ke Aplikasi Pengembang Aplikasi Selanjutnya, buat proyek baru dengan memilih "Mulai Proyek Baru" Jendela baru akan terbuka yang akan menampilkan objek tata letak yang berbeda seperti Tombol, Penggeser, dan Kotak Teks dll.

Buat antarmuka yang terdiri dari tiga tombol (kami telah menggunakan "Lamp ON", "Lamp OFF", dan "EXIT"), beberapa Label dan Komponen Web. Atur semua komponen dan tata letak aplikasi. Di sudut kanan atas beralih ke bagian Blok.

 

Di sini, buat blok dan masukkan Alamat IP statis Anda (nomor permanen yang diberikan ke komputer oleh ISP) ke bagian URL blok seperti yang ditunjukkan pada gambar yang diberikan. Selanjutnya, debug Aplikasi langsung dari Browser dan Android Anda. Kemudian instal file APK di komputer dan Android Anda. Anda dapat membuka dan menggunakan file Apk Android di komputer dengan menggunakan BlueStack. 

 

CATATAN: Untuk mengunduh file .apk, buka Build dan pilih App (save .apk to my computer).

Setelah mengatur desain sirkuit Anda, unggah program ke modul ESP8266. Setelah Anda mengunggah program, Anda akan menerima pesan konfirmasi untuk alamat IP dan koneksi Wi-Fi.

Pastikan IP Address di ESP8266 sama dengan di app MIT Inventor-nya.

Sekarang, Anda dapat menguji program Anda. Buka Aplikasi Android yang terpasang di perangkat Anda. Saat Anda memilih tombol “Lamp ON”, Relai mendapat sinyal Logika RENDAH dan lampu dinyalakan. Demikian pula, saat Anda menekan tombol "Lamp OFF", Lampu dimatikan.

CATATAN: Modul Relay yang digunakan dalam proyek ini adalah Modul Aktif RENDAH.


 


 


Proyek ini berfokus pada aplikasi ESP8266 dalam mengendalikan sistem Relay melalui koneksi Wi-Fi menggunakan Android App yang dikembangkan oleh MIT App Inventor. ESP8266 mampu menampung aplikasi dan menjadi tren di IoT. Anda dapat memprogram ESP8266 seperti mikrokontroler lainnya dan menggunakan koneksi Wi-Fi untuk mengontrolnya. Anda dapat terhubung ke Internet, menghosting server web, dan menghubungkan ponsel cerdas Anda ke sana. Anda dapat membuat proyek sendiri dan menggunakannya dalam sistem otomasi rumah. Tidak hanya itu, dengan ESP8266 Anda dapat mengontrol relay Anda dari mana saja di dunia.


Tidak ada komentar:

Posting Komentar

Arduino – LM35 Temperature Sensor

  Sensor Suhu seri LM35 adalah perangkat suhu sirkuit terpadu presisi dengan tegangan keluaran yang berbanding lurus dengan suhu Celcius. ...