makalah robot lt

33
ROBOT LINE TRACKER Makalah Diajukan Untuk Memenuhi Tugas Robotika Disusun Oleh : Andri Bangun Rahardjo 115060309111001 Rahmat Alvian 125060309111001 As’ad Shidqy Aziz 125060309111002 Taufiq Yudi Sulistiyono 125060309111004

Upload: asad-shidqy

Post on 20-Jan-2016

67 views

Category:

Documents


8 download

DESCRIPTION

makalah tugas robotika

TRANSCRIPT

Page 1: Makalah Robot LT

ROBOT LINE TRACKER

Makalah

Diajukan Untuk Memenuhi

Tugas Robotika

Disusun Oleh :

Andri Bangun Rahardjo 115060309111001

Rahmat Alvian 125060309111001

As’ad Shidqy Aziz 125060309111002

Taufiq Yudi Sulistiyono 125060309111004

DEPARTEMEN PENDIDIKAN NASIONAL

UNIVERSITAS BRAWIJAYA

FAKULTAS TEKNIK

MALANG

2013

Page 2: Makalah Robot LT

ROBOT LINE TRACKER

1. Pendahuluan

Bila seseorang mendengar kata “robot” untuk pertama kali, maka yang ada

dalam benaknya adalah suatu peralatan mekanik yang dilengkapi dengan

berbagai kemampuan khusus untuk dapat menentukan gerakannya sendiri. Tetapi

kenyataannya tidak demikian, karena robot yang ada di kehidupan nyata adalah

susunan besi/almunium/arkilik yang dibuat sedemikian rupa sehingga

membentuk body robot dan dilengkapi perangkat hardware & software yang

berfungsi sebagai sumber tegangan dan sistem kendali robot dimana fungsi dari

robot tersebut tergantung dari apa yang kita perintahkan dan apa yang kita

tanamkan pada chip yang ada didalam robot tersebut. Pada kesempatan kali ini,

penulis bersama teman – teman yang lain mencoba merancang dan membuat

robot sederhana dengan kemampuan mampu mengikuti garis yang berada

dilapangan, robot ini umumnya disebut dengan robot line tracker atau robot

pengikut garis. Rancangan dan desain robot yang telah dibuat akan dimasukkan

di dalam makalah robot line tracker ini sehingga pembahasan masalah dalam

makalah ini dibahas secara rinci. Masalah yang akan dibahas yaitu bagian –

bagian robot yang terdiri dari bagian mekanik, hardware, dan software serta

implementasi robot dilapangan yang mencakup teknik pembacaan sensor dan

cara mengatasi error jika robot keluar dari garis lintasan.

2. Bagian – Bagian Robot Line Tracker

Pada dasarnya bagian – bagian robot terdiri dari 3 bagian utama, yaitu bagian

mekanik, bagian hardware, dan bagian software. Di dalam masing – masing

bagian tersebut terdapat berbagai macam komponen dan peralatan yang

menyusunnya sehingga saling melengkapi dan menjadi satu kesatuan di dalam

bagian tersebut. Pada bagian selanjutnya akan dijelaskan masing – masing bagian

tersebut beserta komponen yang menyusunnya.

2.1. Bagian Mekanik

Pada bagian mekanik, chassis robot didesain se-effisien mungkin dengan

menggunakan 2 buah motor DC sebagai penggerak utamanya. Pada robot

Page 3: Makalah Robot LT

ini ditambahkan pula perbandingan gear untuk memenuhi torsi dan

kecepatan yang diinginkan. Selain itu, pada bagian depan robot terdapat

roda bebas yang berupa roller berbentuk setengah lingkaran yang

difungsikan agar roller ini dapat bergerak bebas mengikuti pergerakan dari

roda utama pada robot. Untuk penjelasan lebih spesifik mengenai bagian

mekanik akan dijelaskan pada penjelasan berikut.

a) Motor DC

Motor listrik merupakan perangkat elektromagnetis yang mengubah

energi listrik menjadi energi mekanik. Dalam perancangan robot line

tracker ini menggunakan motor DC 12V. Motor DC memerlukan

suplai tegangan yang searah pada kumparan medan untuk diubah

menjadi energi mekanik. Kumparan medan pada motor dc disebut

stator (bagian yang tidak berputar) dan kumparan jangkar disebut rotor

(bagian yang berputar). Jika terjadi putaran pada kumparan jangkar

dalam pada medan magnet, maka akan timbul tegangan (GGL) yang

berubah-ubah arah pada setiap setengah putaran, sehingga merupakan

tegangan bolak-balik. Prinsip zkerja dari arus searah adalah membalik

phasa tegangan dari gelombang yang mempunyai nilai positif dengan

menggunakan komutator, dengan demikian arus yang berbalik arah

dengan kumparan jangkar yang berputar dalam medan magnet. Bentuk

motor paling sederhana memiliki kumparan satu lilitan yang bisa

berputar bebas di antara kutub-kutub magnet permanen. Untuk

konstruksi motor DC sederhana ditunjukkan pada Gambar 2.1.1.

Page 4: Makalah Robot LT

Gambar 2.1.1. Konstruksi Motor DC Sederhana

Pemilihan motor DC ini dikarenakan untuk pengendaliannya mudah

dilakukan dengan menggunakan driver transistor ataupun relay yang

dapat di sambungkan dengan mikrokontroller. Untuk pengendaliannya

pada motor DC ini mempunyai dua kutub negatif dan positif yang

dihubungkan dengan driver agar dapat dikendalikan untuk putar CW

dan CCW berdasarkan algoritma program yang diinginkan. Bentuk

motor DC 12V yang digunakan ditunjukkan pada Gambar 2.1.2.

Gambar 2.1.2. Bentuk Fisik Motor DC pada Robot

b) Chassis

Chassis pada robot line tracker digunakan sebagai kerangka robot

dimana dalam pemilihannya harus sesuai agar nantinya kecepatan dan

berat robot dapat seimbang. Chasis yang digunakan dalam robot yang

dirancang menggunakan bahan akrilik dan rangkaian minimum sistem

dari robot line tracker. Bentuk dari akrilik ditunjukkan pada Gambar

2.1.3.

Gambar 2.1.3. Bentuk akrilik yang belum dibentuk

Page 5: Makalah Robot LT

Acrylic atau Akrilik sendiri adalah semacam plastik yang menyerupai

kaca,namun memiliki sifat yang membuatnya lebih unggul daripada

kaca. Acrilic digunakan untuk membuat berbagai produk. Hal ini

dipilih karena berbagai alasan. Acrylic lebih kuat dari kaca, sehingga

lebih tahan dan tidak pecah sehingga lebih lebih aman. Keuntungan

lain darinya adlah acrylic jauh lebih ringan dari pada kaca. Hal ini

membuat bekerja dengan acrylic lebih mudah. Sebuah properti yang

unik dari Acrylic adalah kemampuan untuk dibentuk. Juga tidak ada

lapisan atau serat dalam struktur acrylic. Gambar 2.1.4. menunjukkan

akrilik yang mudah dibentuk.

Gambar 2.1.4. Akrilik Yang Sudah Dibentuk

Pada perancangan chasis ini akrilik digunakan sebagai chasis untuk

menopang motor yang dirancang sedemikian rupa agar dapat sesuai

dengan gear dan roda yang digunakan. Untuk bagian body line traker

langsung menggunakan PCB rangkain minimum sistem yang langsung

disambungkan dengan akrilik dan rangkaian sensor proximity yang

dipakai. Perancangan chasis ditunjukkan pada gambar 2.1.5.

Keterangan :

1. Akrilik

2. PCB Minimum

sistem

dan driver

3. Motor DC

4. Roda Line Traker

5. PCB sensor

Page 6: Makalah Robot LT

Gambar 2.1.5. perancangan chasis

Untuk gambar hasil dari perancangan chassis robot line tracker

ditunjukkan pada gambar 2.1.6.

Gambar 2.1.6. Chassis Robot Line Tracker

c) Gear

Gear dalam perancangan ini difungsikan untuk mengendalikan roda

robot agar dapat sinkron dengan motor DC 12v yang digunakan, selain

itu pemilihan gear ini agar kecepatan dan torsi sesuai dengan yang

diinginkan. Pada robot line traker yang dirancang tidak menggunakan

sebuah gearbox jadi gear yang digunakan include pada roda line

tracker. Pemilihan jenis ini dikarenakan faktor yang diutamakan dalam

perancangan adalah kecepatan robot bukanlah torsi. Apabila

menginginkan torsi yang besar maka harus menggunakan gearbox

dengan konsekuensi kecepatan akan menurun dibandingkan gear yang

langsung include pada roda. Untuk gear yang dipakai ditunjukkan pada

Gambar 2.1.7.

Page 7: Makalah Robot LT

Gambar 2.1.7. Gear Line traker

d) Roda Utama & Roda Bebas

Roda utama adalah roda yang nantinya di letakkan pada sisi belakang

robot. Fungsi dari roda utama ini adalah untuk menggerakkan robot

line tracker roda utama yang dipilih adalah roda berbahan spon dan

plastik untuk velg dari roda, pemilihan roda berjenis ini karena ringan

dan juga dapat mempengaruhi kecepatan robot. Untuk bentuk roda

ditunjukkan pada Gambar 2.1.8.

Gambar 2.1.8. Bentuk Roda Line Traker

Roda bebas adalah roda tunggal yang diletakkan didepan robot yang

bergerak berdasarkan arah robot. Roda bebas yang dipakai

menggunakan roller parfum karena mudah didapatkan. Untuk bentuk

roda bebas ditunjukkan pada Gambar 2.1.9.

Page 8: Makalah Robot LT

Gambar 2.1.9. Bentuk Roda Bebas Pada Robot

2.2. Bagian Hardware

Pada bagian hardware, robot ini terdiri dari 6 bagian utama yaitu sensor

garis sebagai navigasi robot, switch push-button sebagai pemilih mode

program dan mengatur nilai ADC, driver motor sebagai pemberi logika

pada motor DC, supply tegangan sebagai pemberi catudaya terhadap semua

bagian hardware, LCD sebagai penampil kondisi sensor, dan

mikrokontroller sebagai tempat menyimpan algoritma dan program dari

robot tersebut. Sehingga dapat dianalogikan sensor dan switch push-button

sebagai input, Mkirokontroller sebagai pemroses data, LCD dan Driver

motor sebagai output dari sistem. Blok diagram bagian hardware dapat

dilihat dalam gambar 2.2.1.

Gambar 2.2.1. Blok Diagram Bagian Hardware

Untuk penjelasan lebih spesifik mengenai bagian – bagian hardware akan

dijelaskan pada penjelasan berikut.

a) Regulator/Supply Tegangan

Pada robot ini, regulator/supply tegangan yang digunakan berupa

baterai Li-Po 12v dengan arus sebesar 2200 mAh untuk mensupply

semua blok hardware. Akan tetapi untuk mensupply blok

mikrokontroller, LCD, Sensor Garis, dan Push-Button, tegangan dari

baterai harus dikonversi lagi menjadi tegangan 5v menggunakan IC

7805. Hal ini dikarenakan kebutuhan tegangan maksimal untuk blok –

blok hardware tersebut hanya berkisar 5v sampai 5,5v sehingga

Page 9: Makalah Robot LT

tegangan dari baterai harus diturunkan lagi. Sedangkan untuk blok

driver motor, Tegangan yang digunakan langsung dari baterai sebesar

12v. Bentuk fisik dari baterai Li-Po 12v dapat dilihat dalam gambar

2.2.2.

Gambar 2.2.2. Bentuk Fisik Baterai Li-Po

b) Sensor Garis

Sensor Garis digunakan untuk mendeteksi garis yang sifatnya Single

Line. Sensor pada robot ini terdiri dari 15 pasang LED dan Photodioda

yang tergabung dalam satu modul. LED difungsikan sebagai

transmitter sedangkan Photodioda difungsikan sebagai receiver dari

sensor. Komponen photodioda ini merubah energi cahaya, yang

dipancarkan oleh LED menjadi pulsa-pulsa listrik. Komponen ini harus

menerima cahaya sebanyak mungkin agar sinyal listrik yang dihasilkan

kualitasnya cukup baik sehingga pulsa – pulsa yang di kirimkan akan

mudah di proses pada mikrokontroller. modul sensor ini mengeluarkan

sinyal analog yang tergantung pada tingkat kecerahan permukaan

lapangan yang dibaca oleh sensor tersebut. Jika permukaan lapangan

semakin cerah, maka cahaya LED yang terpantul semakin banyak dan

sebaliknya jika permukaan lapangan semakin gelap, maka cahay LED

yang terpantul semakin sedikit. Gambar 2.2.3. menjelaskan konsep dari

pembacaan sensor garis dalam membaca garis pada lapangan.

Page 10: Makalah Robot LT

Gambar 2.2.3. Konsep sensor garis

Prinsip kerja dari sensor ini yaitu jika cahaya LED mengenai

permukaan lapangan yang berwarna hitam, maka pantulan cahaya yang

diterima Photodioda lebih sedikit sehingga tegangan keluaran sensor

akan kecil. Sebaliknya jika cahaya LED mengenai permukaan lapangan

yang berwarna putih, maka pantulan cahaya yang diterima Photodioda

lebih banyak sehingga tegangan keluaran sensor menjadi lebih besar.

Tegangan output dari Photodioda inilah yang akan diolah oleh

mikrokontroller melalui pin ADC sebagai penentu posisi robot

dilapangan. Bentuk fisik dari modul sensor garis dapat dilihat dalam

gambar 2.2.4. Sedangkan skema dari modul sensor ini dapat dilihat

dalam gambar 2.2.5.

Gambar 2.2.4. Bentuk Fisik Modul Sensor Garis

Page 11: Makalah Robot LT

Gambar 2.2.5. Skema Modul Sensor Garis

c) Switch Push-Button

Robot ini dilengkapi dengan switch push-button yang berfungsi untuk

memilih mode program saat ada dilapangan. Sehingga jika terdapat dua

atau lebih lapangan yang berbeda, maka kita tinggal memilih tombol

mana yang harus digunakan untuk membaca garis pada lapangan

tersebut. Selain itu fungsi lainnya dari switch push-button yaitu untuk

mengatur besarnya pembacaan nilai ADC yang ada dilapangan

sehingga pengaturan ADC tidak perlu dilakukan melalui komputer

melainkan hanya dilakukan menggunakan switch – switch push-button

yang telah tersedia. Bentuk fisik dari modul switch push-button dapat

dilihat dalam gambar 2.2.6, sedangkan skema dari switch push-button

dapat dilihat dalam gambar 2.2.7.

Gambar 2.2.6. Modul switch push-button

Page 12: Makalah Robot LT

Gambar 2.2.7. Skema Modul switch push-button

d) Mikrokontroller ATmega 16

Mikrokontroller ATmega 16 digunakan untuk menyimpan listing

program dan memproses inputan dari sensor, sehingga bisa dioutputkan

menuju driver motor. Mikrokontroller ini terdiri dari 4 port

input/output, yaitu port A, Port B, Port C, dan Port D. Selain itu

mikrokontroller ini juga memiliki beberapa kelebihan lainnya yaitu

sifat penyimpanan listing program yang non-volatile sehingga listing

dapat dihapus dan diisi ulang lebih dari 1000 kali penyimpanan,

mampu beroperasi pada clock 16 MHz, ADC yang mampu mensupport

10-bit, mempunyai 3 timer/counter untuk memproses data inputan dan

terdapat 4 port PWM yang bisa digunakan pada mikrokontroller ini

serta beberapa kelebihan lainnya yang tidak dituliskan. Pada robot ini

Port A digunakan untuk 8 masukan sensor garis, sehingga output dari

sensor akan diproses menggunakan ADC pada mikrokontroller. Port B

digunakan untuk input switch push-button. Port C digunakan sebagai

output menuju LCD, sehingga data proses pembacaan sensor dapat

ditampilkan. Dan port D digunakan sebagai output PWM dan motor

enable menuju driver motor. Mikrokontroller ini bekerja pada tegangan

4,5v – 5,5v sehingga tegangan dari baterai dikonversi menggunakan

IC7805 sehingga tegangan input yang masuk ke mikrokontroller

menjadi 5v. Tampilan fisik dari modul mikrokontroller ATmega 16

dapat dilihat dalam gambar 2.2.8. sedangkan skema dari modul

mirkokontroller ini dapat dilihat dalam gambar 2.2.9.

Page 13: Makalah Robot LT

Gambar 2.2.8. Modul Mikrokontroller ATmega 16

Gambar 2.2.9 Skema Mikrokontroller ATmega 16

e) Driver Motor

Driver motor berfungsi untuk memberi tegangan menuju ke motor DC

sehingga motor dapat berfungsi sebagaimana mestinya. Pada robot ini

terdapat 2 buah driver motor yang menggunakan tegangan 12v untuk

mengontrol motor kiri dan motor kanan. Pada satu modul driver

menggunakan 4 mosfet untuk memproses pulsa PWM yang dikirimkan

oleh mikrokontroller. Sistem kerja dari driver ini yaitu saat

mikrokontroller mengirimkan logika 1 menuju Motor Enable dan pulsa

PWM dari mikrokontroller dikirimkan menuju driver, maka motor

akan berputar ke arah kanan. Sebaliknya jika mikrokontroller

mengirimkan logika 0 menuju Motor Enable dan pulsa PWM dari

mikrokontroller dikirimkan menuju driver, maka motor akan berputar

ke arah kiri. Tampilan fisik dari modul driver motor dapat dilihat

dalam gambar 2.2.10. sedangkan skema driver motor dapat dilihat

dalam gambar 2.2.11.

Page 14: Makalah Robot LT

Gambar 2.2.10. Modul Driver Motor

Gambar 2.2.11. Skema Driver Motor

f) LCD

LCD pada robot digunakan untuk menampilkan pembacaan sensor saat

dilapangan. Sehingga sensor yang membaca garis putih dan garis hitam

dilapangan dapat dilihat melalui LCD. Selain itu LCD juga digunakan

untuk menampilkan pembacaan besarnya nilai ADC sensor saat

membaca lapangan dan pengaturan kalibrasi multiplexer sensor.

Tampilan fisik dari modul LCD dapat dilihat dalam gambar 2.2.12.

sedangkan skema dari modul LCD dapat dilihat dalam gambar 2.2.13.

Page 15: Makalah Robot LT

Gambar 2.2.12. Tampilan fisik Modul LCD

Gambar 2.2.13. Skema Modul LCD

2.3. Bagian Software

Pada bagian software akan diberikan penjelasan tentang algoritma robot,

logika pembacaan sensor di lapangan, logika pemrograman motor DC dan

logika pengaturan PID robot. Nantinya pada bagian algoritma robot akan

dijelaskan flowchart dari sistem logika robot tersebut, pada bagian

pembacaan sensor akan dijelaskan proses pembacaan sensor dilapangan dan

pemilihan multiplexer saat melakukan pembacaan sensor. Pada bagian

pemrograman motor DC akan dijelaskan masalah pemrograman motor

dengan menggunakan pulsa PWM agar motor dapat bergerak maju dan

mundur. Dan terakhir pada bagian Logika pengaturan PID akan dijelaskan

masalah pemrograman kontrol robot menggunakan kontrol PID sehingga

pergerakan robot akan lebih smooth. Untuk lebih jelasnya akan dijelaskan

pada bagian berikut.

Page 16: Makalah Robot LT

a) Algoritma

Secara umum, flowchart algoritma robot ini adalah sebagai berikut :

Gambar 2.3.1. Flowchart Algoritma Robot.

Dari flowchart tersebut dapat dijelaskan bahwa pertama-tama robot

membaca posisi sensor terlebih dahulu. Kemudian robot mengolah data

posisi sensor tersebut. Setelah itu robot menentukan pergerakan motor

berdasarkan hasil pengolahan data tersebut. Berikut adalah listing

program “Main” dari algoritma robot tersebut :

Page 17: Makalah Robot LT

Gambar 2.3.2. Listing Program “Main” Algoritma Robot

b) Logika Pembacaan Sensor

Untuk logika pembacaan sensor, pada robot ini menggunakan fungsi

read_line(). Fungsi ini akan melaksanakan pembacaan sensor dan

mengembalikan nilai perkiraan posisi robot terhadap garis, dengan nilai

antara 0 dan 4000. Nilai 0 berarti garis berada di sebelah kiri sensor 0,

nilai antara 0 dan 2000 berarti garis berada dibawah sensor-sensor

sebelah kiri(seperti pada gambar nomor 6, 7, 8, dan 9), nilai 2000

berarti garis berada tepat di bawah sensor tengah(seperti pada gambar

nomor 5), dan seterusnya. ilustrasinya dapat dilihat dalam gambar

berikut.

Gambar 2.3.3. Ilustrasi Posisi Sensor pada Garis

Berikut adalah listing program fungsi read_line().

Page 18: Makalah Robot LT

Gambar 2.3.4. Listing Program fungsi membaca garis

c) Logika Pemrograman Motor

Untuk logika Pemrograman motor, pada robot ini menggunakan fungsi

set_motors(m_left , m_right). Jika nilai masukan fungsi tersebut

bernilai positif, maka motor akan bergerak maju. Sedangkan bila

masukannya bernilai negatif, maka motor akan bergerak mundur. Agar

motor bisa bergerak maju atau mundur, maka kita bisa mengatur driver

motor dengan pemberian polaritas pada motor DC seperti pada gambar

ilustrasi berikut

Gambar 2.3.5. Ilustrasi Polaritas motor DC

Agar pergerakan robot dapat dikontrol dengan halus, maka motor perlu

diatur kecepatannya. Untuk mengatur kecepatan motor dapat

menggunakan PWM. Semakin besar nilai masukan yang diberikan

pada fungsi set_motors(m_left , m_right), maka nilai PWM nya akan

semakin besar dan kecepatan motor juga semakin meningkat. Begitu

pula sebaliknya jika nilainya semakin kecil, maka kecepatan motor

akan semakin lambat. Grafik hubungan PWM dengan kecepatan motor

adalah seperti gambar berikut.

Page 19: Makalah Robot LT

Gambar 2.3.6. Grafik Hubungan PWM dengan Kecepatan Motor

Sebagai contoh apabila masukan m_left dan m_right pada fungsi

set_motors di beri nilai PWM sama misalkan 180, maka pergerakan

robot akan berjalan lurus seperti pada gambar paling kiri. Namun

apabila masukannya berbeda misalkan m_left = 255 dan m_right =

120, maka pergerakan robot akan belok ke kanan seperti pada gambar

di tengah. Kemudian jika masukan m_left = 255 dan m_right = -255,

maka robot akan belok kanan (putar balik) tajam seperti pada gambar

paling kanan.

Gambar 2.3.7. Ilustrasi Aksi Robot Dengan Beberapa Nilai PWM.

d) Logika Pengaturan PID

Bergerak smooth-nya robot sangat tergantung dari aksi kontrol robot

tersebut, jika hanya menggunakan kontrol on-offf (diskontinyu) akan

sangat berbeda dengan aksi kontrol kontinyu PID. Kontrol PID saat ini

banyak digunakan dalam aksi-aksi di dunia industri dan juga kontrol

robot. Berikut ini adalah blok diagram aksi kontrol PID:

Page 20: Makalah Robot LT

Gambar 2.3.8. Blok Diagram Kontrol PID

PID adalah singkatan dari Proporsional, Integral, Derivatif, ini adalah

tiga nilai input yang digunakan dalam rumus sederhana untuk

menghitung kecepatan motor agar robot harus berbelok ke kiri atau

kanan. Nilai proporsional kira-kira sebanding dengan posisi robot

terhadap garis. Artinya, jika robot justru berada tepat di pusat

garis(tengah), nilai proporsional diharapkan tepat 0. Jika di sebelah kiri

garis, nilai proporsional akan menjadi positif, dan di sebelah kanan

garis, maka akan negatif. Ini dihitung dari hasil dikembalikan oleh

fungsi read_line() hanya dengan mengurangkan 2000. Nilai Integratif

mencatat sejarah gerak robot. Nilai tersebut adalah jumlah dari semua

nilai-nilai dari nilai proporsional yang tercatat sejak robot mulai

berjalan. Nilai derivatif adalah laju perubahan nilai proporsional.

Dalam hal ini dihitung sebagai perbedaan dari dua nilai proporsional

terakhir. Berikut adalah bagian dari kode yang menghitung nilai input

PID:

Gambar 2.3.9. Listing Perhitungan PID

3. Implementasi Robot di Lapangan

Page 21: Makalah Robot LT

3.1. Teknik Pembacaan Sensor

Teknik pembacaan sensor pada software robot ini adalah menggunakan

fungsi read_sensor(num). Dimana num adalah menunjuk ke nomor sensor

yang ingin di baca. Fungsi tersebut akan mengembalikan nilai ADC dari

sensor yang dibaca. ADC yang digunakan adalah 8-bit dan Vreff 5volt.

Sehingga nilai pembacaan tersebut berkisar antara 0 sampai 255. Jika

sensor berada di atas warna putih, maka nilai ADC akan sangat

kecil(mendekati 0). Namun jika sensor berada di atas warna hitam, maka

nilai ADC akan sangat besar(mendekati 255). Berikut adalah listing

program dari fungsi read_sensor(num).

Gambar 3.1.1. Listing Program Fungsi read_sensor

Page 22: Makalah Robot LT

Fungsi selector (a,b,c) pada program di atas adalah untuk memilih sensor

mana yang akan di baca pada multiplexer. Multiplexer terhubung pada

channel ADC0. Sedangkan sensor yang lain langsung terhubung ke channel

ADC lainnya. Berikut adalah listing program dari fungsi adc_read(ch).

Gambar 3.1.2. Listing Program fungsi adc_read(ch)

3.2. Cara Mengatasi error

Error bisa disebabkan karena robot keluar lintasan, sehingga robot tidak

bisa kembali ke lintasan seperti yang diharapkan. Error tersebut bisa terjadi

karena lintasan mempunyai belokan yang tajam. Untuk mengatasi error

tersebut maka robot kita program agar mengenali belokan tajam tersebut.

Selain itu bisa juga kita program agar robot melakukan aksi tertentu di

bagian lintasan yang cenderung membuat robot keluar lintasan. Berikut

adalah potongan listing program agar robot belok ke kanan setelah robot

keluar lintasan.

Gambar 3.2.1. Listing agar Robot Belok Kanan Saat Keluar Lintasan

Dari potongan program tersebut dapat dilihat bahwa pada saat variabel

sensor bernilai tidak sama dengan nol (sensor!=0) maka mikrokontroller

Page 23: Makalah Robot LT

akan menjalankan program yang berada di dalam while(sensor!=0) tersebut

yaitu membaca sensor dan mengikuti garis. Sehingga robot akan selalu

mengikuti garis. Namun saat sensor robot keluar lintasan maka variabel

sensor bernilai sama dengan nol sehingga kondisi (sensor!=0) bernilai salah

dan mengakibatkan mikrokontroller tidak lagi menjalankan program yang

berada di dalam while(sensor!=0) tetapi menjalankan instruksi selanjutnya.

Instruksi selanjutnya yaitu saat sensor berada di luar lintasan, maka nilai

variabel sensor akan sama dengan nol. Sehingga kondisi (sensor==0) akan

bernilai benar dan mokrokontroller akan menjalankan program yang berada

di dalam while(sensor==0) tersebut yaitu membaca sensor dan

set_motors(90,-30) yang artinya robot akan belok ke kanan tajam. Sehingga

robot akan belok ke kanan tajam sampai mendeteksi adanya garis. Saat

sensor robot mengenai garis maka kondisi (sensor==0) akan bernilai salah

dan mikrokontroller akan menjalankan instruksi selanjutnya.

4. Kesimpulan & Penutup

Dari penjelasan yang telah dibahas diatas, dapat diambil kesimpulan sebagai

berikut :

Penggunaan chassis yang presisi dengan bahan yang tepat membuat robot

menjadi lebih seimbang dan lebih baik saat berada di lintasan.

Penggunaan motor DC dengan gearbox dapat mempengaruhi kecepatan

robot, tapi kelebihannya yaitu memperbesar torsi pada robot tersebut.

Selain itu besarnya diameter roda utama dan roda bebas juga

mempengaruhi kecepatan pada robot.

Sensor garis yang digunakan sangat peka terhadap cahaya luar/noise dari

luar sehingga dalam pemasangannya harus diberi penutup untuk

melindungi sensor dari cahaya yang ada di luar.

Driver motor yang digunakan hanya mampu untuk motor DC dengan arus

kecil, sehingga jika robot memakai motor DC dengan arus besar maka

driver motor in tidak cocok digunakan.

Pada pengaturan kontrol PID, jika menggunakan robot dengan spesifikasi

berbeda maka pengaturan kontrol PID-nya pun otomatis akan berbeda.

Dari desain dan rancangan yang kami buat, masih banyak kekurangan yang

terdapat dalam robot ini. Untuk kedepannya diharapkan mahasiswa – mahasiswa

Page 24: Makalah Robot LT

yang mengambil mata kuliah robotika ini lebih dapat menyempurnakan desain

robot ini. Sehingga hasil yang didapatkan akan lebih maksimal dan lebih

berkembang.