PEMROGAMAN RELAY DAN SENSOR LDR DENGAN ESP8266

Bethelsando Gemilang Wahyudi

Sosial Media


0 orang menyukai ini
Suka

Summary

NodeMCU merupakan platform IOT open source yang menggunakan chip ESP8266 dan menggunakan bahasa pemrogaman Lua, untuk NodeMCU diartikan sebagai board arduino ESP8266. Light Dependent Resistor atau yang biasa disebut LDR adalah jenis resistor yang nilainya berubah seiring intensitas cahaya yang diterima oleh komponen tersebut. Biasa digunakan sebagai detektor cahaya atau pengukur besaran konversi cahaya. Relay pada IoT sendiri merupakan modul tambahan yang berguna sebagai alat pengganti saklar yang bekerja mengontrol atau membagi arus listrik maupun sinyal lain yang menuju sirkuit ataupun sinyal lainnya.

Description

NodeMCU/ESP8266

NodeMCU merupakan platform IOT open source yang menggunakan chip ESP8266 dan menggunakan bahasa pemrogaman Lua, untuk NodeMCU diartikan sebagai board arduino ESP8266.

Pemrogaman Relay dan ESP8266

Relay merupakan tuas saklar dengan lilitan kawat pada batang besi solenoid di dekatnya. Jika solenoid dialiri arus listrik, maka tuas akan tertarik karena adanya gaya magnet yang terjadi pada solenoid sehingga kontak saklar akan menutup. Logika switching adalah satu cara kerja otomatis yang outputnya dipengaruhi oleh suatu hal, dan cara kerja relay dipengaruhi oleh tegangan yang outputnya berdasarkan tegangan.

Source Code:

  1. #include <ESP8266WiFi.h> 
  2. //memasukkan library ESP8266
  3.  
  4. Const int pinrelay = D4;
  5. //mendeklarasikan D4 sebagai pinrelay  
  6. void setup() {                       
  7.  //menjalankan program sebanyak 1 kali
  8.             pinMode(pinrelay, OUTPUT);
  9. //menentukan pinrelay sbg output
  10. }
  11.  
  12. void loop() {
  13. //menjalankan program berulang-ulang
  14.             digitalWrite(pinRelay, HIGH);
  15. //memberikan nilai high pada relay
  16.             Serial.println(“Relay nyala”); 
  17. //Menampilkan kalimat relay nyala
  18.             delay(5000); 
  19. //jeda waktu menyalan selama 5 detik / 5000 milidetik
  20.             digitalWrite(pinRelay, LOW);
  21. //memberikan nilai low pada relay
  22.             Serial.println(“Relay mati”);
  23. //menampilkan kalimat relay mati
  24.             delay(1000);
  25. }

Pemrogaman LDR dan ESP8266

LDR Merupakan salah satu jenis resistor yang nilai hambatannya dipengaruhi cahaya yang diterima. Cara  kerja LDR adalah resistansi akan berubah  seiring dengan perubahan intensitas cahaya. Dalam keadaan gelap, resistansi LDR sekitar 10mΩ dan dalam keadaan terang sekitar 1KΩ atau kurang. LDR terbuat dari bahan semi konduktor seperti kadmium sulfida

Source Code:

  1. #include <ESP8266WiFi.h>
  2.  
  3. const char* ssid = "nama wifi";
  4. const char* password = "password";
  5.  
  6. int pinLdr = A0;
  7. int ldrValue;
  8.  
  9. WiFiServer server(80);
  10.  
  11. void setup() {
  12.   Serial.begin(115200);
  13.   delay(20);
  14.  
  15.   Serial.println();
  16.   Serial.println("Menghubungkan ke WiFi");
  17.   Serial.println(ssid);
  18.   WiFi.begin(ssid, password);
  19.   while(WiFi.status() != WL_CONNECTED){
  20.     delay(300);
  21.     Serial.print(".");
  22.   }
  23.   Serial.println("");
  24.   Serial.println("WiFi Terkoneksi");
  25.  
  26.   server.begin();
  27.   Serial.println("Koneksi Server dimulai");
  28.   Serial.print("Alamat IP : ");
  29.   Serial.print("http://");
  30.   Serial.print(WiFi.localIP());
  31.   Serial.println("/");
  32. }
  33.  
  34. void loop() {
  35.   WiFiClient client = server.available();
  36.   if(!client){
  37.     return;
  38.   }
  39.  
  40.   Serial.println("Koneksi Baru");
  41.   while(!client.available()){
  42.     delay(5);
  43.   }
  44.   if(client){
  45.     boolean blank_line = true;
  46.       while(client.connected()){
  47.         if(client.available()){
  48.           char c = client.read()
  49.           if(c == ' ' && blank_line){
  50.             ldrValue = analog(pinLdr);
  51.             Serial.println(ldrValue);
  52.  
  53.             client.println("HTTP/1.1 200 OK");
  54.             client.println("Content-Type: text/html");
  55.             client.println("Connection: close");
  56.             client.println("");
  57.             client.println("<!DOCTYPE HTML>");
  58.             client.println("<html>");
  59.             client.println("<head></head><body><h2>Sensor LDR NodeMCU</h2><h3>Data sensor : ");
  60.             client.println(ldrValue);
  61.             client.println("</h3>");
  62.  
  63.             client.println("</body></html>");
  64.             break;
  65.           }
  66.           if(c == ' '){
  67.             blank_line = true;
  68.           }
  69.           else if(c != ' '){
  70.             blank_line = false;
  71.           }
  72.         }
  73.       }
  74.       delay(5);
  75.     }
  76.   }
  77.  
  78. }

 

Informasi Course Terkait
  Kategori: Internet of Things / FPGA
  Course: Mikrokontroler: NodeMCU