Lompat ke konten Lompat ke sidebar Lompat ke footer

Cara Membuat Lampu Malam RGB Mengunakan Arduino

Konten

    RGB Yang dimaksud disini adalah LED RGB yaitu LED yang terdiri atas tiga LED kecil dengan warna merah, hijau dan biru yang digabung menjadi satu. Dimana Kaki negatif atau katoda dari masing-masing warna LED digabungkan sehingga hanya memiliki 4 kaki.

    Untuk dapat menyalakan LED RGB kamu dapat menghubungkan kaki katoda dengan tegangan ground, kaki masing-masing warna LED dengan tegangan positif, dan memasang sebuah resistor untuk membatasi arus.

    Sistem Kerja Lampu Malam RGB

    Sistem kerja lampu malam RGB yang akan dibuat kali ini yaitu apabila kondisi ruangan terang atau sensor photoresistor tidak tertutup maka LED RGB akan mati dan apabila kondisi ruangan gelap atau sensor ditutup maka LED RGB akan menyala. Nyala warna LED RGB dapat kamu ubah dengan cara memutar knob potensiometer.

     Komponen Yang Diperlukan :

    •  1 x Arduino UNO
    • 1 x Breadboard
    • 1 x Photoresistor
    • 1 x Potensiometer
    • 1 x LED RGB
    • 3 x Resistor 330¦¸
    • 1 x Resistor 10K¦¸
    • 11 x Kabel Jumper

     Rangkaian:

    Perakitan:

    Cara Membuat Lampu Malam RGB Mengunakan Arduino

    Cara Mengisikan Program Ke Board Arduino

    Untuk mengisikan program Lampu Malam RGB ke board Arduino dapat menggunakan PC/Laptop dan smartphone android. Jika dengan PC/Laptop kamu dapat menggunakan software Arduino IDE dan jika dengan smartphone Android kamu dapat menggunakan aplikasi Bluino Loader. Untuk cara uploadnya kamu bisa melalui USB dengan menggunakan adapter OTG atau melalui Bluetooth.



    Script Program

    /*
      Lampu Malam RGB
    Menyalakan dan mematikan sebuah LED RGB berdasarkan intensitas cahaya yang diterima oleh photoresistor.
    Putar potensiometer untuk merubah warna nyala LED.
    */

    int photoresistor;          //variabel untuk menyimpan nilai photoresistor
    int potentiometer;          //variabel untuk menyimpan nilai potensiometer
    int threshold = 700;             //jika photoresistor membaca dibawah nilai ini maka LED akan menyala

    //LED RGB dihubungkan dengan tiga pin digital
    int RedPin = 9;
    int GreenPin = 10;
    int BluePin = 11;

    int photoPin = A0;       //pin yang terhubung dengan photoresistor
    int potPin = A1;       //pin yang terhubung dengan potensiometer


    void setup() {
      Serial.begin(115200);           //memulai komunikasi dengan serial monitor

      //set pin digital LED sebagai output
      pinMode(RedPin,OUTPUT);
      pinMode(GreenPin,OUTPUT);
      pinMode(BluePin,OUTPUT);
    }

    void loop() {
     
      photoresistor = analogRead(photoPin);       //membaca nilai dari photoresistor
      potentiometer = analogRead(potPin);         //membaca nilai dari potensiometer

      Serial.print("Photoresistor value:");
      Serial.print(photoresistor);            //menampilkan nilai photoresistor ke serial monitor
      Serial.print("  Potentiometer value:");
      Serial.println(potentiometer);          //menampilkan nilai photoresistor ke serial monitor
     
      if(photoresistor < threshold){          //jika kondisi gelap (nilai photoresistor dibawah nilai threshold) maka LED menyala
        //jika kondisi gelap maka akan menjalankan fungsi-fungsi warana
        //yang berbeda disesuaikan dengan nilai dari pembacaan potensiometer.
        if(potentiometer > 0 && potentiometer <= 150)
          red();
        if(potentiometer > 150 && potentiometer <= 300)
          orange();
        if(potentiometer > 300 && potentiometer <= 450)
          yellow();
        if(potentiometer > 450 && potentiometer <= 600)
          green();
        if(potentiometer > 600 && potentiometer <= 750)
          cyan();
        if(potentiometer > 750 && potentiometer <= 900)
          blue();
        if(potentiometer > 900)
          magenta(); 
      }
      else {                                  //jika kondisi terang maka akan mematikan LED
       
        turnOff();                            //memanggil fungsi untuk mematikan LED
      } 
     
      delay(100);                             //jeda untuk membuat penampilan data mudah dibaca
    }

    void red() {
        //set pin LED dengan nilai untuk membuat nyala LED menjadi merah   
        analogWrite(RedPin, 100);
        analogWrite(GreenPin, 0);
        analogWrite(BluePin, 0);
    }

    void orange() {
        //set pin LED dengan nilai untuk membuat nyala orange
        analogWrite(RedPin, 100);
        analogWrite(GreenPin, 50);
        analogWrite(BluePin, 0);
    }

    void yellow() {
        //set pin LED dengan nilai untuk membuat nyala kuning
        analogWrite(RedPin, 100);
        analogWrite(GreenPin, 100);
        analogWrite(BluePin, 0);
    }

    void green() {
        //set pin LED dengan nilai untuk membuat nyala hijau   
        analogWrite(RedPin, 0);
        analogWrite(GreenPin, 100);
        analogWrite(BluePin, 0);
    }

    void cyan() {
        //set pin LED dengan nilai untuk membuat nyala cyan   
        analogWrite(RedPin, 0);
        analogWrite(GreenPin, 100);
        analogWrite(BluePin, 100);
    }

    void blue() {
        //set pin LED dengan nilai untuk membuat nyala biru
        analogWrite(RedPin, 0);
        analogWrite(GreenPin, 0);
        analogWrite(BluePin, 100);
    }

    void magenta() {
        //set pin LED dengan nilai untuk membuat nyala magenta  
        analogWrite(RedPin, 100);
        analogWrite(GreenPin, 0);
        analogWrite(BluePin, 100);
    }

    void turnOff() {
        //set semua pin LED ke 0 atau mati
        analogWrite(RedPin, 0);
        analogWrite(GreenPin, 0);
        analogWrite(BluePin, 0);
    }

    Posting Komentar untuk "Cara Membuat Lampu Malam RGB Mengunakan Arduino"