Anda di halaman 1dari 68

PROTOTYPE SISTEM KENDALI RAMBU LALU LINTAS OTOMATIS

DENGAN LOGIKA FUZZY MEGGUNAKAN LASER DAN LDR


(PROTOTYPE OF AUTOMATIC TRAFFIC LIGHT CONTROL SYSTEM
USING FUZZY LOGIC WITH LASER AND LDR )

TUGAS AKHIR
Disusun sebagai salah satu syarat untuk memperoleh gelar
Sarjana Teknik pada Program Studi Teknik Elektro
Universitas Telkom

Oleh :
EASTOR RAINHARD DOGMA TAMBUNAN
1105090024

FAKULTAS TEKNIK ELEKTRO


UNIVERSITAS TELKOM
BANDUNG
2014
UNIVERSITAS TELKOM No.Dokumen ITT-AK-FEK-PTT 004/001

Jl. Telekomunikasi No. 1 Ters. Buah Batu Bandung 40257 No. Revisi 00
FORMULIR LEMBAR PENGESAHAN TUGAS Berlaku Efektif
AKHIR

LEMBAR PENGESAHAN
TUGAS AKHIR

PROTOTYPE SISTEM KENDALI RAMBU LALU LINTAS OTOMATIS


DENGAN LOGIKA FUZZY MEGGUNAKAN LASER DAN LDR

(PROTOTYPE OF AUTOMATIC TRAFFIC LIGHT CONTROL SYSTEM


USING FUZZY LOGIC WITH LASER AND LDR )

Disusun Oleh:
Eastor Rainhard Dogma Tambunan
1105090024

Telah disetujui dan disahkan sebagai Tugas Akhir


Program S1 Teknik Elektro
Fakultas Teknik Elektro
Universitas Telkom

Pembimbing 1 Pembimbing 2

Porman Pangaribuan, Ir., MT. Budi Setiadi, ST., MT.


(NIK : 9164001-1) (NIP : 198008202008011007)

ii
UNIVERSITAS TELKOM No.Dokumen ITT-AK-FEK-PTT 004/001

Jl. Telekomunikasi No. 1 Ters. Buah Batu Bandung 40257 No. Revisi 00
FORMULIR LEMBAR PENGESAHAN TUGAS Berlaku Efektif
AKHIR

LEMBAR PERNYATAAN ORISINALITAS

NAMA : Eastor Rainhard Dogma Tambunan


NIM : 1105090024
ALAMAT : JL. Sungai Ampal RT 54 No. 45, Balikpapan
No Tlp/HP : 08986416644
E-mail : eastorr@gmail.com

Menyatakan bahwa Tugas Akhir ini merupakan karya orisinal saya sendiri, dengan judul :
PROTOTYPE SISTEM KENDALI RAMBU LALU LINTAS OTOMATIS
DENGAN LOGIKA FUZZY MEGGUNAKAN LASER DAN LDR

PROTOTYPE OF AUTOMATIC TRAFFIC LIGHT CONTROL SYSTEM


USING FUZZY LOGIC WITH LASER AND LDR

Atas pernyataan ini, saya siap menanggung resiko / sanksi yang dijatuhkan kepada saya
apabila kemudian ditemukan adanya pelanggaran terhadap kejujuran akademik atau etika
keilmuan dalam karya ini, atau ditemukan bukti yang menunjukkan ketidakaslian karya ini.

Bandung, Juni 2014

(Eastor Rainhard Dogma Tambunan)


1105090024

iii
ABSTRAK

Lampu lalu lintas dengan sistem penyalaan waktu yang tetap, dinilai kurang efektif
dalam mengurangi kemacetan. Dengan sistem lampu lalu lintas otomatis yang sudah ada,
memungkinkan berkurangnya kemacetan. Akan tetapi dengan harga yang tergolong mahal,
sistem lampu lalu lintas otomatis yang sudah ada belum bisa diaplikasikan untuk setiap
persimpangan.
Pada tugas akhir ini dibuat sebuah prototype sistem lampu lalu lintas otomatis dengan
menggunakan sensor LDR sebagai penerima pancaran cahaya dari laser. Sensor dipasang pada
setiap jalur dan disusun secara array. Jika kendaraan menghalangi pancaran cahaya dari laser
menuju LDR, maka mikrokontroler akan mendeteksi adanya kendaraan. Mikrokontroler
ATMega32 yang digunakan menggunakan logika fuzzy dalam proses pengolahan sinyal input.
Logika tersebut digunakan untuk menghitung lama penyalaan lampu hijau pada jalur ‘barat-
timur’ dan ‘utara-selatan’ secara bergantian. Lama penyalaan dari lampu hijau akan
ditampilkan ke LCD.
Dengan panjang lintasan pada setiap jalur kurang lebih 25 cm dan skala 1 : 100, sistem
ini dapat mendeteksi 5 kendaraan kurang lebih sepanjang 4 cm. Jika jumlah kendaraan pada
setiap jalur adalah ‘padat’ maka durasi penyalaan lampu hijau ‘panjang’, jika jumlah
kendaraan pada setiap jalur adalah ‘normal’ maka durasi penyalaan lampu hijau ‘normal’, jika
kendaraan pada setiap jalur adalah ‘tidak padat’ maka durasi penyalaan lampu hijau ‘pendek’.

Kata kunci: Prototype, Lampu Lalu Lintas, Logika Fuzzy, Microcontroller, ATMega 32, Laser,
Light Dependent Resistor

iv
ABSTRACT

Fixed time traffic signal is considered less effective in reducing congestion. With the
automatic traffic light system that already exists, it could reduce the congestion. But because
the price is quite expensive, automatic traffic light system that already exists can not be
applied to every intersection.
In this final project, the prototype of an automatic traffic light system using sensor
LDR as a recipient of a laser light beam is created. Sensors are installed in each lane and it
arranged in arrays. If the vehicle is blocking the light beam from the laser to the LDR, the
microcontroller will detect the presence of vehicles. Microcontroller ATMega32 that are used
in this final project is using fuzzy logic for the processing of the input signal. The logic is used
to calculate the time of green lighting on track 'west-east' and 'north-south' interchangeably.
The duration of the green light will be displayed on the LCD.
With a length of track on each lane approximately 25 cm with the scale 1: 100, the
system can detect approximately 5 vehicles along the 4 cm. If the number of vehicles in each
lane is ‘high’ then the duration of green lighting is 'long', if the number of vehicles in each
lane is ‘normal’ then duration of the green lighting is 'normal', if the number of vehicle in
each lane is ‘low’, then the duration of the green lighting is 'short' .

Keywords: Prototype, Traffic Light, Fuzzy Logic, Microcontroller, ATMega32, Laser, Light Dependent
Resistor

v
KATA PENGANTAR

Segala puji syukur penulis ucapkan kepada Tuhan Yesus Kristus yang telah memberikan
kasih, kekuatan dan karunia-Nya sehingga Tugas Akhir dengan judul “PROTOTYPE
SISTEM KENDALI RAMBU LALU LINTAS OTOMATIS DENGAN LOGIKA
FUZZY MEGGUNAKAN LASER DAN LDR” ini dapat diselesaikan dengan baik. Adapun
Tugas Akhir ini disusun sebagai salah satu syarat kelulusan pada Program Sarjana Teknik
Elektro, Fakultas Teknik, Universitas Telkom, Bandung.
Ucapan terima kasih penulis sampaikan pada semua pihak yang telah memberikan
dukungan sehingga tugas akhir ini dapat diselesaikan. Penulis menyadari tugas akhir ini masih
jauh dari kesempurnaan yang disebabkan karena keterbatasan yang penulis miliki. Untuk itu
saran dan kritik yang bersifat membangun dari pembaca sangat penulis harapkan demi
perbaikan di masa yang akan datang yang bisa dikirimkan melalui email penulis di
eastorr@gmail.com.
Dengan segala kerendahan hati, penulis berharap semoga tugas akhir ini dapat
bermanfaat bagi pembaca dan penulis khususnya, serta bagi dunia pendidikan pada umumnya.

Hormat saya,
Bandung, 18 Juni 2014
Penulis

Eastor Rainhard Dogma Tambunan

vi
UCAPAN TERIMA KASIH

Segala puji bagi Tuhan Yesus Kristus karena berkat, kasih dan kekuatan-Nya yang
diberikan kepada penulis sehingga penulis dapat menyelesaikan tugas akhir ini, yang
merupakan syarat kelulusan strata-1 Program Studi Teknik Elektro, Fakultas Teknik,
Universitas Telkom.
Tugas akhir dengan judul “PROTOTYPE SISTEM KENDALI RAMBU LALU LINTAS
OTOMATIS DENGAN LOGIKA FUZZY MEGGUNAKAN LASER DAN LDR” ini
diharapkan dapat bermanfaat bagi perkembangan ilmu pengetahuan dan teknologi di
Indonesia.
Dalam penyelesaian tugas akhir ini, penulis mendapatkan bantuan dan dukungan dari
berbagai pihak. Maka dari itu, pada kesempatan ini dengan segala kerendahan hati, penulis
ingin menyampaikan terima kasih kepada:
1. Yesus Kristus sebagai Juru Selamat saya yang memberikan kekuatan sehingga saya
sanggup mengerjakan dan menyelesaikan Tugas Akhir ini.
2. Bapak Rumbungan Tambunan dan Ibu Marneline Dameria Siregar yang selalu
menyebut nama anak-anaknya dalam doa agar diberi berkat dan perlindungan dari
Tuhan, terimakasih untuk menjadi orangtua yang sangat pengertian terhadap anaknya.
3. Bapak Porman Pangaribuan, Ir., MT sebagai pembimbing 1 atas bimbingan, saran,
bantuan, dan masukan-masukan yang diberikan dan terutama dukungan selama proses
pengerjaan tugas akhir ini.
4. Bapak Budi Setiadi, ST., MT sebagai pembimbing 2 atas bimbingan, saran, bantuan, dan
masukan-masukan yang diberikan selama proses pengerjaan tugas akhir ini.
5. Bapak Sarwoko, Ir., M.Sc sebagai wali dosen yang memberikan dukungan kepada
penulis dan membantu penulis dalam menyelesaikan administrasi akademik di kampus
tercinta ini.
6. Dameria Ester yang selalu memberikan waktu dan dukungan yang luar biasa.
7. Teman-Teman Teknik Elektro: Arnold, Yuktika, Bima, Dimas, Retno, Adri, Simon.
8. Teman-teman kontrakan HORE: Sekti, Ooy, Cesar, Kodok, Nono, yang senantiasa
membantu dalam pelaksanaan Tugas Akhir ini.
9. Teman-teman kos PONDOK ANUGRAH: Roijal, Andi, Indra, Tampo.
vii
10. Seluruh civitas akademika Telkom Engineering School, Telkom University atas segala
bantuannya dan pihak-pihak lain yang turut terlibat langsung ataupun tidak langsung
dalam penyelesaian tugas akhir ini.
Sebagai manusia biasa yang serba terbatas, wajar kiranya jika dalam pengerjaan tugas
akhir ini masih banyak kekurangan yang perlu diperbaiki. Oleh karena itu, segala masukan
dan kritik akan diterima dengan senang hati.

Bandung, 16 Januari 2014

Penulis

viii
DAFTAR ISI

LEMBAR PENGESAHAN ........................................................................................................ ii


LEMBAR PERNYATAAN ORISINALITAS .......................................................................... iii
ABSTRAK .................................................................................................................................iv
ABSTRACT ................................................................................................................................ v
KATA PENGANTAR ................................................................................................................vi
UCAPAN TERIMA KASIH .................................................................................................... vii
DAFTAR ISI ..............................................................................................................................ix
DAFTAR GAMBAR ................................................................................................................ xii
DAFTAR TABEL ....................................................................................................................xiv
DAFTAR PERSAMAAN ......................................................................................................... xv
DAFTAR ISTILAH ..................................................................................................................xvi
DAFTAR SINGKATAN ........................................................................................................ xvii
BAB I PENDAHULUAN .......................................................................................................... 1
1.1 Latar Belakang .............................................................................................................. 1

1.2 Tujuan ........................................................................................................................... 2

1.3 Perumusan Masalah ...................................................................................................... 2

1.4 Batasan Masalah ........................................................................................................... 2

1.5 Metodologi Penulisan ................................................................................................... 2

1.6 Sistematika Penulisan ................................................................................................... 3

BAB II DASAR TEORI ............................................................................................................. 4


2.1 Lampu Lalu Lintas ........................................................................................................ 4

2.2 Sistem Kontrol Fuzzy Logic ....................................................................................... 10

2.3 Sistem Minimum Mikrokontroler ATMega 32 .......................................................... 13

2.4 Sensor.......................................................................................................................... 17

ix
2.4.1 LDR ..................................................................................................................... 17

2.4.2 Laser Diode.......................................................................................................... 18

2.5 Display ........................................................................................................................ 18

2.5.1 LED ..................................................................................................................... 18

2.5.2 LCD ..................................................................................................................... 19

2.6 Bahasa C ..................................................................................................................... 20

2.7 LM339 ........................................................................................................................ 21

BAB III MODEL DAN PERANCANGAN SISTEM............................................................... 23


3.1 Blok Diagram Sistem .................................................................................................. 24

3.2 Flowchart of System.................................................................................................... 25

3.3 Perancangan Perangkat Keras ..................................................................................... 27

3.3.1 Blok Catu daya .................................................................................................... 27

3.3.2 Sensor .................................................................................................................. 27

3.3.3 ADC ..................................................................................................................... 28

3.3.4 Rangkaian Sistem Minimum Mikrokontroler...................................................... 29

3.3.5 Output .................................................................................................................. 30

3.3.6 Bentuk Realisasi Alat .......................................................................................... 31

3.4 Perancangan perangkat lunak ..................................................................................... 31

BAB IV PENGUJIAN DAN ANALISIS ................................................................................. 36


4.1 Pengujian dan Analisis Perangkat Keras .................................................................... 36

4.1.1 Pengujian Sistem Minimum ATMega 32 ............................................................ 36

4.1.2 Pengujian LCD .................................................................................................... 36

4.1.3 Pengujian Laser ................................................................................................... 37

4.1.4 Pengujian LDR .................................................................................................... 38

4.1.5 Pengujian LM339 ................................................................................................ 39

x
4.1.6 Pengujian LED .................................................................................................... 40

4.2 Pengujian dan Analisis Perangkat Lunak ................................................................... 40

BAB V PENUTUP ................................................................................................................... 42


5.1 Kesimpulan ................................................................................................................. 42

5.2 Saran ........................................................................................................................... 43

DAFTAR PUSTAKA ................................................................................................................ 44


LAMPIRAN .............................................................................................................................. 45

xi
DAFTAR GAMBAR

Gambar 2.1 Arah Pergerakan Mengizinkan Pergerakan ............................................................ 5

Gambar 2.2 Arah Pergerakan Membatasi Pegerakan ................................................................. 6

Gambar 2.3 Arah Pergerakan Early Cut-off dan Late Start ....................................................... 7

Gambar 2.4 Arah Pergerakan Phase Khusus Belok Kanan ........................................................ 7

Gambar 2.5 (a) Representasi Kurva Segitiga ........................................................................... 11

Gambar 2.5 (b) Representasi Kurva Trapesium ....................................................................... 11

Gambar 2.6 Konfigurasi Pin ATMega 32 ................................................................................ 15

Gambar 2.7 Skematik Rangkaian Sistem Minimum ................................................................ 15

Gambar 2.8 Skematik Rangkaian Pembangkit Clock............................................................... 16

Gambar 2.9 Skematik Rangkaian Reset ................................................................................... 16

Gambar 2.10 Skematik Rangkaian ISP .................................................................................... 16

Gambar 2.11 Skematik Rangkaian Regulator Sistem Minimum .................................................. 17

Gambar 2.12 LDR ................................................................................................................... 17

Gambar 2.13 LED .................................................................................................................. 19

Gambar 2.14 LCD .............................................................................................................................. 19

Gambar 2.15 Simbol Komparator ............................................................................................ 21

Gambar 2.16 Pin Out LM339 ................................................................................................... 22

Gambar 3.1 Skema Sistem ....................................................................................................... 23

Gambar 3.2 Diagram Blok Sistem............................................................................................ 24

Gambar 3.3 Flowchart sistem .................................................................................................. 25

Gambar 3.4 Skematik Rangkaian LDR .................................................................................... 28

Gambar 3.5 Skematik LM339 .................................................................................................. 29

Gambar 3.6 Skematik Rangkaian LED .................................................................................... 30

xii
Gambar 3.7 LCD Saat Menampilkan Indikator........................................................................ 31

Gambar 3.8 Bentuk Realisasi Alat ........................................................................................... 31

Gambar 3.9 Fungsi Keanggotaan Himpunan Jalur Barat ......................................................... 32

Gambar 3.10 Fungsi Keanggotaan Himpunan Jalur Timur ...................................................... 32

Gambar 3.11 Fungsi Keanggotaan Himpunan Jalur Utara ....................................................... 33

Gambar 3.12 Fungsi Keanggotaan Himpunan Jalur Selatan .................................................... 33

Gambar 3.13 Fungsi Keanggotaan Himpunan Output ............................................................. 34

Gambar 4.1 Hasil Pengujian LCD ............................................................................................ 37

xiii
DAFTAR TABEL

Tabel 2.1 Konfigurasi Pin LCD ................................................................................................ 19

Tabel 3.1 Konfigurasi Pin Input .............................................................................................. 29

Tabel 3.2 konfigurasi Port Output........................................................................................... 30

Tabel 3.3 Fuzzy Rules Jalur Barat-Timur ................................................................................ 34

Tabel 3.4 Fuzzy Rules Jalur Utara Selatan .............................................................................. 34

Tabel 4.1 Tabel Pengujian Laser ............................................................................................. 37

Tabel 4.2 Tabel Pengujian LDR .............................................................................................. 38

Tabel 4.3 Tabel Pengujian ADC.............................................................................................. 39

Tabel 4.4 Tabel Pengujian LED .............................................................................................. 40

Tabel 4.5 Hasil Pengujian Fuzzy Logic Barat-Timur .............................................................. 41

Tabel 4.6 Hasil Pengujian Fuzzy Logic Utara-Selatan ............................................................ 41

xiv
DAFTAR PERSAMAAN

Persamaan 2.1 Persamaan Model Mamdani ............................................................................ 12

Persamaan 2.2 Persamaan Model Sugeno ............................................................................... 12

Persamaan 2.3 Persamaan Centroid Method ........................................................................... 12

Persamaan 2.4 Persamaan Mean-Max Method ........................................................................ 13

Persamaan 2.5 Persamaan Weighted Average ......................................................................... 13

Persamaan 3.1 Rumus Pembagi Tegangan pada LDR ............................................................ 28

Persamaan 3.2 Proses Defuzzifikasi Sistem ............................................................................ 35

xv
DAFTAR ISTILAH

Ground = Pentanahan
Hardware = Perangkat keras
Input = Masukan
Multimeter = Alat untuk mengukur arus dan tegangan.
Output = Keluaran
Port = Pintu gerbang untuk komunikasi perangkat
Prototype = Bentuk awal (contoh) atau standar ukuran dari sebuah entitas
Receiver = Penerima
Sensor = Peralatan yang digunakan untuk mengubah suatu besaran fisik
menjadi besaran listrik
Sismin = Sebuah rangkaian minimum agar dapat mengaktifkan kinerja
mikrokontroler
Skematik = Gambaran skema/denah rangkaian listrik
Software = Perangkat lunak
Tranciever = Perangkat yang terdiri dari pemancar dan penerima.
Transmitter = Pengirim/ pemancar

xvi
DAFTAR SINGKATAN

LDR = Light Dependent Resistor


LCD = Liquid Crystal Display
LED = Light Emitting Diode
ADC = Analog to Digital Converter

xvii
BAB I
PENDAHULUAN

1.1 Latar Belakang


Lampu lalu lintas adalah suatu sistem kendali yang terpasang pada persimpangan dengan
tujuan untuk mengatur pergerakan kendaraan. Akan tetapi dengan sistem penyalaan lampu
lalu lintas yang masih menggunakan pewaktuan tetap (fixed time traffic signal), masih
memungkinkan terjadinya kemacetan. Pewaktuan tetap selalu berjalan walaupun
pendistribusian kendaraan pada setiap jalur kurang merata. Jika pendistribusian kurang
merata, memungkinkan terjadi kemacetan pada titik-titik tertentu.
Kendali lampu lalu lintas otomatis (Actuated traffic signal) merupakan lampu lalu lintas
yang pewaktuannya didasarkan pada pendistribusian kendaraan setiap jalur. Saat ini teknologi
kendali lampu lalu lintas otomatis di Indonesia sudah berkembang cukup pesat akan tetapi
masih disayangkan belum semua persimpangan memiliki lampu lalu lintas otomatis. Untuk
mengatasi masalah tersebut, seharusnya dibuat lampu lalu lintas otomatis di setiap
persimpangan yang memiliki lampu lalu lintas, di mana lampu lalu lintas otomatis tersebut
dikontrol menggunakan logika fuzzy yang dapat mewakili pemikiran dari manusia dalam
melakukan pengendalian lampu lalu lintas. Masalah lainnya adalah lampu lalu lintas otomatis
yang sudah ada dan berkembang saat ini belum dapat diaplikasikan secara maksimal
dikarenakan masih menggunakan sensor kamera (image processing) yang harganya tergolong
mahal yakni 16 Milyar untuk sebuah proyek ITS-ATCS (Intelligent Transport System – Area
Traffic Control System) di Surabaya.[10]
Oleh karena itu dalam Tugas Akhir ini akan diterapkan sebuah sistem untuk mengatasi
permasalahan tersebut yaitu prototype sistem kendali rambu lalu lintas otomatis dengan logika
Fuzzy meggunakan laser dan LDR berdasarkan kepadatan kendaraan agar pendistribusian
kendaraan pada setiap simpang merata.

1
1.2 Tujuan
Tujuan akhir yang diharapkan dari Tugas Akhir ini adalah merancang dan
merealisasikan prototype sistem pengontrolan rambu lalu lintas dengan logika fuzzy
menggunakan laser dan LDR sebagai sensor berdasarkan kepadatan kendaraan.

1.3 Perumusan Masalah


Perumusan masalah yang akan diselesaikan adalah sebagai berikut:
1. Perancangan prototype sistem kendali rambu lalu lintas otomatis dengan logika fuzzy
menggunakan laser dan LDR.
2. Perancangan sensor, ADC dan mikrokontroler.
3. Pengujian alat.

1.4 Batasan Masalah


Batasan – batasan masalah yang digunakan pada Tugas Akhir ini adalah:
1. Persimpangan rambu lalu lintas merupakan persimpangan empat sisi.
2. Sensor yang digunakan adalah laser dan LDR dengan asumsi bahwa pejalan kaki tidak
berjalan di antara laser dan LDR.
3. Jenis kendali lampu lalu lintas yang digunakan adalah isolated traffic signal dan
actuated traffic signal.
4. Jenis jalan yang digunakan adalah jalan lokal skunder.
5. Jenis pengaturan gerakan pada simpang lalu lintas adalah mengizinkan pergerakan.
6. Pengujian dilakukan dalam sebuah prototype.
7. Parameter yang dianalisis adalah ketepatan sensor dalam menangkap benda yang
melintas mengolah informasi.
8. Bahasa program yang digunakan untuk memprogram mikrokontroler menggunakan
Bahasa C dan Code Vision AVR sebagai compiler.
9. Logika Fuzzy yang digunakan adalah logika fuzzy dengan metode Sugeno.

1.5 Metodologi Penulisan


Metodologi penyusunan Tugas Akhir ini adalah sebagai berikut :
1. Studi Literatur
2
Pengumpulan data-data untuk menunjang pengerjaan tugas akhir yang didapatkan dari
buku, jurnal ilmiah yang berkaitan dengan tugas akhir dan konsultasi dengan
pembimbing mengenai hasil yang sudah di teliti.
2. Perancangan dan Realisasi Alat
Membuat sistem yang diperlukan sebagai perangkat keras dan perangkat lunak.
3. Pengujian dan Analisis Sistem
Mengintegrasikan sistem antara perangkat keras dan perangkat lunak kemudian
melakukan pengujian antar perangkat dan analisis terhadap hasil yang diharapkan.

1.6 Sistematika Penulisan


Sistematika penulisan pada Tugas Akhir ini adalah sebagai berikut :
BAB I. PENDAHULUAN
Bab ini berisi uraian mengenai latar belakang pembuatan Tugas Akhir, tujuan dan
manfaat, perumusan masalah, batasan masalah, metode penulisan, dan sistematika
penulisan.
BAB II. DASAR TEORI
Bab ini membahas tentang dasar teori yang berkaitan dengan penyusunan Tugas Akhir.
BAB III. PERANCANGAN SISTEM
Bab ini membahas mengenai sistem kerja dan diagram alir proses perancangan alat pada
Tugas Akhir.
BAB IV. PENGUJIAN DAN ANALISIS
Bab pengujian dan analisi membahas hasil pengujian yang dilakukan pada perangkat
keras dan lunak yang dibuat.
BAB V. PENUTUP
Dalam bab ini berisi tentang kesimpulan dan saran dari pembuatan Tugas Akhir.

3
BAB II
DASAR TEORI

2.1 Lampu Lalu Lintas


Lampu lalu lintas adalah suatu alat kendali dengan menggunakan lampu yang terpasang
pada persimpangan dengan tujuan untuk mengatur pergerakan lalu lintas (termasuk pejalan
kaki) secara bergantian di pertemuan jalan. Lampu lalu lintas berfungsi untuk mengurangi
adanya konflik antara berbagai pergerakan lalu lintas dengan cara memisahkan pergerakan-
pergerakan tersebut dari segi ruang dan waktu. Dengan demikian, kapasitas pertemuan jalan
dan tingkat keselamatan pemakai jalan akan meningkat. Ada berbagai jenis kendali dengan
menggunakan lampu lalu lintas di mana pertimbangan ini sangat tergantung pada situasi dan
kondisi persimpangan yang ada. Berdasarkan cakupannya, jenis kendali dengan lampu lalu
lintas pada persimpangan dibedakan antara lain:
1. Lampu lalu lintas terpisah (isolated traffic signal) adalah lampu lalu lintas di mana
pengoperasiannya hanya didasarkan pertimbangan pada satu tempat persimpangan saja
tanpa mempertimbangkan simpang lain terdekat.
2. Lampu lalu lintas terkoordinasi (coordinated traffic signal) adalah lampu lalu lintas di
mana pengoperasiannya mencakup beberapa simpang yang terdapat pada suatu jalur
atau arah tertentu.
3. Lampu lalu lintas jaringan (networking traffic signal) adalah lampu lalu lintas di mana
pengoperasian lampu lalu lintas dalam perancangannya mencakup beberapa simpang
yang terdapat dalam suatu jaringan jalan dalam suatu kawasan.
Berdasarkan cara pengoperasiannya, jenis kendali lampu lalu lintas pada persimpangan
dibedakan menjadi antara lain:
1. Fixed time traffic signal adalah lampu lalu lintas di mana pengaturan waktunya tidak
mengalami perubahan.
2. Actuated traffic signal adalah lampu lalu lintas di mana pengaturan waktunya
mengalami perubahan dari waktu ke waktu sesuai dengan kedatangan kendaraan dari
kaki simpang.
Untuk mempercepat waktu siklus dan efesiensi penggunaan sinyal yang tinggi dengan
tetap berprinsip pada aspek keselamatan maka perlu dipikirkan mengalirkan beberapa arus lalu
4
lintas secara bersamaan. Terdapat tiga teknik untuk mengatur pergerakan, menurut metode
Webster yaitu:
1. Mengizinkan Pergerakan
Aplikasi dari mengizinkan pergerakan pada simpang berkaki empat adalah dengan
melepas arus lalu lintas dari dua arah yang berlawanan sedangkan kedua arah lainnya ditahan.
Kendaraan yang berjalan lurus mendapat prioritas untuk jalan terlebih dahulu dan kendaraan
yang hendak berbelok ke kanan harus menunggu kesempatan. Bila jumlah lajur hanya satu
maka kendaraan yang hendak belok kanan dapat berjalan menuju ke tengah persimpangan
untuk menunggu kesempatan sehingga kendaraan di belakangnya yang berjalan lurus tidak
terganggu.

Gambar 2.1 Arah Pergerakan Mengizinkan Pergerakan

2. Membatasi Pergerakan
Maksud dari membatasi pergerakan adalah dengan tidak mengizinkan belok kanan. Hal
ini diterapkan dengan pertimbangan arus lalu lintas yang belok kanan cukup besar sehingga
akan mengganggu arus kendaraan lurus dibelakangnya. Hal ini disebabkan ruang tengah
persimpangan sudah penuh dengan kendaraan belok kanan yang sedang menunggu
kesempatan jalan.

5
Gambar 2.2 Arah Pergerakan Membatasi Pergerakan

3. Memisahkan Pergerakan
Diterapkan pada simpang berkaki empat yang dilakukan dengan tiga tahapan :
a. Pemutusan Cepat (Early Cut Off)
Jika arus belok kanan pada suatu simpang cukup besar, maka cara yang dilakukan adalah
dengan melepas arus yang berlawanan arah secara bersamaan sedangkan yang belok kanan
ditahan terlebih dahulu. Tahap berikutnya arus dari arah lawan ditahan dan dilanjutkan dengan
melepas arus belok kanan sambil arus yang lurus pada simpang yang sama tetap diizinkan
berjalan. Tahapan pemutusan cepat dapat dilihat pada garis hijau pada Gambar 2.3.
b. Awal Yang Terlambat (Late Start)
Alternatif lain jika arus belok kanan pada kaki simpang cukup besar yaitu dengan cara
awal yang terlambat. Prinsip kerjanya adalah dengan melepas arus lurus dan belok kanan
terlebih dahulu dan menahan arus yang berlawanan arah. Setelah beberapa detik berjalan baru
arus dari arah lawan dilepas. Kelebihan cara awal yang terlambat adalah arus yang hendak
belok kanan dengan jumlah besar tidak perlu disediakan lajur khusus karena tidak akan terjadi
antrian kendaraan yang menunggu kesempatan untuk belok kanan. Tahapan awal yang
terlambat dapat dilihat pada garis biru pada Gambar 2.3.

6
Gambar 2.3 Arah Pergerakan Early Cut-off dan Late Start

c. Phase Khusus Belok Kanan


Metode ini diterapkan bilamana arus belok kanan untuk kedua kaki simpang cukup
besar, yakni dengan cara memberikan fase khusus untuk kendaraan belok kanan pada kedua
kaki simpang yang berlawanan.

Gambar 2.4 Arah Pergerakan Phase Khusus Belok Kanan


Jalan adalah prasarana transportasi darat yang meliputi segala bagian jalan, termaksud
bangunan pelengkap dan perlengkapannya yang diperuntukkan bagi lalu lintas, yang berada
pada permukaan tanah, di atas permukaan tanah, di bawah permukaan tanah dan/atau air, serta
diatas permukaan air, kecuali jalan kereta api, jalan lori, dan jalan kabel.

7
Jalan sebagai bagian prasarana transportasi mempunyai peran penting dalam bidang
ekonomi, sosial budaya, lingkungan hidup, politik, pertahanan dan keamanan, serta
dipergunakan untuk sebesar-besarnya untuk kemakmuran rakyat.
Sistem jaringan jalan terdiri atas sistem jaringan jalan primer dan sistem jaringan jalan
sekunder. Sistem jaringan jalan primer merupakan sistem jaringan jalan dengan peranan
pelayanan distribusi barang dan jasa untuk pengembangan semua wilayah tingkat nasional,
dengan menghubungkan semua simpul jasa distribusi yang berwujud pusat-pusat kegiatan.
Sistem jaringan sekunder adalah sistem jaringan dengan peranan pelayanan distribusi barang
dan jasa untuk masyarakat di dalam kawasan perkotaan.
Klasifikasi jalan umum menurut peran dan fungsinya terdiri atas:
1. Jalan Arteri
Jalan arteri adalah jalan umum yang berfungsi melayani angkutan utama dengan ciri
perjalanan jarak jauh, kecepatan rata-rata tinggi dan jumlah jalan masuk dibatasi secara
berdaya guna. Jalan arteri primer adalah jalan arteri dalam skala wilayah tingkat nasional.
Jalan ini menghubungkan jenjang kota kesatu dengan kota jenjang kedua. Persyaratan yang
harus dipenuhi adalah :
a. Kecepatan rencana > 60 km/jam.
b. Lebar badan jalan > 8,0 m.
c. Kapasitas jalan lebih besar dari volume lalu lintas rata-rata.
d. Tidak boleh terganggu oleh kegiatan lokal, lalu lintas lokal.
e. Jalan primer tidak terputus walaupun memasuki kota.
Jalan Arteri Skunder adalah jalan arteri dalam skala perkotaan. Jalan ini menghubungkan
kawasan primer dengan kawasan sekunder kesatu atau menghubungkan kawasan sekunder
kesatu dengan kawasan sekunder lainnya. Persyaratan yang harus dipenuhi adalah :
a. Kecepatan rencana > 30 km/jam.
b. Lebar jalan > 8,0 m.
c. Kapasitas jalan lebih besar atau sama dari volume lalu lintas rata-rata.
d. Tidak boleh diganggu oleh lalu intas lambat.
2. Jalan Kolektor
Jalan kolektor adalah jalan umum yang berfungsi melayani angkutan pengumpul atau
pembagi dengan ciri perjalanan jarak sedang, kecepatan rata-rata sedang dan jumlah masuk
8
dibatasi. Jalan kolektor primer adalah jalan kolektor dalam skala wilayah tingkat nasional.
Jalan ini menghubungkan antar kota kedua dengan jenjang kota kedua atau kota jenjang kesatu
dengan kota jenjang ketiga. persyaratan yang harus dipenuhi adalah:
a. Kecepatan rencana > 40 km/jam.
b. Lebar badan jalan > 7,0 m.
c. Kapasitas jalan lebih besar atau sama dengan volume lalu lintas rata-rata.
d. Tidak boleh diganggu oleh kegiatan lokal, lalu lintas lokal.
e. Jalan kolektor primer tidak terputus walaupun memasuki daerah kota.
Jalan kolektor skunder adalah jalan kolektor dalam skala perkotaan. Jalan ini
menhubungkan kawasan sekunder kedua dengan kawasan sekunder lainnya atau
menghubungkan kawasan sekunder kedua dengan kawasan sekunder ketiga. Persyaratan yang
harus dipenuhi adalah:
a. Kecepatan rencana > 20 km/jam.
b. Lebar jalan > 7,0 m.
3. Jalan Lokal
Jalan lokal adalah jalan umum yang berfungsi melayani angkutan setempat dengan ciri
perjalanan jarak dekat, kecepatan rata-rata rendah dan jumlah jalan masuk tidak dibatasi. Jalan
lokal primer adalah jalan lokal dalam skala wilayah tingkat nasional. Jalan ini
menghubungkan kota jenjang kesatu dengan persil atau kota jenjang kedua dengan persil.
Persyaratan yang harus dipenuhi adalah:
a. Kecepatan rencana > 20 km/jam.
b. Lebar badan jalan > 6,0 m.
c. Jalan lokal primer tidak terputus walaupun memasuki desa.
Jalan lokal sekunder adalah jalan lokal dalam skala perkotaan. Jalan ini menghubungkan
kawasan sekunder kesatu dengan perumahan atau kawasan sekunder kedua dengan
perumahan. Persyaratan yang harus dipenuhi adalah:
a. Kecepatan rencana > 10 km/jam.
b. Lebar jalan > 5,0 m.

9
4. Jalan Lingkungan
Jalan lingkungan adalah jalan umum yang berfungsi melayani angkutan lingkungan
dengan ciri perjalanan jarak dekat dan kecepatan rata-rata rendah. Jalan ini menghubungkan
antarpemukiman dalam desa. ciri-ciri jalan ini adalah:
a. Perjalanan jarak dekat.
b. Kecepatan rata-rata rendah.

2.2 Sistem Kontrol Fuzzy Logic [3]


Teori himpunan fuzzy logic pertama kali diperkenalkan oleh Prof. Lotfi A Zadeh pada
tahun 1965. Logika fuzzy muncul dikarenakan adanya fenomena-fenomena alam yang samar
dan tidak tepat di tinjau dari pikiran manusia. Di mana pernyataan tidak tepat 100% benar
ataupun 100% salah. Prof. Lotif Azadeh menyatakan bahwa true atau false dalam logika
Boolean tidak dapat mempresentasikan pernyataan yang bersifat samar seperti yang biasanya
terjadi di kehidupan nyata. Maka Prof. Lotif A Zadeh mengembangkan suatu teori yang
disebutnya fuzzy set.
Berikut rangkuman beberapa alasan menggunakan metode kontrol Fuzzy Logic :
1. Konsep Fuzzy Logic sangat sederhana sehingga mudah dipahami. Kelebihannya
dibanding konsep yang lain bukan pada kompleksitasnya, melainkan pada naturalness
pendekatannya dalam memecahkan masalah.
2. Fuzzy Logic adalah metode yang fleksibel, dalam arti dapat dibangun dan
dikembangkan dengan mudah tanpa harus memulainya dari nol.
3. Fuzzy Logic memberikan toleransi terhadap ketidakpresisian data. Hal ini cocok
dengan fakta sehari-hari. Segala sesuatu di alam ini relatif tidak presisi, bahkan meski
kita amati secara lebih dekat dan hati-hati. Maka dari itu, Fuzzy Logic dibangun dari
fakta tersebut.
4. Pemodelan untuk mencari hubungan data input-output dari sembarang sistem black-
box bisa dilakukan dengan menggunakan sistem fuzzy.
5. Pengetahuan atau pengalaman dari para pakar dapat dengan mudah dipakai untuk
membangun Fuzzy Logic. Hal ini merupakan kelebihan utama Fuzzy Logic dibanding
JST. Jika kita menggunakan Fuzzy Logic, pengetahuan manusia dapat relatif lebih
mudah dilibatkan dalam pemodelan sistem fuzzy.
10
6. Fuzzy Logic dapat diterapkan dalam desain sistem kontrol tanpa harus menghilangkan
teknik desain sistem kontrol.
7. Fuzzy Logic berlandaskan pada bahasa manusia. Sehingga lebih mudah dipahami dan
dimengerti.
Dalam logika fuzzy terdapat tiga jenis proses yang saling berkaitan, yakni fuzzyfication,
rule inference dan deffuzyfication. Untuk penjelasan masing – masing proses, dijelaskan pada
sub bab di bawah ini:
1. Fuzzyfication
Fuzzyfication merupakan proses pemetaan nilai-nilai input (crisp input) yang berasal dari
sistem yang dikontrol (besaran non fuzzy) kedalam bentuk himpunan fuzzy menurut fungsi
keanggotaannya. Besaran inilah yang nantinya akan diolah secara fuzzy pada proses
berikutnya. Dalam representasi fungsi keanggotaan himpunan input, digunakan kurva segitiga
dan kurva trapesium. Untuk menentukan derajat keanggotaan dari masing-masing input, dapat
dilihat pada Gambar 2.5 (a) dan Gambar 2.5 (b).

Gambar 2.5 (a) Representasi Kurva Segitiga

Gambar 2.5 (b) Representasi Kurva Trapesium

2. Rules evaluation / Inference


Pada tahap ini diproses hubungan antara nilai-nilai input (crisp input) dan nilai-nilai
output (crisp output) yang dikehendaki dengan aturan-aturan tertentu. Dari aturan-aturan yang

11
dibentuk inilah yang nantinya akan menentukan respon dari sistem terhadap berbagai kondisi
setting point dan gangguan yang terjadi pada sistem.
Terdapat dua model aturan fuzzy yang biasanya dipakai dalam berbagai aplikasi, yakni:
a. Model Mamdani
Pada model Mamdani ini, aturan fuzzy didefinisikan sebagai:
IF X1 is A1 AND ….. AND Xn is An then y is B 2.1
Di mana A1, …, An, dan B adalah nilai linguistic (fuzzy set) dan “X1 dan A”
menyatakan bahwa nilai variabel X1 adalah anggota fuzzy set dari A1.
b. Model Sugeno
Model ini dikenal juga sebagai Takagi-Sugeno-Kang (TSK) model, yaitu suatu model
yang merupakan varian dari model Mamdani. Model ini menggunakan aturan yang berbentuk:
IF X1 is A1 AND … AND Xn is An THEN y = f (X1,…,Xn)
Di mana f merupakan sembarang fungsi dari variabel-variabel input yang nilainya
berada dalam interval variabel input. Biasanya, fungsi ini dibatasi dengan menyatakan f
sebagai kombinasi linier dari variabel-variabel input:
F (X1,…,Xn) = Wo=W1.X1+……+Wn.Xn 2.2
Di mana Wo, W1, …., Wn merupakan konstanta yang berupa bilangan real yang
merupakan suatu bagian dari spesifikasi aturan fuzzy.
3. Defuzzyfication
Pada tahap ini dilakukan pemetaan bagi nilai-nilai fuzzy output yang dihasilkan pada
tahap rules evaluation ke nilai-nilai output kuantitatif sesuai dengan sistem yang diharapkan.
Ada beberapa metode dalam defuzzyfication, beberapa metode yang biasanya dipakai adalah:
a. Centroid Method
Metode ini merupakan metode paling penting diantara semua metode yang ada. Metode
ini menghitung nilai crisp menggunakan rumus:

Di mana y* merupakan nilai crisp. Fungsi integrasi dapat diganti dengan fungsi
penjumlahan jika y bernilai diskrit, sehingga menjadi:

2.3

12
Di mana y adalah nilai crisp dan merupakan derajat keanggotaan dari y.
b. Height Method
Metode ini dikenal sebagai prinsip keanggotaan maksimum karena metode ini secara
sederhana memiliki nilai crisp dengan derajat keanggotaan maksimum. Oleh karena itu
metode ini hanya bisa dipakai untuk fungsi keanggotaan yang hanya memiliki derajat
keanggotaan 1 pada suatu nilai crisp tunggal dan 0 pada semua nilai crisp yang lain
(singleton).
c. First (or last) of Maxima
Metode ini merupakan metode generalisasi dari height method. Metode ini digunakan
untuk kasus di mana fungsi keanggotaan output memiliki lebih dari satu nilai maksimum.
Sehingga nilai crisp yang dipakai adalah dengan mengambil salah satu nilai yang dihasilkan
dari maksimum pertama atau dari maksimum terakhir (tergantung dari sistem yang
diinginkan).
d. Mean-Max Method
Metode ini merupakan metode pengembangan dari metode height method. Metode ini
dipakai dalam kondisi di mana terdapat lebih dari satu nilai crisp yang memiliki derajat
keanggotaan maksimum. Sehingga didefinisikan sebagai titik tengah antara nilai crisp
terbesar dan nilai crisp terkecil:
2.4

Di mana m adalah nilai crisp terkecil dan M adalah nilai crisp terbesar.
e. Weighted Average
Metode ini mengambil rata-rata dengan menggunakan nilai derajat keanggotaan.
Sehingga didefinisikan sebagai:

2.5

Di mana y adalah nilai crisp dan adalah derajat keanggotaan dari nilai crisp y.

[1]
2.3 Sistem Minimum Mikrokontroler ATMega 32
Mikrokontroler adalah IC yang dapat diprogram berulang kali, baik ditulis atau dihapus
(Agus Bejo, 2007). Biasanya digunakan untuk pengontrolan otomatis dan manual pada
perangkat elektronika. Mikrokontroler Atmeg32 merupakan mikrokontroler keluarga AVR

13
dari ATMEL yang menggunakan arsitektur RISC(Reduce Instruction Det Computer) di mana
program berjalan lebih cepat karena hanya membutuhkan satu siklus clock untuk
mengeksekusi program dan mempunyai lebar bus data 8 bit.
ATmega32 memiliki fitur sebagai berikut: 32K bytes In-System Programmable Flash
dengan kemampuan Read-While-Write , 1024 bytes EEPROM, 2K byte SRAM, 32 fungsi
umum I/O, 32 general purpose working registers, tiga buah Timer/Counters, internal dan
eksternal interuppt, serial programmable USART, satu byte oriented Two-wire Serial
Interface, 10-bit ADC, Watchdog Timer yang dapat diprogram dengan Internal Oscillator, SPI
serial port, serta memiliki enam pilihan power saving mode.
Konfigurasi pin ATmega32 dengan kemasan 40 pin DIP (Dual Inline Package).
Penjelasan fungsi pin AVR ATmega32 adalah sebagai berikut:
1. PA0-PA7 : Port A merupakan port I/O 8-bit bi-directional
2. PB0-PB7 : Port B merupakan port I/O 8-bit bi-directional
3. PC0-PC7 : Port C merupakan port I/O 8-bit bi-directional
4. PD0-PD7 : Port D merupakan port I/O 8-bit bi-directional
5. VCC : power supply
6. GND : ground
7. RESET : reset input. Kondisi logika low ‘0’ lebih dari 50ns pada pin ini akan membuat
mikrokontroler masuk ke dalam kondisi reset
8. XTAL1 : input bagi inverting oscillator amplifier dan input bagi clock internal
9. XTAL2 : output inverting oscillator amplifier
10. AVCC : pin power supply untuk port A dan A/D converter. AVCC harus dihubungkan
dengan VCC eksternal jika tidak digunakan sebagai ADC. Akan tetapi jika digunakan
sebagai ADC, maka harus dihubungkan dengan VCC yang dilewati oleh low-pass
filter
11. AGND : ground analog (ADC)
12. AREF : referensi analog untuk ADC

14
Gambar 2.6 Konfigurasi Pin Atmega 32

Gambar 2.7 Skematik Rangkian Sistem Minimum


Untuk melakukan fungsinya chip mikrokontroler membutuhkan sebuah rangkaian sistem
minimum. Gambar 2.7 merupakan rangkaian skematik sistem minimum yang dirancang.
Rangkaian sistem minimum tersebut terdiri dari bagian-bagian sebagai berikut:
1. Rangkaian Pembangkit Clock
Rangkaian ini berfungsi membangkitkan sinyal clock untuk menjalankan
mikrokontroler. Mikrokontroler sebenarnya mempunyai generator clock internal yang
berfungsi sebagai sumber clock, tetapi masih diperlukan rangkaian tambahan untuk
membangkitkan clock yaitu berupa osilator kristal dan kapasitor. Karena membutuhkan
eksekusi program yang relatif cepat, maka nilai frekuensi osilator kristal (foc) yang digunakan
pada perancangan ini adalah sebesar 11.0592 MHz.

15
Gambar 2.8 Skematik Rangkaian Pembangkit Clock

2. Rangkaian Reset
Rangkaian reset berfungsi memberikan pulsa masukan dalam selang waktu 2 siklus
mesin pada saat sistem mendapatkan catudaya pertama kali. Masukan reset (pin 20) sendiri
adalah active low. Ketika pin reset diset rendah maka mikrokontroler akan reset ke state
power-on (saat mikrokontroler mendapat power pertama kali).

Gambar 2.9 Skematik Rangkaian Reset

3. Rangkaian ISP
Untuk memasukan sebuah program ke dalam chip mikrokontroler dibutuhkan rangkaian
In System Programming. Rangkaian ini terhubung ke port MISO, MOSI, dan SCK
mikrokontroler. Rangkaian ini juga dilengkapi sebuah LED sebagai indikator bila terjadi
kesalahan pada pemasangan USB downloader program ke sistem minimum.

Gambar 2.10 Skematik Rangkaian ISP

16
4. Rangkaian Regulator Tegangan Catu Daya Sistem Minimum
Mikrokontroler ATMega32 bekerja pada tegangan catudaya 5 Volt DC. Jadi dibutuhkan
rangkaian regulator untuk menghasilkan catudaya 5 Volt DC. Regulator yang digunakan
adalah IC LM2576-5V. Skematik rangkaiannya dapat dilihat pada Gambar 2.11.

=
Gambar 2.11 Skematik Rangkaian Regulator Sistem Minimum

2.4 Sensor
[12]
2.4.1 LDR
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. Light Dependent Resistor,
terdiri dari sebuah cakram semikonduktor yang mempunyai dua buah elektroda pada
permukaannya. Pada saat gelap atau cahaya redup, bahan dari cakram tersebut menghasilkan
elektron bebas dengan jumlah yang relatif kecil. Sehingga hanya ada sedikit elektron untuk
mengangkut muatan elektrik. Artinya pada saat cahaya redup LDR menjadi konduktor yang
buruk, atau bisa disebut juga LDR memiliki resistansi yang besar pada saat gelap atau cahaya
redup.

Gambar 2.12 LDR (Light Dependent Resistor)


Pada saat cahaya terang, ada lebih banyak elektron yang lepas dari atom bahan semikonduktor
tersebut. Sehingga akan ada lebih banyak elektron untuk mengangkut muatan elektrik. Artinya

17
pada saat cahaya terang LDR menjadi konduktor yang baik, atau bisa disebut juga LDR
memiliki resistansi yang kecil pada saat cahaya terang.

[11]
2.4.2 Laser Diode
Laser (singkatan dari bahasa Inggris: light amplification by stimulated emission of
radiation) merupakan mekanisme suatu alat yang memancarkan radiasi elektromagnetik
melalui proses emisi spontan. Berkas laser umumnya sangat koheren, yang mengandung arti
bahwa cahaya yang dipancarkan tidak menyebar dan rentang frekuensinya sempit. Laser
merupakan bagian khusus dari sumber cahaya. Sebagian besar sumber cahaya, emisinya tidak
koheren, spektrum frekuensinya lebar, dan phasenya bervariasi terhadap waktu dan posisi.
Daerah kerja perangkat laser tidak terbatas pada spektrum cahaya tampak saja tetapi dapat
bekerja pada daerah frekuensi yang luas, Oleh karena itu, perangkat tersebut dapat berupa
laser infa red, laser ultra violet, laser x-ray, atau laser visible.

2.5 Display
2.5.1 LED [13]
LED atau singkatan dari light emitting diode adalah salah satu komponen elektronika
yang terbuat dari bahan semi konduktor jenis dioda yang mempu mengeluarkan cahaya.
Strukturnya juga sama dengan dioda, tetapi pada LED elektron menerjang sambungan P-N
(Positif-Negatif). Untuk mendapatkan emisi cahaya pada semikonduktor, doping yang pakai
adalah galium, arsenic dan phosporus. Jenis doping yang berbeda menghasilkan warna cahaya
yang berbeda pula. LED memiliki dua kaki yang terbuat dari sejenis kawat. Kawat yang
panjang adalah anoda, sedangkan kawat yang pendek adalah katoda. Coba perhatikan bagian
dalam LED, akan terlihat berbeda antara kiri dan kanannya. Yang ukurannya lebih besar
adalah katoda, atau yang mempunyai panjang sisi atas yang lebih besar adalah katoda. Anoda
adalah elektroda, bisa berupa logam maupun penghantar listrik lainnya pada sel elektrokimia
yang terpolarisasi jika arus mengalir ke dalamnya. Arus listrik mengalir berlawanan dengan
arah pergerakan elektron. Katoda merupakan kebalikan dari anoda. Katoda adalah elektroda
dalam sel elektrokimia yang terpolarisasi jika arus listrik mengalir keluar darinya.

18
Gambar 2.13 LED (Light Emitting Diode)

[9]
2.5.2 LCD
LCD (liquid crystal display) merupakan suatu jenis media tampil yang menggunakan
kristal cair sebagai penampil utama. LCD 16x2 terdiri dari 2 baris dan setiap baris terdiri dari
16 kolom. Gambar 2.15 menunjukkan LCD 16x2 dan Tabel 2.1 menunjukkan konfigurasi Pin
LCD 16x2. LCD memiliki berbagai macam fungsi yaitu:
1. Mengetahui hasil suatu proses.
2. Memonitoring suatu proses.
3. Menampilkan pesan.

Gambar 2.14 LCD (Liquid Cristal Display)

Tabel 2.1 Konfigurasi Pin LCD


Pin No. Simbol Deskripsi
1 VSS GROUND
2 VCC POWER SUPPLY FOR LOGIC CIRCUIT
3 VEE LCD CONTRAST ADJUSMENT
4 RS INSTRUCTION/DATA REGISTER SELECTION
5 R/W READ/WRITE SELECTION

19
6 E ENABLE SIGNAL
7 DB0
8 DB1
9 DB2
10 DB3
11 DB4 DATA INPUT/OUTPUT LINES
12 DB5
13 DB6
14 DB7
15 LED+ SUPPLY VOLTAGE FOR LED+
16 LED- SUPPLY VOLTAGE FOR LED-

2.6 Bahasa C
Bahasa pemrograman C dibuat pada tahun 1972 oleh Dennis Ritchie di Bell Telephone
Laboratories. Bahasa C luas digunakan untuk pemrograman berbagai jenis perangkat,
termasuk mikrokontroler. Beberapa kunggulan bahasa C adalah sebagai berikut:
1. Bahasa C tersedia hampir di seluruh jenis computer
2. Kode bahasa C sifatnya adalah portable
3. Bahasa C hanya menyediakan sedikit kata kunci.
4. Proses executable program bahasa C lebih cepat
5. Dukungan pustaka yang banyak
6. C adalah bahasa yang terstruktur
Struktur Bahasa Pemrograman C
<preprosesor directive>
{
<statement>;
<statement>;
}
Penjelasan:
1. Header File

20
Adalah berkas yang berisi prototype fungsi. definisi konstanta. dan definisi variable.
Fungsi adalah kumpulan code C yang diberi nama dan ketika nama tersebut dipanggil maka
kumpulan kode tersebut dijalankan.
Contoh :
stdio.h
2. Preprosesor Directive
Preprosesor directive adalah bagian yang berisi pengikutsertaan file atau berkas berkas
fungsi maupun pendefinisian konstanta.
Contoh:
#include <stdio.h>
#include phi 3.14
3. Void
Artinya fungsi yang mengikutinya tidak memiliki nilai kembalian (return).
4. Main ( )
Fungsi main ( ) adalah fungsi yang pertama kali dijalankan ketika program dieksekusi.
tanpa fungsi main suatu program tidak dapat dieksekusi akan tetapi dapat dikompilasi.
5. Statement
Statement adalah instruksi atau perintah kepada suatu program ketika program itu
dieksekusi untuk menjalankan suatu aksi. Setiap statement diakhiri dengan titik-koma (;).

2.7 LM339
Komparator adalah salah satu aplikasi dari op-amp (operational amplifier), di mana
memiliki fungsi membandingkan besar dua potensial yang diberikan.

Va -
Vout
Vb +
Gambar 2.15 Simbol Komparator
Cara kerja dari piranti komparator adalah membandingkan beda potensial yang diberikan pada
input terminal Va (-) dan Vb (+). Jika tegangan Va > Vb maka Vout = 0, jika tegangan Va <

21
Vb atau Va = Vb maka Vout = 1. Bentuk fisik IC (Integrated Circuit) dari komparator LM339
adalah sebagai berikut :

Gambar 2.16 Pin Out LM339


IC komparator yang digunakan adalah LM339 dengan konfigurasi pinout tampak seperti
pada gambar di atas. Didalam kemasan IC LM339 terdapat 4 modul komparator sekaligus.
Dengan demikian memudahkan kita untuk melakukan ekspansi.

22
BAB III
MODEL DAN PERANCANGAN SISTEM

Berdasarkan cara pengoperasiannya, lampu lalu lintas ini berjenis actuated traffic signal.
Lama pewaktuan lampu lalu lintas berdasarkan kepadatan kendaraan. Lampu lalu lintas ini
memiliki 3 sensor pada setiap sisi yang disusun secara array. Sensor-sensor tersebut berguna
untuk menghitung kepadatan pada setiap jalur. Logika fuzzy digunakan untuk menentukan
lama waktu penyalaan lampu lalu lintas ini. Kepadatan pada jalur barat dan timur merupakan
input untuk LED barat dan timur. Kepadatan pada jalur utara dan selatan mepupakan input
untuk LED utara dan selatan. Gambar 3.1 merupakan gambaran bentuk dari prototype yang
dirancang.

Gambar 3.1 Skema Sistem


Untuk pengaturan gerak kendaraan, persimpangan ini mengadopsi jenis persimpangan
‘mengizinkan pergerakan’, di mana arah gerak kendaraan tidak dibatasi. Jenis persimpangan
yang digunakan adalah lampu lalu lintas terpisah. Pada jenis ini, persimpangan lampu lalu
lintas tidak didasarkan pada persimpangan lampu lalu lintas lainnya.
23
3.1 Blok Diagram Sistem

5 volt

3,3 volt MIKROKONTROLLER LCD


LASER LDR ADC ATMega32
LED

Gambar 3.2 Diagram Blok Sistem


Blok-blok penyusun dari sistem adalah sebagai berikut:
1. Blok catu daya
Blok ini berfungsi sebagai sumber tegangan untuk mikrokontroler, LCD, LED, ADC,
LDR dan laser. Untuk kebutuhan perangkat keras tersebut, membutuhkan catuan sebesar 5
volt kecuali laser yang membutuhkan catuan sebesar 3,3 volt. Catuan 5 volt didapat langsung
dari adapter 5 volt. Catuan 3,3 volt didapat dari menurunkan nilai 5 volt menjadi 3,3 volt
dengan menggunakan regulator LM317.
2. Blok sensor
Blok ini berfungsi untuk memberikan data ke blok ADC untuk diproses. Komponen
yang memberikan data dalam sistem ini adalah Laser sebagai transmitter dan LDR sebagai
receiver.
3. Blok ADC
Blok ini berfungsi untuk mengubah besaran analog menjadi digital agar dapat dibaca
oleh mikrokontroler. Cara kerjanya adalah dengan membandingkan tegangan input dan
tegangan referensi lalu mengeluarkannya dalam bentuk digital. Blok ini juga disebut sebagai
‘jembatan’ dari sistem kendali digital. Komponen yang berfungsi sebagai ADC adalah
LM339.
4. Blok pengontrol
Blok ini berfungsi sebagai penerima data dari ADC dan mengolahnya secara digital dan
mengeluarkan hasil dari data yang diterima ke output. Blok ini terdiri dari chip mikrokontroler
yang merupakan komponen utama.
5. Blok output
Blok ini berfungsi untuk menampilkan output dari sistem. Komponen pada blok output
ini adalah LED dan LCD.
24
3.2 Flowchart of System

Gambar 3.3 Flowchart Sistem

25
Flowchart pada sistem dijelaskan sebagai berikut:
1. Saat sistem ini dimulai, mikrokontroler akan menginisialisasi LDR dengan mendeteksi
kendaraan. Jika terdapat kendaraan di b3 atau t3 atau u3 atau s3, sistem akan
melanjutkan ke tahap decision kedua. Jika tidak, maka lampu kuning akan berkedip
setiap satu detik dan menampilkan di LCD bahwa tidak ada kendaraan terdeteksi.
2. Pada tahap decision kedua, mikrokontroler mendeteksi kendaraan berasal dari jalur
barat atau dari jalur timur. Jika iya, maka mikrokontroler akan menghitung jumlah
kendaraan yang terdapat pada jalur barat dan jalur timur. Mikrokontroler akan
menghitung lama penyalaan waktu lampu hijau jalur barat dan jalur timur dengan
logika fuzzy. Pembahasan tentang logika fuzzy tentang kepadatan kendaraan akan
dibahas pada sub Bab 3.4.
3. Data dari LDR pada jalur barat dan jalur timur yang diperoleh selanjutnya menjadi
data input untuk proses fuzzifikasi. Dalam proses ini nilai crisp input diubah menjadi
himpunan keanggotaan. Dalam proses fuzzy inference terjadi penalaran himpunan
keanggotaan yang sudah diperoleh terhadap fuzzy rules yang sudah dibuat untuk
mencari fuzzy output. Fuzzy output yang sudah diperoleh selanjutnya akan diubah
kembali dalam nilai crisp dalam proses defuzzifikasi.
4. Hasil defuzzifikasi tersebut akan ditampilkan di LCD bersama dengan himpunan
keanggotaan dari jalur barat dan jalur timur yang terdeteksi. Hasil defuzzifikasi
tersebut merupakan lama penyalaan lampu hijau pada jalur barat dan jalur timur. Pada
kondisi ini, lampu hijau jalur barat dan jalur timur akan menyala, sebaliknya lampu
merah pada jalur utara dan jalur selatan akan menyala.
5. Hasil defuzifikasi yang ditampilkan tersebut, akan menghitung mundur sampai angka
0. Setelah itu lampu kuning akan menyala selama 3 detik. Tahap selanjutnya sama
seperti tahap jika decision kedua tidak terpenuhi.
6. Jika tahap decision kedua tidak terpenuhi, mikrokontroler mendeteksi kendaraan dari
jalur utara atau jalur selatan. Selanjutnya mikrokontroler akan menghitung jumlah
kendaraan di jalur utara dan jalur selatan. Mikrokontroler akan menghitung lama
penyalaan waktu lampu hijau untuk jalur utara dan jalur selatan dengan logika fuzzy.
7. Data dari LDR pada jalur utara dan jalur selatan yang diperoleh selanjutnya menjadi
data input untuk proses fuzzifikasi. Dalam proses ini nilai crisp input diubah menjadi
26
himpunan keanggotaan. Dalam proses fuzzy inference terjadi penalaran himpunan
keanggotaan yang sudah diperoleh terhadap fuzzy rules yang sudah dibuat untuk
mencari fuzzy output. Fuzzy output yang sudah diperoleh selanjutnya akan diubah
kembali dalam nilai crisp dalam proses defuzzifikasi.
8. Hasil defuzzifikasi tersebut akan ditampilkan di LCD bersama dengan himpunan
keanggotaan dari jalur utara dan jalur selatan yang terdeteksi. Hasil defuzzifikasi
tersebut merupakan lama penyalaan lampu hijau pada jalur utara dan jalur selatan.
Pada kondisi ini, lampu hijau jalur utara dan jalur selatan akan menyala, sebaliknya
lampu merah pada jalur barat dan jalur timur akan menyala.
9. Hasil defuzifikasi yang ditampilkan tersebut, akan menghitung mundur sampai angka
0. Setelah itu lampu kuning akan menyala selama 3 detik.
10. Pada tahap decision terakhir, sistem mendeteksi saklar masih hidup atau tidak. Jika iya,
sistem kembali ke tahap decision kedua. Jika tidak, sistem akan stop.

3.3 Perancangan Perangkat Keras


Perancangan ini mecakup perancangan skematik rangkaian elektronik dan bentuk
mekanik alat. Akan tetapi perancangan adapter 5 Volt secara lebih detail tidak dibahas karena
perancangan dari adapter 5 Volt tidak diubah dari hasil rancangan pabrik. Untuk perancangan
perangkat keras sistem dijelaskan sebagai berikut.

3.3.1 Blok Catu daya


Rangkaian ini merupakan rangkaian pencatu tegangan utama dari semua blok sistem.
Rangkaian ini terdiri dari komponen-komponen seperti adapter 5 Volt dan regulator 3,3 Volt.
Adapter 5 Volt yang berfungsi menurunkan tegangan dari PLN sebesar 220 volt AC/50 Hz
menjadi 5 Volt DC/2A. Adapter ini mencatu mikrokontroler yang selanjutnya mencatu
komponen-komponen lain. Regulator 3,3 Volt berfungsi menurunkan tegangan dari 5 Volt ke
3,3 Volt. Regulator ini digunakan untuk mencatu laser. Regulator yang digunakan adalah tipe
LM317.

3.3.2 Sensor
Laser diode dirancang sebagai transmitter dan LDR sebagai receiver.
27
1. Laser diode berfungsi untuk memberikan cahaya ke LDR. Apabila laser terhalang oleh
suatu objek, maka LDR tidak menerima cahaya. Penjelasan tentang spesifikasi Laser
Diode yang digunakan adalah sebagai berikut:
a. Spot mode: dot facula, continuous output
b. Laser wavelength: 650nm (red)
c. Light power: < 5mW
d. Supply voltage: 3VDC
e. Operating Current: <40 mA
f. Operating temperature: -36~65 (˚C)
2. LDR berfungsi sebagai penerima sinar dari laser diode dan mengeluarkan data analog
berupa tegangan. Data ini merupakan acuan utama dari sistem. Resistansi pada LDR
akan berubah jika menerima cahaya. Range resistansi pada LDR adalah 10 ohm - 250
kOhm. Jika LDR menerima cahaya dengan intensitas yang tinggi maka resistansinya
akan mendekati 3 Ohm. Jika menerima cahaya dengan intensitas yang rendah maka
resistansinya akan mendekati 250 kOhm. Skematik rangkaian dapat dilihat di Gambar
3.4.

Gambar 3.4 Skematik Rangkaian LDR


Agar menghasilkan nilai pada output, maka digunakan prinsip pembagi tegangan.
Vo = (R2/(R1+R2)) x Vcc 3.1

3.3.3 ADC
Sistem ini membutuhkan 12 ADC dikarenakan terdapat 12 output dari LDR.
Mikrokontroler hanya mempunyai 8 buah port ADC, oleh karena itu dibutuhkan 3 buah
LM339. LM339 diberi resistor pull-up agar dapat dibaca oleh mikrokontroler dalam bentuk

28
digital (0 dan 1). Resistor pull-up yang diberikan sebesar 1 kOhm. Untuk lebih jelas, Gambar
3.5 menunjukkan skematik dari LM339.

Gambar 3.5 Skematik LM339


Vin didapat dari output LDR, Vref yang digunakan adalah tegangan dari regulator 3,3
Volt. Jika Vin > Vref, maka Vout menunjukkan logika 0. Jika Vin <= Vref, maka Vout
mengeluarkan logika 1.

3.3.4 Rangkaian Sistem Minimum Mikrokontroler


Sistem ini membutuhkan memori program yang cukup besar, maka chip mikrokontroler
yang cocok digunakan untuk perancangan kali ini adalah ATMega32. Mikrokontroler seri ini
memiliki memori flash yang cukup besar yaitu 32k byte. Dalam perancangan kali ini,
digunakan 12 pin input dan 4 buah port output. Untuk penggunaan port pada mikrokontroler
lebih lanjut dapat dilihat di Tabel 3.1 dan Tabel 3.2.
Tabel 3.1 Konfigurasi Pin Input
JALUR PIN
TIMUR 1 PINB.0
TIMUR 2 PINB.1
TIMUR 3 PINB.2
BARAT 1 PIND.4
BARAT 2 PIND.5
BARAT 3 PIND.6
UTARA 1 PINB.4
UTARA 2 PINB.5
UTARA 3 PINB.6
SELATAN 1 PIND.0
SELATAN 2 PIND.1
SELATAN 3 PIND.2

29
Tabel 3.2 Konfigurasi Port Output
OUTPUT LED PORT
MERAH UTARA-SELATAN PORTA.0
KUNING UTARA-SELATAN PORTA.2
HIJAU UTARA-SELATAN PORTA.4
MERAH BARAT-TIMUR PORTA.1
KUNING BARAT-TIMUR PORTA.3
HIJAU BARAT-TIMUR PORTA.5

3.3.5 Output
Output yang digunakan pada sistem ini adalah LED dan LCD.
1. LED pada sistem ini sebagai indikator bagi kandaraan untuk stop (merah), siap-siap
(kuning) atau jalan (hijau). Setiap jalur terdapat 3 LED yang disusun pararel ke bawah.
LED yang digunakan adalah active high di mana jika diberi input 1, maka LED akan
menyala. Skematik Untuk LED satu jalur pada sistem dapat dilihat di Gambar 3.6.

Gambar 3. 6 Skematik Rangkaian LED


2. LCD yang dihubungkan ke port c ini berfungsi untuk menampilkan indikator keadaan
di jalan. Indikator tersebut adalah jumlah kendaraan di barat dan timur, jumlah
kendaraan di utara dan selatan dan lama penyalaan waktu lampu hijau. Gambar 3.7
menampilkan salah satu contoh indikator dari sistem. Jumlah kendaraan di barat dan
timur, diindikasikan dengan karakter ‘B T’. Jumlah kendaraan di utara dan selatan,
diindikasikan dengan karakter ‘U S’. Lama penyalaan lampu waktu hijau,
diindikasikan ‘Hijau’.

30
Gambar 3.7 LCD Saat Menampilkan Indikator

3.3.6 Bentuk Realisasi Alat

Gambar 3.8 Bentuk Realisasi Alat


Untuk merealisasikan alat ini, skala yang digunakan adalah 1:100. Alat ini mempunyai
dimensi 70cm x 70cm. setiap jalur memiliki 3 sensor yang dipasang dengan jarak 10cm.
Panjang jalur memiliki panjang kurang lebih 25 cm, jadi dapat mendeteksi mobil sebanyak 5
buah yang memiliki panjang kurang lebih 4 cm. Setiap sistem fuzzy memiliki 2 sisi jalan yang
berlawanan arah. Lebar jalan pada realisasi ini adalah 7 cm dengan asumsi jalan yang
digunakan adalah jalan “lokal sekunder”.

3.4 Perancangan perangkat lunak


Perancangan perangkat lunak pada sistem ini menggunakan bahasa pemograman C yang
selanjutnya dimasukkan ke dalam mikrokontroler. Metode yang digunakan dalam sistem
kontrol ini adalah logika fuzzy dengan metode Sugeno. Pada sistem ini terdapat 2 sistem fuzzy
yang digunakan, fuzzy ‘barat-timur’ dan fuzzy ‘utara-selatan’. Fuzzy ‘barat-timur’ digunakan

31
untuk menghitung lama penyalaan lampu hijau pada jalur barat dan timur dengan input
kepadatan pada masing-masing jalur. Fuzzy utara selatan digunakan untuk menghitung lama
penyalaan lampu hijau pada jalur utara dan selatan dengan input kepadatan pada masing-
masing jalur. Untuk merealisasikan program ini, dibutuhkan beberapa tahapan proses. Tahap-
tahap itu adalah:
1. Proses Fuzzifikasi
Dalam proses ini input crisp dari sensor dibagi menjadi beberapa himpunan keanggotaan
dengan nilai derajat keanggotaan dari 0 sampai 1. Terdapat 2 buah input pada setiap sistem
fuzzy. Masing-masing dari input tersebut mempunyai 3 himpunan keanggotaan, yaitu tidak
padat (tp), normal (n), padat (p). Untuk merepresetasikan himpunan keanggotaan tersebut,
digunakan 1 fungsi keanggotaan segitiga, dan 2 fungsi keanggotaan trapesium. Membership
function yang digunakan bernilai 0 – 7. Nilai membership function dari tidak padat adalah 0 –
2, nilai membership function dari normal adalah 4 dan nilai membership function dari padat
adalah 6 – 7.

Gambar 3.9 Fungsi Keanggotaan Himpunan Jalur Barat

Gambar 3.10 Fungsi Keanggotaan Himpunan Jalur Timur

32
Gambar 3.11 Fungsi Keanggotaan Himpunan Jalur Utara

Gambar 3.12 Fungsi Keanggotaan Himpunan Jalur Selatan


Nilai fuzzy input (0-7) dalam membership function didapat dengan mengkonversi nilai
crisp input tersebut. Jika dilihat pada Gambar 3.8, sensor-sensor pada setiap jalur memiliki
inisialisasi angka yang menentukan posisi dari sensor, sebagai contoh: b1 (jalur barat, sensor
terdepan), s3 (jalur selatan, sensor terbelakang), u2 (sensor utara, sensor ditengah). Untuk
mengkonversi nilai input pada LDR, kita dapat mengalikan nilai yang terbaca dari sensor
terdepan dengan angka 1, sensor ditengah dengan angka 2, sensor ditengah dengan angka 4.
Selanjutnya nilai-nilai dari sensor yang terbaca ditambahkan agar menghasilkan fuzzy input.
2. Proses Inference
Proses inference merupakan proses penalaran menggunakan himpunan keanggotaan
fuzzy yang sudah diperoleh dan fuzzy rules yang telah ditentukan untuk mencari fuzzy output.
Metode yang digunakan pada perancangan ini adalah metode sugeno. Secara sintaks, fuzzy
rule dituliskan sebagai berikut: IF X1 is A1 AND … AND Xn is An THEN y = f (X1,…,Xn),
di mana f merupakan sembarang fungsi dari variabel-variabel input yang nilainya berada
dalam interval variabel input. Biasanya, fungsi ini dibatasi dengan menyatakan f sebagai
kombinasi linier dari variabel-variabel input: F (X1,…,Xn) = Wo=W1.X1+……+Wn.Xn, di

33
mana Wo, W1, …., Wn merupakan konstanta yang berupa bilangan real yang merupakan
suatu bagian dari spesifikasi aturan fuzzy.
Fuzzy output pada perancangan ini dibagi menjadi 5 himpunan keanggotaan ‘singletone’
yang masing-masing diberi label sebagai berikut: Ns (Negative Small), Nb (Negative Big), Az
(Almost Zero), Nb (Negative Big) dan Pb (Positive Big). Masing-masing himpunan tersebut
mewakili nilai output crisp berupa lama penyalaan lampu hijau dari range 0-50. Gambar
representasi himpunan keanggotaan dari fuzzy output dapat dilihat pada Gambar 3.13.

Gambar 3.13 Fungsi Keanggotaan Himpunan Output


Untuk memudahkan proses inference, dibuat tabel rules sebagai berikut:
Tabel 3.3 Fuzzy Rules Jalur Barat-Timur
Timur
Tidak
Normal Padat
Barat Padat
Tidak Padat Ps Ns Az
Normal Ns Az Ps
Padat Az Ps Pb

Tabel 3.4 Fuzzy Rules Jalur Utara-Selatan


Selatan
Tidak
Normal Padat
Utara Padat
Tidak Padat Ps Ns Az
Normal Ns Az Ps
Padat Az Ps Pb

3. Proses Defuzzifikasi
Pada tahap ini dilakukan pemetaan bagi nilai-nilai fuzzy output yang diperoleh pada
tahap inference ke nilai-nilai crisp output sesuai dengan sistem yang diharapkan. Output
sistem pada sistem ini berupa nilai data waktu lampu hijau berkisar dari 10 sampai 50.

34
Dalam proses pemetaan ini, metode yang digunakan adalah weighted average. Metode
ini mengambil nilai rata-rata dengan menggunakan nilai derajat keanggotaan. Metode ini
menghitung nilai crisp dengan rumus:

Waktu = 3.2

Keterangan:
Waktu = data crips fuzzy output dari range 0-50
(y) = derajat keangotaan input
(y) = jumlah sampling data crips fuzzy output masing-masing himpunan
Output dari keluaran defuzzyfication menjadi acuan penyalaan lama lampu hijau pada
jalur ‘barat-timur’ dan jalur ‘utara-selatan’.

35
BAB IV
PENGUJIAN DAN ANALISIS

Pada bab ini akan dibahas tentang pengujian dan analisis sistem yang telah dirancang.
Pengujian dan analisis meliputi perangkat keras maupun perangkat lunak. Proses-proses ini
dilakukan untuk mengetahui apakah sistem bekerja sesuai dengan perancangan pada bab
sebelumnya.
4.1 Pengujian dan Analisis Perangkat Keras
Pengujian ini meliputi: pengujian sistem minimum ATMega 32, pengujian LCD,
pengujian laser, pengujian LDR.

4.1.1 Pengujian Sistem Minimum ATMega 32


1. Tujuan Pengujian
Tujuan dari pengujian ini adalah untuk mengetahui apakah sistem minimum bekerja
sesuai dengan fungsinya.
2. Cara Pengujian
Pengujian yang dilakukan adalah dengan menghubungkan LED pada setiap port di
sistem minimum ATMega 32 secara bergantian. Jika kita beri input ‘0’ (≈ 0 Volt), maka LED
tidak akan menyala. Jika kita beri input ‘1’ (≈ 5 Volt), maka LED menyala.
3. Hasil Pengujian dan Analisis
Dari hasil pengujian, dapat kita simpulkan bahwa sistem minimum ATMega 32 bekerja
dengan baik. Akan tetapi dalam implementasinya, tidak selalu output dari logika 1 = 5 Volt
dan logika 0 = 0 Volt. Hal ini disebabkan adanya kemungkinan bahwa tegangan pada pencatu
sistem minimum tidak stabil atau jalur dari sistem minimum tidak sempurna.

4.1.2 Pengujian LCD


1. Tujuan
Tujuan dari pengujian ini adalah untuk mengetahui apakah LCD bekerja sesuai dengan
fungsinya yaitu sebagai indikator pada sistem ini.

36
2. Cara Pengujian
Pengujian yang dilakukan adalah dengan menghubungkan LCD pada port c dan
menampilkan program sederhana berupa kalimat “Eastor Rainhard 1105090024” dengan
koordinat yang sesuai dengan yang di tentukan di LCD.
3. Hasil Pengujian dan Analisis

Gambar 4.1 Hasil Pengujian LCD


Berdasarkan Gambar 4.1, hasil yang ditampilkan LCD sesuai dengan apa yang harapkan,
sehingga dapat disimpulkan bahwa LCD berfungsi dengan baik. Akan tetapi terkadang LCD
tidak dapat berfungsi dengan baik dikarenakan beberpa hal, yaitu: arus yang digunakan untuk
penyalaan LCD terbagi dengan pemakaian perangkat keras lainnya.

4.1.3 Pengujian Laser


1. Tujuan
Tujuan dari pengujian ini adalah untuk mengetahui apakah laser bekerja sesuai dengan
fungsinya yaitu sebagai transmitter cahaya untuk LDR.
2. Cara Pengujian
Cara menguji laser adalah dengan menghubungkan laser dengan catuan 3,3 Volt dan
mengarahkan arah cahaya ke LDR.
3. Hasil Pengujian dan Analisis
Tabel 4.1 Tabel Pengujian Laser
Laser Output Saat Ada Cahaya
Barat 1 Baik
Barat 2 Baik
Barat 3 Baik
Timur 1 Baik
Timur 2 Baik
Timur 3 Kurang baik
Utara 1 Baik

37
Utara 2 Baik
Utara 3 Baik
Selatan 1 Baik
Selatan 2 Baik
Selatan 3 Kurang baik

Berdasarkan Tabel 4.1 dapat dilihat bahwa arah dari pencahayaan laser mengenai LDR
dengan baik. Akan tetapi terkadang sinar dari laser tidak pas mengenai LDR. Hal ini
dikarenakan lem perekat pada laser tidak merekat dengan baik. Yang lain adalah laser bisa
menjadi redup dikarenakan tegangan yang tidak stabil dan umur dari laser itu sendiri. Akan
tetapi secara keseluruhan cahaya masih dapat dibaca oleh LDR.

4.1.4 Pengujian LDR


1. Tujuan
Tujuan dari pengujian ini adalah untuk mengetahui apakah LDR bekerja sesuai dengan
fungsinya yaitu sebagai pemberi nilai input ke ADC.
2. Cara Pengujian
Pengujian dilakukan dengan cara menembakkan cahaya dari laser dan menghitung
tegangan keluar jika menerima cahaya dari laser atau tidak. Pengujian dilakukan terhadap 12
LDR yang digunakan.
3. Hasil dan Analisis
Tabel 4.2 Hasil Pengujian LDR
LDR Output Saat Ada Cahaya Output saat tidak ada cahaya
Barat 1 0,21 Volt 4,83 Volt
Barat 2 0,18 Volt 4,80 Volt
Barat 3 0,24 Volt 4,80 Volt
Timur 1 0,11 Volt 4,82 Volt
Timur 2 0,07 Volt 4,80 Volt
Timur 3 1,98 Volt 4,80 Volt
Utara 1 0,26 Volt 4,62 Volt
Utara 2 0,93 Volt 4,68 Volt
Utara 3 0,07 Volt 4,74 Volt
Selatan 1 0,11 Volt 4,78 Volt
Selatan 2 0,12 Volt 4,79 Volt
Selatan 3 2,52 Volt 4,67 Volt

38
Dari hasil pengujian pada Tabel 4.2, saat cahaya mengenai LDR, tegangan output
mendekati 0 Volt, saat tidak ada cahaya, cahaya mendekati 5 Volt. Dapat disimpulkan bahwa
LDR bekerja dengan cukup baik, dikarenakan masih ada LDR yang nilainya tidak mendekati
0. Faktor yang menyebabkan LDR tidak mendekati 0 dikarenakan adanya toleransi di resistor
dan LDR. Faktor yang lain adalah cahaya dari laser yang mulai redup dan cahaya dari
lingkungan sekitar.

4.1.5 Pengujian LM339


1. Tujuan
Tujuan dari pengujian ini adalah untuk mengetahui apakah LM339 bekerja dengan baik
sesuai fungsingnya sebagai ADC atau tidak.
2. Cara Pengujian
Cara pengujian yang dilakukan adalah menghitung hasil keluaran tegangan di LM339
dengan multimeter. Pengujian dilakukan terhadap 3 LM339 yang digunakan.
3. Hasil dan Analisis
Tabel 4.3 Hasil Pengujian ADC
ADC Output Saat Ada Cahaya Output saat tidak ada cahaya
Barat 1 4,88 Volt 0,13 Volt
Barat 2 4,88 Volt 0,26 Volt
Barat 3 4,87 Volt 0,37 Volt
Timur 1 4,89 Volt 0,13 Volt
Timur 2 4,88 Volt 0,15 Volt
Timur 3 4,89 Volt 0,16 Volt
Utara 1 4,88 Volt 0,27 Volt
Utara 2 4,88 Volt 0,28 Volt
Utara 3 4,89 Volt 0,30 Volt
Selatan 1 4,88 Volt 0,26 Volt
Selatan 2 4,88 Volt 0,28 Volt
Selatan 3 4,88 Volt 0,30 Volt

Dari data pada Tabel 4.3 dapat dilihat bahwa ADC bekerja sangat baik. Saat Vin(-) = 0
dan Vref (+) = 3,3, maka output dari LM339 adalah Vout = 1. Saat Vin(-) = 1 dan Vref (+) =
3,3, maka output dari LM339 adalah Vout = 0. Akan tetapi dalam implementasinya, tidak
selalu output dari logika 1 = 5 Volt dan logika 0 = 0 Volt. Hal ini disebabkan adanya

39
kemungkinan bahwa tegangan pada pencatu ADC tidak stabil atau jalur pada ADC tidak
sempurna.

4.1.6 Pengujian LED


1. Tujuan
Tujuan dari pengujian ini adalah untuk mengetahui apakah LED dapat bekerja dengan
baik sesuai fungsinya sebagai indikator output dari sistem.
2. Cara Pengujian
Pengujian dilakukan dengan memberikan input = 1 dari mikrokontroler dan
mengeluarkannya ke port A.0, A.1, A.2, A.3, A.4, A.5.
3. Hasil dan Analisis
Tabel 4.4 Hasil Pengujian LED
LED KONDISI
Merah barat-timur Menyala
Kuning barat-timur Menyala
Hijau barat-timur Menyala
Merah utara-selatan Menyala
Kuning utara-selatan Menyala
Hijau utara-selatan Menyala

Dari Tabel 4.4 dapat dilihat bahwa hasil pengujian sesuai yang diharapkan yaitu semua
LED menyala. Akan tetapi terkadang LED dapat meredup dikarenakan catuan di LED yang
tidak stabil.

4.2 Pengujian dan Analisis Perangkat Lunak


Pengujian ini meliputi pengujian Fuzzy Logic.
1. Tujuan
Tujuan dari pengujian ini untuk mengetahui apakah fuzzy logic dapat berjalan sesuai
dengan aturan fuzzy logic.
2. Cara Pengujian
Pengujian dilakukan dengan mengeluarkan beberapa parameter sistem fuzzy logic
kemudian ditampilkan di LCD. Diambil beberapa contoh data parameter yang diambil pada

40
alat yang nantinya data tersebut dianalisis apakah sama dengan perhitungan apa tidak.
Pengujian dilakukan pada jalur ‘barat-timur’ dan jalur ‘utara-selatan’.
3. Hasil dan Analisis
Tabel 4.5 dan Tabel 4.6 merupakan data perbandingan perhitungan pada alat dan
perhitungan secara manual.
Tabel 4.5 Hasil Pengujian Fuzzy Logic Barat-Timur
No. Input Output (detik) Perhitungan
Barat (uF) Timur (uF)
1 1 1 10 10
2 1 3 15 15
3 3 3 20 20
4 3 5 30 30
5 7 5 45 45
6 7 7 50 50
Tabel 4.6 Hasil Pengujian Fuzzy Logic Utara-Selatan
No. Input Output (detik) Perhitungan
Utara (uF) Selatan (uF)
1 1 1 10 10
2 1 3 15 15
3 3 3 20 20
4 3 5 30 30
5 7 5 45 45
6 7 7 50 50

Dari hasil pengujian pada Tabel 4.5 dan Tabel 4.6, didapatkan bahwa fuzzy logic yang
ditanamkan sesuai dengan yang diharapkan. Akan tetapi dalam implementasinya, output yang
berupa lama penyalaan lampu hijau, belum tentu mempunyai waktu yang sama dengan yang
diperhitungkan di mikrokontroler maupun manual. Hal-hal yang menyebabkan adalah
tegangan pencatu yang tidak stabil dan resistansi pada jalur pengkabelan yang menyebabkan
lama penyalaan lampu hijau yang tidak optimal.

41
BAB V
PENUTUP

5.1 Kesimpulan
Pengujian dan analisis yang telah dilakukan pada perancangan prototype sistem kendali
rambu lalu lintas otomatis dengan logika fuzzy menggunakan laser dan LDR dapat diambil
kesimpulan, yaitu:
1. Performansi Laser, LDR, ADC dalam mendeteksi kendaraan mempunyai tingkat
keberhasilan 100% walaupun tidak semua semua tegangan keluar LDR menunjukkan
angka mendekati 0 saat tidak mendeteksi kendaraan. Faktor yang menyebabkan adalah
laser yang mulai meredup dan faktor cahaya sekitar. Pemilihan tegangan referensi
sebesar 3,3 Volt dinilai sangat efektif, dikarenakan ada kondisi di mana LDR
menunjukkan angka tegangan keluar sebesar 2,5 Volt.
2. Prototype dengan logika fuzzy ini menghasilkan lama penyalaan lampu lalu lintas
dengan tingkat keberhasilan 100%.
a. Jika kendaraan pada setiap jalur adalah padat, maka keluarannya adalah ‘positive
big’ dengan lama penyalaan lampu hijau 50 detik.
b. Jika kendaraan pada setiap jalur adalah normal, maka keluarannya adalah ‘almost
zero’ dengan lama penyalaan lampu hijau 30 detik.
c. Jika kendaraan pada setiap jalur adalah tidak padat, maka keluarannya adalah
‘positive small’ dengan lama penyalaan lampu hijau 10 detik.
d. Jika salah satu jalur tidak padat dan yang lainnya normal, maka keluarannya adalah
‘negative small’ dengan lama penyalaan lampu hijau 20 detik.
e. Jika salah satu jalur tidak padat dan yang lainnya padat, maka keluarannya adalah
‘almost zero’ dengan lama penyalaan lampu hijau 30 detik.
f. Jika salah satu jalur normal dan yang lainnya padat, maka keluarannya adalah
‘negative big’ dengan lama penyalaan lampu hijau 40 detik.

42
5.2 Saran
1. Untuk mengimplementasikan alat pada persimpangan terlebih dahulu perlu
mengetahui kondisi persimpangan tersebut, dikarenakan setiap persimpangan memiliki
karakteristik dan sistem yang berbeda.
2. Untuk mengimplementasikan alat pada persipangan, sebaiknya menggunakan PLC.
Karena mikrokontroler memiliki arus keluar maksimum sebesar 20 mA.
3. Laser dan LDR dalam satu persimpangan jika ditambah lebih banyak akan lebih baik
dikarenakan dapat mendeteksi mobil lebih banyak dari sistem prototype sekarang.

43
DAFTAR PUSTAKA

[1] Atmel Datasheet, Mikrokontroller ATMega32

[2] Bejo, Agus. 2007. C&AVR “Rahasia Kemudahan Bahasa C Dalam Mikrokontroler
ATMega8535”. Graha Ilmu: Yogyakarta.
.
[3] Furiyanti, Prima Ade. 2011. Perancangan Sistem Navigasi Autonomous Mobile Robot
Menggunakan Radar Ultrasonik Multisensor Untuk Aplikasi Obstacle Avoidance.
Bandung : Tugas Akhir Institut Teknologi Telkom.

[4] Manto. 2010. Perangkat Pengatur Timer Lampu Lalu Lintas Berdasarkan Antrian
Kendaraan. Depok : Universitas Indonesia.

[4] Tim Dosen. 2008. Rekayasa Lalu Lintas. Teknik Sipil Universitas Widyagama.
Indonesia, Malang

[5] Texas Instruments Datasheet, LM339 Komparator

[6] Undang-Undang Republik Indonesia Nomor 22. 2009. Lalu Lintas dan Angkutan Jalan

[7] Undang-Undang Republik Indonesia Nomor 38. 2004. Tentang Jalan

[8] Unity Opto Technology Datasheet, 650nm Laser Diode

[9] Panuturan, Yehezkiel Arnolt. 2013. Sistem Keamanan pada Peternakan Sapi dengan
Menggunakan Teknologi Wireless Sensor Network: Tugas Akhir Institut Teknologi
Telkom.
[10] http://fpks-surabaya.org/343/proyek-its-atcs-habiskan-anggaran-besar-kemacetan-tetap-
tak-terurai diunduh pada tanggal 13 Mei 2013

[11] http://optics-optics.blogspot.com/2013/03/prinsip-kerja-laser-adalah.html diunduh pada


tanggal 1 Juni 2014

[12] http://www.rider-system.net/2011/10/ldr-light-dependent-resistor.html diuduh pada


tanggal 2 Mei 2013

[13] http://www.sahabat-informasi.com/2012/04/mengenal-light-emitting-diode-led.html
diunduh pada 13 Mei 2013

[14] http://www.scribd.com/doc/189844357/6-Bahan-Kuliah-Rek-Lalu-Lintas-Dr-Gito-s-
Bab-III-IV-V diunduh pada tanggal 16 Juni 2014

44
LAMPIRAN

LAMPIRAN
PROGRAM

45
/***************************************************
** void kbarat(void)
This program was produced by the {
CodeWizardAVR V2.04.4a Advanced b[0]=b1;
Automatic Program Generator b[1]=b2;
© Copyright 1998-2009 Pavel Haiduc, HP InfoTech s.r.l. b[2]=b3;
http://www.hpinfotech.com b[0]=b[0]*1;
b[1]=b[1]*2;
Project : b[2]=b[2]*4;
Version : barat=((b[0]+b[1]+b[2])-7)*-1;
Date : 5/29/2007 }
Author : NeVaDa
Company : void ktimur(void)
Comments: {
t[0]=t1;
t[1]=t2;
Chip type : ATmega32 t[2]=t3;
Program type : Application t[0]=t[0]*1;
AVR Core Clock frequency: 11.059200 MHz t[1]=t[1]*2;
Memory model : Small t[2]=t[2]*4;
External RAM size :0 timur=((t[0]+t[1]+t[2])-7)*-1;
Data Stack size : 512 }
****************************************************
*/ void kutara(void)
{
#include <mega32.h> u[0]=u1;
#include <stdio.h> u[1]=u2;
#include <delay.h> u[2]=u3;
// Alphanumeric LCD Module functions u[0]=u[0]*1;
#asm u[1]=u[1]*2;
.equ __LCD_port=0x15 ;PORTC u[2]=u[2]*4;
#endasm
#include <LCD.h> utara=((u[0]+u[1]+u[2])-7)*-1;
}
#define t1 PINB.0//sensor timur 1
#define t2 PINB.1//sensor timur 2 void kselatan(void)
#define t3 PINB.2 {
#define u1 PINB.4 s[0]=s1;
#define u2 PINB.5 s[1]=s2;
#define u3 PINB.6 s[2]=s3;
#define s1 PIND.0 s[0]=s[0]*1;
#define s2 PIND.1 s[1]=s[1]*2;
#define s3 PIND.2 s[2]=s[2]*4;
#define b1 PIND.4
#define b2 PIND.5 selatan=((s[0]+s[1]+s[2])-7)*-1;
#define b3 PIND.6 }
#define mus PORTA.0
#define kus PORTA.2
#define hus PORTA.4 void fuzzybt(void)
#define mbt PORTA.1 {
#define kbt PORTA.3 kbarat();ktimur();
#define hbt PORTA.5
char buf[33]; //barat 1, timur 1
float b[3],barat,u[3],utara,t[3],timur,s[3],selatan; if (barat<btp && timur<ttp)
float btp=2,bn=4,bp=6; {ubtp=1;uttp=1;
float ttp=2,tn=4,tp=6; waktu=((ubtp*btnb)+(uttp*btnb))/(ubtp+uttp);
float ubtp,ubn,ubp; }
float uttp,utn,utp;
float btnb=10,btns=20,btaz=30,btps=40,btpb=50; //out barat //barat1 timur2
timur if (barat<btp && timur>=ttp && timur<tn)
float utp=2,un=4,up=6; {
float stp=2,sn=4,sp=6; ubtp=1;uttp=(tn-timur)/(tn-ttp);utn=(timur-ttp)/(tn-ttp);
float uutp,uun,uup; if(ubtp<uttp)
float ustp,usn,usp; {c=ubtp;}
float usnb=10,usns=20,usaz=30,usps=40,uspb=50; //out utara else
selatan {c=uttp;}
float waktu,c,d,e,f,g,h; if (ubtp<utn)
int waktuhijau,i,countdown; {d=ubtp;}
else

1
{d=utn;} ubtp=(bn-barat)/(bn-btp);ubn=(barat-btp)/(bn-btp);utn=(tp-
waktu=((c*btnb)+(d*btns))/(c+d); timur)/(tp-tn);utp=(timur-tn)/(tp-tn);
} if (ubtp<=utn)
{c=ubtp;}
//barat1, timur3 else
if(barat<btp && timur>=tn && timur<tp) {c=utn;}
{ if(ubtp<=utp)
ubtp=1;utn=(tp-timur)/(tp-tn);utp=(timur-tn)/(tp-tn); {d=ubtp;}
if(ubtp<utn) else
{c=ubtp;} {d=utp;}
else if (ubn<=utn)
{c=utn;} {e=ubn;}
if(ubtp<utp) else
{d=ubtp;} {e=utn;}
else if (ubn<=utp)
{d=utp;} {f=ubn;}
waktu=((c*btns)+(d*btaz))/(c+d); else
} {e=utp;}
waktu=((c*btns)+(d*btaz)+(e*btaz)+(f*btps))/(c+d+e+f);
//barat1, timur4 }
if (barat<btp && timur>tp)
{ //barat2, timur4
{ubtp=1;utp=1;} if (barat>=btp && barat<bn && timur>=tp)
waktu=((ubtp*btaz)+(utp*btaz))/(ubtp+utp); {
} ubtp=(bn-barat)/(bn-btp);ubn=(barat-btp)/(bn-btp);utp=1;
if (ubtp<utp)
//barat2, timur1 {c=ubtp;}
if (barat>=btp && barat<bn && timur<ttp) else
{ {c=utp;}
ubtp=(bn-barat)/(bn-btp);ubn=(barat-btp)/(bn-btp);uttp=1; if (ubn<utp)
if (ubtp<uttp) {d=ubn;}
{c=ubtp;} else
else {d=utp;}
{c=uttp;} waktu=((c*btaz)+(d*btps))/(c+d);
if (ubn<uttp) }
{d=ubn;}
else //barat3timur1
{d=uttp;} if (barat>=bn && barat<bp && timur<ttp)
waktu=((c*btnb)+(d*btns))/(c+d); {
} ubn=(bp-barat)/(bp-bn);ubp=(barat-bn)/(bp-bn);uttp=1;
if (ubn<uttp)
//barat2, timur2 {c=ubn;}
if (barat>=btp && barat<bn && timur>=ttp && timur<tn) else
{ {c=uttp;}
ubtp=(bn-barat)/(bn-btp);ubn=(barat-btp)/(bn-btp);uttp=(tn- if (ubp<uttp)
timur)/(tn-ttp);utn=(timur-ttp)/(tn-ttp); {d=ubp;}
if (ubtp<uttp) else
{c=ubtp;} {d=uttp;}
else waktu=((c*btns)+(d*btaz))/(c+d);
{c=uttp;} }
if (ubtp<utn)
{d=ubtp;} //barat3, timur2
else if (barat>=bn && barat<bp && timur>=ttp && timur<tn)
{d=utn;} {
if (ubn<uttp) ubn=(bp-barat)/(bp-bn);ubp=(barat-bn)/(bp-bn);uttp=(tn-
{e=ubn;} timur)/(tn-ttp);utn=(timur-ttp)/(tn-ttp);
else if (ubn<uttp)
{f=uttp;} {c=ubn;}
if (ubn<utn) else
{f=ubn;} {c=uttp;}
else if(ubn<utn)
{f=utn;} {d=ubn;}
waktu=((c*btnb)+(d*btns)+(e*btns)+(f*btaz))/(c+d+e+f); else
} {d=utn;}
if (ubp<uttp)
//barat2, timur3 {e=ubp;}
if (barat>=btp && barat<bn && timur>=tn && timur<tp) else
{ {e=uttp;}
if (ubp<=utn)

2
{f=ubp;} {
else ubp=1;utn=(tp-timur)/(tp-tn);utp=(timur-tn)/(tp-tn);
{e=utn;} if (ubp<utn)
waktu=((c*btns)+(d*btaz)+(e*btaz)+(f*btps))/(c+d+e+f); {c=ubp;}
} else
{c=utn;}
//barat3, timur3 if (ubp<utp)
if (barat>=bn && barat<bp && timur>=tn && timur<tp) {d=ubp;}
{ else
ubn=(bp-barat)/(bp-bn);ubp=(barat-bn)/(bp-bn);utn=(tp- {d=utp;}
timur)/(tp-tn);utp=(timur-tn)/(tp-tn); waktu=((c*btps)+(d*btpb))/(c+d);
if (ubn<utn) }
{c=ubn;}
else //barat4,timur4
{c=utn;} if (barat>=bp && timur>=tp)
if(ubn<utp) {
{d=ubn;} ubp=1;utp=1;
else waktu=((ubp*btpb)+(utp*btpb))/(ubp+utp);
{d=utp;} }
if (ubp<utn) }
{e=ubp;}
else
{e=utn;}
if (ubp<=utp) void fuzzyus(void)
{f=ubp;} {
else kutara();kselatan();
{e=utp;}
waktu=((c*btaz)+(d*btps)+(e*btps)+(f*btpb))/(c+d+e+f); //utara 1, selatan 1
} if (utara<utp && selatan<stp)
{uutp=1;ustp=1;
//barat3, timur4 waktu=((uutp*usnb)+(ustp*usnb))/(uutp+ustp);
if (barat>=bn && barat<bp && timur>=tp) }
{
ubn=(bp-barat)/(bp-bn);ubp=(barat-bn)/(bp-bn);utp=1; //utara 1, selatan 2
if (ubn<utp) if (utara<utp && selatan>=stp && selatan<sn)
{c=ubn;} {
else uutp=1;ustp=(sn-selatan)/(sn-stp);usn=(selatan-stp)/(sn-stp);
{c=utp;} if(uutp<ustp)
if (ubp<utp) {c=uutp;}
{d=ubp;} else
else {c=ustp;}
{d=utp;} if (uutp<usn)
waktu=((c*btps)+(d*btpb))/(c+d); {d=uutp;}
} else
{d=usn;}
//barat4, timur1 waktu=((c*usnb)+(d*usns))/(c+d);
if (barat>=bp && timur<ttp) }
{
ubp=1;uttp=1; //utara 1, selatan 3
waktu=((ubp*btaz)+(uttp*btaz))/(ubp+uttp); if(utara<utp && selatan>=sn && selatan<sp)
} {
uutp=1;usn=(sp-selatan)/(sp-sn);usp=(selatan-sn)/(sp-sn);
//barat4, timur2 if(uutp<usn)
if (barat>=bp && timur>=ttp && timur<tn) {c=uutp;}
{ else
ubp=1;uttp=(tn-timur)/(tn-ttp);utn=(timur-ttp)/(tn-ttp); {c=usn;}
if (ubp<uttp) if(uutp<usp)
{c=ubn;} {d=uutp;}
else else
{c=uttp;} {d=usp;}
if (ubp<utn) waktu=((c*usns)+(d*usaz))/(c+d);
{d=ubp;} }
else
{d=utn;} //utara 1, selatan 4
waktu=((c*btaz)+(d*btps))/(c+d); if (utara<utp && selatan>sp)
} {
{uutp=1;usp=1;}
//barat4, timur3 waktu=((uutp*usaz)+(usp*usaz))/(uutp+usp);
if (barat>=bp && timur>=tn && timur<tp) }

3
{c=uutp;}
//utara 2, selatan 1 else
if (utara>=utp && utara<un && selatan<stp) {c=usp;}
{ if (uun<usp)
uutp=(un-utara)/(un-utp);uun=(utara-utp)/(un-utp);ustp=1; {d=uun;}
if (uutp<ustp) else
{c=uutp;} {d=usp;}
else waktu=((c*usaz)+(d*usps))/(c+d);
{c=ustp;} }
if (uun<ustp)
{d=uun;} //utara 3 selatan 1
else if (utara>=un && utara<up && selatan<stp)
{d=ustp;} {
waktu=((c*usnb)+(d*usns))/(c+d); uun=(up-utara)/(up-un);uup=(utara-un)/(up-un);ustp=1;
} if (uun<ustp)
{c=uun;}
//utara 2, selatan 2 else
if (utara>=utp && utara<un && selatan>=stp && selatan<sn) {c=ustp;}
{ if (uup<ustp)
uutp=(un-utara)/(un-utp);uun=(utara-utp)/(un-utp);ustp=(sn- {d=uup;}
selatan)/(sn-stp);usn=(selatan-stp)/(tn-stp); else
if (uutp<ustp) {d=ustp;}
{c=uutp;} waktu=((c*usns)+(d*usaz))/(c+d);
else }
{c=ustp;}
if (uutp<usn) //utara 3, selatan 2
{d=uutp;} if (utara>=un && utara<up && selatan>=stp && selatan<sn)
else {
{d=usn;} uun=(up-utara)/(up-un);uup=(utara-un)/(up-un);ustp=(sn-
if (uun<ustp) selatan)/(sn-stp);usn=(selatan-stp)/(sn-stp);
{e=uun;} if (uun<ustp)
else {c=uun;}
{f=ustp;} else
if (uun<usn) {c=ustp;}
{f=uun;} if(uun<usn)
else {d=uun;}
{f=usn;} else
waktu=((c*usnb)+(d*usns)+(e*usns)+(f*usaz))/(c+d+e+f); {d=usn;}
} if (uup<ustp)
{e=uup;}
//utara 2, selatan 3 else
if (utara>=utp && utara<un && selatan>=sn && selatan<sp) {e=ustp;}
{ if (uup<=usn)
uutp=(un-utara)/(un-utp);uun=(utara-utp)/(un-utp);usn=(sp- {f=uup;}
selatan)/(sp-sn);usp=(selatan-sn)/(sp-sn); else
if (uutp<usn) {e=usn;}
{c=uutp;} waktu=((c*usns)+(d*usaz)+(e*usaz)+(f*usps))/(c+d+e+f);
else }
{c=usn;}
if(uutp<usp) //utara 3, selatan 3
{d=uutp;} if (utara>=un && utara<up && selatan>=sn && selatan<sp)
else {
{d=usp;} uun=(up-utara)/(up-un);uup=(utara-un)/(up-un);usn=(sp-
if (uun<usn) selatan)/(sp-sn);usp=(selatan-sn)/(sp-sn);
{e=uun;} if (uun<usn)
else {c=uun;}
{e=usn;} else
if (uun<=usp) {c=usn;}
{f=uun;} if(uun<usp)
else {d=uun;}
{e=usp;} else
waktu=((c*usns)+(d*usaz)+(e*usaz)+(f*usps))/(c+d+e+f); {d=usp;}
} if (uup<usn)
{e=uup;}
//utara 2, selatan 4 else
if (utara>=utp && utara<un && selatan>=sp) {e=usn;}
{ if (uup<usp)
uutp=(un-utara)/(un-utp);uun=(utara-utp)/(un-utp);usp=1; {f=uup;}
if (uutp<usp) else

4
{e=usp;} // Port A initialization
waktu=((c*usaz)+(d*usps)+(e*usps)+(f*uspb))/(c+d+e+f); // Func7=Out Func6=Out Func5=Out Func4=Out Func3=Out
} Func2=Out Func1=Out Func0=Out
// State7=0 State6=0 State5=0 State4=0 State3=0 State2=0
//utara 3, selatan 4 State1=0 State0=0
if (utara>=un && utara<up && selatan>=sp) PORTA=0x00;
{ DDRA=0xFF;
uun=(up-utara)/(up-un);uup=(utara-un)/(up-un);usp=1;
if (uun<usp) // Port B initialization
{c=uun;} // Func7=In Func6=In Func5=In Func4=In Func3=In Func2=In
else Func1=In Func0=In
{c=usp;} // State7=P State6=P State5=P State4=P State3=P State2=P
if (uup<usp) State1=P State0=P
{d=uup;} PORTB=0xFF;
else DDRB=0x00;
{d=uup;}
waktu=((c*usps)+(d*uspb))/(c+d); // Port C initialization
} // Func7=In Func6=In Func5=In Func4=In Func3=In Func2=In
Func1=In Func0=In
//utara 4, selatan 1 // State7=T State6=T State5=T State4=T State3=T State2=T
if (utara>=up && selatan<stp) State1=T State0=T
{ PORTC=0x00;
uup=1;ustp=1; DDRC=0x00;
waktu=((uup*usaz)+(ustp*usaz))/(uup+ustp);
} // Port D initialization
// Func7=In Func6=In Func5=In Func4=In Func3=In Func2=In
//utara 4, selatan 2 Func1=In Func0=In
if (utara>=up && selatan>=stp && selatan<sn) // State7=P State6=P State5=P State4=P State3=P State2=P
{ State1=P State0=P
uup=1;ustp=(sn-selatan)/(sn-stp);usn=(selatan-stp)/(sn-stp); PORTD=0xFF;
if (uup<ustp) DDRD=0x00;
{c=uun;}
else // Timer/Counter 0 initialization
{c=ustp;} // Clock source: System Clock
if (uup<usn) // Clock value: Timer 0 Stopped
{d=uup;} // Mode: Normal top=FFh
else // OC0 output: Disconnected
{d=usn;} TCCR0=0x00;
waktu=((c*usaz)+(d*usps))/(c+d); TCNT0=0x00;
} OCR0=0x00;

//utara 4, selatan 3 // Timer/Counter 1 initialization


if (utara>=up && selatan>=sn && selatan<sp) // Clock source: System Clock
{ // Clock value: Timer1 Stopped
uup=1;usn=(sp-selatan)/(sp-sn);usp=(selatan-sn)/(sp-sn); // Mode: Normal top=FFFFh
if (uup<usn) // OC1A output: Discon.
{c=uup;} // OC1B output: Discon.
else // Noise Canceler: Off
{c=usn;} // Input Capture on Falling Edge
if (uup<usp) // Timer1 Overflow Interrupt: Off
{d=uup;} // Input Capture Interrupt: Off
else // Compare A Match Interrupt: Off
{d=usp;} // Compare B Match Interrupt: Off
waktu=((c*usps)+(d*uspb))/(c+d); TCCR1A=0x00;
} TCCR1B=0x00;
TCNT1H=0x00;
//utara 4, selatan 4 TCNT1L=0x00;
if (utara>=up && selatan>=sp) ICR1H=0x00;
{ ICR1L=0x00;
uup=1;usp=1; OCR1AH=0x00;
waktu=((uup*uspb)+(usp*uspb))/(uup+usp); OCR1AL=0x00;
} OCR1BH=0x00;
} OCR1BL=0x00;

void main(void) // Timer/Counter 2 initialization


{ // Clock source: System Clock
// Declare your local variables here // Clock value: Timer2 Stopped
// Mode: Normal top=FFh
// Input/Output Ports initialization // OC2 output: Disconnected

5
ASSR=0x00;
TCCR2=0x00; prog1:
TCNT2=0x00; kbarat();ktimur();
OCR2=0x00; fuzzybt();
waktuhijau=(int)waktu;
// External Interrupt(s) initialization LCD_gotoxy(0,0);
// INT0: Off LCD_puts("B T Hijau");
// INT1: Off LCD_gotoxy(0,1);
// INT2: Off sprintf(buf,"%.0f %.0f %d",barat,timur,waktuhijau);
MCUCR=0x00; LCD_puts(buf);
MCUCSR=0x00;
if (waktuhijau<=0)
// Timer(s)/Counter(s) Interrupt(s) initialization {
TIMSK=0x00; waktuhijau=1;
}
// Analog Comparator initialization
// Analog Comparator: Off hbt=1;kbt=0;mbt=0;hus=0;kus=0;mus=1;
// Analog Comparator Input Capture by Timer/Counter 1: Off countdown=waktuhijau;
ACSR=0x80; for (i=0;i<waktuhijau;i++)
SFIOR=0x00; {
delay_ms(1000);
// LCD module initialization LCD_gotoxy(4,1);
LCD_init(16); countdown--;
sprintf(buf,"%d ",countdown);
while (1) LCD_puts(buf);
{ }
// Place your code here
kbarat();ktimur(); hbt=0;kbt=1;mbt=0;hus=0;kus=1;mus=0;
kutara();kselatan(); delay_ms(3000);

if(barat==0 && timur==0 && selatan==0 && utara==0)


{

exit: LCD_clear();
LCD_gotoxy(0,0);
LCD_puts("tidak ada"); prog2:
LCD_gotoxy(0,1);
LCD_puts("kendaraan"); kutara();kselatan();
if(PIND.6 ==0) fuzzyus();
{ waktuhijau=(int)waktu;
LCD_clear(); LCD_gotoxy(0,0);
goto prog1; LCD_puts("U S Hijau");
} LCD_gotoxy(0,1);
else if(PINB.2==0) sprintf(buf,"%.0f %.0f %d",utara,selatan,waktuhijau);
{ LCD_puts(buf);
LCD_clear();
goto prog1; if (waktuhijau<=0)
} {
else if(PINB.6==0) waktuhijau=1;
{ }
LCD_clear();
goto prog2; hbt=0;kbt=0;mbt=1;hus=1;kus=0;mus=0;
} countdown=waktuhijau;
else if(PIND.2==0) for (i=0;i<waktuhijau;i++)
{ {
LCD_clear(); delay_ms(1000);
goto prog2; LCD_gotoxy(4,1);
} countdown--;
sprintf(buf,"%d ",countdown);
hbt=0;kbt=1;mbt=0;hus=0;kus=1;mus=0; LCD_puts(buf);
delay_ms(1000); }
hbt=0;kbt=0;mbt=0;hus=0;kus=0;mus=0;
delay_ms(1000); hbt=0;kbt=1;mbt=0;hus=0;kus=1;mus=0;
delay_ms(3000);

goto exit; LCD_clear();

};
} }

Anda mungkin juga menyukai