Internet of Things (IoT) On Off Mesin Air Via Wifi

Halo teman netizen kali ini saya akan sharing project yang pernah saya buat yaitu mengenai IoT atau biasa kita kenal dengan Internet Of Things.

Pada kesempatan kali ini saya akan sharing bagaimana membuat saklar jarak jauh yang bisa kita kendalikan melalui Handphone Android jadi di Project kali ini kita membutuhkan bahan – bahan di bawah ini :

  1. NodeMCU V3 (Ver 0.1)
  2. LED sebanyak 2 biji (MERAH & HIJAU)
  3. Modul Relay 5V Optocoupler
  4. Modul Step Up Down XL6009
  5. Mesin Pompa Air dan Kabel

Nah pada project kali ini kita akan membuat NodeMCU menjadi Access Point (AP) atau bahasa gampangnya seperti modem lah yang memancarkan sinyal Wifi.

Oke kita lanjut setelah kalian menyiapkan komponen di atas kalian bisa mulai merangkainya seperti rangkaian di bawah ini :

Kali ini akan saya jelaskan bahwa di dalam rangkaian ini board NodeCMU bekerja pada tegangan 3V walaupun sebenarnya sumber tegangan yang kita colokan melalui USB adalah 5V namun di Board NodeCMU nya sudah ada step down supaya berubah menjadi 3V.

Disini letak kenapa saya menggunakan Modul Step Up Down XL6009 supaya bisa menaikan output 3V dari NodeMCU menjadi 5V agar bisa menjalankan Modul Relay.

Penjelasan Pin dari setiap komponen :

  1. Pin D2 Board NodeMCU –> Pin C Pada Modul Relay 5V
  2. Pin D3 Board NodeMCU –> Kaki Positif (+) LED Hijau
  3. Pin D4 Board NodeMCU –> Kaki Positif (+) LED Merah
  4. Pin GND Board NodeMCU –> Kaki Negatif (-) LED Hijau dan Merah
  5. Pin 3V Board NodeMCU –> Pin Input Positif (+) Modul Step Up Down XL6009
  6. Pin GND Board NodeMCU –> Pin Input Negatif (-) Modul Step Up Down XL6009
  7. Pin Output Positif (+) Modul Step Up Down XL6009 –> Pin Positif (+) Modul Relay 5V
  8. Pin Output Negatif (-) Modul Step Up Down XL6009 –> Pin Negatif (-) Modul Relay 5V
  9. Sisanya untuk mesin air dan tegangan 220V bisa sobat lihat sendiri di rangkaian

Setelah kalian menghubungkan seluruh komponen di atas sekarang saatnya memasukan Coding pada Arduino IDE yang nantinya di Upload ke board NodeMCUnya, Kodenya ada di bawah ini :

#include <ESP8266WebServer.h> //memasukan library NodeMCU sebagai web server
#include <ESP8266WiFi.h> //memasukan library NodeMCU
#include <WiFiClient.h> //memasukan library NodeMCU sebagai client
 
ESP8266WebServer server(80); //menggunakan port 80
 
//Masukan nama wifi dan password yang akan dibuat
const char *ssid = "Mr.Leong"; //GANTI SESUAI KEINGINAN KALIAN
const char *password = "12345"; //GANTI SESUAI KEINGINAN KALIAN
#define LED  D4 // PIN LED MERAH
#define RELAY  D2 // PIN RELAY
#define LED_NYALA  D3 // PIN LED HIJAU


int statusLED = LOW;
int statusRelay = LOW;
int status_hijau = HIGH;
 
//membuat fungsi untuk kondisi led built in
void handleMesinOn() {
  statusLED = LOW; //Kondisi logika "LOW" membuat led nyala
  statusRelay = HIGH;
  status_hijau = HIGH;
  digitalWrite(LED, statusLED);
  digitalWrite(RELAY, statusRelay);
  digitalWrite(LED_NYALA, status_hijau);
  response();
}
 
void handleMesinOff() {
  statusLED = HIGH; ////Kondisi logika "HIGH" membuat led nyala
  statusRelay = LOW;
  status_hijau = LOW;
  digitalWrite(LED, statusLED);
  digitalWrite(RELAY, statusRelay);
  digitalWrite(LED_NYALA, status_hijau);
  response();
}
 
void handleRoot() {
    response();
}
 
const String HtmlHtml = "<html><head>"
"<meta name=\"viewport\" content=\"width=device-width, initial-scale=1\" /></head>";
const String HtmlHtmlClose = "</html>";
const String HtmlTitle = "<h1>Menyalakan Mesin Pompa Air</h1><br/>\n";
const String HtmlLedStateLow = "<big>Mesin Air <b>ON</b></big><br/>\n";
const String HtmlLedStateHigh = "<big>Mesin Air <b>OFF</b></big><br/>\n";
const String HtmlButtons = 
"<a href=\"MesinOn\"><button style=\"display: block; width: 100%;\">ON</button></a><br/>"
"<a href=\"MesinOff\"><button style=\"display: block; width: 100%;\">OFF</button></a><br/>";
 
void response(){
  String htmlRes = HtmlHtml + HtmlTitle;
  if(statusLED == LOW){
    htmlRes += HtmlLedStateLow;
  }else{
    htmlRes += HtmlLedStateHigh;
  }
 
  htmlRes += HtmlButtons;
  htmlRes += HtmlHtmlClose;
 
  server.send(200, "text/html", htmlRes);
}
 
void setup() {
    delay(1000); //waktu tunda 1 detik
    Serial.begin(9600);
    Serial.println();
 
    WiFi.softAP(ssid, password);
    //bertindak sebagai access point dengan nama wifi dan pass diatas
 
    IPAddress apip = WiFi.softAPIP(); //alamat IP
    Serial.print("visit: \n");
    Serial.println(apip); //menuliskan alamat IP yang bisa dikunjungi
    
    server.on("/", handleRoot); //memanggil fungsi handleRoot()
    server.on("/MesinOn", handleMesinOn);
    server.on("/MesinOff", handleMesinOff);
 
    server.begin(); //proses pemulaian menjadi server
    Serial.println("HTTP server beginned");

    pinMode(LED, OUTPUT);
    pinMode(RELAY, OUTPUT);
    pinMode(LED_NYALA, OUTPUT);
    digitalWrite(LED, statusLED);
}
 
void loop() {
    server.handleClient();
}

Setelah kalian mengupload kode di atas nanti kalian koneksikan terlebih dahulu Handphone Android ke NodeMCUnya sehingga akan terlihat jaringan yang sudah di buat oleh Board tersebut.

Lanjut untuk mengakses Board NodeMCU kalian masukan IP default 192.168.4.1 lalu nantinya akan muncul Tombol On dan Off nya.

Untuk lebih jelasnya silahkan nonton video di bawah ini…

Mungkin sekian dulu yang bisa saya bagikan pada postingan kali ini apabila ada pertanyaan bisa langsung ditanyakan di kolom komentar.

Dan bila kalian membutuhkan Code serta Skemanya silahkan download melalui Link di Bawah ini

Code dan Skema

Bagikan Postingan ini :

Putu Artha

Seorang Laki- Laki yang senang berbagi ilmu seputar Informasi Teknologi dan Elektronika Serta pengalaman yang pernah saya lakukan

This Post Has 9 Comments

  1. Rahman

    Gan bagi WA mo order partnya

    1. Muhammad ilham

      Gan kalau buat cara on off robot wall avoider dengan iot bagaimana?

      1. Putu Artha

        tinggal beli relay dan Nodemcu atur programnya

  2. umam

    itu pakai step up down yang berapa volt gan

  3. Rockyoroh

    Bisa order yang sudah jadi ? Kalau bisa minta nomor WA, terima kasih

    1. Putu Artha

      Mohon Maaf gan, yang sudah jadi tidak ada

  4. Haryono

    gan,ada versi pakai simcard ga?

Leave a Reply