• Tidak ada hasil yang ditemukan

Rancang bangun prototype mobil otomatis yang dapat membedakan warna menggunakan konsep robot line follower.

N/A
N/A
Protected

Academic year: 2017

Membagikan "Rancang bangun prototype mobil otomatis yang dapat membedakan warna menggunakan konsep robot line follower."

Copied!
83
0
0

Teks penuh

(1)

SKRIPSI

Disusun Oleh :

Mas Ngabei Erawan Zuhri Moekti ( 0534010023 )

JURUSAN TEKNIK INFORMATIKA

FAKULTAS TEKNOLOGI INDUSTRI

UNIVERSITAS PEMBANGUNAN NASIONAL “VETERAN”

JAWA TIMUR

(2)

Penyusun : MAS NGABEI ERAWAN ZUHRI MOEKTI

Abstraksi

Prototype mobil automatis merupakan prototype mobil yang menggunakan

konsep robot line follower, dimana prototype mobil ini dapat bergerak secara otomatis di dalam rute yang sudah disediakan. Dengan menggunakan microcntroller ATMega8535 prototype mobil otomatis ini mempunyai fungsi lebih yaitu dapat membedakan warna rambu-rambu lalu lintas yang terletak di dasar rute.

Prototype mobil otomatis ini menggunakan dua logika sensor yang saling

berhubungan. Dua logika sensor tersebut adalah logika sensor proximity yang digunakan sebagai sensor garis dan logika sensor warna yang menggunakan fasilitas ADC microcontroller ATMega8535. Sensor ini memanfaatkan rangkaian elektronika LED dan Photodioda, dimana Photodioda adalah sebuah receiver cahaya yang dapat mengkonversikan cahaya menjadi tegangan, dan tegangan yang didapat yang akan dijadikan indikasi untuk membaca warna dan membedakan warna rambu-rambu lalu lintas yang ada.

Pembuatan prototype ini diharapkan dapat menjadi landasan teori untuk pengembangan selanjutnya berkaitan dengan otomatisasi sebuah kendaraan dengan menggunakan microcontroller dan sensor-sensor yang ada.

(3)

1. 1.Latar Belakang

Saat ini ilmu pengetahuan dan teknologi berkembang dengan sangat pesat,

perkembangan tersebut memberi banyak kemudahan bagi manusia dalam

memenuhi kebutuhannya. Kemajuan teknologi menuntut segala sesuatu

dikerjakan secara otomatis, cepat, akurat dan efisien. Salah satu kemajuan di

bidang teknologi tersebut adalah diciptakannya microcontroller.

Microcontroller adalah salah satu terobosan teknologi microprosesor dan microcomputer yang memiliki RAM dan I/O pendukung sehingga ukuran board microcontroller sangat ringkas tetapi memiliki fasilitas yang lengkap. Keuntungan

microcontroller dari segi ukuran dan biaya membuat penulis termotivasi untuk

mengaplikasikannya pada sebuah kendaraan yang dalam hal ini adalah mobil

untuk dapat membantu sebuah mobil melaju secara otomatis menuju tempat

tujuan yang diinginkan pengemudi.

Agar sebuah mobil dapat melaju secara otomatis maka dibutuhkan

ketepatan pengenalan jalur mana yang akan diambil, juga fasilitas – fasilitas lain

yang harus dimiliki sebuah mobil agar aman untuk digunakan, salah satu fasilitas

tersebut adalah sebuah mobil harus secara otomatis dapat membaca rambu-rambu

lalu lintas. Karena alasan-alasan di atas maka penulis mencoba membuat simulasi

mobil automatis dengan menerapkan teknologi robot line follower yang dapat

membaca jalur secara tepat dan menambahkan sensor warna untuk dapat

mengenali warna-warna pada rambu-rambu lalu lintas.

(4)

Perumusan masalah dalam Laporan Akhir ini adalah :

a. Bagaimana membuat simulasi sebuah mobil yang dapat berjalan

dengan tepat di jalur yang telah disediakan.

b. Bagaimana membuat simulasi sebuah mobil dapat mengenali

rambu-rambu lalu lintas dan melakukan action yang tepat sesuai warna yang

dikenali.

1. 3.Batasan Masalah

Agar nantinya di dalam pembahasan Laporan Akhir ini tidak keluar dari

pokok permasalahan, maka ruang lingkup permasalahannya akan dibatasi pada:

a. Mobil yang dibuat hanya untuk mengenali jalur dan warna rambu lalu

lintas (merah, kuning dan hijau) yang dibuat oleh penulis.

b. Mobil yang dibuat hanya dapat membedakan warna rambu lalu lintas

yang ditempatkan didasar lintasan.

c. Bahasa pemrograman yang akan digunakan adalah bahasa C.

1. 4.Tujuan

Adapun tujuan yang ingin dicapai dalam pembuatan simulasi kendaraan

ini adalah :

a. Untuk mengetahui apakah dimungkinkan pembuatan mobil automatis

yang dapat melaju menuju tempat tujuan dengan tetap berada di jalur

(5)

mengenali perbedaan warna rambu-rambu lalu lintas dan dapat

melakukan action yang tepat

1. 5.Manfaat

Adapun manfaat yang dapat diambil dari pembuatan simulasi ini, adalah :

a. Memberikan informasi mengenai penggunaan microcontroller dalam

pengaturan otomatis sebuah kendaraan.

b. Menjadi landasan teori untuk penelitian selanjutnya yang

bersangkutan dengan microcontroller.

1. 6.Metodologi Penelitian

Beberapa metode penelitian yang digunakan oleh penulis dalam

melakukan tugas akhir ini, antara lain:

a. Studi literatur

Mempelajari dasar-dasar pemrograman microprocessor yang

menggunakan bahasa C sebagai dasar pemrograman. Mempelajari

berbagai logika sensor yang akan digunakan dalam pembuatan

simulasi.

b. Desain Sistem

Membuat desain sistem simulasi mobil automatis, desain mekanik

(6)

c. Pembuatan robot, jalur dan progam pada ATMega8535

Setelah dilakukan desain yang sekiranya sesuai maka desain tersebut

akan diwujudkan dalam hal yang lebih nyata yaitu dalam pembuatan

robot berbentuk mobil, jalur dan program pada ATMega8535.

d. Pengujian

Tahap pengujian meliputi apakah robot yang dibuat sudah sesuai

dengan rancangan desain yang telah dibuat sebelumnya, lalu

mengecek kinerja robot tersebut apakah sudah mampu mengikuti

jalur yang dibuat, mampu mengurangi atau menambah kecepatan

juga mampu mengenali perbedaan warna dan melakukan action yang

(7)

2. 1.Tinjauan Tentang Robot

Istilah robot diperkenalkan oleh seorang penulis bernama Karel Capek

yang menggunakan istilah robot yang berarti boneka / pekerja yang bisa bekerja

secara mandiri, pada kisah yang ditulisnya di tahun 1921. [3]

Sementara itu, cikal bakal teknologi robot sudah dikembangkan sejak

abad 18, seperti Jacques de Vaucanson di tahun 1738, yang membuat bebek

mekanik yang dapat memakan dan mencincang biiji bijian, membuka dan

menutup sayapnya. Tahun 1796, Tanaka Hisashige di Jepang berhasil membuat

mainan mekanik yang dapat menghidangkan teh dan menulis huruf kanji.

Tahun1926, Nikola Tesla membuat perahu bot yang dapat dikontrol dengan radio.

Tahun 1948, William Grey Walter membuat robot elektronik otomatis pertama

dimana robot ini dapat me-respons cahaya dan dapat melakukan kontak dengan

objek dari luar. Tahun 1954, saat dimulainya zaman digital, sebuah robot digital

yang dapat deprogram ditemukan oleh George Devol.

Selain Karel Capek yang menggunakan istilah robot sebagai boneka /

pekerja, ada juga Webster’s Dictionary yang mendefinisikan robot sebagai

perangkat otomatis yang membantu fungsi-fungsi menyerupai manusia. Sistem

kelas dalam robot mengelompokkan Autonomous Mobile Robot (AMR) sebagai

salah satu tahapan paling penting dalam tahap evolusi intelegensi dan struktur

(8)

robot. Robot diberi kemampuan khusus untuk berpindah tempat atau bergerak

dengan alat gerak konvensional seperti kaki atau roda.

Kata “autonomi” dapat diartikan sebagai kemampuan diri untuk

mengambil tindakan pada perubahan situasi atau kemampuan untuk mengambil

keputusan tanpa campur tangan manusia. Kemampuan autonomi robot pada

dasarnya dikendalikan oleh operator, meskipun pada beberapa operasi lain dapat

direncanakan, dikontrol dan dikerjakan tanpa campur tangan manusia itu sendiri.

Menurut klasifikasinya robot dapat dibagi menjadi 4, yaitu :

1. Robot Non Mobile

Robot Non Mobile merupakan type robot yang tidak dapat bergerak,

kebanyakan robot jenis ini digunakan di dalam industri.

2. Robot Mobile

Robot ini memiliki fungsi untuk dapat bergerak atau berpindah tempat, pada

awal perkembangannya robot mobile menggunakan roda untuk dapat berpindah

tempat, namun saat ini telah muncul berbagai teknologi yang dapat mendukung

robot mobile untuk berpindah tempat, salah satunya adalah hexapod, memiliki

kaki seperti laba – laba yang dapat bergerak lebih flexible. Berikut ini beberapa

contoh robot mobile:

(9)

3. Humanoid, Animaloid, extra ordinary

Robot jenis ini sangat banyak digunakan saat ini karena memiliki fungsi yang

menyerupai manusia / hewan sehingga sangat bermanfaat untuk menyelesaikan

pekerjaan manusia yang mengharuskan tingkat keakuratan tinggi.

Secara garis besar robot jenis ini dapat diklasifikasikan sebagai berikut:

a. Humanoid

Robot yang memiliki bentuk fisik menyerupai manusia.

b. Android

Robot yang menyerupai laki – laki baik sifat, perasaan juga anggota tubuh.

c. Cyborg

Robot yang tidak menyerupai manusia tetapi memiliki fungsi seperti manusia.

d. Gynoid

Berasal dari kata gyne, yang berarti wanita. Robot ini sama seperti Android,

hanya saja Gynoid berjenis kelamin wanita

e. A.I

Robot yang mempunyai kecerdasan dan fungsi seperti manusia / hewan

f. Disabled Robotic

Robot yang diciptakan untuk membantu orang yang kekurangan secara fisik.

g. Domotics

Robot yang digunakan dalam industry, dimana pengoperasiannya masih harus

(10)

Transformasi

Berikut ini contoh robot humanoid :

Gambar 2.2 Robot Humanoid

2. 1. 1.Teori Kinematika Pergerakan Robot

Terdapat dua metode analisa untuk menganalisis pergerakan robot, yaitu

analisa kinematika dan analisa dinamik. Pada bab ini penulis hanya akan

Konsep kinematik didasarkan pada diagram system control robotik yang

dijelaskan pada Gambar 2.3

(11)

Pada gambar 2.3 di atas, output ( ) yang diukur dari gerakan robot

adalah dalam domain sudut dari sendi – sendi, baik sendi pada system tangan/kaki

ataupun sudut dari perputaran roda jika robot adalah robot mobile. Sedang yang

diperlukan oleh user adalah posis (titik tertentu pada bagian robot) yang

dinyatakan sebagai koordinat 2D ataupun 3D (Ruang Cartesian). Dengan

demikian diperlukan transformasi koordinat antara ruang kerja Cartesian dengan

ruang sendi / sudut. Kombinasi antara transformasi koordinat P ke dengan

controller G(s) disebut sebagai controller kinematik. Inputnya berupa sinyal P,ep

dan outputnya berupa sinyal kemudi U. Dalam konteks praktis, sinyal U ini adalah

sinyal – sinyal analog dari DAC untuk seluruh aktuator (variable sendi) robot

Jadi, kinematik dalam robot adalah suatu bentuk pernyataan yang berisi

tentang deskripsi matematik geometri dari suatu struktur robot. Dari persamaan

kinematik dapat diperoleh hubungan antara konsep geometri ruang sendi pada

robot dengan konsep koordinat yang biasa dipakai untuk menentukan kedudukan

dari suatu objek. Dengan model kinematik, programmer dapat menentukan

konfigurasi referensi input yang harus diumpankan ke tiap actuator agar roboot

dapat melakukan gerakan dimultan (seluruh sendi) untuk mencapai posisi yang

dikehendaki. [1]

B. Kinematik robot mobile

Untuk dapat dianalisis menggunakan analisa kinematik maka sebuah

robot mobile harus memiliki dua roda kiri – kanan yang dikemudikan terpisah

(differentially driven mobile robot, disingkat DDMR) seperti ditunjukkan dalam

(12)

Gambar 2.4 DDMR pada medan 2D Cartesian

Robot diasumsikan berada dalam kawasan 2D pada koordinat Cartesian

XY. Parameter – parameter dalam gambar adalah :

Ф : sudut arah hadap robot

2b : lebar robot yang diukur dari garis tengah roda ke roda

r : jari – jari roda (rodakiri dan kanan sama sebangun)

d : jarak antara titik tengah antaran 2 roda, G dengan titik F

(x,y) : koordinat acuan di tubuh robot terhadap sumbu XY

Dalam kajian kinematik ini robot diasumsikan bergerak relative pelan

dan roda tidak slip terhadap permukaan jalan. Maka komponen x dan y dapat

diekspresikan dalam suatu persamaan nonholonomic sebagai berikut :

XG sin Ф – YG cos Ф = 0 ……….. (2.1)

Pada DDMR ada variable F yang digunakan sebagai acuan analisa,

sehingga persamaan di atas menjadi :

(13)

Masalah klasik dalam control kinematik DDMR adalah bahwa DDMR

memiliki dua actuator, namun parameter kontrolnya lebih dari dua, yaitu x untuk

gerakan ke arah X dan y untuk arah Y yang diukur relative terhadap perpindahan

titik G, dan gerakan sudut hadap Ф yang diukur dari garis hubung titik G dan F

terhadap sumbu X.

Dari rumus 2.2 nampak bahwa derajat kebebasan dalam control

kinematika DDMR berjumlah tiga, yaitu (x, y, Ф) karena ketiga parameter ini

perlu dikontrol secara simultan untuk mendapatkan gerakan nonholomonic. Untuk

lebih jelasnya dapat dilihat pada gambar 2.5

Gambar 2.5 Contoh Manuver DDMR

Perpindahan kedudukan robot dari Start ke Stop bila dipandang pada titik

G adalah perpindahan dari koordinat (XG1. YG1) ke (XG2, YG2) secara translasi.

Namun hal ini tidak dapat dilakukan secara langsung sebab robot harus bergerak

maju sehinggan ia harus membuat maneuver belok untuk mengarahkannya pada

koordinat (XG2, YG2). Oleh karena itu diperlukan titik acuan F yang berada di luar

garis yang menghuungkan kedua roda agarsudut hadap dapat dihitung.

Bentuk umum persamaan kinematik untuk DDMR ini dapat dinyatakan

(14)

XF

YF = TNH atau q (t) = TNH (q) (t) ………. (2.3)

ФF

TNH adalah matriks transformasi nonholomonic, L dan R adalah

kecepatan radial roda kiri dan kanan, dan q adalah system koordinat umu robot.

2. 1. 2.Robot Line Follower

Robot Line Follower adalah suatu robot yang dirancang / dibuat

menyerupai mobil, dan cara kerjanya ialah robot tersebut akan mengikuti garis

hitam / putih secara otomatis dimana pengendalinya berupa sensor-sensor dan

selanjutnya akan dieksekusi oleh komparator berupa transistor-transistor

dilanjutkan ke motor-motor yang membuat robot bisa bekerja sabagai mana

mestinya. [4]

A. Bagian – Bagian Robot Line Follower

1. Body / Chasis

Body ini berguna sebagai tempat penyimpanan komponen – kompnonen

yang akan digunakan nantinya. Body ini juga sangat penting karena dapat

mempengaruhi kinerja robot yang akan dibuat.

2. Sensor Proximity

Sensor proximity adalah sensor untuk mendeteksi ada atau tidaknya suatu

obyek. Dalam dunia robotika, sensor proximity seringkali digunakan untuk

mendeteksi ada atau tidaknya suatu garis pembimbing gerak robot atau lebih

dikenal dengan istilah “Line Follower Robot “ atau “Line Tracer Robot”, juga

(15)

biasa digunakan untuk mendeteksi penghalang berupa dinding atau penghalang

lain pada Robot Avoider. Jenis sensor proximity ini ada beberapa macam, seperti

ultrasonic proximity, proximity (infra merah), kamera dan lain sebagainya.

Sensor proximity yang digunakan untuk robot line follower dibuat

menggunakan pasangan LED / Infrared dan phototransistor / photodioda. Jika

sensor berada diatas garis hitam maka photodioda akan menerima sedikit cahaya

pantulan. Tetapi jika sensor berada diatas garis putih maka photodioda akan

menerima banyak cahaya pantulan, hal ini dapat dilihat pada gambar 2.5. Sifat

dari photodioda adalah jika semakin banyak cahaya yang diterima, maka nilai

resistansi diodanya semakin kecil. Sehingga bila sensor berada di atas garis hitam

maka cahaya LED akan memantul pada garis dan diterima oleh photodioda

kemudian photodioda menjadi on sehingga tegangan output akan mendekati 0

volt. Sebaliknya jika sensor berada di atas garis putih yang berarti tidak terdapat

pantulan cahaya maka photodioda tidak mendapat arus bias sehingga menjadi off,

dengan demikian tegangan output sama dengan tegangan Induk (Vcc).

Gbr 2.6 Prinsip kerja sensor proximity

Berikut ini bagian-bagian dari photodiode :

A. LED

LED adalah singkatan dari Light Emiting Dioda, yakni merupakan

(16)

produk temuan lain yang cara kerja serta strukturnya sama dengan dioda, LED

akan melepaskan sebuah dioda berbentuk cahaya apabila diberikan tegangan

maju. Jika terintegrasi pada sebuah rangkaian LED hendaknya diberikan penahan

arus (resistor) pada anoda (sumbu positif) guna mencegah kerusakan serta

membatasi kuat arus maju yang dikonsumsi.

B. Photodioda

Sedangkan untuk tegangan yang dikeluarkan dapat dicari dengan menggunakan

rumus 2.4.

comparator untuk kemudian dibandingkan dengan tegangan threshold (variable

(17)

3. Rangkaian Komparator

Rangkaian Komparator adalah bagian robot yang berupa rangkaian yang

berfungsi sebagai pengeksekusi hasil output dari sensor proximity yang

selanjutnya akan dilanjutkan ke motor - motor DC.

Rangkaian komparator ini sangat penting karena output dari sensor

proximity masih memiliki kemungkinan tidak pada kondisi ideal bila intensitas

pantulan cahaya LED pada garis lemah, misalnya karena perubahan warna atau

lintasan yang kotor.

Cara kerja rangakain komparator ini adalah membandingkan output

sensor proximity dengan suatu tegangan threshold yang dapat diatur dengan

memutar trimmer potensio (variable resistor). Jika tegangan dari threshold lebih

besar dari tegangan output proximity maka keluaran dari comparator akan bernilai

1 (High Digital Output).

Karena rangkaian comparator ini bekerja dengan cara membandingkan

tegangan output proximity dengan threshold maka kita juga harus mengetahui

besarnya tegangan threshold yang dibutuhkan, untuk mencari nilai tegangan

threshold yang dibutuhkan maka dicari nilai rata-rata dari output-output

photodiode pada sensor proximity. [5]

Vref = (Vp1+Vp2) / 2 ……….. (2.5)

Keterangan :

Vref : tegangan threshold

(18)

Untuk mengetahui hasil dari sensor, alangkah baiknya diberi lampu

indicator yang disambungkan dengan output dari komparator.

4. Roda

Roda ini berfungsi sebagai penopang body dan juga berfungsi agar robot

yang dibuat dapat berjalan sesuai dengan yang diinginkan.

Bagian – bagian dari roda adalah

A. Motor DC

Motor DC adalah motor arus searah yang memiliki kemampuan untuk

mengubah besaran listrik menjadi gerak. Motor DC memiliki dua buah terminal

input. Pemberian beda tegangan pada kedua terminal input tersebut akan

menyebabkan motor berputar ke satu arah. Jika polaritas dari tegangan input

dibalik maka arah putaran dari motor tersebut akan berubah, secara sederhana

dapat dilihat pada gambar 2.7

Gambar 2.7 Dasar Pengaturan Arah Motor DC

Prinsip kerja motor DC adalah sebagai berikut : ketika terminal input

mendapat beda tegangan, maka arus akan mengalir pada terminal input dan

kemudian mengalir pada penghantar yang terletak pada medan magnet. Konversi

(19)

medan magnet tersebut, dengan demikian medan magnet selain berfungsi sebagai

tempat untuk menyimpan energi sekaligus berfungsi sebagai tempat

berlangsungya perubahan energi dan daerah tersebut dapat dilihat pada gambar

2.8

Gambar 2.8 Medan Magnet Pada Motor DC

Dengan mengacu pada hukum kekekalan energi :

”Proses energi listrik = energi mekanik + energi panas + energi di dalam

medan magnet”

Maka dalam medan magnet akan dihasilkan kumparan medan (stator,

bagian motor DC yang tidak berputar) dengan kerapatan fluks sebesar B dengan

arus I serta panjang konduktor L, maka diperoleh gaya F sebesar :

F = B x I x L ... (2.6)

Sedangkan arah gaya F dapat ditentukan dengan aturan tangan kanan

(20)

Gambar 2.9 Arah Gaya (F)

Bila motor DC memiliki jari – jari r maka persamaan di atas akan

menjadi:

Fr = B x I x L x r ……… (2.7)

Besarnya gaya (F) akan berpengaruh pada perputaran motor, hal ini

dikarenakan saat gaya (F) dibandingkan, konduktor akan bergerak dalam

kumparan medan magnet dan menimbulkan gaya gerak listrik yang merupakan

reaksi lawan terhadap tegangan sumber.

Agar proses perubahan energi mekanik tersebut dapat berlangsung secara

sempurna, maka tegangan sumber harus lebih besar daripada tegangan gerak yang

disebabkan reaksi lawan.

Dengan demikian dapat diketahui bahwa tegangan akan mempengaruhi

kecepatan perputaran motor. Sedangkan arus akan berfungsi untuk menentukan

kekuatan torsi motor. Dimana torsi dapat didefinisikan sebagai aksi dari suatu

(21)

B. Driver Motor

Agar motor DC dapat bergerak maju, mundur atau berhenti maka

diperlukan sebuah driver motor. Ada banyak jenis driver motor yang dapat

digunakan namun dalam pembuatan simulasi mobil automatis ini driver motor

yang digunakan adalah rangkaian yang bernama H-Bridge.

Rangkaian H-Bridge merupakan rangkaian yang menggunakan 4 buah

transisitor sebagai pengatur tegangan yang akan dimasukkan ke motor.

2. 2.Microcontroller ATMega8535

Microcontroller adalah sebuah piranti berupa IC yang memiliki

kemampuan manipulasi data (informasi) berdasarkan suatu urutan instruksi

(program) yang dibuat oleh programmer. Microcontroller merupakan contoh

suatu sistem komputer sederhana yang masuk dalam kategori embedded komputer

(komputer yang berintegrasi dengan sistem lain dan digunakan untuk suatu fungsi

tertentu, contoh handphone, DVD player, dll). Dalam struktur microcontroller

akan kite temukan juga komponen – komponen seperti prosesor, memory, clock,

dll.

Pada awal perkembangannya (sekitar tahun 1970-an) sumber daya

perangkat keras serta perangkat lunak microcontroller sangat terbatas. Saat itu,

system microcontroller hanya dapat diprogram menggunakan perangkat yang

dinamakan “EPROM programmer” dan perangkat lunak yang digunakan

(22)

Seiring dengan perkembangan teknologi saat ini pemrograman

microcontroller relative mudah dilakukan terutama dengan digunakannya metode

ISP (In System Programming) sehingga kita dapat memprogram system

microcontroller sekaligus mengujinya pada system minimumnya secara langsung.

Selain itu dewasa ini banyak alternative bahasa aras tinggi (pascal, C, dll) yang

dapat digunakan, hal ini sangat membantu karena selain akan menghemat waku

pengembangan, kode program yang disusun juga akan lebih terstruktur dan

relative mudah dipelajari.

Dengan berbagai macam kelebihan yang dimiliki serta hal – hal yang

menjadi pertimbangan di atas, dewasa ini microcontroller AVR 8 bit produk

perusahaan Atmel adalah salah satu microcontroller yang banyak merebut minat

kalangan profesional dan juga cocok dijadikan saran berlatih bagi pemula

mengingat banyak fitur dan kemudahan yang diberikan microcontroller tersebut.

ATMega8535 merupakan salah satu produk perusahaan atmel yang

paling banyak digunakan saat ini. Harga yang relative terjangkau, banyak

ditemukan di pasaran, kemudahan dalam pemrograman dan fitur – fitur yang

menarik di dalamnya menjadi daya tarik tersendiri bagi ATMega8535. [2]

2. 2. 1. Spesifikasi ATMega8535

1. 130 macam instruksi, yang hampir semuanya diekekusi dalam satu siklus

clock. Instruksi ini dapat berupa transfer data, aritmatika & logika,

percabangan, dan lain – lain.

(23)

3. Kecepatan mencapai 16 MIPS (Million Instruction per Second) dengan clock

16 MHz. ATMega8535 memiliki kemampuan dapat menjalankan 1 instruksi

dalam siklus 1 clock dengan kecepatan clock 16 MHz. Berbeda dengan type

lain seperti MCS51 yang memerlukan siklus 12 clock dalam mengeksekusi 1

instruksi.

4. 8 Kbyte Flash Memori

5. 512 Byte Internal EEPROM (Elecrically Erasable Programmable Read Only

Memory). EEPROM merupakan tempat menyimpan data semi permanen.

EEPROM ini dapat menyimpan data meskipun catu daya dimatikan. Dengan

adanya EEPROM internal maka tidak diperlukan komponen pendukung

seperti EEPROM external seperti beberapa microcontroller lain sehingga

penggunaan hardware bisa lebih efisien.

6. 512 Byte SRAM (Static Random Access Memory). Sama halnya seperti

computer yang memiliki RAM, microcontroller ATMega8535 juga memiliki

SRAM sebesar 512 Byte.

7. Programming Lock fasilitas yang memungkinkan untuk mengamankan kode

program.

8. 2 buah timer/counter 8-bit dan 1 buah timer/counter 16-bit. ATMega8535

memiliki 3 modul yang terdiri dari 2 buah timer/counter 8-bit dan 1 buah

timer/counter 16-bit. Ketiga modul ini dapat diatur dalam mode yang berbeda

secara individu dan tidak saling memperngaruhi satu sama lain.

(24)

10. 8 channel ADC (Analog Digital Converter) 10-bit. ADC ini merupakan fungsi

untuk membantu programmer saat akan mengolah data secara digital. Sesuai

dengan namanya ADC ini merubah data awal yang berupa data analog

menjadi data digital.

Untuk mendapatkan nilai ADC digunakan rumus :

VADC = (Vin / Vref) * 256 ……….. (2.8)

Keterangan :

VADC = Tegangan ADC (mV)

Vin = Tegangan inputan yang akan diconvert (V)

Vref = Tegangan referensi.

256 = Resolusi ADC, ATMega8535 memiliki resolusi 256 dan 1024.

11. Serial USART (Universal Synchronus and Asynchronus Serial Receive and

Transmitter). USART merupakan salah satu mode komunikasi serial yang

dimiliki oleh ATMega8535. USART merupakan komunikasi yang memiliki

fleksibilitas tinggi, yang dapat digunakan untuk melakukan transfer data baik

antar mikrokontroller maupun dengan pheripheral eksternal termasuk PC yang

memiliki fiutr UART

12. Master/Slave SPI serial interface. Serial Peripheral Interface (SPI) merupakan

salah satu mode komunikasi serial synchronus kecepatan tinggi yang dimiliki

ATMega8535. Komunikasi SPI ini membutuhkan 3 jalur yaitu MOSI, MISO

(25)

mikrokontroller maupun antara mikrokontroller dengan peripheral lain di luar

mikrokontroller.

a) MOSI (Master Output Slave input)

Artinya jika dikonfigurasikan sebagai master maka pin MOSI ini

sebagai output tetapi jika dikonfigurasi sebagai slave maka pin

MOSI ini sebagai input.

b) MISO (Master Input Slave Output)

Berkebalikan dengan MISO di atas, jika dikonfigurasikan sebagai

master maka pin MISO ini sebagai input tetapi jika dikonfigurasikan

sebagai slave maka pin MISO ini sebagai output.

c) CLK (Clock)

Jika dikonfigurasikan sebagai master maka pin CLK berlaku sebagai

output (pembangkit clock) tetapi jika dikonfigurasikan sebagai slave

maka pin CLK berlaku sebagai input (menerima sumber clock dari

master).

pengaturan konfigurasi Master atau Slave ditentukan oleh pin . Jika

pin tersebut diberi tegangan high (1) maka terkonfigurasi sebagai

(26)

pin AIN1. Kemudian hasilnya akan ditunjukkan oleh pin AC0, dimana pin

AC0 ini akan bernilai 1 jika tegangan masukan pin positfi lebih besar dari pin

negative, begitu juga sebaliknya.

2. 2. 2. Deskripsi Pin ATMega8535

Gambar 2.10 Konfigurasi Pin ATMega8535

Keterangan :

d) VCC : pin masukan catu daya.

e) Gnd : pin ground.

f) Port A (PA0 – PA7) : pin I/O dan pin ADC.

g) Port B (PB0 – PB7) : pin I/O dan pin timer/counter, analog

comparator, SPI.

h) Port C (PC0 – PC7) : pin I/O dan TWI, analog comparator,

Timer, Oscilator.

i) Port D (PD0 – PD1) : pin I/O dan analog comparator, interupsi

eksternal, USART.

(27)

k) XTAL1 dan XTAL 2 : pin untuk clock external.

l) AVCC : pin catu daya yang digunakan untuk masukan ADC.

m) AREF : pin untuk teganga referensi ADC.

2. 3.Komponen – Komponen Elektronik

Dalam pembuatan mobil automtatis ini ada beberapa komponen

elektronik yang digunakan, resistor, IC, dioda, Motor DC, Sensor warna TCS230.

2. 3. 1.Resistor

Resistor merupakan salah satu komponen pasif yang memiliki fungsi

untuk mengatur dan menghambat arus listrik. Resistor di beri lambang huruf R

dengan satuannya yaitu Ohm ( ). Secara umum resistor berdasarkan nilainya

dapat dibagi menjadi 3 bagian,yaitu :

1. Fixed Resistor

Merupakan resistor yang nilai hambatannya tetap. Berikut ini

adalah bentuk resistor:

Gambar 2.11 Bentuk Fisik Resistor

(28)

Nilai hambatan resistor dapat kita ketahui dari gelang warna yang

terdapat pada badan resistor, dimana ketentunanya adalah sebahai

berikut:

1. Gelang ke-1 dan gelang ke-2 menyatakan nilai resistor.

2. Gelang ke-3 menyatakan faktor pengali.

3. Gelang ke-4 menyatakan toleransi.

Jika resistor memiliki 5 gelang warna, maka nilai gelang ke-1, 2

dan 3 menyatakan nilai resistor, gelang ke-4 merupakan faktor pengali

dan gelang ke-5 menyatakan toleransi. [6]

Sedangkan untuk mengetahui nilai dari warna gelang resistor, kita

bisa lihat pada tabel 2.1

Tabel 2.1 Tabel kode warna resistor

Warna Nilai Faktor Pengali Toleransi

Sebuah resistor memiliki gelang warna seperti berikut ini :

Gelang ke-1 : Jingga, memiliki nilai 3

(29)

Gelang ke-3 : Merah, merupakan faktor pengali 102

Gelang ke-4 : Emas, memiliki nilai toleransi 5%

Jadi, resistor di atas memiliki nilai 3000 ± 5 %

2. Variable Resistor

Merupakan resistor yang nilai hambatannya dapat diubah-ubah.

Berdasarkan cara merubah hambatannya variable resistor dibagi menjadi

2, yaitu :

1. Trimpot

Merupakan variable resistor yang nilai hambatannya dapat

dirubah menggunakan obeng atau alat bantu. [7]

Berikut ini beberapa contoh trimpot:

Gambar 2.13 Variable resistor jenis trimpot

2. Potensio

Merupakan variable resistor yang nilai hambatannya dapat

dirubah langsung menggunakan tangan (tanpa menggunakan alat

bantu) dengan cara memutar poros engkol atau menggeser kenop

untuk potensio geser [7]

(30)

Gambar 2.14 Variable resistor jenis potensio

3. Resistor Non Linier

Ada beberapa jenis resistor non linier, diantaranya adalah :

1. PTC ( Positive Temperature Coefisien )

Adalah jenis resistor non linier yang nilai hambatannya

terpengaruh oleh perubahan suhu. Makin tinggi suhu di sekitarnya

maka makin besar nilai hambatannya. [7]

Berikut adalah contoh PTC:

Gambar 2.15 Bentuk fisik PTC

2. NTC ( Negative Temperature Coefisien )

Jenis resistor ini hampir sama dengan PTC, nilai hambatannya

terpengaruh oleh perubahan suhu, perbedaannya adalah jika suhu

semakin tinggi maka nilai hambatannya akan semakin kecil,

sebaliknya jika suhu semakin rendah maka makin besar niai

(31)

Berikut adalah contoh NTC:

Gambar 2.16 Bentuk fisik NTC

3. LDR ( Light Dependent Resistor )

Adalah jenis resistor non linier yang nilai hambatannya

terpengaruh oleh intensitas cahaya yang mengenainya. Makin besar

intensitas cahaya yang mengenainnya makin kecil nilai

hambatannya. [7]

2. 3. 2.Dioda

Dioda adalah komponen elektronika yang paling sederhana dari keluarga

semikonduktor, dari simbolnya menunjukkan arah arus dan ini merupakan sifat

dioda, bahwa dioda hanya mengalirkan arus pada satu arah, arus hanya mengalir

dari kutub Anoda ke kutub Katoda. Satu sisi dioda disebut Anoda untuk

pencatuan positif (+), dan sisi lainnya disebut Katoda untuk pencatuan negatif (-),

yang dalam pemasangannya tidak boleh terbalik. Secara fisik bentuk dioda seperti

silinder kecil dan biasanya diberi tanda berupa lingkaran warna putih, yang

(32)

Gbr 2.17 Bentuk fisik dioda dan lambang diode

2. 3. 3.Transistor

Transistor adalah alat semikonduktor yang dipakai sebagai penguat,

sebagai sirkuit pemutus dan penyambung (switching), stabilisasi tegangan,

modulasi sinyal atau sebagai fungsi lainnya. Transistor dapat berfungsi semacam

kran listrik, dimana berdasarkan arus inputnya (BJT) atau tegangan inputnya

(FET), memungkinkan pengaliran listrik yang sangat akurat dari sirkuit sumber

listriknya.

Transistor adalah komponen yang sangat penting dalam dunia elektronik

modern. Dalam rangkaian analog, transistor digunakan dalam amplifier (penguat).

Rangkaian analog melingkupi pengeras suara, sumber listrik stabil, dan penguat

sinyal radio. Dalam rangkaian-rangkaian digital, transistor digunakan

sebagai saklar berkecepatan tinggi. Beberapa transistor juga dapat dirangkai

sedemikian rupa sehingga berfungsi sebagai logic gate, memori, dan

komponen-komponen lainnya. [10]

(33)

2. 3. 4.Optocoupler

Optocoupler merupakan piranti elektronika yang berfungsi sebagai

pemisah antara rangkaian power dengan rangkaian control. Optocoupler

merupakan komponen yang berfungsi untuk mengatur feedback yang masuk ke

STR / Transistor / IC power pada bagian power supply. [9]

Optocoupler adalah suatu komponen penghubung (coupling) yang

bekerja berdasarkan picu cahaya optic. Optocoupler terdiri dari dua bagian yaitu :

1. Pada transmitter dibangun dari sebuah LED infra merah. Jika

dibandingkan dengan menggunakan LED biasa, LED infra merah

memiliki ketahanan yang lebih baik terhadap sinyal tampak. Cahaya

yang dipancarkan oleh LED infra merah tidak terlihat oleh mata

telanjang.

2. Pada bagian receiver dibangun dengan dasar komponen Photodiode.

Photodiode merupakan suatu transistor yang peka terhadap tenaga

cahaya. Suatu sumber cahaya menghasilkan energi panas, begitu

pula dengan spektrum infra merah. Karena spekrum infra

mempunyai efek panas yang lebih besar dari cahaya tampak, maka

Photodiode lebih peka untuk menangkap radiasi dari sinar infra

merah.

Prinsip kerja dari optocoupler adalah :

a. Jika antara Photodiode dan LED terhalang maka Photodiode tersebut

(34)

b. Sebaliknya jika antara Photodiode dan LED tidak terhalang

maka Photodiode dan LED tidak terhalang maka Photodiode tersebut

akan on sehingga output-nya akan berlogika low.

(35)

Pada bab ini akan dibahas mengenai beberapa hal dasar tentang bagaimana

simulasi mobil automatis dirancang, diantaranya adalah :

1. Menentukan tujuan dan kondisi pembuatan simulasi mobil.

2. Perancangan elektronik, meliputi perancangan proses kerja dan

pembuatan rangkaian elektronik.

3. Perancangan mekanik mobil, meliputi penentuan dimensi mobil

(panjang, lebar, tinggi), dan bahan-bahan yang digunakan.

4. Perancangan software, meliputi perancangan proses kerja system yang

akan dibuat.

3. 1.Perancangan Mobil Automatis

Dalam pembuatan robot ini penulis memperhatikan beberapa aspek yang

dibutuhkan, yaitu :

1. Mobil ini dirancang agar dapat melaju secara otomatis pada rute yang

sudah disediakan.

2. Selain mengikuti rute yang ada mobil ini juga dirancang untuk dapat

membedakan warna merah, kuning, hijau dan dapat melakukan aksi

yang sesuai dengan warna yang dikenali. Jika melihat warna merah

mobil akan berhenti, jika melihat warna kuning mobil akan

mengurangi kecepatan, jika melihat warna hijau mobil akan tetap

melaju.

(36)

ATMega8535.

4. Mobil ini nantinya akan berjalan di jalur yang di dalamnya terdapat

perempatan dan pertigaan. Dan setiap ada perempatan maka mobil

secara otomatis akan belok kanan. Dan setiap adan pertigaan mobil

akan menghiraukan.

5. Semua aksi (maju, belok, berhenti, mengurangi kecepatan)

merupakan logika yang diterapkan di dalam program yang

ditanamkan ke Mikrokontroller ATMega 8535, dan pemrogramannya

menggunakan pemrograman CodeVision AVR.

3. 2.Perancangan Elektronik

Perancangan elektronik ini meliputi perancangan sensor garis dan

comparatornya, sensor warna dan driver motor. Secara umum proses kerja

rangkaian elektronik mobil automatis dijelaskan pada gambar di bawah ini :

Gambar 3.1 Blok Diagram Mobil Automatis

Penjelasan :

A. Proses awal dari system yang akan dibuat ini adalah pembacaan data

oleh sensor garis, hasil yang didapatkan dari sensor garis ini berupa

(37)

dikirimkan ke comparator LM339, hal ini dilakukan untuk

mengkonversi hasil awal yang berupa tegangan menjadi output yang

berupa nilai digital (0 dan 1).

C. Hasil digital dari comparator LM339 kemudian dikrimkan ke

mikrokontroller ATMega8535.

D. Selain sensor garis ada juga sensor warna yang berfungsi untuk

membaca warna yang terdapat di rute lintasan, warna yang mungkin

untuk dikenali adalah warna merah, hijau dan kuning. Nilai yang

didapat dari sensor warna ini dirimkan ke port ADC yang terdapat di

ATMega8535.

E. Di ATMega8535 data dari sensor garis dan sensor warna diproses,

pertama-tama data dari sensor garis akan diproses terlebih dahulu,

data yang ada akan dirubah menjadi pwm yang nantinya akan

dikirimkan ke driver motor untuk melakukan aksi (berhenti, mundur

atau maju). Kecepatan dari motor DC diatur berdasarkan pwm yang

diberikan oleh ATMega8535. Setelah itu dilakukan pemrosesan data

untuk sensor warna. Hasil dari sensor warna ini akan memberikan

aksi berupa berhenti sejenak, mengurangi kecepatan dan

mengembalikan kecepatan seperti normal

.

3. 2. 1.Perancangan Sensor Garis dan Comparator

Bahan-bahan yang dibutuhkan unuk membuat sensor garis dan

(38)

b. LED hijau 6 buah

c. Photodioda 6 buah

d. Resistor 220 6 buah

e. Resistor 20K 6 buah

f. Resistor 470 6 buah

g. Variabel resistor 20K 6 buah

h. IC LM339 2 buah

i. Jack housing 6 kaki 1 buah

Gambar rancangan schematic dari sensor garis dan comparator ini adalah

sebagai berikut:

Gambar 3.2 Schematic Sensor Garis dan Comparator

Untuk mengetahui lebih jelas mengenai proses kerja dari sensor garis dan

(39)

Gambar 3.3 Flowchart Sensor Proximity

Penjelasan :

A. Proses pertama sensor garis ini dimulai dengan pembacaan posisi

mobil, acuan yang digunakan oleh mobil adalah garis hitam yang

terdapat di rute. Posisi tersebut dapat dilihat pada gambar 3.4

Baca posisi mobil

Baca warna lintasan

Hitung nilai tegangan Vp= (Rs / (Rs+R)) * Vcc

Bandingkan nilai Vp dengan nilai Vres

Vp < Vres

Vo = 0

Vo = Vcc

(digital high 1 output) Kirim Vo ke

ATMega8535 END Ya

(40)

Gambar 3.4 Posisi mobil terhadap garis lintasan

Penejelasan :

a) Posisi 1. Posisi robot ada di sebelah kiri dari garis yang terdapat

di lintasan, yang berarti hanya sensor yang sebelah kanan saja

yaitu sensor KA2 yang membaca garis hitam.

b) Posisi 2. Posisi robot ada si sebelah kiri dari garis yang terdapat

di lintasan dengan 2 sensor sebelah kanan yaitu sensor KA2 dan

KA1 membaca garis hitam sedangkan 4 lainnya membaca

background putih.

c) Posisi 3. Posisi robot ada di hampir tengah – tengah yaitu sensor

(41)

background putih.

d) Posisi 4. Posisi robot ada di tengah – tengah garis hitam, yaitu

sensor KA dan KI yang tepat berada di tengah-tengah membaca

garis hitam, sedangkan sensor paling kiri dan kanan membaca

background putih.

e) Posisi 5. Posisi robot berada hampir di tengah – tengah ketika 2

sensor sebelah kiri yaitu sensor KI dan KI1 membaca garis hitam

sedangkan 3 sensor kanan dan sensor kiri terluar yaitu KI2

membaca background putih.

f) Posisi 6. Posisi robot ada di sebelah kanan garis hitam, ketika

sensor KI1 dan KI2 membaca garis hitam, sedangkan sensor

yang lainnya membaca background putih.

g) Posisi 7. Posisi robot ada di sebelah kanan garis hitam, yaitu

ketika sensor kiri terluar membaca garis hitam sedangkan sensor

lainnya membaca background putih.

Secara teori ketujuh posisi inilah yang mungkin terjadi saat mobil

melaju di lintasam, tetapi pada prakteknya selain ketujuh posisi di

atas ada posisi-posisi lain yang juga mungkin terjadi, yaitu posisi 8

ketika hanya sensor KA1 yang membaca garis hitam, posisi 9 ketika

hanya sensor KI1 yang membaca garis hitam, posisi 10 ketika semua

sensor membaca garis hitam dan posisi 11 ketika semua sensor

(42)

melakukan aksi (lurus, belok kiri atau kanan), pergerakan mobil

tersebut dapat dilihat pada tabel 3.1 :

Tabel 3.1 Pergerakan mobil

Posisi Aksi Robot Roda Kiri Roda Kanan 1 Belok kanan tajam Maju cepat Berhenti 2 Belok kanan sedang Maju cepat Maju lambat 3 Belok kanan ringan Maju cepat Maju sedang 4 Maju lurus Maju cepat Maju cepat 5 Belok kiri ringan Maju sedang Maju cepat 6 Belok kiri sedang Maju lambat Maju cepat 7 Belok kiri tajam Berhenti Maju cepat 8 Belok kanan ringan Maju cepat Maju sedang 9 Belok kiri ringan Maju sedang Maju cepat 10 Belok kanan tajam Maju cepat Berhenti 11 Kondisional Kondisional Kondisional

B. Setelah mengetahui letak dari mobil, langkah selanjutnya adalah

mencari nilai tegangan dari masing-masing photodiode jika

photodiode mengenai warna hitam maka resistansi photodiode akan

berkurang sedikit, sedangkan jika mengenai warna putih maka

resistansinya akan menjadi kecil.

Resistansi photodiode pada umunya adalah sebesar 150K , jika

membaca garis hitam maka nilai resistansinya bisa menjadi ±145K

sedangkan jika membaca garis putih nilai resistansinya menjadi

±10K . Dengan diketahuinya nilai resistansi dari photodiode dan

resistor yang digunakannya, maka kita dapat menghitung nilai

tegangan dari masing-masing photodiode dengan menggunakan

rumus 2.4

(43)

Nilai resistansi photodiode saat warna putih : 10K

Nilai resistansi photodiode saat warna hitam : 145K

Perhitungan :

2.5V, dan saat membaca warna hitam adalah 4.67V.

C. Setelah mendapatkan nilai tegangan dari photodiode nilai tersebut

dikirim ke rangkaian comparator, dan di rangkaian comparator nilai

tersebut dibandingkan dengan nilai tegangan dari variable resistor

yang digunakan. Prinsip dari comparator ini adalah jika Vp > Vres

maka Vo = Vcc (digital high 1 output), sedangkan jika Vres < Vo

maka Vo = 0 (digital low 0 output). Untuk mencari nilai tegangan

dari variable resistor kita bisa mencari rata-rata dari tegangan

photodiode yang akan dibandingkan, sehingga bisa didapatkan nilai

sebagai berikut :

Vres = (2.5+4.67) / 2 = 3.59V

Setelah mengetahui nilai tegangan dari variable resistor, maka

tegangan dari photodiode dibandingkan dengan Vres tersebut, untuk

hasilnya dapat dilihat pada tabel 3.2

(44)

4.67 3.59 1 digital output 2.5 3.59 0 digital output

Hasil dari perbandingan ini kemudian dikirmkan ke ATMega 8535

untuk kemudian diproses dan dikirmkan ke driver motor sebgai

interupsi pergerakan roda (maju, mundur, berhenti).

3. 2. 2.Perancangan Sensor Warna

Sensor warna ini berfungsi untuk mengenali perbedaan warna merah,

kuning, hijau.

Berikut ini adalah gambar schematic rangkaian sensor warna:

.

Gambar 3.5 Schematic Sensor Warna

Sensor warna ini bekerja dengan cara merubah cahaya menjadi tegangan,

prinsip kerjanya sama dengan prinsip kerja dari photodiode. Hasil tegangan yang

didapat dari sensor warna ini kemudian dimasukkan ke dalam ADC.

Cara kerja dari sensor warna ini adalah sebagai berikut:

a. Proses awal dari sensor warna ini adalah pembacaan warna saat mobil

(45)

dihasilkan oleh photodiode.

b. Hasil tegangan yang diperoleh dari sensor garis kemudian dikirim ke

port ADC pada microcontroller. Melalui port ADC ini tegangan

tersebut dirubah menjadi sinyal analog.

c. Sinyal analog tersebut kemudian dirubah menjadi bilangan 8bit agar

dapat dibaca oleh microcontroller

3. 2. 3.Perancangan Driver Motor

Driver ini berfungsi untuk memberikan interuksi kepada motor dc untuk

melakukan sebuah aksi, baik itu maju, mundur, ataupun berhenti.

Bahan-bahan yang dibutuhkan untuk membuat rangkaian ini adalah

sebagai berikut :

a. Transistor 4 buah

b. Resistor 330 6 buah

c. Optocoupler 3 buah

d. Diode 4148 2 buah

Gambar rancangan schematic dari driver motor ini adalah sebagai berikut:

(46)

Keterangan :

Proses kendali dalam hal ini ditentukan oleh logika dari OUT_KIRI_A,

OUT_KIRI_B, dan REM_KIRI, di mana agar motor tersebut bekerja, maka

kondisi OUT_KIRI_A, OUT_KIRI_B, dan REM_KIRI harus saling berbeda

logika. Motor akan maju OUT_KIRI_A bernilai 0 dan OUT_KIRI_B bernilai 1,

motor akan mundur apabila OUT_KIRI_A bernilai 1 dan OUT_KIRI_B bernilai

0, dan motor akan berhenti jika REM_KIRI bernilai 0.

Berikut ini adalah tabel kebenaran motor driver, yang digunakan untuk

mengetahui proses input, output dan aksi yang diberikan ke motor.

Tabel 3.3 Tabel Kebenaran Driver Motor Kiri

(47)

e. Baterai 1,5 V 6 buah.

Mekanik yang dibuat direncanakan akan memiliki panjang 15cm, lebar

14 cm, tinggi 10 cm, dan memiliki 2 tingkat.

Gambar rancangan mekanik yang akan dibuat adalah seperti di bawah

ini:

Gambar 3.7 Mekanik Mobil

3. 4.Perancangan Perangkat Lunak

Perangkat lunak yang akan dibuat adalah perangkat lunak yang dibuat

menggunakan bahasa C dengan program compiler yang bernama CodeVision

(48)

b. Pemrosesan data sensor.

c. Pengendali kedua motor DC yang digunakan.

Berikut ini diagram alir dari perangkat lunak yang akan dibuat:

(49)

Penjelasan :

a. Port yang digunakan adalah port A.0 untuk sensor warna, port

D.0-D.5 untuk sensor garis, port C.0-C.1 untuk counter, port C2.-C.7

untuk driver motor, port B.0-B2 dan B4-B7 untuk LCD.

b. Selain inisialisasi port ada juga inisialisai variable-variable lainnya,

seperti x untuk posisi, lpwm, rpwm untuk nilai pwm dari motor,

second untuk waktu, dan lain-lain.

c. Aksi pertama yang dilakukan mobil adalah maju. Setelah maju, mobil

baru membaca garis.

d. Pembacaan garis disesuaikan dengan cara kerja sensor garis. Setelah

membaca garis program akan memberikan pwm dan direksi yang

kemudian dikirim ke driver motor. PWM yang akan dikirim harus

lebih besar dari 0, karena jika PWM bernilai 0 maka berarti mobil

akan berhenti dan program akan berakhir.

e. Setelah pembacaan sensor garis, selanjutnya adalah pembacaan

warna, pembacaan warna ini dilakukan dengan cara mengambil nilai

dari sensor warna yang menggunakan pin ADC.0, setelah

mendapatkan nilai tersebut mobil akan melakukan aksi sesuai dengan

Warna=

(50)

jika hijau pwm dikembalikan normal dan jika merah pwm

dihilangkan, rem diaktifkan selama 7 detik.

f. Setelah proses pembacaan sensor warna dilakukan, hasil direksi dan

pwm langsung diberikan ke motor kiri dan kanan. Dan motor kiri dan

kanan akan melakukan aksi sesuai dengan direksi dan pwm yang

diberikan.

g. Setelah menggerakkan motor, program akan kembali mengeksekusi

pembacaan garis, proses ini dilakukan terus menerus sampai

menemukan titik dimana pwm bernilai 0, yaitu ketika sensor garis

(51)

automatis dibuat dan pada akhirnya dapat dijalankan dengan baik, cara membuat

program dan cara mengimplementasikan program yang sudah dibuat.

4. 1.Kebutuhan Perangkat Sistem

Perangkat yang dibutuhkan dalam pembuatan simulasi mobil

menggunakan ATMega8535 ini meliputi perangkat keras (hardware) dan

perangkat lunak (software)

Adapun perangkat keras yang dibutuhkan adalah sebagai berikut :

a. PC diatas pentium 3, yang memiliki serial port (COM1/COM2).

b. Hard Disk dengan kapasitas minimum 500 Kb

c. Downloader serial untuk AVR.

Sedangkan perangkat lunak yang dibutuhkan adalah sebagai berikut :

a. Windows XP SP2 sebagai sistem operasi

b. CodeVision AVR sebagai program compiler

4. 2.Implementasi Pemrograman

Untuk memulai pemrograman jalankan CodeVision AVR yang terdapat

di C:/cvavr/bin/cvavr.exe

Gambar 4.1 Folder Tempat Program CodeVision AVR

(52)

Gambar 4.2 Tahap awal pembuatan program

Pilih wizard avr, kemudian pilih chip yang akan digunakan, yaitu

ATMega8535 dengan clock 11.0592.

Gambar 4.3 Pemilihan Chip dan Clock yang akan digunakan

Setelah memilihi chip yang digunakan, selanjutnya konfigurasikan

masing-masing port yang akan digunakan, port yang akan digunakan adalah port

(53)

port C untuk driver motor konfigurasi port C dapat dilihat pada gambar (4.4c),

port D untuk sensor garis konfigurasi port D dapat dilihat pada gambar (4.4d).

(a) (b)...

(c) (d)

(54)

konfigurasi ADCnya juga, dapat dilihat pada gambar (4.5a). Dan untuk

penggunaan delay maka konfigurasi timer juga diperlukan, konfigurasi timer

dapat dilihat pada gambar (4.5b), berikut ini konfigurasi ADC dan timer :

(a) (b)

Gambar 4.5 Konfigurasi timer dan ADC.

Setelah selesai, klik menu File->Generate, Save and Exit. Lalu akan

muncul halaman untuk memasukkan code program.

Berikut ini potongan program simulasi mobil automatis :

void scan()

case 0b00000011: maju(90,30); x=1; z=4;break;

case 0b00000010: maju(100,50); x=1; z=4;break;

(55)

case 0b00001100: maju(100,100); z=4;break;

case 0b00001000: maju(80,100); x=0; z=4;break;

case 0b00011000: maju(60,100); x=0; z=4;break;

case 0b00010000: maju(50,100); x=0; z=4;break;

case 0b00110000: maju(30,90); x=0; z=4;break;

case 0b00100000: maju(0,70); x=0; z=4;break;

Code di atas adalah code untuk scan garis hitam, fungsi ini digunakan

agar mobil tetap berada di jalur yang ditentukan, yaitu tetap mengikuti garis

hitam. Jika sensor berada di atas garis hitam maka sensor akan bernilai 1, dan jika

berada di garis putih maka sensor akan bernilai 0. Setelah mengecek garis lintasan

mobil digerakkan sesuai posisinya dengan menggunakan fungsi maju (a,b). posisi

x merupakan indicator tempat terakhir mobil berada, jadi jika mobil keluar garis

lintasan maka mobil akan bisa kembali dengan segera.

Contoh:

case 0b00000100: maju(100,80); x=1; z=4;break; //1

case 0b00001000: maju(80,100); x=0; z=4;break; //2

Jalan dari code 1 adalah jika sensor KI terkena garis hitam sedang yang

lain membaca background putih, kemudian mobil akan berbelok ringan (motor

kiri maju cepat, motor kanan maju ringan) dan x diset 1, 1 berarti kondisi ketika

mobil berada di sebelah kiri garis hitam, sedangkan code 2 adalah jika sensor KA

terkena garis hitam sedang yang lain terkena background putih, dan x diset=0,

(56)

maka mobil akan berbelok sesuai dengan kondisi keberadaan mobil yang terakhir

secara otomatis mobil akan langsung berbelok kanan sampai menemukan garis

lintasan yang tepat, jika x=0, kondisi mobil terkahir di sebelah kanan lintasan

maka secara otomatis mobil akan langsung berbelok kiri sampai menemukan garis

lintasan yang tepat.

Selain melaju di garis luru mobil juga akan dihadapi dengan lintasan

yang memiliki perempatan, dan jika menghadapi perempatan mobil akan langsung

berbelok kanan, fungsi ini dapat dilihat di code berikut ini:

case 0b00111111: belka(90,50); x=0; z=4;break;

code ini berarti mobil sedang berada di atas perempatan, perempatan

dikenali dengan semua sensor sedang membaca garis hitam, jika kondisi

perempatan terpenuhi maka mobil akan langsung berbelok kanan dengan fungsi

belka(a,b).

void maju(unsigned char mki,unsigned char mka) {

(57)

untuk rem motor baik motor kiri maupun kanan.

Remka dan remki harus dipastikan tidak aktif, karena jika remka atau

remki diaktifkan berapapun besarnya pwm dan direksi yang diberikan maka motor

tidak akan dapat bergerak sama sekali.

void belka(unsigned char mki,unsigned char mka) {

kanan maka direction kanan harus berhenti dan direction kiri berjalan.

void belki(unsigned char mki,unsigned char mka) {

maka direction kiri harus berhenti dan direction kanan berjalan.

void stop (){pwmki=0; pwmka=0; remki=0; remka=0;}

fungsi ini digunakan untuk menghentikan mobil.

warna=read_adc(0);

l_tm=((255-m)/2)-10; //mencari nilai low merah h_tk=((255-k)/2)+10; //mencari nilai high kuning

th=(255-warna)/2; //mencari nilai tengah-tengah

(58)

warna=read_adc(0) berfungsi untuk mengambil nilai warna yang dilihat saat ini,

l_tm digunakan untuk mencari nilai low tegangan merah, h_tk=digunakan untuk

mencari nilai max tegangan kuning, th digunakan untuk mencari nilai rata-rata

tegangan saat ini. Jika nilai tegangan rata-rata saat ini kurang dari h_tk maka

warna yang dilihat adalah warna kuning, jika nilai tegangan rata-rata saat ini lebih

dari nilai l_tm maka warna yang dilihat adalah warna merah.

Untuk memberikan aksi kepada motor sesuai dengan warna yang dilihat

maka digunakan potongan program di bawah ini :

warna=read_adc(0);

(59)

dan direksi yang diberikan ke motor sesuai dengan posisi terakhir saat

pendeteksian garis. Jika z==2, maka mobil akan berhenti selama 7 detik kemudian

langsung maju, jika nilai th<h_th dan h>l_th maka mobil akan melaju seperti

normal, jika semua tidak terpenuhi berarti sensor warna sedang membaca warna

hitam sehingga tidak ada aksi yang diberikan kepada driver motor

4. 3.Prosedur Pemasangan Program Pada ATMega8535

Agar listing program yang dibuat dapat dibaca oleh microcontroller,

maka listig program yang awalnya berekstensi .c harus diconvert menjadi .hex.

Berikut ini alur proses pemasangan program pada ATMega8535 menggunakan

program compiler CodeVision AVR.

Gambar 4.6 Alur Pemasangan Program Pada Microcontroller

(60)

Untuk memasang program pada chip ATMega8535 pertama-tama

program yang sudah dibuat sebelumnya harus dicompile terlebih dahulu, untuk

memastikan tidak ada yang error, karena jika ada yang error maka program tidak

akan bisa dibuat, hasil compile dari program yang sudah tidak memiliki error

adalah seperti gambar di bawah ini:

Gambar 4.7 Hasil compilasi program

Setelah tidak ada kesalahan selanjutnya make program, hasilnya dapat

dilihat pada gambar 4.8, setelah make program selesai listing code yang awalnya

berekstensi .c akan diconvert menjadi .hex, untuk mengetahuinya dapat dilihat di

folder tempat penyimpanan file project yang sedang dibuat, seperti yang

ditunjukkan pada gambar 4.9

(61)

Gambar 4.8 Tampilan Saat Make Program

Gambar 4.9 Hasil Convert File t5.c

Setelah itu klik button “Program the chip”. Maka proses selanjutnya

adalah proses pengisian program, ada juga yang menamakan penanaman program

pada chip ATMega8535.

Pengisian program ini dilakukan secara bertahap :

1. Proses pertama pengecekan kondisi memori flash chip

2. Jika chip belum terpasang dengan benar maka aka nada peringatan

error.

3. Jika chip sudah terpasang dengan benar maka memori flash yang ada

sebelumnya dihapus

(62)

pengisian memori EEPROM. Proses ini dilakukan hanya jika listing

code yang dibuat menggunakan fasilitas EEPROM, jika tidak maka

proses ini akan dilewati.

Berikut ini hasil dari pengisian program pada chip ATMega8535

……….(a) (b)

(63)

Pada bab ini akan dibahas mengenai pengujian dan analisa pada hardware

yang telah dirancang. Tujuan dari pengujian dan analisa ini adalah untuk

mengetahui apakah hardware tersebut telah berfungsi dengan benar dan sesuai

rencana atau tidak. Pengujian dan analisa ini dilakukan secara bertahap, diawali

dengan pengujian hardware programmer, kemudian dilanjutkan dengan pengujian

proyek sederhana

5.1. Analisis Permasalahan

Setelah hardware programmer selesai dirancang, maka sebelum dicoba

untuk mendownload program, terlebih dahulu mengukur tegangan I/O pada

hardware programmer tersebut. Mengingat tegangan I/O pada hardware

programmer ini harus sama dan sesuai dengan tegangan pada schematicnya, maka

dari itu diperlukan suatu alat untuk mengukur tegangan tersebut yaitu dengan

AVO meter.

5.2. Pengujian Sensor Garis

Sensor garis dalam simulasi mobil automatis sangatlah penting, karena itu

rangkaian pertama yang diuji adalah sensor garis ini.

Pengujian sensor garis dilakukan dengan cara meletakkan sensor pada

background dengan warna hitam dan putih. Jika ketika diletakkan di atas warna

(64)

maka lampu indicator akan tetap menyala

Pengujian 1:

Sensor diletakkan di atas warna hitam:

Gambar 5.1 kondisi lampu indicator ketika sensor berada di atas warna

hitam

Pengujian ini berhasil karena lampu indicator mati ketika sensor diletakkan

di atas warna hitam

Pengujian 2:

Sensor diletakkan di atas warna putih:

Gambar 5.2 kondisi lampu indicator ketika sensor berada di atas warna

(65)

diletakkan di atas warna putih

Dengan pengujian-pengujian di atas diketahui bahwa sensor dapat berjalan

dengan baik

5.3. Pengujian Sensor Warna

Pengujian sensor warna dilakukan untuk mengetahui apakah sensor sudah

bisa membedakan warna atau belum, untuk dapat mengetahui apakah sensor

sudah berjalan dengan baik maka dilakukan pengecekan dengan meletakkan

sensor pada tiga kertas yang berbeda.

Pengujian dilakukan dengan dua kondisi berbeda, kondisi pertama

pengujian dilakukan di dalam ruangan tertutup, sedangkan kondisi kedua

pengujian dilakukan di ruangan terbuka.

Pengujian 3:

Sensor warna diletakkan di atas kertas berwarna kuning:

(66)

Sensor warna diletakkan di atas warna hijau:

Gambar 5.4 sensor warna diletakkan di atas warna hijau

Pengujian 5:

Sensor warna diletakkan di atas warna merah:

Gambar 5.5 sensor warna diletakkan di atas warna merah

Melaului pengujian dengan kondisi ruangan tertutup nilai yang didapat dari

(67)

Pengujian

Kuning 197 196 193 183 192

Hijau 77 79 82 83 83

Karena nilai-nilai di atas sudah memiliki perbedaan yang cukup jauh maka

sensor warna yang dibuat sudah dapat membedakan warna-warna yang ada.

Berikut ini hasil salah satu pembacaan warna:

Gambar 5.6 hasil pembacaan sensor warna pengujian di ruang tertutup

Sedangkan melalui pengujian dengan kondisi ruang terbuka nilai yang

didapat dari sensor warna ini adalah sebagai berikut :

Tabel 5.2 Pembacaan Sensor Warna di ruang terbuka

Pengujian

Merah 185 189 187 197 189

Kuning 197 190 186 198 192

Hijau 192 187 186 175 193

Karena nilai-nilai yang didapatkan tidak memiliki perbedaan yang dapay

(68)

warna-Berikut salah satu hasil dari pembacaan sensor warna pada ruang terbuka :

Gambar 5.7 hasil pembacaan sensor warna di ruang terbuka

5.4. Studi Kasus

Setelah semua rangkaian berfungsi dengan baik selanjutnya dilakukan

pengujian mobil secara keseluruhan untuk memastikan bahwa semua rangkaian

terhubung dan dapat berjalan dengan baik.

Pengujian ini dilakukan beberapa tahap, tahap pertama yang dilakukan

adalah pengujian sensor garis, kemudian pengujian sensor warna

Kasus I:

Mobil diletakkan di atas garis lurus

Mobil

(69)

Pengujian pertama mobil diletakan di sebelah kiri lintasan, pada detik 1-3

mobil melakukan belok kanan tajam, dan pada detik 4-7 mobil melakukan belok

kanan ringan, setelah itu mobil dapat melaju lurus.

Pengujian kedua mobil diletakan di sebelah kanan lintasan, pada detik 1-3

mobil melakukan belok kiri tajam, dan pada detik 4-7 mobil melakukan belok kiri

ringan, setelah itu mobil dapat melaju lurus.

Kasus 2:

Mobil diletakkkan di atas lintasan yang memiliki perempatan

Gambar 5.9 mobil belok kanan ketika menghadapi perempatan

Pengujian ketiga ini meletakkan mobil pada lintasan yang memiliki

perempatan. Ketika mobil menghadapi perempatan, aksi motor adalah sebagai

berikut:

(70)

2 Stop Motor berhenti sejenak

3 Belok kanan tajam Motor kanan berhenti, motor kiri maju cepat 4 Belok kanan sedang Motor kanan maju sedikit, motor kiri maju

sedang

5 Maju Motor kanan maju, motor kiri maju

Dari percobaan di atas mobil mampu menghadapi lintasan yang memiliki

perempatan. Mobil mampu berbelok kanan tajam ketika menghadapi perempatan,

lalu berbelok kanan sedang sehingga memposisikan mobil ke tengah.

Kendala dari pengujian ini, tidak selalu mobil dapat melakukan belok kanan

sedang.

Berikut ini hasil dari pengujian I dan III:

(a) (b)

(71)

(e)

Gambar 5.10 Posisi Mobil di Pengujian I dan III

Penjelasan :

Gambar (a) adalah posisi awal dimana mobil ditempatkan di sebelah kanan

garis

Gambar (b) adalah posisi saat mobil mulai memasuki jalur

Gambar (c) adalah posisi saat mobil berhasil berada di lintasan

Gambar (d) adalah posisi ketika mobil menemui perlintasan, dan berhasil

belok kanan.

Gambar (e) adalah posisi mobil berhasil melaju lurus sesaat setelah mobil

berbelok ke kanan

Berikut ini hasil dari pengujian II dan III:

(72)

(c) (d)

(e) (f)

Gambar 5.11 Posisi mobil di Pengujain II dan III

Dari pengujian-pengujian di atas dapat diketahui bahwa mobil sudah dapat

berjalan dengan baik di atas lintasan lurus.

Penjelasan :

Gambar (a) adalah posisi awal dimana mobil ditempatkan di sebelah kiri

garis

Gambar (b) adalah posisi saat mobil mulai memasuki jalur

(73)

berhenti sejenak.

Gambar (e) adalah posisi mobil mulai berbelok ke kanan

Gambar (f) adalah posisi mobil berhasil melaju kembali setelah berbelok.

Kasus 3 :

Mobil diletakkan di atas garis yang memiliki pertigaan :

Gambar 5.12 Mobil Ditempatkan di Rute Yang Mempunyai Pertigaan

Pengujian keempat ini meletakkan mobil pada lintasan yang memiliki

pertigaan. Ketika mobil menghadapi pertigaan, mobil tidak akan menghiraukan

pertigaan tersebut sehingga mobil akan tetap melaju

Berikut ini hasil dari pengujian keempat :

(74)

(c) (d)

Gambar 5.13 Hasil Pengujian Keempat

Penjelasan :

Gambar (a) : adalah posisi awal mobil

Gambar (b) : mobil mulai melaju di atas jalur lurus

Gambar (c) : /mobil menghadapi pertigaan tapi tidak melakukan apa-apa,

sehingga mobil tetap melaju lurus

Gambar (d) : mobil melaju lurus setelah menghadapi pertigaan.

Dari hasil pengujian keempat diketahui bahwa mobil tidak dapat mengenali

pertigaan, sehingga mobil tetap melaju lurus.

Kasus 5:

(75)

Kanan

Gambar 5.15 Mobil ditempatkan Di Rute Yang Memiliki Tikungan Ke Kiri

Pengujian kelima ini meletakkan mobil pada lintasan yang memiliki

tikungan baik tikungan ke kanan maupun tikungan ke kanan. Ketika mobil

menghadapi tikungan ke kanan, mobil tidak akan menghiraukan tikungan tersebut

sehingga mobil akan tetap melaju.

Aksi yang terjadi saat mobil menghadapi tikungan sama dengan saat mobil

menghadapi pertigaan, yaitu mobil tidak menghiraukan tikungan tersebut

sehingga mobil tetap melaju lurus.

Kasus 6 :

Mobil ditempatkan pada lintasan yang memiliki perbedaan warna di

Gambar

Gambar 2.14 Variable resistor jenis potensio
Gambar 2.18 Bentuk Fisik Transistor
Gambar 2.19 Bentuk Fisik Optocoupler
Gambar 3.2 Schematic Sensor Garis dan Comparator
+7

Referensi

Dokumen terkait

Penelitian ini menggunakan mikrokontroller Arduino Uno sebagai chip utama. Masukan dari robot yang dibangun berasal dari masukan intensitas cahaya sensor photodioda sebagai

Pengujian rangkaian pengirim yang akan dipakai, yaitu menentukan warna LED super bright yang akan dipakai pada rangkaian pengirim agar sensor dapat mendeteksi jalur

menu tombol. Gambar 3.2 Diagram Blok Sistem.. TUGAS AKHIR RANCANG BANGUN ROBOT... HENDRIK JUNAEDI Prinsip kerja sensor garis adalah transmitter memancarkan cahaya yang akan

yang berfungsi sebagai saklar terkendali cahaya dimana prinsip kerja nya menerima cahaya pada basis dalam kondisi mati [6]. Sebuah sensor terdiri dari 2 buah led

Cara kerja dari sistem robot line follower secara umum ialah dimulai dari pembacaan lintasan atau garis oleh sensor photodiode berserta LED yang mana intensitas pantulan

Hasil akhir dari tugas akhir ini adalah sebuah desain kendali logika yang dapat di implementasikan pada robot mobil wall follower yang dibuat dengan memanfaatkan

RANCANG BANGUN ROBOT LINE FOLLOWER PEMADAM API MEMANFAATKAN FLAME SENSOR DAN BLUETOOTH BERBASIS ARDUINO Badrut Tamam1, Jusuf Bintoro2, Pitoyo Yuliatmojo3 1 Mahasiswa Prodi