Anda di halaman 1dari 28

LABORATORIUM ELEKTRONIKA DIGITAL DAN

MIKROKONTROLER

“ DIGITAL OUTPUT LED ”

Disusun Oleh :

NURUL AWALIYAH RAMADHANI (421 18 045)

2B D4 Teknik Listrik

PROGRAM STUDI TEKNIK LISTRIK


JURUSAN TEKNIK ELEKTRO
POLITEKNIK NEGERI UJUNG PANDANG
2019/2020
I. TUJUAN
Setelah membaca mahasiswa diharapkan dapat:
a. Membuat layout simulasi rangkaian LED di proteus menggunakan Arduino UNO
b. Membuat program sketch di IDE Arduino dengan menyalakan simulasi lampu LED di
proteus
c. Mengaplikasikan hasil simulasi di proteus ke Board Modul Arduino Uno
II. PENDAHULUAN
A. LED (Light Emitting Diode)
LED (Light Emitting Diode) adalah komponen elektronika yang dapat
memancarkan cahaya monokromatik ketika diberikan tegangan maju. Simbol dan betul
LED dapat dilihat pada gambar berikut.

Gambar 2.1 Bentuk dan simbol dioda

LED terdiri dari sebuah chip semikonduktor yang di doping sehingga


menciptakan junction P dan N. Yang dimaksud dengan proses doping dalam
semikonduktor adalah proses untuk menambahkan ketidakmurnian (impurity) pada
semikonduktor yang murni sehingga menghasilkan karakteristik kelistrikan yang
diinginkan. Ketika LED dialiri tegangan maju atau bias forward yaitu dari Anoda (P)
menuju ke Katoda (K), Kelebihan Elektron pada N-Type material akan berpindah ke
wilayah yang kelebihan Hole (lubang) yaitu wilayah yang bermuatan positif (P-Type
material). Saat Elektron berjumpa dengan Hole akan melepaskan photon dan
memancarkan cahaya monokromatik (satu warna).

Gambar 2.2 Junction P dan N

LED mempunyai 2 kaki yang disebut dengan noda (+) dan katoda (-). Apabila
dihubungkan dengan sumber tegangan maka kaki-kaki tersebut harus disesuaikan dengan
polaritas dari sumber tegangan tersebut. Untuk membedakan kaki anoda dan katoda, dapat
memperhatikan gambar berikut :

Gambar 2.3 Polaritas LED

B. Arduino UNO
Arduino UNO adalah sebuah board mikrokontroler yang didasarkan pada
ATmega328 (datasheet). Arduino UNO mempunyai 14 pin digital input/output (6 di
antaranya dapat digunakan sebagai output PWM), 6 input analog, sebuah osilator
Kristal 16 MHz, sebuah koneksi USB, sebuah power jack, sebuah ICSP header, dan
sebuat tombol reset. Arduino UNO memuat semua yang dibutuhkan untuk menunjang
mikrokontroler, mudah menghubungkannya ke sebuah computer dengan sebuah kabel
USB atau mensuplainya dengan sebuah adaptor AC ke DC atau menggunakan baterai
untuk memulainya. 

Gambar 2.4. Arduino UNO

Arduino Uno berbeda dari semua board Arduino sebelumnya, Arduino UNO tidak
menggunakan chip driver FTDI USB-to-serial. Sebaliknya, fitur-fitur Atmega16U2
(Atmega8U2 sampai ke versi R2) diprogram sebagai sebuah pengubah USB ke serial.
Revisi 2 dari board Arduino Uno mempunyai sebuah resistor yang menarik garis 8U2
HWB ke ground, yang membuatnya lebih mudah untuk diletakkan ke dalam DFU
mode. Revisi 3 dari board Arduino UNO memiliki fitur-fitur baru sebagai berikut: 

 Pinout 1.0: ditambah pin SDA dan SCL yang dekat dengan pin AREF dan dua pin
baru lainnya yang diletakkan dekat dengan pin RESET, IOREF yang
memungkinkan shield-shield untuk menyesuaikan tegangan yang disediakan dari
board. Untuk ke depannya, shield akan dijadikan kompatibel/cocok dengan board
yang menggunakan AVR yang beroperasi dengan tegangan 5V dan dengan
Arduino Due yang beroperasi dengan tegangan 3.3V. Yang ke-dua ini merupakan
sebuah pin yang tak terhubung, yang disediakan untuk tujuan kedepannya
 Sirkit RESET yang lebih kuat
 Atmega 16U2 menggantikan 8U2

Tabel 2.1 Ringkasan Spesifikasi Arduino Uno


Mikrokontroler ATmega328
Tegangan pengoperasian 5V
Tegangan input yang
7-12V
disarankan
Batas tegangan input 6-20V
Jumlah pin I/O digital 14 (6 di antaranya menyediakan keluaran PWM)
Jumlah pin input analog 6
Arus DC tiap pin I/O 40 mA
Arus DC untuk pin 3.3V 50 mA
32 KB (ATmega328), sekitar 0.5 KB digunakan oleh
Memori Flash
bootloader
SRAM 2 KB (ATmega328)
EEPROM 1 KB (ATmega328)
Clock Speed 16 MHz
1) Daya (Power) 
Arduino UNO dapat disuplai melalui koneksi USB atau dengan sebuah power suplai
eksternal. Sumber daya dipilih secara otomatis.  Suplai eksternal (non-USB) dapat
diperoleh dari sebuah adaptor AC ke DC atau battery. Adaptor dapat dihubungkan
dengan mencolokkan sebuah center-positive plug yang panjangnya 2,1 mm ke power
jack dari board. Kabel lead dari sebuah battery dapat dimasukkan dalam header/kepala
pin Ground (Gnd) dan pin Vin dari konektor POWER.  Pin-pin dayanya adalah sebagai
berikut: 
 VIN. Tegangan input ke Arduino board ketika board sedang menggunakan sumber
suplai eksternal (seperti 5 Volt dari koneksi USB atau sumber tenaga lainnya yang
diatur). Kita dapat menyuplai tegangan melalui pin ini, atau jika penyuplaian
tegangan melalui power jack, aksesnya melalui pin ini.
 5V. Pin output ini merupakan tegangan 5 Volt yang diatur dari regulator pada board.
Board dapat disuplai dengan salah satu suplai dari DC power jack (7-12V), USB
connector (5V), atau pin VIN dari board (7-12). Penyuplaian tegangan melalui pin
5V atau 3,3V membypass regulator, dan dapat membahayakan board. Hal itu tidak
dianjurkan.
 3V3. Sebuah suplai 3,3 Volt dihasilkan oleh regulator pada board. Arus maksimum
yang dapat dilalui adalah 50 mA.
 GND. Pin ground.

2) Memori 
ATmega328 mempunyai 32 KB (dengan 0,5 KB digunakan untuk bootloader). ATmega
328 juga mempunyai 2 KB SRAM dan 1 KB EEPROM (yang dapat dibaca dan ditulis
(RW/read and written) dengan EEPROM library). 
`Input dan Output 
Setiap 14 pin digital pada Arduino Uno dapat digunakan sebagai input dan output,
menggunakan fungsi pinMode(),digitalWrite(), dan digitalRead(). Fungsi-fungsi
tersebut beroperasi di tegangan 5 Volt. Setiap pin dapat memberikan atau menerima
suatu arus maksimum 40 mA dan mempunyai sebuah resistor pull-up (terputus secara
default) 20-50 kOhm. Selain itu, beberapa pin mempunyai fungsi-fungsi spesial: 

 Serial: 0 (RX) dan 1 (TX). Digunakan untuk menerima (RX) dan memancarkan
(TX) serial data TTL (Transistor-Transistor Logic). Kedua pin ini dihubungkan ke
pin-pin yang sesuai dari chip Serial Atmega8U2 USB-ke-TTL.
 External Interrupts: 2 dan 3. Pin-pin ini dapat dikonfigurasikan untuk dipicu
sebuah interrupt (gangguan) pada sebuah nilai rendah, suatu kenaikan atau
penurunan yang besar, atau suatu perubahan nilai. Lihat
fungsi attachInterrupt() untuk lebih jelasnya.
 PWM: 3, 5, 6, 9, 10, dan 11. Memberikan 8-bit PWM output dengan
fungsi analogWrite().
 SPI: 10 (SS), 11 (MOSI), 12 (MISO), 13 (SCK). Pin-pin ini mensupport
komunikasi SPI menggunakan SPI library.
 LED: 13. Ada sebuah LED yang terpasang, terhubung ke pin digital 13. Ketika pin
bernilai HIGH LED menyala, ketika pin bernilai LOW LED mati.

Arduino UNO mempunyai 6 input analog, diberi label A0 sampai A5, setiapnya
memberikan 10 bit resolusi (contohnya 1024 nilai yang berbeda). Secara default, 6 input
analog tersebut mengukur dari ground sampai tegangan 5 Volt, dengan itu mungkin
untuk mengganti batas atas dari rangenya dengan menggunakan pin AREF dan
fungsi analogReference(). Di sisi lain, beberapa pin mempunyai fungsi spesial: 

 TWI: pin A4 atau SDA dan pin A5 atau SCL. Mensupport komunikasi TWI
dengan menggunakan Wire library

Ada sepasang pin lainnya pada board: 

 AREF. Referensi tegangan untuk input analog. Digunakan


dengan analogReference().
 Reset. Membawa saluran ini LOW untuk mereset mikrokontroler. Secara khusus,
digunakan untuk menambahkan sebuah tombol reset untuk melindungi yang
memblock sesuatu pada board.

Lihat juga pemetaan antara pin Arduino dengan port Atmega328. Pemetaan untuk
Atmega8, 168, dan 328 adalah identik. 
3) Komunikasi 
Arduino UNO mempunyai sejumlah fasilitas untuk komunikasi dengan sebuah
komputer, Arduino lainnya atau mikrokontroler lainnya. Atmega 328 menyediakan
serial komunikasi UART TTL (5V), yang tersedia pada pin digital 0 (RX) dan 1 (TX).
Sebuah Atmega 16U2 pada channel board serial komunikasinya melalui USB dan
muncul sebagai sebuah port virtual ke software pada komputer. Firmware 16U2
menggunakan driver USB COM standar, dan tidak ada driver eksternal yang
dibutuhkan. Bagaimanapun, pada Windows, sebuah file inf pasti dibutuhkan. Software
Arduino mencakup sebuah serial monitor yang memungkinkan data tekstual terkirim ke
dan dari board Arduino. LED RX dan TX pada board akan menyala ketika data sedang
ditransmit melalui chip USB-to-serial dan koneksi USB pada komputer (tapi tidak untuk
komunikasi serial pada pin 0 dan 1).  
4) Programming 
Arduino UNO dapat diprogram dengan software Arduino (download). Pilih “Arduino
Uno dari menu Tools > Board(termasuk mikrokontroler pada board). Untuk lebih jelas,
lihat referensi dan tutorial. ATmega328 pada Arduino Uno hadir dengan sebuah
bootloader yang memungkinkan kita untuk mengupload kode baru ke ATmega328
tanpa menggunakan pemrogram hardware eksternal. ATmega328 berkomunikasi
menggunakan protokol STK500 asli (referensi, file C header) 
Kita juga dapat membypass bootloader dan program mikrokontroler melalui
kepala/header ICSP (In-Circuit Serial Programming); lihat instruksi untuk lebih jelas 
Sumber kode firmware ATmega16U2 (atau 8U2 pada board revisi 1 dan revisi 2)
tersedia. ATmega16U2/8U2 diload dengan sebuah bootloader DFU, yang dapat
diaktifkan dengan: 

 Pada board Revisi 1: Dengan menghubungkan jumper solder pada belakang board
(dekat peta Italy) dan kemudian mereset 8U2
 Pada board Revisi 2 atau setelahnya: Ada sebuah resistor yang menarik garis HWB
8U2/16U2 ke ground, dengan itu dapat lebih mudah untuk meletakkan ke dalam
mode DFU. Kita dapat menggunakan software Atmel’s FLIP (Windows)
atau pemrogram DFU (Mac OS X dan Linux) untuk meload sebuah firmware baru.
Atau kita dapat menggunakan header ISP dengan sebuah pemrogram eksternal
(mengoverwrite bootloader DFU). Lihat tutorial user-contributed ini untuk informasi
selengkapnya.

5) Reset Otomatis (Software) 


Dari pada mengharuskan sebuah penekanan fisik dari tombol reset sebelum sebuah
penguploadan, Arduino Uno didesain pada sebuah cara yang memungkinkannya untuk
direset dengan software yang sedang berjalan pada pada komputer yang sedang
terhubung. Salah satu garis kontrol aliran hardware (DTR) dari ATmega8U2/16U2
sihubungkan ke garis reset dari ATmega328 melalui sebuah kapasitor 100 nanofarad.
Ketika saluran ini dipaksakan (diambil rendah), garis reset jatuh cukup panjang untuk
mereset chip. Software Arduino menggunakan kemampuan ini untuk memungkinkan
kita untuk mengupload kode dengan mudah menekan tombol upload di software
Arduino. Ini berarti bahwa bootloader dapat mempunyai sebuah batas waktu yang lebih
singkat, sebagai penurunan dari DTR yang dapat menjadi koordinasi yang baik dengan
memulai penguploadan. 
6) Proteksi Aruslebih USB 
Arduino UNO mempunyai sebuah sebuah sekring reset yang memproteksi port USB
komputer dari hubungan pendek dan arus lebih. Walaupun sebagian besar komputer
menyediakan proteksi internal sendiri, sekring menyediakan sebuah proteksi tambahan.
Jika lebih dari 500 mA diterima port USB, sekring secara otomatis akan memutuskan
koneksi sampai hubungan pendek atau kelebihan beban hilang. 
7) Karakteristik FIsik 
Panjang dan lebar maksimum dari PCB Arduino UNO masing-masingnya adalah 2.7
dan 2.1 inci, dengan konektor USB dan power jack yang memperluas dimensinya.
Empat lubang sekrup memungkinkan board untuk dipasangkan ke sebuah permukaan
atau kotak. Sebagai catatan, bahwa jarak antara pin digital 7 dan 8 adalah 160 mil.
(0.16"), bukan sebuah kelipatan genap dari jarak 100 mil dari pin lainnya.  

III. ALAT DAN BAHAN


a. Tools Proteus (software)
b. Tools IDE Arduino Uno
Board Modul Arduino Uno : 1 set
d. Kabel USB : 1 buah
e. Kabel jumper male-female, male-male, female-female
IV. RANGKAIAN PERCOBAAN

Gambar 4.1. Rangkain percobaan

Gambar 4.2. Rangkaian Traffic Light


V. LANGKAH PERCOBAAN
A. Menyalakan LED
Sebelum kmerangkai pada Board Arduino telebih dahulu melakukan simulasi pada
Proteus. Langkah-langkahnya adalah sebagai berikut:
1. Mengikuti langkah a – h pada “Membuat Rangkaian dan Simulasi” yang
terdapat dalam ARDUINO DAN SOFTWARE PROTEUS
2. Pada kolom “Keyword” mengetik kata “Arduino” akan muncul jendela seperti
ini:

Gambar 5.1 Jendela Mencari Material Pada proteus


3. Memilih “Arduino Uno R3” kemudian klik “Ok”, setelah itu klik pada area
kerja, hasilnya akan seperti berikut:

4. Dengan cara yang sama, mencari LED dan resistor


5. Menghubungkan LED dengan Pin-pin Arduino melalui Resistor ke Ground,
sehingga gambarnya rangkaiannya menjadi seperti ini

Cara menghubungkan antar komponen satu dengan lainnya adalah mengarahkan


kursor pada Port yang akan dihubungkan dengan Port komponen lainnya hingga
ada warna merah, kemudian diklik dan di drag ke komponen lain yang akan
dihubungkan dan klik sekali pada Port komponen yang dituju.

7. Untuk mengubah nilai tahanan dari Resistor adalah dengan mengklik 2x Resistor
pada area kerja, pada kolom “Resistance” ubahlah nilainya sesuai nilai Resistor yang
digunakan, sehingga muncul jendela seperti berikut:
8. Setelah selesai membuat rangkaian, langkah selanjutnya adalah membuat source code
untuk dimasukkan ke dalam Arduino pada Sketch.

9. Selanjutnya klik “Verify” pada toolbar, fungsinya untuk mengecek coding yang kita
buat sudah benar atau masih ada yang salah.

10. Jika coding yang telah kita buat benar, kemudian carilah hasil kompailer tersebut
yang berekstensi *.hex

11. Setelah itu salin alamat lokasi tersimpannya tanpa tanda


“C:\\Users\\WINDOW~1.1\\AppData\\Local\\Temp\\arduino_build_796072/sket
ch_nov02d.ino.hex” kemudian buka kembali Proteus lalu klik 2x arduino hingga
muncul jendela seperti ini
12. Kemudian tempel pada kotak “Program File”, kemudian klik “Ok”
Sekarang rangkaian kita siap untuk disimulasikan, dengan mengklik simbol “Play” pada bagian
kiri bawah jendela Proteus

15. Setelah itu LED pada rangkaian akan berubah warna, artinya simulasi telah berhasil
(LED telah menyala)

16. Simulasi selesai.


B. Menyalakan Lampu LED BLINK
1. Merangkai kembali seperti pada “Percobaan A”
2. Mengulangi langkah pada percobaan A , akan tetapi
saat mengoding ulang, coding yang dimasukkan aalah“pinMode(2, OUTPUT);”
dalam tanda {} pada bagian “void setup ()”dan
“digitalWrite(2,HIGH); delay(100);
digitalWrite(2,low); delay(100);” dalam tanda {} pada bagian
“void loop ()”

3. Setelah itu, melakukan kembali langkah 9 sampai selesai pada percobaan A


C. Menyalakan LED dengan Sistem Traffic Light
1) Semua LED Active (HIGH)
2) Urutan pemograman Traffic Light:
a. Memahami satu per satu perubahan pada traffic light
b. Membuat Flowchart
c. Memahami koneksi konektor CN1 s/d CN4 dengan LED Traffic Light
d. Membuat Program per step, dari step 1 kemudian dicoba, Seperti;
void setup()
{
pinMode (2, OUTPUT);
pinMode (3, OUTPUT);
pinMode (4, OUTPUT);
pinMode (5, OUTPUT);
pinMode (6, OUTPUT);
pinMode (7, OUTPUT);
pinMode (8, OUTPUT);
pinMode (9, OUTPUT);
pinMode (10, OUTPUT);
pinMode (11, OUTPUT);
pinMode (12, OUTPUT);
pinMode (13, OUTPUT);
}
void loop()
{
// Kondisike-1
digitalWrite (2, HIGH);
digitalWrite (7, HIGH);
digitalWrite (10, HIGH);
digitalWrite (13, HIGH);
delay (250);

digitalWrite (2, LOW);


digitalWrite (7, LOW);
digitalWrite (10, LOW);
digitalWrite (13, LOW);
delay (100);}

e. Apabila setelah percobaan step 1 dan tidak eror, maka kembali melanjutkan untuk step
2 dan seterusnya.
f. Mengulangi langkah 9 sampai selessai pada percobaan A

VI HASIL DAN ANALISA PERCOBAAN


A. Menyalakan 8 LED Secara Bersamaan
 Simulasi

Gambar 6.1. Rangkaian Percobaan 4.1 dengan 8 LED Menyala Secaraa Bersamaan

 Syntax Program
Gambar 6.2. Syntax Arduino 8 LED yang Menyala Secara Bersamaan
 Timing Diagram

Gambar 6.3. Timing Diagram 8 LED yang Menyala Secara Bersamaan

 Analisa Pemograman
Pada percobaan pertama ini hal yang pertama kali dilakukan ialah
mensimulasikan padaboard arduino di Proteus. Seperti pada gambar 6.1.
diatas, ada delapan buah LED yang masing-masing dihubungkan dengan pin
2,3,4,5,6,7, 8, dan 9 pada board arduino, kemudian dihubungkan pula dengan
ground.

Adapun cara untuk menulis bahasa pemograman untuk menyalakan 8 LED


di pin 2, 3, 4, 5, 6, 7, 8, dan 9 secara bersamaan seperti gambar 6.2. Pada
Void Setup(); diberikan perintah “pinMode (2, OUTPUT)”; dimana angka 2
ini berarti pin-nya dan disetsebagai output. Adapun pada bagian void loop ();
diberikan perintah “digitalWrite (2, High)”; yang mana membuat LED yang
terhubung dengan Output arduino akan menyala. Hal ini dilakukan hingga
ke-delapan LED menyala secara bersamaan.

 Analisa Hasil Percobaan Secara Praktik


Percobaan secara praktik dilkukan dengan menggunakan board Ardino ang
chanelnya dihubungkan dengan kabel jumber male-female. Adapun channel
yang digunakan pada percobaan ini adalah CN1 yang berfungsi untuk
menghubungkan tegangan 5V dan 0V, serta CN yang merupakan control 8
LED. Dari rangkaian 6.1 LED akan menyala secara bersamaan. Pada
percobaan ini menggunakan pin-pin digital pada arduino yaitu 2, 3, 4, 5, 6, 7,
8, dan 9 sebagai output dari rangkaian.

B. Menyalakan LED Blink dengan Waktu yang Ditentukan


 Simulasi

Gambar 6.4. 8 LED dalam Keadaan Hidup Pada Mode Bllink

Gambar 6.5. 8 LED dalam Keadaan Mati Pada Mode Blink


 Syntax Program

Gambar 6.6. Syntax Program 8 LED Blink

 Timing Diagram

Gambar 6.7 Timing Diagram 8 LED Blink


 Analisa Program
Pada percobaan kedua ini, sangat mirip dengan percobaan pertama tadi.
Hal yang pertama kali dilakukan ialah mensimulasikan padaboard arduino di
Proteus. Seperti pada gambar 6.1. diatas, ada delapan buah LED yang masing-
masing dihubungkan dengan pin 2,3,4,5,6,7, 8, dan 9 pada board arduino,
kemudian dihubungkan pula dengan ground. Namun, yang berbeda dari
percobaan pertama tadi terletak pada codingnya.
Adapun cara untuk menulis bahasa pemograman untuk menyalakan 8
LED di pin 2, 3, 4, 5, 6, 7, 8, dan 9 secara bersamaan seperti gambar 6.2. Pada
Void Setup (); diberikan perintah “pinMode (2, OUTPUT)”; dimana angka 2 ini
berarti pin-nya dan disetsebagai output. Adapun pada bagian void loop ();
diberikan perintah “digitalWrite (2, High)”; yang mana membuat LED yang
terhubung dengan Output arduino akan menyala, dan pada percobaan kedua ini
ditambahkan lagi perintah “digitalWrite (2, Low)”; yang mana akan mebuat
lampu LED padam tanpa harus memutuskannya dari sumber arus. Untuk
membuat LED tersebut blink atau berkedip dibutuhkan perintah code “delay”
yang ditulis setelah “digitalWrite”. Fungsinya ialah untuk memberikan waktu
LED dalam setiap keadaan (menyala atau pun padam), 1000 merupakan waktu
dalam satuan millisecond, atausetara dengan satu detik. Jadi saat
diimplementasikan pada board arduino, LED akan menyala selama satu detik,
lalu padam selama satu detik.

Masing-masing pin ditulils dua kali dengan pulsa HIGH dan LOW,
sehingga saat diimplementasikan pada board Arduino, LED akan menyala.
Statement delay; ditulis setiap setelah menlis statement digitalWrite (pin LED,
kondisi); delay yang digunakan pada percobaan ini hanya menggunakan 100 dari
1000 ms, Jika coding program yang di buat seperi pada gambar 6.6, maka
kedelapan LED akan menyala dan mati secara bersamaan.

 Analisa Hasil Percobaan Praktik


Percobaan secara praktik dilkukan dengan menggunakan board Ardino ang
chanelnya dihubungkan dengan kabel jumber male-female. Adapun channel
yang digunakan pada percobaan ini adalah CN1 yang berfungsi untuk
menghubungkan tegangan 5V dan 0V, serta CN yang merupakan control 8 LED.
Dari rangkaian 6.1 LED akan menyala secara bersamaan. Pada percobaan ini
menggunakan pin-pin digital pada arduino yaitu 2, 3, 4, 5, 6, 7, 8, dan 9 sebagai
output dari rangkaian. Pengaturan menyala dan padamnya LED dari delay yang
diprogramkan pada Arduino, semakin kecil nilai delaynya semakin cepat pula
kondisi hidup-mati dari LED

C. Menyalakan LED dengan Sistem Traffic Light (4 arah)


 Simulasi
Gambar 6.8 Rangkaian Traffic Light

Gambar 6.9. Rangkaian Traffic Light Kondisi 1


Gambar 6.10. Rangkaian Traffic Light Kondisi 2

Gambar 6.11. Rangkaian Traffic Light Kondisi 3


Gambar 6.12. Rangkaian Traffic Light Kondisi 4

Gambar 6.13. Rangkaian Traffic Light Kondisi 5


Gambar 6.14. Rangkaian Traffic Light Kondisi 6

Gambar 6.15. Rangkaian Traffic Light Kondisi 7


Gambar 6.16. Rangkaian Traffic Light Kondisi 8

 Syntax Program
Gambar 6.17. Syntax Arduino RangkaianTraffic Light
 Timing Diagram

Gambar 6.18. Timing Diagram Rangkaian Traffic Light

 Analisa Program
Pada percobaan ketiga ini, menggunakan rangkaian Traffic Light seperti
yang terlihat pada gambar diatas. Dimana menggunakan 12 pin Arduino yang
menjadi output. Adapun traffic light yang digunakan pada percobaan ini ialah
jenis traffic light empat arah, dimana terdapat empat buah LED yang terdiri LED
berwarna_merah, kuning, dan hijau.
Adapun cara menulis bahasa pemrograman untuk menyalaka traffic light di pin 2
sampai pin 13 seperti pada gambar 6.17. Pada percobaan ini menggunkan bentuk
integer untuk lebih memudahkan memahami perubahan warna dari waktu ke waktu.
Untuk membuat Syntax program pada traffic light, hal pertama yang dilakkukan
ialah membuat timing diagramnya agar lebih mudah menentukan penulisan coding.
Adapun timing diagramnya dapat dilihat pada gambar 6.18. Setelah memerhatikan
perubahan Traffic Light 4 arah diketahui terdapat delapan kondisi. Adapun detail
dari ke-delapan kondisi tersebut tertera pada table 6.1. dibawah ini.
Tabel 6.1. 8 kondisi Traffic Light empat arah
Kond Kondi Kondi Kondi Kondi Kondi Kondi Kondi
isi 1 si 2 si 3 si 4 si 5 si 6 si 7 si 8
CN1 H1 High Low Low Low Low Low Low Low
K1 Low High Low Low Low Low Low High
M1 Low Low High High High High High Low
CN2 H2 Low Low High Low Low Low Low Low
K2 Low High Low High Low Low Low Low
M2 High Low Low Low High High High High
CN3 H3 Low Low Low Low High Low Low Low
K3 Low Low Low High Low High Low Low
M3 High High High Low Low Low High High
CN4 H4 Low Low Low Low Low Low High Low
K4 Low Low Low Low Low High Low High
M4 High High High High High Low Low Low

Dalam Hal ini , pertama-tama jalur 1 menyalakan lampu hijau , oleh karena itu lampu
merah yang sesuai disemua jalur lainnya dihidupkan. Setelah delay yang telah ditentukan
sebelumnya yang menyatakan waktu 7 detik lampu hijau dijalur 3 harus dinyalakan dan jalur 1
harus dimatikan .
Sebagai indikator peringatan, lampu kuning di jalur 1 disetel untuk menunjukan bahwa
lampu merah akan menyala . Demikian pula lampu kuning di jalur 3 juga dinyalakan sebagai
indikasi bahwa lampu hijau akan dinyalakan . LED Kuning di jalur 1 dan 3 dinyalakan dalam
durasi waktu yang cepat ,katakan 3 detik setelah lampu merah di jalur 1 dinyalakan dan lampu
hijau di jalur 3 dinyalakan

Lampu Hijau di jalur 3 juga dinyalakan untuk waktu yang telah ditentukan
dan proses bergerak maju menuju jalur 3 dan akhirnya ke jalur 2 . sistem kemudian
loop kembali ke lane 1 dimana proses yang disebutkan diatas akan diulangi lagi.
Masing-masing pin dihubungkan dengan 12 LED dan dan membuat program
sesuai dengan prinsip diatass sehingga pada saat diimplementasikan pada board
arduino, LED akan menyala. Statement delay; ditulis setiap setelah menulis
statement digitalWrite (pin LED, kondisi);. Sehingga pada saat diimplementasikan
pada board arduino traffic light akan menyala sesuai prinsipnya.
Setelah proses Sketch selesai, dilakukan verify untuk mengecek kesalahan
program yang dibuat dan mencari hasil kompailer tersebut yang berekstensi *.hex
lalu menyalin lokasi file HEX yang telah dicopy pada bagian program file setelah
menekan arduino pada proteus untuk melakukan simulasi.dan melakukan proses
upload menggunakan USB ke arduino.

Pada percobaan pertama , Karena proyek ini adalah pengontrol lampu lalu
lintas, Rangkaian terdiri dari dari banyak LED (12 LED) karena menerapkan
lampu lalu lintas di persimpangan 4 arah, Proyek ini adalah representasi
sederhana dari pengontrol lampu lalu lintas dan karenanya tidak ada komponen
tambahan lainnya yang digunakan. Pada percobaan ini dibutuhkan 3 LED warna :
Merah, kuning dan Hijau di setiap persimpangan. Persimpangan dibagi menjadi
empat jalur : Jalur1 , Jalur 2 , Jalur 3 dan Jalur 4.
Langkah pertama yang dilakukan adalah mensimulasikan pada board arduino di
Proteus. Seperti pada gambar di atas, semua LED dihubungkan dengan pin 2
sampai pin 13 melalui masing-masing resistor pembatas pada board arduino,
kemudian dihubungkan pula dengan ground.

 Analisa Hasil Percobaan Praktik


Percobaan secara praktik dilakukan dengan menggunakan board Arduino
yang channelnya dihubungkan dengan kabel jumper male-female. Hal yang
pertama yang dilakukan adalah menghubungkan CN1 bagian 1,2,3 dan 4 kemasing-
masing ledHijau1, ledKuning1, ledMerah1 dan GND. CN2 bagian 1,2 dan 3
dihubungkan kemasing-masing ledHijau2, ledKuning2 dan ledMerah2. CN3 bagian
1,2 dan 3 dihubungkan ke ledHijau3, ledKuning3 dan ledMerah3 dan CN4 bagian
1,2 dan 3 kemasing-masing ledHijau4, ledKuning4 dan ledMerah4, yang akan
menyala sesuai dengan prinsip kerja Traffic light 1 arah dengan durasi nyala mati
untuk suatu jalur jalan selama 7000 ms dan 3 jalur laiinya berhenti ditandai dengan
lampu hijau dan merah kemudian akan ad waktu peringatan untuk berhenti menuju
lampu selanjytnya dan lampu kuning selama 3000 ms . pada percobaan ini
menggunakan pin-pin digital pada arduino yaitu pin 2 sampai 13 sebagai output dari
rangkaian. Pengaturan nyala mati tergantung dari delay yang diprogram pada
arduino. Semakin kecil delaynya maka semakin cepat pula kondisi hidup mati dari
led.

VII. KESIMPULAN
 Dalam percobaan ini , Software Proteus digunakan untuk mensimulasikan
rangkaian percobaan sebelum dieksekusi di board modul Arduino Uno.
 Dari percobaan ini, dapat disimpulkan bahwa Arduino Uno merupakan salah satu
mikrokontroler yang dapat digunakan dengan melakukan pengunduhan syntax
program yang telah diverifikasi pada IDE Arduino sebelumnya. Modul board
Arduino Uno digunakan untuk menampilkan secara virtual program yang telah
dibuat. Adapun bahasa pemrograman yang digunakan adalah bahasa C campur
Bahasa Java dimana tata cara penulisan (syntax) sangat perlu diperhatikan karena
apabila terjadi kesalahan penulisan maka program tidak dapat dijalankan (error).
Percobaan ini praktikan mensimulasikan proteus dengan 8 running LED yang
dinyalakan oleh mikro arduino dan menyalakan traffic light sesuai prinsip
kerjanya menggunakan timing diagram .
 Dapat disimpulkan bahwa setelah simulasi Running led (8 LED) dan Rangkaian
pengendali Traffic Light dan behasil maka langkah selanjutnya yaitu melakukan
proses upload dan memilih port yang terhubung kekomputer dan
diimplementasikan pada Modul board Arduino Uno

VIII. DAFTAR PUSTAKA

http://belajar-dasar-pemrograman.blogspot.com/2013/03/arduino-
uno.html#ixzz647qjUMXQ
https://inilhohadi.wordpress.com/2010/10/27/teori-led/

https://docplayer.info/58873095-Bab-ii-landasan-teori-mikrokontroler-arduino-uno-
r3-atmega328-arduino-memiliki-14-pin-input-output-yang-mana-6-pin.html

https://toleinnovator.blogspot.com/2018/02/pengenalan-arduino.html

https://prog80.blogspot.com/2015/09/pengenalan-arduino-uno-r3.html

Anda mungkin juga menyukai