Anda di halaman 1dari 14
BAB II: Light Emitting Dioda (LED) 24 Tujuan 1, Mahasiswa memahami rangkaian mikrokontroller untuk menghidupkan dan ‘mematikan LED. 2. Mahasiswa dapat memahami program Arduino untuk menghidupkan dan mematikan LED. 3. Mabasiswa memahami struktur program Arduino, void setup dan void loop. 4, Mahasiswa memahami beberapa instruksi Arduino dasar pinMode dan digital Write. 5. Mahasiswa memahami pembuatan instruksi waktu tunda, delay. 2.2 Peralatan 1, Sebuah Komputer /Laptop 2, Satu set trainer mikrokontroler Arduino 3. An Arduino board connected to the computer via USB 4, breadboard dan kabel jumper 5.1 (3mm) 6. Resistor antara 220-1,000 ohm 23 Teori LED (Light Emitting Dioda) adalah dioda yang dapat memanearkan cahaya pada saat mendapat arus bias maju (forward bias). LED (Light Emitting Dioda) dapat ‘memancarkan cahaya karena menggunakan dopping galium, arsenic dan phosporus. Jenis doping yang berbeda menhasilkan cahaya dengan wama yang berbeda, LED merupakann salah satu jenis dioda, sehingga hanya akan mengalirkan arus listrik satu arah saja. LED akan memancarkan cahaya apabil diberikan tegangan listrik dengan 26 konfigurasi forward bias. Berbeda dengan dioda pada umumnya, kemampuan mengalirkan arus pada LED cukup rendah yaitu maksimal 20 mA. Apabila LED dialiri arus lebih besar dari 20 mA maka LED akan rusak, sehingga pada rangkaian LED dipasang sebuah resistor sebgai pembatas arus. Simbol dan bentuk fisik dari LED dapat dilihat pada gambar berikut, Simbol Dan Bentuk Fisik LED. Anode A cathode + » a Fiat Spot sngtaes| | Cad ing Shortisee Gambar 2.1, LED Dari gambar diatas dapat kita ketahui bahwa LED memiliki kaki 2 buah seperti dengan dioda yaitu kaki anoda dan kaki katoda, Pada gambar diatas kaki anoda memiliki ciri fisik lebih panjang dari kaki katoda pada saat masih baru, kemudian kaki katoda pada LED ditandai dengan bagian body LED yang di papas rata. Kaki anoda dan kaki katoda pada LED disimbolkan seperti pada gambar diatas. Pemasangan LED agar dapat menyala adalah dengan memberikan tegangan bias maju yaitu dengan memberikan tegangan positif ke kaki anoda dan tegangan negatif ke kaki katoda. Konsep pembatas arus pada dioda adalah dengan memasangkan resistor secara seri pada salah satu kaki LED. Rangkaian dasar untuk menyalakan LED membutuhkan sumber tegangan LED dan resistor sebgai pembatas arus seperti pada rangkaian berikut. 27 ‘ono °° Gambar 2.2. Rangkaian Dasar LED Konsep PWM. Dengan membuat switching antara LOW dan HIGH dengan kecepatan tinggi, petgantian tegangan akan nampak jelas pada diagram dibawah ve ie If fey, rage ve V average ov t | IC V average ov t Jeruise wan of foe Gambar 2.7, Diagram cara kerja PWM Pada kode program tersebut ada pemanggilan function analogWrite() yang berfungsi sebagai pemberi sinyal analog pada pin PWM arduino, Nilai yang bisa diberikan antara 0-255, yaitu 0 dari 0 volt dan 255 dari 5 volt atau 3.3 volt tergantung tegangan yang digunakan, 28 Jere we will fade the D from 0 to maximum, for (int i = 0; i < 256; it+)( analogwrite(LED, i); delay (5); Kode diatas akan membuat perubahan tegangan yang dikirimkan pada pin PWM, dengan merubah variabel dari nilai terendah(0) ke nilai maksimum(255). Sehingga efek yang ditampilkan oleh LED akan dihasilkan cahaya yang semakin terang beriringan dengan tegangan yang semakin tinggi // Here we will fade the LED from 0 to maximum, 255 for (int i = 255; i >= 0; i SD, i); analogwrite ( delay (5); Sebaliknya dengan menurukan variabel, akan mengakibatkan penurunan tegangan yang dikirimkan ke pin PWM yang dipakai yang membust LED akan semakin meredup, Pada arduino uno jika diperhatikan pin PWM akan mempunyai tanda khusus seperti berikut ~. Fungsi analogWrite () tidak akan bekerja jika digunakan untuk pin selain PWM. Dengan menggunakan teknik PWM ini akan bisa dihasilkan 16 juta kombinasi wama untuk 1 LED. 2.4 Percobaan 1 : FLIP FLOP Ikuti langkah berikut untuk menghubungkan LED external dengan Arduino Uno 1. Pasang resistor pada breadboard. Koneksikan dengan kabel jumper kaki belakang resistor dengan digital pin pada Arduino. 2. Pasang LED pada breadboard. Koneksikan pin anode (+) LED pada kaki yang 29 tersedia pada resistor. 3. Koneksikan LED cathode (-) ke arduino GND dengan menggunakan kabel jumper. Gambar 2.3, Mockup rangkaian LED 2.4.1 Kode Program Berikut kode yang akan digunakan untuk membuat blink LED : // Declare the LED pin int LED - 2 void setup() // Declare the pin for the LED as Output pinMode (LED, OUTPUT); void loop (){ // Here we will turn the LED ON and wait, 200 milliseconds digitalWrite (LED, HIGH); delay (200); // Here we will turn the LED OFF and wait 200 milliseconds digitalWrite(LED, Low); delay (200); Jika LED terkoneksi pada pin yang lain tinggal mengubah value dari variabel LED. 30 2.4.2 Cara kerja Jika pin kedua arduino diberi nilai HIGH, arduino akan memberikan nilai tegangan SV, ‘yang akan mengalir pada resistor ke LED sampai dengan GND. Jika tegangan yang disyaratkan LED untuk menyala terpenuhi maka LED akan menyala, Resistor berguna untuk mengendalikan jumlah arus yang masuk pada LED untuk menjaga agar LED aman dan bahkan juga pin arduino yang terkoneksi dari terbakar. 2.4.3 Penjelasan Kode Kode program tersebut akan membuat LED hidup dan mati secara bergantian, dan akan diberi waktu jeda dengan memanggil fungsi de 1ay () setelah pengeksekusian. Mendeklarasikan variabel LED dengan nilai 2: int LED = 2 Pada fungsi setup () kita set output arduino sesuai dengan nilai yang ada pada variabel LED. void setup() pinMode (LB OUTPUT) ; ) pada fungsi Loop (), secara berkelanjutan menyalakan LED, tunggu 200 mili detik dan matikan LED, tunggu 200 mili detik. void loop(){ // LED ON and wait 200 miliseconds digitalWrite (LED, IGH); delay (200); // LED OFF and wait 200 wr miliseconds dig Low) ; delay (200); 31 2.5 Percobaan 2: MULTI LED Pada percobaan Multi LED ini akan sangat berpengaruh pada pengaturan timing yang digunakan dalam tiap LED. Dengan memahami logika High dan Low pada Pereobaan 1 sebelumnya kita akan membuat multi LED untuk dikendalikan seeara bergantian. Langkah : 1. Nyalakan computer dengan program Arduino ! Sambungkan Trainer mikrokontroler dengan computer menggunakan kabel USB ! Sambungkan kabel-kabel jumper sesuai dengan praktikum yang dilaksanakan ! Ketiklah program yang diatas pada software Arduino ! Lakukan verifikasi terhadap program, apakah terjadi error atau tidak ! ae YN Jika tidak terjadi error lanjutkan dengan mengupload program ke dalam mikrokontroler! 7. Amati hasilnya apakah sudah sesuai dengan perintah instruktur atau belum, kalau belum 8. lakukan editing program dan kembali ke langkah 5 ! Gambar 2.4, Multi LED Berikut ini kode program untuk LED Bergeser //Ranning LED int ledPini = 2 32 int ledPin2 = 3; int ledPin3 = 4; void setup() //Setting PIN Output pinMode (ledPinl, OUTPUT) ; pinMode (ledPin2, OUTPUT) ; pinMode (1edPin OUTPUT) ; void loop() { digitalwWrite (ledPin1, IGH) digitalWrite (ledPin2,pin LOW); digitalWrite(ledPin3, LOW); delay (1000); digitalWrite(ledPin1, Low); digitalWrite (ledPin2, HIGH) ; digitalwr: delay (1000); digitalwWrite(ledPin1, Low); digitalWrite(ledPin2, Low); digitalwrite (ledPin3, HIGH); delay (1000); (ledPin3, LOW); 2.6 Percobaan 3 : Fading the external LED Penggunaan LED dengan menggunakan 2 buah kondisi: On dan OFF. Tapi jika ingin memanipulasi kecerahan kita harus menggunakan teknik lain, Pulse Width Modulation (PWM) yang sudah secara default ada pada setiap arduino, Dengan teknik ini kita bisa membuat LED menyala dengan skala 256, Pada arduino pin yang mempunyai fungsi PWM berjumlah 6 buah pin yang berada pada pin 3, 5, 6,9, 10 dan 11 33 Gambar 2.5. Menyalakan LED dengan PWM_ Gambar 2.6. Mockup LED dengan PWM. Kode Program : // Declare the LED pin with PWM int LED = 3; 34 void setup() // Declare the pin for the L Output pinMede(LED, OUTPUT); ) void loop ()( Wy 255 for (int i = 0; i < 256; itt) { analogWrite (LED, i}; delay (5); ) // Bade the Here we will fade the LED from 0 to maximum, D from maximum to 0 for (int i = 255; i in) analogWrite (LED, i); delay (5); } 2.7 Percobaan 4 : RGB LED Untuk melakukan percobaan dibutuhkan beberapa _perlengkapan _pendukung diantaranya 1, Arduino and USB 2. Breadboard dan jumper wires 3. RGB LED 4. Resistors between 220-1,000 ohm 35 Gambar 2.8. Rangkaian Skema LED RGB Gambar 2.9. MockUp LED RGB Kode program : // Declare the PWM LED pins int redbED = 9; int greenLED = 10; int blueLED = 11; void setup() { // Declare the pins for the LED as Output pinMode(redLED, OUTPUT) ; 36 PinMode (greenLED, OUTPUT) pinMode (blueLED, OUTPUT); ) // & simple function to set the level for each color from 0 to 255 void setColor(int redValue, int greenValue int blueVelue) { analogWrite(redLED, 255 - redValue); analogWrite(greenLED, 255 - greenvalue); analogWrite(blueLED, 255 - blueValue); } void Loop () { // Change a few colors setColor (255, 0, 0); // Red Color delay (500); setColor(0, 255, 0); // Green Color delay (500); setColor(0, 0, 255); // Blue Color delay (500); setColor (255, 255, 0); // Yellow delay (500); setColor (0, 255, 255); // Cyan delay (500); setColor (255, 0, 255); // Magenta delay (500); setColor (255, 255, 255); // White delay (500); Penjelasan kode program // Declare the PWM LED pins int redLED - 9; int greenLED = 10; int blueLED = 11; Mendefinisikan program dalam menggunakan pin arduino, pin yang digunakan wajib ‘menggunakan pin yang PWM Karena bersifat analog bukan digital. 37 void setup () // Declare the pins for the LED as Output D, OUTPUT); pinMode (greent OUTPUT); pinMode (blueLED, OUTPUT); pinMode (realy Mendeklarasikan penggunaan output dengan mneggunakan pin yang sudah didefinisikan pada variabel global sesuai dengan warna LED yang digunakan yang bertujuan untuk output nantinya void setColor(int redValue, int greenValue, int blueValue) { analogWrite(redLED, 255 - redvalue) ; analogWrite (greenLED, 255 - greenValue); analogWrite(blueLED, 255 - blueValue); Mendefinisikan pengkonfigurasian warna_ dengan menggunakan —_fungsi analogWrite() pada pin yang sesuai wama LED. Karena jumlah maksimal dari nilai yang diizinkan adalah 255, make nilai masukkan dari fungsi untuk masing-masing wama akan dikurangkan dengan nilai maksimal tersebut. void setColor(int redValue, int greenValue, int bluevalue) ( jika terdefinisi setColor(255, 0, 0); // Red Color ini akan membuat perubahan warna, atau mengkonfigurasikan warna menjadi 38 warna_merah = 255 - 255 warna_merah = 0 sehingga analogWrite(redLED, warna_merah); atau bisa diartikan analogWrite (9,0); dengan memeberikan nilai 0, maka akan memberikan nilai maksimal pada wama RED. 2.8 Latihan 1. Buat rangkaian dan percobaan pengendalian multi LED dengan menggunakan variasi delay interval 100 antar LED. 2. Buat rangkaian dan percobaan pengedalian LED yang difungsikan sebagai Traffic Light. Dengan asumsi berada di permpatan jalan. 3. Buat project sinyal morse SOS dengan menggunakan fungsi delay pada arduino. 39

Anda mungkin juga menyukai