1
PENDAHULUAN
1.1. Latar Belakang
Seiring dengan pesatnya kemajuan pada bidang ilmu teknologi, banyak
inovasi dalam pembuatan alat baru yang diciptakan agar dapat memudahkan
pekerjaan seseorang. Dimana dalam era modernisasi saat ini, teknologi menjadi
bagian penting dalam kehidupan sehari-hari.
Kecelakaan lalu lintas adalah suatu peristiwa di jalan yang tidak disengaja,
hal itu mengakibatkan korban manusia atau kerugian harta. Salah satu penyebab
dari kecelakaan tersebut adalah kelalaian pengemudi pada saat mengendarai
mobil, kemudian secara tiba-tiba ada obyek di depan sehingga pengemudi tidak
sempat menginjak tuas rem dan mengendalikan laju mobil. Terlebih lagi mobil
tersebut melaju dengan kecepatan tinggi sehingga sulit untuk menghindar.
Sebelumnya telah ada penelitian mengenai sistem pengereman secara
otomatis, namun pada sistem tersebut hasil pengereman yang dilakukan masih
terlalu kasar sehingga mengurangi kenyamanan pengendara. Selain itu mobil tidak
bisa masuk ke dalam daerah sempit seperti garasi. Membership function yang
digunakan pada logika fuzzy pun masih terlampau sedikit, sehingga
mempengaruhi kinerja dari hasil pengereman. Untuk variabel jarak membership
function yang digunakan hanya dua, yaitu jarak jauh dan jarak dekat. Untuk
variabel kecepatan membership function yang digunakan pun ada dua, yaitu
yang digunakan ada tiga, yaitu pengereman sedikit, pengereman sedang dan
pengereman penuh.
Dari permasalahan tersebut maka perlu melakukan penelitian untuk
merancang suatu sistem yang dapat melakukan pengereman secara otomatis
dengan penambahan membership function dan rule yang lebih banyak sehingga
hasil pengereman yang dilakukan lebih halus tanpa mengurangi kenyamanan
pengendara baik pada saat mobil melaju dengan kecepatan rendah ataupun
kecepatan tinggi. Selain itu mobil dapat masuk ke dalam daerah sempit seperti
garasi dan daerah gang kecil sehingga mobil tersebut masih bisa melaju selama
lebar jalan yang dilalui lebih besar dari lebar mobil itu sendiri.
1.2. Identifikasi Masalah
Berdasarkan latar belakang yang telah dikemukakan, maka dapat
diidentifikasi permasalahan dalam tugas akhir ini yaitu sebagai berikut.
1. Pengereman yang dilakukan masih terlalu kasar sehingga mengurangi
kenyamanan pengendara, baik mobil melaju pada saat kecepatan rendah
ataupun kecepatan tinggi.
2. Mobil tidak bisa masuk ke dalam daerah sempit seperti garasi yang
mempunyai jarak sangat dekat antara mobil dengan hambatan.
1.3. Rumusan Masalah
Berdasarkan permasalahan yang terindentifikasi di atas, maka didapat
1. Bagaimana membuat sistem untuk melakukan pengereman secara otomatis
yang lebih halus baik dalam keadaan mobil melaju pada saat kecepatan
rendah ataupun kecepantan tinggi.
2. Bagaimana membuat sistem agar mobil dapat masuk ke dalam daerah
sempit seperti garasi yang mempunyai jarak sangat dekat antara mobil
dengan hambatan.
1.4. Tujuan
Sebagai salah satu alternatif untuk menyelesaikan masalah-masalah yang
dijelaskan dalam bagian rumusan masalah, maka penelitian ini memiliki
tujuan-tujuan sebagai berikut.
1. Merancang sistem yang mampu melakukan pengereman otomatis secara
ideal dengan memperhitungkan jarak dengan hambatan dan kecepatan
mobil pada saat melaju tanpa mengurangi kenyamanan pengendara.
2. Merancang sistem yang mampu mengukur jarak sesuai dengan ukuran
mobil itu sendiri, sehingga mobil dapat masuk ke dalam daerah sempit
seperti garasi.
1.5. Batasan Masalah
Beberapa batasan masalah yang didefinisikan oleh penulis sebagai
pembatasan “beban” penelitian adalah sebagai berikut.
1. Sistem pengereman yang dilakukan hanya secara otomatis.
2. Menggunakan metode logika fuzzy untuk menentukan besar nilai
3. Masukan logika fuzzy hanya kecepatan mobil pada saat melaju dan jarak
antara mobil dengan hambatan di depan.
4. Sistem diimplementasikan pada mobil RC.
5. Kecepatan dan jarak yang dideteksi disesuaikan dengan dimensi mobil
RC.
1.6. Metode Penelitian
Metoda penelitian yang dilakukan adalah eksperimental dengan tahapan
sebagai berikut.
1. Observasi dan studi literature
Jenis metode pengambilan data dengan cara mengumpulkan data-data
serta informasi melalui buku dan internet, mempelajari hasil penelitian
sebelumnya, mendatangi dan melakukan tanya jawab dengan para ahli
metode fuzzy dan para ahli yang mengerti soal proses pengereman pada
mobil, mengindentifikasi sensor dan mikrokontroler yang digunakan.
2. Perancangan dan pembuatan alat
Meliputi hal yang berkaitan dengan perangkat keras dan perakat lunak.
Perangkat lunak : pemrograman mikrokontroler, pemrograman
sensor jarak, pemrograman sensor kecepatan, pemrograman
metode fuzzy.
Perangkat keras : perancangan alat dan pembuatan alat hingga
3. Pengujian alat
Setelah alat dibuat maka akan dilakukan pengujian untuk mengetahui
kinerja dari alat tersebut dan apakah terjadi kesalahan atau tidak.
4. Evaluasi
Melakukan evaluasi dari hasil yang sudah dilakukan selama dalan proses
pembuatan alat tersebut.
1.7. Sistematika Penulisan
Sistematika penulisan tugas akhir ini adalah sebagai berikut.
BAB I PENDAHULUAN
Berisi mengenai gambaran umum dari penelitian yang berisi latar belakang
dari pemasalahan yang akan dijalankan topik, tujuan penelitian, batasan
masalah, metode penelitian, serta sistematika penulisan.
BAB II LANDASAN TEORI
Berisi mengenai dasar teori alat yang digunakan sebagai dasar dalam
pengolahan data.
BAB III PEMILIHAN KOMPONEN DAN PERANCANGAN ALAT Berisi mengenai alasan atau latar belakang dalam pemilihan komponen
untuk perancangan perangkat keras (hardware) dan perangkat lunak
(software) yang akan dibuat.
BAB IV PENGUJIAN DAN ANALISIS
Menganalisa alat yang sudah dirancang, pengoperasian alat dan cara kerja
BAB V PENUTUP
Berisi tentang kesimpulan yang menjelaskan secara singkat hasil yang
sudah dicapai dari aplikasi yang dikembangkan serta saran-saran yang
belum terdapat dalam tugas akhir ini, agar aplikasi ini dapat menjadi lebih
7
Pada bab ini berisi tentang teori mengenai permasalahan yang dibahas
dalam tugas akhir ini, dimulai dari definisi logika fuzzy, mikrokontroler
ATMega32, sensor ultrasonik SR-04, Pulse With Modulation (PWM), motor DC,
motor servo, driver motor, Liquid Crystal Display (LCD), rotary encoder, remote
control (RX dan TX), komparator, sampai dengan perangkat lunak (software)
bahasa C sebagai pemrograman.
2.1 Logika Fuzzy
Dalam kondisi yang nyata, beberapa aspek dalam dunia nyata selalu atau
biasanya berada di luar model matematis dan bersifat samar. Konsep ketidak
pastian inilah yang menjadi konsep dasar munculnya konsep logika fuzzy.
Pencetus gagasan logika fuzzy adalah L.A. Zadeh (1965) dari California
University.
Logika fuzzy adalah salah satu cara yang tepat untuk memetakan suatu
ruang input ke dalam suatu ruang output. Logika fuzzy berbeda dengan logika
digital biasa, dimana logika digital biasa hanya mengenal 2 keadaan yaitu: “ya”
dan “tidak” atau ”on” dan “off” atau “high” dan “low” atau "1" dan "0".
Sedangkan logika fuzzy meniru cara berpikir manusia dengan menggunakan
konsep sifat kesamaran suatu nilai. Dengan himpunan fuzzy, suatu objek dapat
menjadi anggota dari banyak himpunan dengan derajat keanggotaan yang berbeda
2.1.1 Himpunan Fuzzy
Himpunan fuzzy merupakan suatu grup yang mewakili suatu kondisi atau
keadaan tertentu dalam suatu variabel fuzzy. Himpunan fuzzy memiliki 2 atribut,
yaitu:
a. linguistik, yaitu penamaan suatu grup yang mewakili suatu keadaan atau
kondisi tertentu dengan menggunakan bahasa alami, seperti muda,
parobaya, tua.
b. numerik, suatu nilai (angka) yang menunjukkan ukuran dari suaru variabel
seperti 10,20,30.
Beberapa hal yang perlu diketahui dalam memahami fuzzy, yaitu:
a. variable fuzzy, merupakan variabel yang hendak dibahas dalam suatu
sistem fuzzy. Contoh: umur, suhu, permintaan, dan lain sebagainya.
b. semesta pembicaraan, adalah keseluruhan nilai yang diperbolehkan untuk
dioperasikan dalam suatu variabel fuzzy. Semesta pembicara merupakan
himpunan bilangan real yang senantiasa naik (bertambah) secara monoton
dari kiri ke kanan. Nilai semesta pembicara dapat berupa bilangan positif
maupun negatif. Adakalanya nilai semesta pembicara ini tidak dibatasi
nilai atasnya
c. domain himpunan fuzzy, merupakan keseluruhan nilai yang diizinkan
dalam semesta pembicaraan dan boleh dioperasikan dalam suatu himpunan
fuzzy. Seperti halnya semesta pembicaraan, domain merupakan himpunan
bilangan real yang senantiasa naik (bertambah) secara monoton dari kiri
ke kanan. Nilai domain dapat berupa bilangan positif maupun bilangan
2.1.2 Fungsi Keanggotaan (Membership Function)
Fungsi keanggotaan (Membership Function) adalah suatu kurva yang
menunjukkan pemetaan titik-titik input data ke dalam nilai keanggotaannya
(sering juga disebut dengan derajat keanggotaan) yang memiliki interval antara 0
sampai 1. Salah satu cara yang dapat digunakan untuk mendapatkan nilai
keanggotaan adalah dengan melalui pendekatan fungsi. Ada 2 fungsi yang
digunakan dalam tugas akhir ini, yaitu:
a. representasi kurva segitiga
Kurva segitiga pada dasarnya merupakan gabungan antara 2 garis linear
seperti terlihat pada Gambar 2.1.
Gambar 2.1 Representasi Kurva Segitiga
Representasi kurva segitiga adalah sebagai berikut:
...(2.1)
Untuk menentukan nilai minimum dan maximum fungsi keanggotaan pada
representasi kurva segitiga, dapat menggunakan persamaan dibawah ini.
dimana:
a = nilai domain terkecil yang mempunyai derajat keanggotaan nol
b = nilai domain yang mempunyai derajat keanggotaan satu
c = nilai domain terbesar yang mempunyai derajat keanggotaan nol
x = nilai input yang akan diubah ke dalam bilangan fuzzy
b. representasi kurva trapesium
Kurva trapesium pada dasarnya seperti bentuk segitiga, hanya saja ada
beberapa titik yang memiliki nilai keanggotaan 1. Representasi kurva
travesium dapat dilihat pada Gambar 2.2.
Gambar 2.2 Representasi Kurva Trapesium
Representasi kurva trapesium adalah sebagai berikut:
...(2.3)
Untuk menentukan nilai minimum dan maximum fungsi keanggotaan
pada representasi kurva trapesium, dapat menggunakan persamaan
dibawah ini.
dimana:
a = nilai domain terkecil yang mempunyai derajat keanggotaan nol
b = nilai domain terkecil yang mempunyai derajat keanggotaan satu
c = nilai domain terbesar yang mempunyai derajat keanggotaan satu
d = nilai domain terbesar yang mempunyai derajat keanggotaan nol
x = nilai input yang akan diubah ke dalam bilangan fuzzy
2.1.3 Operator Dasar Fuzzy
Pada logika fuzzy, Ada beberapa operasi yang didefinisikan secara khusus
untuk mengkombinasi dan memodifikasi himpunan fuzzy. Nilai keanggotaan
sebagai hasil dari 2 operasi disebut α-predikat. Ada tiga operator dasar yaitu :
a. operator AND
Operator ini berhubungan dengan operasi interseksi pada himpunan. Hasil
opeasi dengan menggunakan operator AND diperoleh dengan mengambil
nilai keanggotaan terkecil antara 2 himpunan yang bersangkutan.
…....………(2.5)
b. operator OR
Operator ini berhubungan dengan operasi union pada himpunan. Hasil
opeasi dengan menggunakan operator OR diperoleh dengan mengambil
nilai keanggotaan terbesar antara 2 himpunan yang bersangkutan.
...…....……..……(2.6)
c. operator NOT
Operator ini berhubungan dengan operasi komplemen himpunan. Hasil
operasi dengan menggunakan operator NOT diperoleh dengan
...………..(2.7)
2.1.4 Tahapan Membangun Sistem Fuzzy
Pada tahap membangun sistem fuzzy tergantung pada metoda yang akan
digunakan, karena banyak metoda untuk membangun sistem fuzzy. Secara garis
besar dapat tahap membangun sistem fuzzy dilihat pada Gambar 2.3 sebagai
berikut.
Gambar 2.3 Proses Sistem Logika Fuzzy
a. Fuzzyfication
Proses fuzzyfication yaitu mengubah nilai suatu masukan menjadi suatu
fungsi keanggotaan fuzzy. Pada proses ini membership function ditentukan.
Melalui fungsi keanggotaan yang telah disusun maka nilai-nilai masukan
tersebut menjadi informasi fuzzy yang berguna nantinya untuk proses
pengolahan secara fuzzy pula.
b. Fuzzy Logic Inference
mengaplikasikan aturan (Fuzzy Rule) pada masukan fuzzy yang
dihasilkan dalam proses fuzzyfication.
mengevaluasi tiap aturan dengan masukan yang dihasilkan dari
proses fuzzyfication dengan mengevaluasi hubungan atau derajat
keanggotaannya.
c. Defuzzyfication
Proses defuzzyfication merupakan pengubahan kembali data-data fuzzy
kembali ke dalam bentuk numerik yang dapat dikirimkan ke peralatan
pengendalian. Proses defuzzyfication dapat dilakukan dengan beberapa
cara, diantaranya:
centroid of area
......(2.8)
bisector of area
...(2.9)
mean of maximum
...(2.10)
2.1.5 Fuzzy Inference System
Sistem inferensi fuzzy ( Fuzzy Inference System atau FIS ) merupakan
suatu kerangka komputasi yang didasarkan pada teori himpunan fuzzy, aturan
fuzzy berbentuk IF – THEN, dan penalaran fuzzy. Terdapat beberapa jenis FIS,
a. FIS mamdani
FIS yang paling mudah dimengerti, karena paling sesuai dengan naluri
manusia adalah FIS mamdani. FIS tersebut bekerja berdasarkan
kaidah-kaidah linguistik dan memiliki algoritma fuzzy yang menyediakan sebuah
aproksimasi untuk dimasuki analisa matematik. FIS mamdani dapat
dilihat pada Gambar 2.4.
Gambar 2.4 FIS Mamdani
b. FIS sugeno
Penalaran dengan metode sugeno hampir sama dengan penalaran
mamdani, hanya saja keluaran sistem tidak berupa himpunan fuzzy
melainkan berupa konstanta atau persamaan linier. Metoda ini
diperkenalkan oleh Takagi-Sugeno Kang pada tahun 1985. Sistem fuzzy
sugeno memperbaiki kelemahan yang dimiliki oleh sistem fuzzy murni
untuk menambah suatu perhitungan matematika sederhana sebagai bagian
THEN. Pada perubahan ini, sistem fuzzy memiliki suatu nilai rata-rata
tertimbang (Weighted Average Values) di dalam bagian aturan fuzzy
IF-THEN. Sistem fuzzy sugeno juga memiliki kelemahan terutama pada
bagian THEN, yaitu dengan adanya perhitungan matematika sehingga
pengetahuan manusia dengan sebenarnya. FIS sugeno dapat dilihat pada
Gambar 2.5.
Gambar 2.5 FIS Sugeno
2.2 Mikrokontroler ATmega-32
Mikrokontroler merupakan suatu device yang didalamnya sudah
terintegrasi dengan I/O Port, RAM, ROM, sehingga dapat digunakan untuk
berbagai keperluan kontrol. Mikrokontroler AVR Atmega-32 merupakan low
power CMOS mikrokontroler 8-bit yang dikembangkan oleh Atmel dengan
arsitektur RISC (Reduced Instruction Set Computer) sehingga dapat mencapai
throughtput eksekusi instruksi 1 MIPS (Million Instruction Per Second). Bentuk
fisik Atmega-32 dapat dilihat pada Gambar 2.6.
Gambar 2.6 ATmega-32
Karakteristik dari mikrokontroler ini adalah:
Menggunakan arsitektur AVR RISC
- 131 perintah dengan satu clock cycle
Data dan program memori
- 32 Kb In-System Programmable Flash
- 2 Kb SRAM
- 1 Kb In- System EEPROM
8 Channel 10-bit ADC
Two Wire Interface
USART Serial Communication
Master/Slave SPI Serial Interface
On-Chip Oscillator
Watch-dog Timer
32 Bi-directional I/O
Tegangan operasi 2,7 – 5,5 V
Arsitektur AVR ini menggabungkan perintah secara efektif dengan 32
register umum. Semua register tersebut langsung terhubung dengan Arithmetic
Logic Unit (ALU) yang memungkinkan 2 register terpisah diproses dengan satu
perintah tunggal dalam satu clock cycle. Hal ini menghasilkan kode yang efektif
dan kecepatan prosesnya 10 kali lebih cepat dari pada mikrokontroler CISC biasa.
Konfigurasi pin Atmega-32 tersebut dapat dilihat pada Gambar 2.7.
Secara fungsional konfigurasi pin ATMega32 adalah sebagai berikut:
a. VCC, tegangan sumber
b. GND (Ground)
c. Port A (PA7 – PA0)
Port A adalah 8-bit port I/O yang bersifat bi-directional dan setiap pin
memilki internal pull-up resistor. Output buffer port A dapat mengalirkan
arus sebesar 20 mA. Ketika port A digunakan sebagai input dan di pull-up
secara langsung, maka port A akan mengeluarkan arus jika internal
pull-up resistor diaktifkan. Pin-pin dari port A memiliki fungsi khusus yaitu
dapat berfungsi sebagai channel ADC (Analog to Digital Converter)
sebesar 10 bit. Fungsi-fungsi khusus pin-pin port A dapat ditabelkan
seperti yang tertera pada Tabel 2.1.
Tabel 2.1 Fungsi Khusus Port A
Port Fungsi
PA7 ADC input channel 7 (ADC7)
PA6 ADC input channel 6 (ADC6)
PA5 ADC input channel 5 (ADC5)
PA4 ADC input channel 4 (ADC4)
PA3 ADC input channel 3 (ADC3)
PA2 ADC input channel 2 (ADC2)
PA1 ADC input channel 1 (ADC1)
PA0 ADC input channel 0 (ADC0)
d. Port B (PB7 – PB0)
Port B adalah 8-bit port I/O yang bersifat bi-directional dan setiap pin
mengandung internal pull-up resistor. Output buffer port B dapat
dan di pull-down secara external, port B akan mengalirkan arus jika
internal pull-up resistor diaktifkan. Pin-pin port B memiliki fungsi-fungsi
khusus, diantaranya:
SCK port B,bit 7 (input pin clock untuk up/downloading memory)
MISO port B, bit 6 (pin output data untuk uploading memory)
MOSI prt B, bit 5 (pin input untuk downloading memory)
Fungsi-fungsi khusus pin-pin port B dapat ditabelkan seperti pada Tabel
2.2
Tabel 2.2 Fungsi Khusus Port B
Port Fungsi
PB7 SPI Bus Serial Clock (SCK)
PB6 SPI Bus Master Input/Slave Output (MISO) PB5 SPI Bus Master Output/Slave Input (MOSI) PB4 SPI Slave Select Input (SS)
PB3
Analog Comparator Negative Input (AIN1) Timer/Counter0 Output Compare Match Output (OCO)
PB2 Analog Comparator Positive Input (AIN0) External Interrupt 2 Input (INT2)
PB1 Timer/Counter1 External Counter Input (T1)
PB0 Timer/Counter External Counter Input (T0) USART External Clock Input/Output (XCK)
e. Port C (PC7 – PC0)
Port C adalah 8-bit port I/O yang berfungsi bi-directional dan setiap pin
memiliki internal pull-up resistor. Output buffer port C dapat mengalirkan
arus sebesar 20 mA. Ketika port C digunakan sebagai input dan di
pull-up resistor diaktifkan. Fungsi-fungsi khusus pin-pin port C dapat
ditabelkan seperti yang tertera pada Tabel 2.3.
Tabel 2.3 Fungsi Khusus Port C
Port Fungsi
PC7 Timer Oscillator Pin 2 (TOSC2) PC6 Timer Oscillator Pin 1 (TOSC1)
PC5 JTAG Test Data In (TD1)
PC4 JTAG Test Data Out (TD0)
PC3 JTAG Test Mode Select (TMS)
PC2 JTAG Test Clock (TCK)
PC1 Two-wire Serial Bus Data Input/Output Line (SDA)
PC0 Two-wire Serial Bus Clock Line (SCL)
f. Port D (PD7 – PD0)
Port D adalah 8-bit port I/O yang berfungsi bi-directional dan setiap pin
memiliki internal pull-up resistor. Output buffer port D dapat mengalirkan
arus sebesar 20 mA. Ketika port D digunakan sebagai input dan di
pulldown secara langsung, maka port D akan mengeluarkan arus jika
internal pull-up resistor diaktifkan. Fungsi-fungsi khusus pin-pin port D
dapat ditabelkan seperti yang tertera pada Tabel 2.4.
Tabel 2.4 Fungsi Khusus Port D
Port Fungsi
PD7 Timer / Counter2 Output Compare Match Output
(OC2)
PD6 Timer/Counter1 Input Capture Pin (ICP1)
PD5 Timer/Counter1 Output Compare B Match
(OCIB)
PD4 JTAG Test Data Out (TD0)
PD3 External Interrupt 1 Input (INT1)
PD2 External Interrupt 0 Input (INT0)
PD1 USART Output Pin (TXD)
2.3 Sensor Jarak Ultrasonik (SR-04)
Sensor ultrasonik SR-04 adalah sensor yang bekerja berdasarkan prinsip
pantulan gelombang suara dan digunakan untuk mendeteksi keberadaan suatu
objek tertentu di depannya, frekuensi kerjanya pada daerah di atas gelombang
suara dari 40 KHz hingga 400 KHz. Sensor ultrasonik terdiri dari dari dua unit,
yaitu unit pemancar dan unit penerima. Bentuk sensor ultrasonik SR-04 dapat
dilihat pada Gambar 2.8.
Gambar 2.8 Sensor Jarak Ultrasonik (SR-04)
Struktur unit pemancar dan penerima sangatlah sederhana, sebuah kristal
piezoelectric dihubungkan dengan mekanik jangkar dan hanya dihubungkan
dengan diafragma penggetar. Tegangan bolak-balik yang memiliki frekuensi kerja
40 KHz – 400 KHz diberikan pada plat logam. Struktur atom dari kristal
piezoelectric akan berkontraksi (mengikat), mengembang atau menyusut terhadap
polaritas tegangan yang diberikan dan ini disebut dengan efek piezoelectric.
Kontraksi yang terjadi diteruskan ke diafragma penggetar sehingga terjadi
gelombang ultrasonik yang dipancarkan ke udara (tempat sekitarnya). Pantulan
gelombang ultrasonik akan terjadi bila ada objek tertentu dan pantulan gelombang
ultrasonik akan diterima kembali oleh unit sensor penerima. Selanjutnya unit
sensor penerima akan menyebabkan diafragma penggetar akan bergetar dan efek
sama. Untuk lebih jelas tentang prinsip kerja dari sensor ultrasonik dapat dilihat
prinsip dari sensor ultrasonik pada Gambar 2.9.
Gambar 2.9 Cara Kerja Sensor Ultrasonik
Besar amplitudo sinyal elekrik yang dihasilkan unit sensor penerima
tergantung dari jauh dekatnya objek yang dideteksi serta kualitas dari sensor
pemancar dan sensor penerima. Proses sensoring yang dilakukan pada sensor ini
menggunakan metode pantulan untuk menghitung jarak antara sensor dengan
obyek sasaran. Jarak antara sensor tersebut dihitung dengan cara mengalikan
setengah waktu yang digunakan oleh sinyal ultrasonik dalam perjalanannya dari
rangkaian pengirim sampai diterima oleh rangkaian penerima, dengan kecepatan
rambat dari sinyal ultrasonik tersebut pada media rambat yang digunakannya,
yaitu udara.
2.4 Pulse Width Modulation (PWM)
PWM merupakan sebuah metoda untuk membangkitkan sinyal keluaran
yang periodenya berulang antara high atau low dimana kita dapat mengontrol
durasi sinyal high atau low sesua dengan yang kita inginkan. Pengaturan PWM
merupakan salah satu teknik yang banyak digunakan dalam sistem kendali
Gambar 2.10 Sinyal PWM
Duty cycle merupakan perbandingan periode lamanya suatu system
bernilai logika high dan low. Variasi duty cycle ini memberikan harga tegangan
rata–rata yang berbeda–beda. Sinyal PWM dengan duty cycle yang besar memiliki
nilai rata-rata tegangan yang lebih besar dibandingkan dengan duty cycle kecil.
Nilai tegangan yang diberikan sebanding dengan nilai duty cycle yang diberikan.
Adapun rumus duty cycle, yaitu:
...(2.11)
Sedangkan untuk menghitung nilai tegangan rata-rata output dapat dihitung
dengan rumus sebagai berikut:
...(2.12)
Dimana Vtotal merupakan tegangan yang diberikan untuk mengaktifkan motor.
2.5 Motor DC
Motor DC adalah mesin yang mengubah energi listrik arus searah menjadi
Gambar 2.11 Motor DC
Cepat lambatnya motor DC dapat diatur berdasarkan duty cycle yang
diberikan, jika duty cycle pada sinyal PWM besar, maka akan menghasilakan
rata-rata tegangan yang besar pula sehingga motor DC akan berputar cepat, begitu juga
sebaliknya jika duty cycle yang diberikan kecil akan mengahasilkan tegangan
rata-rata yang kecil dan motor DC akan berputar lebih lambat. Pengaturan nilai
tegangan rata-rata tersebut dapat diatur dengan menggunakan persamaan (2.12).
2.6 Motor Servo
Motor servo adalah sebuah motor DC dengan sistem umpan balik tertutup
dimana posisi rotornya akan diinformasikan kembali ke rangkaian kontrol yang
ada di dalam motor servo. Motor ini terdiri dari sebuah motor DC, serangkaian
gear, potensiometer, dan rangkaian kontrol. Potensiometer berfungsi untuk
menentukan batas sudut dari putaran servo. Sedangkan sudut dari sumbu motor
servo diatur berdasarkan lebar pulsa yang dikirim melalui kaki sinyal dari kabel
motor. Pada motor servo biasanya terdapat tiga buah kabel, yang pertama untuk
tegangan masukkan, yang kedua untuk menerima sinyal PWM, dan yang ketiga
Gambar 2.12 Motor Servo
Motor servo ini terbagi menjadi 2 jenis, yaitu :
a. Motor servo standard
Motor servo jenis ini hanya mampu bergerak dua arah yaitu searah
jarum jam dan kebalikan dari arah jarum jam dengan defleksi
masing-masing sudut mencapai 90° sehingga total defleksi sudut dari kanan –
tengah – kiri adalah 180°.
b. Motor servo continous
Motor servo jenis ini mampu bergerak dua arah, yaitu searah jarum jam
dan kebalikan dari arah jarum jam tanpa batasan defleksi sudut putar
(dapat berputar secara kontinyu).
Dari kedua jenis motor servo tersebut, metoda PWM dapat digunakan untuk
menentukan posisi sudut motor, hanya saja terdapat perbedaan pada besarnya arah
puataran motor.
Pada motor servo standard hanya dapat bergerak sebesar 180° yaitu dari
0°-180° atau (-90°)-90°. Secara umum untuk mengakses motor servo tipe standard
adalah dengan cara memberikan pulsa high selama 1,5 ms dan mengulangnya
setiap 20 ms, maka posisi servo akan berada ditengah atau netral (0°). Untuk pulsa
pulsa high selama 2 ms akan bergerak searah jarum jam sebesar 90° seperti
terlihat pada gambar 2.13.
Gambar 2.13 Sinyal Kontrol Motor Servo
Pengaturan pergerakan motor servo continous tidak jauh berbeda dengan
pengaturan pengendalian motor servo standard, secara umum untuk berputar
(rotasi) searah jarum jam harus diberi pulsa high selama 1,3 ms. Sedangkan untuk
berputar berlawanan arah jarum jam harus diberi logika high selama 1,7 ms. Jika
motor servo continous diberi pulsa high selama 1,5 ms maka akan berhenti. Pin
signal pada motor servo dapat dikoneksi ke pin mikrokontroler sebagai pengendali
dari pergerakan motor servo ini.
2.7 Driver Motor L293D
IC L293D adalah IC yang didesain khusus sebagai driver motor DC dan
dapat dikendalikan dengan rangkaian TTL maupun mikrokontroler. Motor DC
yang dikontrol dengan driver IC L293D dapat dihubungkan ke ground maupun ke
sumber tegangan positif karena di dalam driver L293D sistem driver yang
digunakan adalah totem pool. Dalam 1 unit chip IC L293D terdiri dari 4 buah
driver motor DC yang berdiri sendiri sendiri dengan kemampuan mengalirkan
arus 1 Ampere tiap drivernya. Sehingga dapat digunakan untuk membuat driver
H-bridge untuk 2 buah motor DC. Konstruksi pin driver motor DC IC l293D
Gambar 2.14 Driver Motor L293D
Fungsi Pin:
Pin EN (Enable, EN1.2, EN3.4) berfungsi untuk mengijinkan driver
menerima perintah untuk menggerakan motor DC.
Pin In (Input, 1A, 2A, 3A, 4A) adalah pin input sinyal kendali motor DC.
Pin Out (Output, 1Y, 2Y, 3Y, 4Y) adalah jalur output masing-masing
driver yang dihubungkan ke motor DC.
Pin VCC (VCC1, VCC2) adalah jalur input tegangan sumber driver motor
DC, dimana VCC1 adalah jalur input sumber tegangan rangkaian dirver
dan VCC2 adalah jalur input sumber tegangan untuk motor DC yang
dikendalikan.
Pin GND (Ground) adalah jalur yang harus dihubungkan ke ground, pin
GND ini ada 4 buah yang berdekatan dan dapat dihubungkan ke sebuah
pendingin kecil.
Driver motor DC IC L293D ini memiliki fungsi yang lengkap untuk
sebuah driver motor DC sehingga dapat diaplikasikan dalam beberapa teknik
driver motor DC dan dapat digunakan untuk mengendalikan beberapa jenis motor
2.8 Liquid Crystal Display (LCD)
Liquid crystal display (LCD) adalah satu layar bagian dari modul peraga
yang menampilkan karakter yang diinginkan. Layar LCD menggunakan 2 buah
lembaran bahan yang dapat mempolarisasikan dan kristal cair diantara kedua
lembaran tersebut. Arus listrik yang melewati cairan menyebabkan kristal merata
sehingga cahaya tidak dapat melalui setiap kristal. Sehingga dapat mengubah
bentuk kristal cairnya membentuk tampilan angka atau huruf pada layar.
Dalam tugas akhir ini LCD digunakan untuk menampilkan jarak antara
mobil dengan hambatan di depannya, sebagai indikator kecepatan, sebagai
indikator nilai PWM, dan sebagai indikator nilai persentase rem hasil perhitungan
logika fuzzy . Bentuk LCD 16x2 ini dapat dilihat pada Gambar 2.15.
Gambar 2.15 16x2 Character LCD Module
2.9 Rotary Encoder
Rotary encoder adalah perangkat elektromekanik yang dapat memonitor
gerakan dan posisi. Rotary encoder umumnya menggunakan sensor optik untuk
menghasilkan serial pulsa yang dapat diartikan menjadi gerakan, posisi, dan arah.
Sehingga posisi sudut suatu poros benda berputar dapat diolah menjadi informasi
Rotary encoder tersusun dari suatu piringan tipis yang memiliki
lubang-lubang pada bagian lingkaran piringan. LED ditempatkan pada salah satu sisi
piringan sehingga cahaya akan menuju ke piringan. Di sisi yang lain suatu
photo-transistor diletakkan sehingga photo-photo-transistor ini dapat mendeteksi cahaya dari
LED yang berseberangan. Piringan tipis tadi dikopel dengan poros motor, atau
perangkat berputar lainnya yang ingin kita ketahui posisi atau kecepatannya,
sehingga ketika motor berputar piringan juga akan ikut berputar. Apabila posisi
piringan mengakibatkan cahaya dari LED dapat mencapai photo-transistor melalui
lubang-lubang yang ada, maka photo-transistor akan mengalami saturasi dan akan
menghasilkan suatu pulsa. Semakin banyak deretan pulsa yang dihasilkan pada
satu putaran menentukan akurasi rotary encoder tersebut, akibatnya semakin
banyak jumlah lubang yang dapat dibuat pada piringan menentukan akurasi rotary
encoder tersebut. Cara kerja dari rotary encoder dapat dilihat pada Gambar 2.16.
Gambar 2.16 Cara Kerja Rotary Encoder
Untuk mengetahui kecepatan putar dari pulsa yang dihasilkan oleh rotary encoder
tersebut, maka dapat dituliskan dalam persamaan berikut:
dengan,
= kecepatan benda (m/s)
= jari-jari (m)
= jumlah pulsa dalam 1 detik
= jumlah lubang piringan rotary encoder
2.10 Remote Control (TX – RX)
Remote Control gelombang radio terdiri dari 2 bagian, yaitu pesawat
pemancar (TX) dan pesawat penerima (RX). Pada rangkaian pesawat pemancar
menggunakan IC TX-2B dan pada rangkaian pesawat penerima menggunakan IC
RX-2B. Sepasang IC ini memiliki 5 fungsi kerja yang biasanya digunakan untuk
mengoperasikan mobil-mobilan dengan remote control. Pada remote control
fungsi ini digunakan supaya mobil bergerak maju-mundur, berbelok ke kiri, dan
berbelok ke kanan. Output IC TX-2B diletakkan sebagai input bagi pesawat
pemancar. Sedangkan IC RX-2B diletakkan sebagai penerjemah di pesawat
penerima. Bentuk fisik IC TX-2B dan IC RX-2b dapat dilihat pada Gambar 2.17
dan Gambar 2.18.
Gambar 2.18 Bentuk Fisik IC RX-2B
IC TX-2B memiliki 14 pin, sedangkan IC RX-2B memiliki 16 pin. Setiap
pin fungsi pada IC TX-2B berpasangan dengan pin fungsi pada IC RX-2B. Untuk
konfigurasi fungsi pin IC TX-2B dan RX-2B dapat dilihat pada Gambar 2.19.
Gambar 2.19 Konfigurasi Fungsi Pin-Pin IC TX-2B dan RX-2B
IC TX-2B mempunyai karakteristik supply tegangan sebesar 0,3 – 5 ,0
volt. Tegangan operasional antara 1,5 – 5 volt. Arus maksimal yang mengalir 2
mA. Sedanglan IC RX-2B memiliki tegangan operasional antara 1,5 – 5,0 volt
dan arus operasional maksimum 3,0 mA. Fungsi dari setiap pin IC TX-2B
Tabel 2.5 Pin-Pin IC TX-2B
Pin Simbol Keterangan
1 Fungsi 1 Jika terhubung GND, mengaktifkan F 1 di RX
2 Test B Dipakai untuk menguji IC
3 GND Untuk dihubungkan ke negatif
4 Fungsi 2 Jika terhubung ke GND, mengaktifkan F 2 di RX
5 Fungsi 3 Jika terhubung ke GND, mengaktifkan F 3 di RX
6 Fungsi 4 Jika terhubung ke GND, mengaktifkan F 4 di RX
7 SC Sinyal terkode dengan frekuensi pembawa
8 SO Sinyal terkode tanpa frekuensi pembawa
9 VDD Untuk dihubungkan ke positif power supply
10 PC Dihubungkan ke LED sebagai indikator output
11 OSC0 Kaki keluaran Osilator
12 OSC1 Kaki masukan Osilator
13 FOSC Dipakai untuk menguji IC
14 Fungsi 5 Jika terhubung ke GND, mengaktifkan F 5 di RX
Cara kerja IC TX-2B adalah bila pin fungsi 1 pada IC TX-2B terhubung
dengan GND (sumber negatif), maka akan keluar sinyal dari pin fungsi 1 pada IC
RX-2B. Fungsi dari setiap pin IC TX-2B terdapat pada Tabel 2.6.
Tabel 2.6 Pin-Pin IC RX-2B
Pin Simbol Keterangan
1 VO 2 Inverter pin 2 output untuk penguat daya
2 GND Untuk dihubungkan ke negatif (ground)
3 SI Pin input sinyal terkode
4 OSC1 Kaki masukan osilator
5 OSC0 Kaki keluaran osilator
6 Fungsi 1 Aktualisasi F1 dari TX
7 Fungsi 5 Aktualisasi F5 dari TX
8 ROB Jika dihubungkan ke GND, menonaktifkan pin 6
9 LDB Jika dihubungkan ke GND, menonaktifkan pin 7
13 Fungsi 2 Aktualisasi F2 dari TX
11 Fungsi 3 Aktualisasi F3 dari TX
12 Fungsi 4 Aktualisasi F4 dari TX
13 VDD Untuk dihubungkan ke positif power supply
14 VI 1 Inverter pin 1 input untuk penguat daya
15 VO 1 Invrter pin 1 output untuk penguat daya
2.11 Komparator
Komparator secara harfiah berarti membandingkan, dalam hal ini adalah
membandingkan dua macam tegangan pada kedua masukannya. Dalam
prakteknya tegangan yang satu dicatu oleh suatu acuan (reference) yang besarnya
tetap, sedangkan yang lainnya oleh suatu masukan tegangan yang variable,
bilamana tersambung (on). Apabila masukan non inverting lebih positif dari
masukan inverting-nya, maka akan diperoleh keluaran maksismum positif. Dan
bilamana masukan inverting lebih positif dibandingkan masukan non
invertingnya, maka akan diperoleh keluaran maksimum negatif.
Komparator adalah suatu penguat operasional (opamp). Penguat
operasional adalah penguat dengan gain tinggi dan terhubung secara langsung.
Penguat ini biasanya digunakan untuk menguatkan sinyal berjalur frekuensi lebar
dan digunakan bersama jaringan umpan balik eksternal. Penguat operasional
memiliki 5 terminal dasar, yaitu 2 untuk memberikan daya, 2 untuk masukan dan
satu untuk keluaran. Bentuk Fisik IC LM393N dapat dilihat pada Gambar 2.20.
Gambar 2.20 Bentuk Fisik IC LM393N
Cara yang termudah untuk menggunakan suatu penguat operasional
adalah loop terbuka (tidak ada resistor umpan balik), seperti ditunjukkan dalam
gambar 2.21(a) karena penguat yang tinggi dari penguat operasional tegangan
(swing) output maksimum. Misalnya, jika V1 lebih besar daripada V2, tegangan
kesalahan adalah positif dan tegangan output menuju harga positif maksimum
secara tipikal 1 sampai 2 V kurang dari tegangan catu. Jika V1 lebih kecil dari V2,
tegangan output berayun ke tegangan negatif maksimum.
Verror
Gambar 2.21(b) meringkaskan gerak tersebut. Tegangan kesalahan positif
mendorong output ke +VSAT harga maksimum dari tegangan output. Tegangan
kesalahan negatif menimbulkan tegangan output –VSAT. Jika sebuah penguat
operasional digunakan seperti ini, maka disebut komparator karena semua yang
dapat dilakukannya adalah membandingkan V1 dan V2 yang menghasilkan output
positif atau negatif jenuh, tergantung pada apakah V1 lebih besar atau lebih kecil
daripada V2. Konfigurasi pin IC LM393N dapat dilihat pada Gambar 2.22. Untuk
fungsi dari setiap pin IC LM393N terdapat pada Tabel 2.7.
Komparator yang digunakan dalam tugas akhir ini adalah LM 393N. IC ini
mempunyai kemampuan untuk menghasilkan dua keluaran (output) untuk dibaca
oleh mikrokontroler.
Tabel 2.7 Fungsi Pin-Pin IC LM393N
Pin Keterangan
1 Output 1
2 Inverting Input 1
3 Non-Inverting Input 1
4 Gnd
5 Non-Inverting Input 2
6 Inverting Input 2
7 Output 2
8 Vcc
2.12 Pemrograman Bahasa C
Bahasa pemrograman yang digunakan dalam tugas akhir ini adalah
program Bahasa C. Bahasa pemrograman Bahasa C dikenal sebagai bahasa
pemrograman handal, cepat, mudah, dan tergolong ke dalam bahasa pemrograman
tingkat menengah. Konstruksi dari program bahasa C harus mengikuti aturan
sebagai berikut.
a. Komentar
Komentar digunakan untuk memberi keterangan pada program agar
mudah dibaca dan akan diabaikan oleh compiler.
Contoh penulisan :
// hanya satu ini sebelum enter yang dianggap komentar.
\* kata-kata yang berbeda dalam tanda garis miring dengan bintang
b. Preprocessor
Biasanya digunakan untuk menyertakan file header (.h) atau file library.
File include berguna untuk memberitahu compiler agar membaca file
yang di include- kan lebih dahulu agar mengenali definisi-definisi yang
digunakan dalam program sehingga tidak dianggap error.
Cara penulisan:
#include <………….> untuk lokasi standar file yang telah disetting oleh
tools biasanya pada folder include atau folder directori complier.
#include”………….” Untuk lokasi file yang yang kita tentukan sendiri.
File header io.h adalah file yang segala informasi/definisi tentang
register-register fungsi khusus (SFR) dan bit-bit atau pin-pin
mikrokontroler AVR.
c. Pengenal (Identifier)
Pengenal digunakan untuk memberi nama variabel, konstanta, dll. Bahasa
C bersifat case sensitive (huruf kapital dan huruf kecil dianggap berbeda).
Konstruksi pengenal adalah huruf, angka, garis bawah ( _ ). Tiap
pengenal bisa menggunakan gabungan ketiga hal tersebut dengan catatan
tidak boleh diawali dengan angka.
Cara penulisan:
Menit //benar
MeniT //benar dan berbeda dengan pengenal Menit
60detik //salah
d. Variabel
Variabel adalah tempat untuk menyimpan dan mengakses data yang
mewakili memori dalam mikrokontroler. Variabel harus dideklarasikan
(memberitahu kompiler) dengan tipe data beserta nama variabel yang
akan digunakan.Tiap tipe data mempunyai jangkauan bilangan yang
dapat disimpan, hal ini akibat dari byte memori yang dipesan dan bentuk
bilangan bertanda atau tidak. Seperti pada Tabel 2.8 berisi jenis tipe data
dan banyaknya bilangan yang dapat ditampung.
Tabel 2.8 Tipe Data
Signed long 3 32 -2147483648 2147483647
Unsigned long 3 32 0 4294967295
Float 3 32 1.28E-38 3.4E38
e. Operator
Operator adalah karakter-karakter khusus untuk memanipulasi variable.
Operand adalah variabel atau konstanta yang merupakan bagian dari
pernyataan.
Aritmatika :
+ adalah penjumlahan.
- adalah pengurangan.
/ adalah pembagian.
++ adalah increment.
-- adalah decrement.
Logika :
== adalah logika sama dengan.
!= adalah logika tidak sama dengan.
< adalah logika lebih kecil.
<= adalah logika lebih kecil sama dengan.
> adalah logika lebih besar.
>= adalah logika lebih besar sama dengan.
! adalah logika not.
&& adalah logika AND.
|| adalah logika OR.
Manipulasi Bit :
~ adalah mengkomplementkan.
& adalah mengANDkan.
| adalah mengORkan.
^ adalah mengXORkan.
<< adalah shift left.
f. Kontrol Aliran Program
Untuk mencerdaskan sebuah program, maka diperlukan algoritma dimana
terdiri dari berbagai pengendalian aliran program.
If (...){…}
Digunakan untuk mengecek satu kondisi satu blok jawaban.
If (…) {…} else {…}
Digunakan untuk mengecek satu kondisi dua blok jawaban.
If (…) {…} else if (…) {…} else {…}
Digunakan untuk mengecek beberapa kondisi yang berkaitan.
While (…) {…}
Digunakan untuk perulangan/looping/iterasi jika kondisi yang diuji
bernilai benar.
Do {…} while (…)
Digunakan untuk perulangan/looping/iterasi jika kondisi yang diuji
bernilai benar. Perbedaanya dengan while tanpa do adalah blok di
eksekusi terlebih dahulu baru diuji, hal ini dapat terjadi
kemungkinan yang diuji salah namun blok tetap di eksekusi.
For (… ; … ; … ;…) {…}
Digunakan untuk perulangan/looping/iterasi jika kondisi dan syarat
39
Dalam perancangan dan pembuatan suatu perangkat elektronik, pemilihan
jenis komponen harus dilakukan karena berdampak langsung pada tingkat
efisiensi dan efektifitas perangkat yang dibuat. Beberapa hal yang perlu
diperhatikan diantaranya ukuran dimensi komponen, keakuratan komponen pada
saat bekerja, kualitas komponen, serta pengeluaran biaya untuk komponen
tersebut.
Selain pemilihan komponen, perancangan dan realisasi sistem merupakan
bagian yang terpenting dari seluruh pembuatan tugas akhir ini. Perancangan yang
baik dan dilakukan secara sistematik akan memberikan kemudahan dalam proses
pembuatan alat serta mempermudah dalam proses analisis dari alat yang dibuat.
Pada bab ini akan dijelaskan tentang perancangan sistem baik hardware maupaun
software beserta alasan pemilihan komponen yang digunakan.
3.1 Perancangan Sistem
Pada perancangan sistem pengereman mobil otomatis ini, secara umum
terdapat tiga bagian utama yaitu bagian masukan (input), proses (process), dan
keluaran (output) seperti terlihat pada Gambar 3.1. Setiap bagian dari sistem
mempunyai fungsi masing-masing yang akan saling berkaitan dalam sistem
Gambar 3.1 Blok Diagram Sistem Pengereman Mobil Otomatis
Secara umum, cara kerja dari pengereman mobil otomatis yang akan
dirancang dalam tugas akhir ini adalah ketika sensor rotary encoder mendeteksi
kecepatan mobil pada saat melaju dan sensor ultrasonik SR-04 mendeteksi adanya
penghalang dengan jarak tertentu, maka secara otomatis mikrokontroler akan
memproses masukan dari sensor rotary encoder dan sensor ultrasonik SR-04
tersebut yang telah terintegrasi dengan mikrokontroler untuk menentukan
pengereman secara otomatis. Selain itu dalam tugas akhir ini mobil prototype
dikendalikan melalui remote control. Berikut ini uraian singkat fungsi dari
masing-masing bagian utama blok diagram sistem pengereman otomatis berbasis
mikrokontroler ATmega32 menggunakan logika fuzzy.
3.1.1 Masukan (input)
Pada bagian masukan (input) terdapat perangkat yang berfungsi untuk
memberikan masukan bagi mikrokontroler sesuai dengan fungsinya. Masukan
(input) dari sistem ini terdiri dari sensor rotary encoder, sensor ultrasonik SR-04,
a. Sensor rotary encoder
Sensor ini adalah jenis sensor kecepatan yang bekerja dengan cara
menghasilkan pulsa dari ouptocoupler yang membaca piringan tipis yang
memiliki lubang-lubang pada bagian lingkaran piringan. Piringan tersebut
menempel pada poros roda yang digerakan oleh motor DC. Sensor ini
berfungsi untuk mendeteksi kecepatan mobil pada saat melaju.
b. Sensor ultrasonik SR-04
Sensor ini adalah jenis sensor jarak yang bekerja dengan cara
memancarkan gelombang ultrasonik. Sensor ini berfungsi sebagai
pendeteksi adanya mobil lain atau rintangan (obstacle) di depan mobil .
c. Remote control pemancar (TX) dan penerima (RX)
Remote control yang digunakan pada tugas akhir ini adalah remote control
gelombang radio yang terdiri dari pemancar (TX) dan penerima (RX).
Remote control ini terdapat lima buah fungsi kerja. Fungsi kerja tersebut
digunakan untuk mengendalikan mobil agar bergerak maju, untuk
mengendalikan mobil agar bergerak mundur, untuk menentukan mode
dimana apabila mode menyala maka tombol kanan/kecepatan- digunakan
untuk mengurangi kecepatan mobil, dan tombol kiri/kecepatan+ digunakan
untuk menambah kecepatan mobil. Sedangkan apabila mode mati maka
tombol kanan/kecepatan- digunakan untuk memberi perintah agar mobil
berbelok ke arah kanan, dan tombol kiri/kecepatan+ digunakan untuk
d. Komparator
Pada tugas akhir ini komparator digunakan untuk memastikan tegangan
keluaran dari remote control penerima, apakah tegangan tersebut bernilai 1
(5V) atau 0 (0V). Ini dikarenakan pada saat remote control pemancar salah
satu fungsi kerjanya dijalankan maka tegangan keluaran pada remote
control penerima adalah sekitar 2V, sedangkan apabila fungsi kerjanya
tidak dijalankan maka tegangan keluaran pada remote control penerima
adalah 0V. Sehingga untuk membuat tegangan keluaran pada remote
control pemancar berlogika 1 (5V) dan 0 (0V) digunakanlah komparator.
3.1.2 Pemroses (Process)
Mikrokontroler AVR ATmega 32 digunakan sebagai perangkat utama
untuk mengontrol sistem pengereman mobil otomatis menggunakan logika fuzzy
ini. Mikrokontroler akan memproses masukan baik dari sensor ultrasonik, sensor
rotary encoder, dan remote control yang kemudian memberikan keputusan
output berupa arah putaran motor DC maju atau mundur, mengatur kecepatan
motor DC, arah putaran motor servo, dan menampilkan informasi ke dalam LCD.
3.1.3 Keluaran (Output)
Bagian keluaran adalah bagian yang merupakan hasil eksekusi perangkat
dan bertindak sebagai hasil dari kinerja perangkat sesuai dengan keinginan
perancang. Pada blok diagram terdapat 3 buah output berupa motor DC, LCD
16x2, dan motor servo, berikut penjelasan dari masing-masing output yang
a. Motor DC (penggerak roda mobil dan penggerak steer)
Motor DC pertama digunakan sebagai penggerak mobil agar mobil dapat
bergerak maju dan mundur, sedangkan motor DC kedua digunakan
sebagai penggerak steer agar mobil dapat berbelok ke arah kanan atau kiri.
Motor DC dikendalikan arah putaran dan kecepatannya melalui IC L293D
yang berguna sebagai driver motor dan pengaturannya dilakukan melalui
eksekusi program pada mikrokontroler ATmega32.
b. LCD 16x2
LCD 16x2 bertindak sebagai indikator kecepatan dan jarak antara mobil
dan hambatan (obstacle) di depannya dan pengaturan melalui eksekusi
program pada mikrokontroler ATmega32.
c. Motor servo (pengereman roda mobil)
Motor servo bertindak sebagai pengontrolan rem secara mekanis. Input
dari sensor ultrasonik dan sensor rotary encoder ke mikrokontroler akan
menghasilkan output berupa besarnya sudut motor servo. Pergerakan sudut
motor servo tersebut menjadi besaran persentase rem.
3.2 Pemilihan Komponen
Pada pemilihan komponen, yang menjadi latar belakang perbandingan
dan pemilihan jenis komponen yang diuraikan pada bab ini dilakukan dengan cara
membandingkan komponen-komponen yang digunakan pada rangkaian sistem
kontrol elektronik pengereman mobil otomatis yang sudah ada sebelumnya
yang pada dasarnya mempengaruhi kinerja dari komponen tersebut terhadap
aplikasi pengereman mobil otomatis yang akan dirancang.
3.2.1 Pemilihan Jenis Sensor Jarak
Sensor jarak berfungsi untuk mendeteksi jarak antara mobil dengan
hambatan. Pada sistem pengereman otomatis ini jarak maksimum yang
dibutuhkan untuk mendeteksi mobil dengan hambatan adalah 200 cm. Selain itu,
jarak yang dideteksi oleh sensor harus memiliki keakuratan yang cukup tinggi.
Tabel 3.1. Uraian Perbandingan Jenis Sensor Jarak
Spesifikasi Indikator Sensor Tidak ada Tidak ada Ada
Frekuensi Brust - 40kHz 40kHz
Harga Rp 220.000 Rp 40.000 Rp 350.000
Berikut Tabel 3.1 berisi perbandingan antara beberapa jenis sensor jarak. Pada
perancangan sistem pengereman otomatis ini, sensor jarak yang digunakan adalah
sensor ultrasonik SR-04. Pemilihan tersebut berdasarkan rentang jarak pantul dan
harga yang relatif lebih murah.
3.2.2 Pemilihan Jenis Mikrokontroler
Mikrokontroler berfungsi untuk mengolah data yang masuk dari sensor
dan kemudian memberikan perintah kepada actuator. Mikrokontroler yang
digunakan harus memiliki memory flash dan RAM yang cukup besar, karena pada
dilakukan cukup banyak. Selain itu, mikrokontroler harus mempunyai pin I/O
yang cukup untuk terhubung ke sensor atapun ke actuator.
Tabel 3.2 Uraian Perbandingan Jenis Mikrokontroler
Spesifikasi Jenis Mikrokontroler
Berikut Tabel 3.2 berisi perbandingan antara beberapa jenis
mikrokontroler. Pada perancangan sistem pengereman otomatis ini,
mikrokontroler yang digunakan adalah mikrokontroler ATMega 32. Pemilihan
tersebut berdasarkan memory flash dan RAM yang lebih besar sehingga
mempengaruhi kecepatan akses data sementara pada mikrokontroler.
3.2.3 Pemilihan Jenis LiquidCrystalDisplay (LCD)
LCD berfungsi untuk menampilkan jarak yang dideteksi, nilai PWM,
kecepatan mobil, dan nilai persentase rem yang dilakukan. Semua informasi
tersebut harus ditampilkan dalam satu LCD, sehingga informasi tersebut
ditampilkan secara real time.
Tabel 3.3 Uraian Perbandingan Jenis Liquid Crystal Display (LCD)
Spesifikasi Jenis LCD
LCD 16x1 LCD 16x2 LCD 16x4
Karakter 16 32 64
Baris 1 2 4
Pada Tabel 3.3 dapat dilihat perbandingan antara beberapa jenis LCD.
LCD yang digunakan pada perancangan sistem pengereman otomatis ini adalah
LCD dengan jumlah karakter 16x2. Pemilihan tersebut berdasarkan jumlah
karakter yang dapat menampilkan semua informasi yang akan ditampilkan secara
bersamaan.
3.2.4 Pemilihan Jenis Motor Servo
Motor servo berfungsi sebagai pengatur rem pada prototype mobil. Motor
servo yang digunakan harus memiliki torsi yang besar, sehingga motor servo
tersebut mampu untuk melakukan pengereman hingga roda pada prototype
behenti berputar.
Tabel 3.4 Uraian Perbandingan Jenis Motor Servo
Spesifikasi
Pada Tabel 3.4 dapat dilihat perbandingan jenis motor servo. Pada
perancangan sistem pengereman otomatis ini motor servo yang digunakan adalah
TowerPro High Torque MG996R. Pemilihan tersebut berdasarkan putaran motor
servo sebesar 180° dan torsi yang dihasilkan oleh motor servo tersebut cukup
3.2.5 Pemilihan Jenis IC Driver Motor
Driver motor berfungsi untuk mengendalikan arah putaran motor DC dan
juga kecepatan motor DC tersebut. Motor yang akan dikendalikan memiliki arus
yang cukup kecil, sehingga driver motor yang digunakan harus mampu
mengalirkan arus pada motor tersebut.
Tabel 3.5 Uraian Perbandingan Jenis IC Driver Motor
Spesifikasi Jenis Driver Motor IC L293D IC L298N Arus Maksimal 1 A 4 A
Harga Rp 18.000 Rp 22.500
Berikut Tabel 3.5 berisi perbandingan antara beberapa jenis driver motor.
Pada perancangan sistem pengereman otomatis ini, driver motor yang digunakan
adalah IC L293D. Pemilihan tersebut berdasarkan nilai arus maksimum yang
dapat dialirkan oleh IC L293D. Selain itu harga dari IC L293D yang relatif lebih
murah.
3.2.6 Pemilihan Jenis Sensor Kecepatan
Sensor kecepatan berfungsi untuk mendeteksi kecepatan mobil pada saat
melaju. Motor DC yang digunakan untuk menggerakkan mobil memiliki
kecepatan putaran sebesar 300rpm. Sehingga sensor yang digunakan harus
mampu mendeteksi kecepatan putaran tersebut. Selain itu, bentuk dari sensor yang
Tabel 3.6 Uraian Perbandingan Jenis Sensor Kecepatan
maksimum 1.500Hz 300.000Hz 30.000KHz Maksimum rpm 2.500rpm 5.000rpm 5000rpm
Harga Rp 60.000 Rp 650.000 Rp 850.000 Pada Tabel 3.6 dapat dilihat perbandingan dari jenis sensor kecepatan.
Berdasarkan tabel tersebut, pada perancangan sistem pengereman otomatis ini
sensor kecepatan yang digunakan adalah DI-Rotary Encoder.
3.2.7 Pemilihan Jenis Komparator
Rangkaian komparator berfungsi untuk membandingkan antara tegangan
yang masuk dari penerima modul RF dengan tegangan referensi. Pada umumnya
rangkaian komparator menggunakan sebuah komponen Operasional Amplifier
(Op-Amp). Op-Amp yang digunakan harus dapat bekerja tanpa catuan ganda,
misalnya +12V dan -12V. Selain itu harus hemat daya dengan arus yang kecil
sehingga cocok untuk catu daya dengan menggunakan baterai.
Tabel 3.7 Uraian Perbandingan Jenis IC Op-Amp Sebagai Komparator
Spesifikasi Tipe IC Komparator
Berikut Tabel 3.7 berisi perbandingan jenis IC Op-Amp yang digunakan
sebagai komparator. Berdasarkan tabel tersebut, pada perancangan sistem
pengereman otomatis ini IC Op-Amp yang digunakan adalah IC LM393N.
3.3 Perancangan Mekanik Pada Mobil
Dalam perancangan sistem pengereman otomatis pada tugas akhir ini akan
dimodelkan pada mobil-mobilan remote control. Model mobil-mobilan yang
dirancang memiliki 1 buah sensor ultrasonik sebagai pendeteksi jarak, 1 buah
sensor rotary encoder sebagai pendeteksi kecepatan mobil pada saat melaju, 2
buah motor DC sebagai penggerak mobil dan pengatur steer, 1 buah motor servo
sebagai pengereman mobil, 1 buah driver motor, 1 buah LCD sebagai indikator, 1
buah penerima (RX) modul RF sebagai komunikasi pengendalian mobil, dan 1
buah sistem minumum ATmega 32 sebagai pusat pengendalian mobil seperti
terlihat pada Gambar 3.2. Untuk prototype mobil dapat dilihat pada Gambar 3.3.
Gambar 3.3 Prototype Mobil
Penempatan sensor ultrasonik yaitu hampir berada di tengah dengan jarak
18cm dari depan prototype mobil. Penempatan ini berhubungan dengan jangkauan
dari sensor ultrasonik tersebut, sehingga jangkauan dari sensor ultrasonik
mencakup lebar keseluruhan dari prootype mobil. Untuk tuas rem yaitu
menggunakan lempengan besi yang terhubung dengan motor servo. Pada ujung
lempengan tersebut ditempelkan sebuah kanvas rem, sehingga apabila motor
servo berputar maka lempengan besi tersebut akan bergerak naik turun dan kanvas
rem menyentuh roda prototype mobil sehingga melakukan pengereman seperti
terlihat pada Gambar 3.4.
3.4 Perancangan Perangkat Keras (Hardware)
Pada perancangan perangkat keras (hardware) pengereman otomatis ini,
dilakukan perancangan sistem kontrol yang meliputi pembuatan
rangkaian-rangkaian elektronik yang saling terintegrasi membentuk sistem kendali dengan
tujuan mengendalikan kerja sistem pengereman mobil agar dapat bekerja secara
otomatis.
3.4.1 Rangkaian Sistem Minimum Mikrokontroler AVR ATmega 32
Sistem minimum ATmega 32 adalah rangkaian yang dikhususkan untuk
mengoperasikan IC ATmega 32. Mikrokontroler inilah yang nantinya akan
digunakan sebagai pusat pengendalian pengereman otomatis ini. Berikut Gambar
3.5 skematik dari rangkaian sistem minimum mikrokontroler ATmega 32.
3.4.2 Rangkaian Sensor Ultrasonik SR-04
Sensor jarak menggunakan ultrasonik SR-04 adalah jenis sensor yang
terdiri dari pemancar ultrasonik (transmitter) dan penerima ultrasonik (receiver).
Sensor ini bekerja dengan cara menghitung pantulan gelombang yang
dibangkitkan oleh pemancar kepada obyek dan akan diterima oleh penerima
ultrasonik. Ultrasonik SR-04 ini memiliki jarak deteksi dari 3cm hingga 500cm.
Hasil output dari sensor ultrasonik berupa sinyal digital sehingga dapat langsung
diproses oleh mikrokontroler. Rangkaian ultrasonik SR-04 ini dapat dilihat pada
Gambar 3.6.
Gambar 3.6 Rangkaian Ultrasonik 3.4.3 Rangkaian Driver Motor (L293D)
Untuk rangkaian driver motor menggunakan IC L293D yang didalamnya
terdapat dua rangkaian H-bridge. Komponen ini bisa mengendalikan 2 buah motor
DC mulai dari mengatur kecepatan dan juga arah putaran motor DC. Selain itu IC
L293D mampu mengalirkan tegangan sampai 36 VDC dengan arus sebesar 1,2A
.
Gambar 3.7 Rangkaian Driver Motor Menggunakan L293D 3.4.4 Rangkaian Liquid Crystal Display (LCD)
Dalam perancangan pengereman mobil otomatis pada tugas akhir ini,
digunakan Liquid Crystal Display (LCD) dengan jumlah karakter 16x2. LCD
digunakan sebagai indikator jarak, kecepatan, nilai PWM dan nilai keluaran rem
hasil logika fuzzy. Rangkaian dari LCD ini dapat dilihat pada Gambar 3.8.
Gambar 3.8 Rangkaian Liquid Crystal Display (LCD) 3.4.5 Rangkaian Motor Servo
Dalam perancangan pengereman mobil otomatis pada tugas akhir ini,
digunakan motor servo sebagai penggerak untuk melakukan pengereman pada
prototype mobil. Motor servo yang digunakan adalah motor servo standard. Motor
servo jenis ini hanya mampu bergerak dua arah (CW dan CCW) dengan defleksi
masing-masing sudut mencapai 90° sehingga total defleksi sudut dari kanan –
Servo analog dan digital memiliki tiga kabel. Satu kabel untuk catu positif,
biasanya DC 5-6 Volt. Kabel kedua untuk ground, dan kabel ketiga merupakan
kabel sinyal. Mikrokontroler berkomunikasi dengan motor servo melalui kabel
ini, yang mengirimkan sinyal berupa pulsa. Rangkaian dari motor servo ini dapat
dilihat pada Gambar 3.9.
Gambar 3.9 Rangkaian Motor Servo
3.4.6 Rangkaian Rotary Encoder
Dalam perancangan pengereman mobil otomatis pada tugas akhir ini,
digunakan rotary encoder untuk mengukur kecepatan prototype mobil pada saat
melaju. Rotary encoder terdiri dari LED dan photo-transistor yang akan
mengalami perubahan logika bila terjadi perubahan intensitas cahaya yang
dipancarkan oleh pemancar (LED infra merah) untuk penerima, perubahan
intensitas cahaya tersebut dihasilkan oleh piringan yang sepanjang sisi dari
piringan tersebut memiliki lubang. Rangkaian rotary encoder untuk mengukur
kecepatan dapat dilihat pada Gambar 3.10.
3.4.7 Rangkaian Komparator
Dalam perancangan pengereman mobil otomatis pada tugas akhir ini,
digunakan rangkaian komparator untuk menentukan keluaran dari rangkaian
receiver modul RF termasuk ke dalam logika high atau low. IC yang digunakan
pada rangkaian komparator ini adalah IC LM393N. Untuk skematik rangkaian
komparator dapat dilihat pada Gambar 3.11.
Gambar 3.11 Rangkaian Komparator
3.4.8 Rangkaian Transmitter dan Receiver Modul RF (Radio Frequency)
Dalam perancangan pengereman mobil otomatis pada tugas akhir ini,
digunakan Modul RF (Radio Frequency) untuk mengendalikan prototype mobil.
Prototype mobil dikendalikan agar dapat menerima perintah maju, mundur,
Modul RF (radio Frequency) ini terdiri dari transmitter sebagai pengirim
dan receiver sebagai penerima. Untuk transmitter menggunakan IC TX-2B dan
untuk receiver menggunakan IC RX-2B. Skematik rangkaian transmitter dapat
dilihat pada Gambar 3.12 dan untuk rangkaian receiver dapat dilihat pada Gambar
3.13.
Gambar 3.12 Rangkaian Transmitter Modul-RF
3.5 Gambaran Sistem
Pada sistem ini prototype mobil dikendalikan oleh remote control dengan
memberikan perintah maju, mundur, menambah kecepatan, mengurangi
kecepatan, belok kanan maupun belok kiri. Pada saat mobil melaju dan secara
tiba-tiba ada hambatan di depan mobil maka sensor ultrasonik akan
mengidentifikasi jarak antara mobil dengan hambatan tersebut. Selain itu rotary
encoder pun akan mengidentifikasi kecepatan mobil pada saat melaju. Jarak dan
kecepatan ini lah yang akan diproses oleh mikrokontroler dengan menggunakan
kontrol logika fuzzy, yang kemudian hasil dari perhitungan kontrol logika fuzzy
tersebut berupa persentase rem. Persentase rem tersebut oleh mikrokontroler
digunakan untuk memberi perintah pada motor servo (pengontrol rem) dan
melakukan pengereman secara otomatis. Pada saat mobil melaju dengan
kecepatan tinggi seperti pada saat jalanan lengang dan secara tiba-tiba sensor
ultrasonik mengidentifikasi hambatan maka dari jarak jauh pengereman otomatis
sudah dilakukan secara perlahan untuk mengurangi kecepatan laju mobil tersebut
sehingga ketika posisi mobil semakin dekat dengan hambatan, mobil baru akan
akan melakukan pengereman secara penuh sehingga tidak mengurangi
kenyamanan dan keselamatan pada saat berkendara seperti pada Gambar 3.15.
Selain itu, pada saat mobil melaju dengan kecepatan lambat seperti pada saat
jalanan dalam keadaan macet, pengereman akan dilakukan pada jarak yang lebih
dekat sehingga mobil akan langsung melakukan pengereman secara penuh seperti
Gambar 3.14 Proses Pengereman Otomatis Pada Kecepatan Rendah
Gambar 3.15 Proses Pengereman Otomatis Pada Kecepatan Tinggi
Pada sistem ini pun dirancang agar mobil dapat masuk ke dalam daerah
sempit seperti garasi yang memiliki lebar jalan hampir sama ukuran nya dengan
prototype mobil tersebut seperti pada Gambar 3.16.
3.6 Kontrol Logika Fuzzy
Kontrol logika fuzzy pada perancangan ini terdapat dua masukan, yaitu
kecepatan dari mobil dan jarak antara mobil dengan hambatan di depannya.
Sedangkan untuk keluaran aturan pengontrolan rem ini hanya terdapat satu
keluaran yaitu rem pada mobil. Setiap keluaran tersebut diproses dengan aturan
yang berlaku pada pengereman mobil yang telah ditentukan. Setiap input dari
logika fuzzy ini mempunyai nilai keanggotaan (membership function) yang
direpresenatasikan dalam bentuk kurva segitiga dan trapesium. Operator “AND”
digunakan untuk mengkombinasikan dan memodifikasi kedua masukan. Untuk
nilai keanggotaan (membership function) Jarak dapat dilihat pada Gambar 3.17,
untuk kecepatan dapat dilihat pada Gambar 3.18, dan untuk persentase rem dapat
dilihat pada Gambar 3.19.
Gambar 3.17 Membership Function Untuk Jarak
Keterangan:
Jarak sangat dekat sekali direpresentasikan dengan kurva trapesium