PRAK.MICROCONTROLER
Disusun Oleh :
(18023009)
6 TL 1 D4 Listrik
A. Tujuan
v Menggunakan Arduino untuk aplikasi animasi Led
v Membuat program sederhana untuk aplikasi animasi Led
B. Alat dan Bahan yang digunakan
v 1 buah Papan Arduino Uno
v 1 buah Bread Board
v 4 buah LED warna merah
v 4 buah Resistor 300 Ohm
v Kabel jumper
LED merupakan kependekan dari Light Emiting Diode, yaitu diode yang mampu
mengubah listrik menjadi cahaya. Sebagaimana sifat diode, lampu LED memiliki kaki
positif dan negatif. Sehingga pemasangannya tidak boleh terbaik, jika dipasang terbalik
maka tidak akan ada arus yang mengalir dan LED pun tidak akan menyala. Arduino
bekerja pada tegangan 5-12 volt dengan arus yang relatif besar yang sanggup memutuskan
LED. Sehingga jika kita ingin menyambungkan LED, maka kita butuh tahanan (resistor)
untuk membatasi arus yang masuk ke LED. LED memiliki tegangan kerja yang disebut
dengan forward voltage (fv) yang mana tegangan ini adalah tegangan yang dibutuhkan
LED untuk bisa menyala dengan baikUkuran resistor yang bisa dipakai adalah 100Ω
hingga 1KΩ (Ω dibaca ohm, satuan dari resistansi/hambatan), makin besar nilai resistor
maka nyala LED akan semakin redup. Pada Arduino, tegangan yang keluar dari pin-pinnya
adalah 0-5 volt. Sementara catu daya untuk Arduino antara 5-12 volt. Oleh sebab itu,
pemilihan resistor tergantung tegangan mana yang akan digunakan.
Rangkaian Percobaah
Program berikut akan membuat LED menyala bergantian sebanyak 5 animasi (perulangan
sebanyak 5 kali). Pertama, semua LED akan mati selama 5 detik. Kedua, LED 1 akan
menyala. Ketiga, LED 1 dan 2 akan menyala. Keempat, LED 1, 2, dan 3 akan menyala.
Kelima, semua LED akan menyala. Animasi tersebut ditentukan berdasarkan nilai i, nilai i
diperiksa dengan perintah IF. Jika nilai i=0, maka semua LED mati, jika i=1 maka satu
LED nyala, dan seterusnya.
Selain menggunakan IF, ada cara lain yang lebih simpel untuk membuat animasi LED seperti
program pada Sketch di bawah ini
Gambar 2.1
void loop() {
digitalWrite(pinLED, HIGH);
delay(500);
digitalWrite(pinLED, LOW);
delay(500);
}
Setelah program diketikan seperti pada Gambar 2.2, maka proses selanjutnya adalah
menghubungkan kabel koneksi USB yang terhubung dengan board Arduino ke port USB pada
Laptop. Selanjutnya atur Comunikasi antara Laptop dengan board Arduino dengan cara
seperti pada Gambar 2.3.
buat (dengan keterangan Done Uploading), maka system akan beroperasi seperti yang
direncanakan, dalam hal ini adalah menyalakan lampu LED secara blink.
Setelah program simulasi proteus terbuka, langkah selanjutnya adalah memilih komponen yang
akan digunakan, dimana komponen yang akan digunakan meliputi :
1. Arduino Uno
2. Resistor 300 Ohm
3. Dan Led
Caranya sebagai berikut:
Untuk memilih komponen, maka yang dilakukan adalah :
Click Huruf P pada bagian Devices, selanjutnya program akan masuk ke bagian pencarian
komponen. Pada bagian ini ketikan komponen yang akan digunakan (seperti contoh Arduino)
pada bagian Keywords seperti contoh pada Gambar. Setelah kata arduino ditekan, maka akan
muncul jenis-jenis arduino yang terinstal pada program proteus dan pilih Arduino Uno R3,
kemudian tekan tombol OK pada bagian bawah untuk memilih komponen, seperti pada Gambar
berikut:
Selanjutnya letakan komponen yang dipilih pada bidang kerja dengan cara klik kiri 2 kali pada
mouse atau pada pad yang berada di laptop atau menekan enter pada keyboard sebanyak 2 kali.
Untuk mengatur posisi dari komponen, maka yang dilakukan adalah klik kanan pada komponen
(ditandai dengan warna merah keseluruhan dari komponen), dimana hal yang dapat dilakukan
adalah seperti pada Gambar:
Pada Gambar yang dilakukan adalah memilih bagian Rotate Clockwise untuk memutar
komponen searah dengan jarum jam.
Langkah selanjutnya adalah memilih Resistor dan Led seperti pada dangkah pemilihan
komponen untuk arduino uno. Atur Resistor sebesar 300 Ohm dengan cara double click pada
komponen Resistor, dan akan muncul Tampilan sebagai berikut
Dan pada bagian Resistance diganti dengan nilai 300, kemudian tekan tombol OK.
A DI
ATMEGA32
N GI
A T
L A
O L
(~
P
Setelah semua komponen terpilih, maka W
atur
setiap komponen seperti pada Gambar.
Untuk menghubungkan antara komponen Resistor dengan pin 8 pada mikrokontroler,
yang dilakukan adalah posisikan kursor di ujung dari pin 8 sampai ada tanda merah yang
muncul, kemudian klik kiri satu kali pada pad/mouse kemudian di digeser ke ujung dari
komponen Resistor. Jika tanda merah muncul pada ujung Resistor, maka yang dilakukan
adalah klik kiri sekali lagi pada pad/mouse untuk mengakhiri proses penyambungan.
Untuk mencoba program Blink yang kita buat pada program simulasi Proteus, maka yang
dilakukan adalah membuka program Blink yang di buat pada Arduino IDE, lakukan
Kompilasi/Ferifikasi program. Jika tidak ada eror, maka kopikan file yang berekstensi ino.elf,
seperti pada Gambar berikut:
Selanjutnya buka kembali program proteus, dan klik kiri/enter dua kali pada komponen
Arduino Uno untuk mengisi program yang kita kopikan tadi ke arduino uno (sama dengan
mengupload program ke board arduino) seperi pada Gambar, selanjutnya tekan tombol OK.
Selanjutnya adalah menekan tombol Run pada bagian pojok kiri bawah dari program simulasi
proteus untuk menjalankan sistem.
PASTE DISINI
D1 menyala
DITEKAN
D2 Menyala
D3 Menyala
D4 Menyala
E. Prosedur Percobaan
1. Ubah program diatas menjadi seperti dibawah ini, kemudian berikan tanggapan
anda tentang jalannya kedua program tersebut
// Inisialisasi Pin LED
const int pinLED1 = 8;
const int pinLED2 = 9;
const int pinLED3 = 10;
const int pinLED4 = 11;
void setup() {
// pin LED sebagai output
pinMode(pinLED1, OUTPUT);
pinMode(pinLED2, OUTPUT);
pinMode(pinLED3, OUTPUT);
pinMode(pinLED4, OUTPUT);
}
void loop() {
digitalWrite(pinLED1, LOW);
digitalWrite(pinLED2, LOW);
digitalWrite(pinLED3, LOW);
digitalWrite(pinLED4, LOW);
delay(1000);
digitalWrite(pinLED1, HIGH);
delay(1000);
digitalWrite(pinLED2, HIGH);
delay(1000);
digitalWrite(pinLED3, HIGH);
delay(1000);
digitalWrite(pinLED4, HIGH);
delay(1000);
}
2. Ubah program diatas seperti berikut:
// Inisialisasi Jumlah LED
const int numLED = 4;
// LED 1,2,3,&4 jadi 1 varibel
// dengaan alamat index 0,1,2,3
const int pinLED[numLED] = {8,9,10,11};
void setup() {
// Inisialisasi semua pin LED sebagai OUTPUT
for(int i=0; i<4; i++){
pinMode(pinLED[i], OUTPUT);
}
}
void loop() {
// Matikan semua LED
for(int i=0; i<4; i++){
digitalWrite(pinLED[i], LOW);
}
delay(1000);
// Hidupkan semua LED bertahap dg jeda 1 detik
for(int i=0; i<4; i++){
digitalWrite(pinLED[i], HIGH);
delay(1000);
}
}