Anda di halaman 1dari 32

BAB I

PENDAHULUAN
1.1. Latar Belakang
Perkembangan teknologi elektronika saat ini sudah sedemikian pesatnya yang kadangkadang berawal dari rangkaian-rangkaian sederhana yang biasa kita jumpai dalam buku-buku
hobby elektronika.
Kata robot yang, berasal dari bahasa Czech, robota, yang berarti pekerja, mulai menjadi
populer ketika seorang penulis berbangsa Czech (Ceko), Karl Capek, membuat pertunjukan dari
lakon komedi yang ditulisnya pada tahun 1921 yang berjudul RUR(Rossums Universal Robot).
Robot dapat diartikan sebagai sebuah mesin yang dapat bekerja secara terus menerus baik secara
otomatis maupun terkendali. Robot digunakan untuk membantu tugas-tugas manusia
mengerjakan hal yang kadang sulit atau tidak bisa dilakukan manusia secara langsung. Misalnya
untuk menangani material radio aktif, merakit mobil dalam industri perakitan mobil, menjelajah
planet mars, sebagai media pertahanan atau perang, dan sebagainya. Pada dasarnya dilihat dari
struktur dan fungsi fisiknya (pendekatan visual) robot terdiri dari dua bagian, yaitu non-mobile
robot dan mobile robot. Kombinasi keduanya menghasilkan kelompok konvensional (mobile dan
non-mobile)contohnya mobile manipulator, walking robot,dll dan non-konvensional (humanoid,
animaloid, extraordinary).
Line Follower Robot (Robot Pengikut Garis) adalah robot yang dapat berjalan mengikuti
sebuah lintasan, ada yang menyebutnya dengan Line Tracker, Line Tracer Robot dan sebagainya.
Garis yang dimaksud adalah garis berwarna hitam diatas permukaan berwarna putih atau
sebaliknya, ada juga lintasan dengan warna lain dengan permukaan yang kontras dengan warna
garisnya. Ada juga garis yang tak terlihat yang digunakan sebagai lintasan robot, misalnya
medan magnet.
Saat ini perkembangan teknologi robotika telah mampu meningkatkan kualitas maupun
kuantitas produksi berbagai pabrik. Teknologi robotika juga telah menjangkau sisi hiburan dan
pendidikan bagi manusia. Salah satu jenis robot yang paling banyak diminati adalah jenis mobil
robot.
Ada dua macam robot line follower yaitu line follower biasa tanpa menggunakan
program (analog) dan line follower dengan program microkontroler (digital). Pada dasarnya cara
1

kerjanya sama yaitu membaca sebuah garis sebagai lintasannya dan line follower bergerak
mengikuti garis yang merupakan lintasannya. Hanya saja yang menggunakan program
microkontroler lebih komplek dan lebih sempurna jika di banding line follower yang tanpa
menggunakan program. Dari segi biaya sangat jelas bahwa line follower menggunakan program
microkontroller lebih mahal dalam pembuatannya.

1.2. Tujuan
Mengetahui dan memahami sistem dan cara kerja Line Follower
Mengetahui fungsi dari komponen-komponen untuk membuat sebuah line follower.
Mengetahui bagaimana cara membuat rangkaian robot line follower.
Dapat menjalankan sebuah line follower sesuai cara kerjanya dengan menggunakan
microkontroler

BAB II
TINJAUAN PUSTAKA
2.1.PCB (Printed Circuit Board)
Printed Circuit Board atau biasa disingkat PCB adalah sebuah papan yang digunakan
untuk mendukung semua komponen-komponen elektronika yang berada diatasnya, papan PCB
juga memiliki jalur-jalur konduktor yang terbuat dari tembaga dan berfungsi untuk
menghubungkan antara satu komponen dengan komponen lainnya.

Bahan yang digunakan untuk membuat PCB adalah sejenis fiber sebagai media isolasinya
yang dilapisi cat berwarna hijau, sedangkan untuk jalur konduktor menggunakan tembaga. Ada
beberapa macam jenis PCB menurut kegunaannya yaitu PCB 1 side (biasa digunakan pada
rangkaian elektronika seperti radio, TV, dll) PCB double side (maksudnya kedua sisi PCB
digunakan untuk menghubungkan komponen) dan PCB multi side ( bagian PCB luar maupun
dalam digunakan sebagai media penghantar, misalnya pada rangkaian-rangkaian PC).
2.2. Resistor
Resistor adalah komponen elektronik dua kutub yang didesain untuk menahan arus
listrik dengan memproduksi tegangan listrik di antara kedua kutubnya, nilai tegangan terhadap
resistansi berbanding dengan arus yang mengalir, berdasarkan hukum Ohm:

Resistor digunakan sebagai bagian dari jejaring elektronik dan sirkuit elektronik, dan
merupakan salah satu komponen yang paling sering digunakan. Resistor dapat dibuat dari
bermacam-macam kompon dan film, bahkan kawat resistansi (kawat yang dibuat dari paduan
resistivitas tinggi seperti nikel-kromium).
Karakteristik utama dari resistor adalah resistansinya dan daya listrik yang dapat
dihantarkan. Karakteristik lain termasuk koefisien suhu, desah listrik, dan induktansi. Resistor
dapat diintegrasikan kedalam sirkuit hibrida dan papan sirkuit cetak, bahkan sirkuit terpadu.
Ukuran dan letak kaki bergantung pada desain sirkuit, kebutuhan daya resistor harus cukup dan
disesuaikan dengan kebutuhan arus rangkaian agar tidak terbakar.

Tiga buah resistor komposisi karbon

Resistor kaki aksial


4

2.3. Transistor
Pengertian Transistor adalah sebagai piranti komponen elektronika yang terbuat dari
bahan semikonduktor dan mempunyai tiga elektroda (triode) yaitu dasar (basis), pengumpul
(kolektor) dan pemancar (emitor). Rangkaian ini berfungsi sebagai penguat sinyal, penyambung
(switching) dan stabilisasi tegangan.
Transistor berasal dari bahasa transfer yang artinya pemindahan dan resistor yang berarti
pengambat. Jadi pengertian transistor dapat di kategorikan sebagai emindahan atau peralihan
bahan setengah penghantar menjadi penghantar pada suhu tertentu.
Di bawah ini, gambar dan bentuk fisik dari Pengertian Transistor :

Fungsi dari transistor bermacam-macam, di mana dapat juga berfungsi semacam kran
listrik, dimana berdasarkan arus inputnya (BJT) atau tegangan inputnya (FET), memungkinkan
listrik yang sangat akurat dari sirkuit sumber listriknya.
Tegangan yang di satu terminalnya misalnya Emitor dapat dipakai untuk mengatur arus
dan tegangan yang lebih besar daripada arus input Basis, yaitu pada keluaran tegangan dan arus
output Kolektor.
Transistor pertama kali di temukan oleh William Shockley, John Barden, dan W. H
Brattain pada tahun 1948. Dan mulai di pakai dalam praktek pada tahun 1958. Ada 2 jenis
transistor, yaitu transistor tipe P N P dan transistor jenis N P N.

Transistor merupakan komponen yang sangat penting dalam sebuah rangkaian


elektronika. Seperti halnya dalam rangkaian analog yang di gunakan dalam amplifier (penguat).
Dalam sebuah rangkaian-rangkaian digital , transistor di gunakan sebagai saklar berkecepatan
tinggi. Beberapa pengertian transistor juga dapat dirangkai sedemikian rupa sehingga berfungsi
sebagai logic gate, memori dan fungsi rangkaian-rangkaian lainnya.
Cara kerja transistor pada umumnya hampir sama dengan resistor, yang memiliki tipetipe dasar modern. Ada dua tipe dasar modern, yaitu bipolar junction transistor (BJT atau
transistor bipolar) dan field-effect transistor (FET), yang masing-masing bekerja secara berbeda.
Transistor juga memiliki jenis-jenis yang berbeda-beda. Secara umum transistor dapat
dibeda-bedakan berdasarkan banyak kategori, seperti Materi semikonduktor, Kemasan
fisik, Tipe, Polaritas, Maximum kapasitas daya, Maximum frekuensi kerja, Aplikasi dan masih
banyak jenis lainnya.
2.4 Kapasitor
Pengertian Kapasitor adalah komponen elektronika yang digunakan untuk menyimpan
muatan listrik yang terdiri dari dua konduktor dan di pisahkan oleh bahan penyekat (bahan
dielektrik) tiap konduktor di sebut keping. Kapasitor atau yang sering disebut kondensator
merupakan komponen listrik yang dibuat sedemikian rupa sehingga mampu menyimpan muatan
listrik.
Prinsip sebuah kapasitor pada umumnya sama galnya dengan resistor yang juga termasuk
dalam kelompok komponen pasif, yaitu jenis komponen yang bekerja tanpa memerlukan arus
panjar. Kapasitor terdiri atas dua konduktor (lempeng logam) yang dipisahkan oleh bahan
penyekat (isolator). Isolator penyekat ini sering disebut sebagai bahan (zat) dielektrik.
Di bawah ini, gambar dan bentuk dari komponen kapasitor dan pengertian kapasitor.

Zat dielektrik yang digunakan untuk menyekat kedua penghantar komponen tersebut
dapat digunakan untuk membedakan jenis kapasitor. Beberapa pengertian kapasitor yang
menggunakan bahan dielektrik antara lain berupa kertas, mika, plastik cairan dan lain
sebagainya.
Kegunaan kapasitor dalam rangkaian elektronika sangat di perlukan terutama untuk
mencegah loncatan bunga api listrik pada rangkaian yang mengandung kumparan, menyimpan
muatan atau energi listrik dalam rangkaian, memilih panjang gelombang pada radio penerima
dan sebagai filter dalam catu daya (power supply).
Fungsi Kapasitor adalah sebagai penyimpan arus/tegangan listrik. Untuk arus DC
kapasitor berfungsi sebagai isulator/penahan arus listrik, sedangkan untuk arus AC Kapasitor
berfungsi sebagai konduktor/melewatkan arus listrik.
Dalam penerapannya kapasitor digunakan sebagai filter/penyaring, perata tegangan DC
yang di gunakan untuk mengubah tengangan AC ke DC,pembangkit gelombang ac atau oscilator
dan sebagainya.

2.5 LED (Light Emitting Diode)


Light-Emitting Diode atau LED adalah sejenis diode semikonduktor istimewa. Seperti
sebuah diode normal, LED terdiri dari sebuah chip bahan semikonduktor yang diisi penuh, atau
di-dop, dengan ketidakmurnian untuk menciptakan sebuah struktur yang disebut p-n junction.
Pembawa-muatan - elektron dan lubang mengalir ke junction dari elektrode dengan voltase
berbeda. Ketika elektron bertemu dengan lubang, dia jatuh ke tingkat energi yang lebih rendah,
dan melepas energi dalam bentuk photon.

Contoh gambar LED


7

Lampu LED terbuat dari plastik dan dioda semikonduktor yang dapat menyala apabila
dialiri tegangan listrik rendah (sekitar 1.5 volt DC). Bermacam-macam warna dan bentuk dari
lampu LED, disesuaikan dengan kebutuhan dan fungsinya.

2.6. Photodioda
Photodioda adalah dioda yang bekerja berdasarkan intensitas cahaya, jika photodioda
terkena cahaya maka photodioda bekerja seperti dioda pada umumnya, tetapi jika tidak mendapat
cahaya maka photodioda akan berperan seperti resistor dengan nilai tahanan yang besar sehingga
arus listrik tidak dapat mengalir.

Gambar: Photodioda
Photodioda merupakan sensor cahaya semikonduktor yang dapat mengubah besaran
cahaya menjadi besaran listrik. Photodioda merupakan sebuah dioda dengan sambungan p-n
yang dipengaruhi cahaya dalam kerjanya. Cahaya yang dapat dideteksi oleh photodioda ini mulai
dari cahaya infra merah, cahaya tampak, ultra ungu sampai dengan sinar-X.
Prinsip kerja, karena photodioda terbuat dari semikonduktor p-n junction maka cahaya
yang diserap oleh photodioda akan mengakibatkan terjadinya pergeseran foton yang
akanmenghasilkan pasangan electron-hole dikedua sisi dari sambungan. Ketika electron electron
yang dihasilkan itu masuk ke pita konduksi maka elektron-elektron itu akan mengalir ke arah
positif sumber tegangan sedangkan hole yang dihasilkan mengalir ke arah negatif sumber
tegangan sehingga arus akan mengalir di dalam rangkaian. Besarnya pasangan elektron ataupun
hole yang dihasilkan tergantung dari besarnya intensitas cahaya yang diserap oleh photodioda.
8

Photodioda digunakan sebagai penangkap gelombang cahaya yang dipancarkan oleh


Infrared. Besarnya tegangan atau arus listrik yang dihasilkan oleh photodioda tergantung besar
kecilnya radiasi yang dipancarkan oleh infrared.

2.7 IC (Integrated Circuit)


IC adalah komponen yang dipakai sebagai otak peralatan elektronika.

Gambar 2.6. IC
IC telah digunakan dimana-mana. Radio, televisi, komputer, telepon selular, dan
peralatan digital lainnya yang merupakan bagian penting dari masyarakat modern. Contohnya,
sistem transportasi, internet, dll tergantung dari keberadaan alat ini.

2.8 Motor DC
Motor listrik merupakan sebuah perangkat elektromagnetis yang mengubah energi listrik
menjadi energi mekanik. Energi mekanik ini digunakan untuk, misalnya, memutar impeller
pompa, fan atau blower, menggerakan kompresor, mengangkat bahan, dll. Motor listrik
digunakan juga di rumah (mixer, bor listrik, fan angin) dan di industri. Motor listrik kadangkala
disebut kuda kerja nya industri sebab diperkirakan bahwa motor-motor menggunakan sekitar
70% beban listrik total di industri.
Motor DC memerlukan suplai tegangan yang searah pada kumparan medan untuk diubah
menjadi energy mekanik. Kumparan medan pada motor dc disebut stator (bagian yang tidak
9

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 berubahubah arah pada setiap setengah putaran, sehingga merupakan tegangan bolak-balik. Prinsip kerja
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 bias berputar bebas di antara kutub-kutub magnet permanen. Catu tegangan dc
dari baterai menuju ke lilitan melalui sikat yang menyentuh komutator, dua segmen yang
terhubung dengan dua ujung lilitan. Kumparan satu lilitan pada gambar di atas disebut angker
dinamo. Angker dinamo adalah sebutan untuk komponen yang berputar di antara medan magnet.

Gambar 2.3 Motor DC Sederhana

Salah satu contoh motor DC adalah dynamo. Dinamo adalah mesin listrik atau
pembangkit tenaga listrik. Alat untuk mengubah energy kinetic menjadi tenaga listrik. Jika
dynamo itu menghasilkan arus bolak-balik (AC), maka sering disebut alternator.
Dalam dynamo, kumparan berada dalam ruangan bermedan magnet homogeny. Jika
kumparan berputar, maka fluks magnet yang menembus kumparan itu selalu berubah-ubah setiap
waktu. Menurut Faraday, hal ini akan mengakibatkan timbulnya arus listrik yang disebut arus
10

imbas (arus induksi) berupa arus bolak-balik (AC). Jika dilihat dengan osiloskop, grafik arus
listrik ini berupa fungsi sinusoida.

Gambar 2.7. Motor/Dinamo


Dalam kasus perancangan robot, umumnya digunakan motor DC, karena jenis motor
tersebut mudah untuk dikendalikan. Kecepatan yang dihasilkan oleh motor DC berbanding lurus
dengan potensial yang diberikan. Untuk membalik arah putarnya cukup membalik polaritas yang
diberikan.
2.9 Infrared
Infra red adalah gelombang yang panjangnya di bawah panjang gelombang cahaya.
infared menggunakan LED (Light Emitting Diode) atau laser untuk membangkitkannya.
gelombang ini tidak mampu menembus benda sehingga jarak yang mampu ditempuh relatif
pendek dan berjalan pada satu garis lurus (point to point). frekuensi dari gelombang infra red
berada pada 1001 Ghz-1000Thz. Inframerah ditemukan secara tidak sengaja oleh Sir William
Herschell, astronom kerajaan Inggris ketika ia sedang mengadakan penelitian mencari bahan
penyaring optik yang akan digunakan untuk mengurangi kecerahan gambar matahari dalam tata
surya teleskop.

2.10 Crystal
Crystal lazimnya digunakan untuk rangkaian osilator yang menuntut stabilitas frekuensi yang
tinggi dalam jangka waktu yang panjang. Alasan utamanya adalah karena perubahan nilai
frekuensi kristal seiring dengan waktu, atau disebut juga dengan istilah faktor penuaan frekuensi
(frequency aging), jauh lebih kecil dari pada osilator-osilator lain. Faktor penuaan frekuensi

11

untuk kristal berkisar pada angka 5ppm/tahun, jauh lebih baik dari pada faktor penuaan
frekuensi osilator RC ataupun osilator LC yang biasanya berada diatas 1%/tahun.

Gambar 2.9. Kristal/Xtal


Kristal juga mempunyai stabilitas suhu yang sangat bagus. Lazimnya, nilai koefisien
suhu kristal berada dikisaran 50ppm direntangan suhu operasi normal dari -20C sampai dengan
+70C. Bandingkan dengan koefisien suhu kapasitor yang bisa mencapai beberapa persen. Untuk
aplikasi yang menuntut stabilitas suhu yang lebih tinggi, kristal dapat dioperasikan didalam
sebuah oven kecil yang dijaga agar suhunya selalu konstan.
2.11 Electrolyt Condensator (ELCO)
Kondensator biasa di sebut dengan kapasitor dengan lambang C, merupakan komponen yang
dapat menyimpan muatan listrik dalam waktu tertentu. Kondensator yang digunakan dalam
proyek ini adalah kondensator tetap yang merupakan nilai kondensator yang nilai kapasitasnya
sudah di tetapkan oleh pabrik pembuatnya.

2.12 ATmega16
AVR merupakan seri mikrokontroler CMOS 8-bit buatan Atmel, berbasis arsitektur RISC
(Reduced Instruction Set Computer). Hampir semua instruksi dieksekusi dalam satu siklus clock.
AVR mempunyai 32 register general-purpose, timer/counter fleksibel dengan mode compare,
interrupt internal dan eksternal, serial UART, programmable Watchdog Timer, dan mode power
saving, ADC dan PWM internal. AVR juga mempunyai In-System Programmable Flash on-chip
yang mengijinkan memori program untuk diprogram ulang dalam sistem menggunakan
hubungan serial SPI. ATMega16.
12

ATMega16 mempunyai throughput mendekati 1 MIPS per MHz membuat disainer sistem
untuk mengoptimasi konsumsi daya versus kecepatan proses.

Pin-pin ATMega16 kemasan 40-pin


Pin-pin pada ATMega16 dengan kemasan 40-pin DIP (dual inline package)ditunjukkan
oleh gambar 1. Guna memaksimalkan performa, AVR menggunakan arsitektur Harvard (dengan
memori dan bus terpisah untuk program dan data).
Port sebagai input/output digital
ATMega16 mempunyai empat buah port yang bernama PortA, PortB, PortC, dan PortD.
Keempat port tersebut merupakan jalur bidirectional dengan pilihan internal pull-up. Tiap port
mempunyai tiga buah register bit, yaitu DDxn, PORTxn, dan PINxn. Huruf xmewakili nama
huruf dari port sedangkan huruf n mewakili nomor bit. Bit DDxn terdapat pada I/O address
DDRx, bit PORTxn terdapat pada I/O address PORTx, dan bit PINxn terdapat pada I/O address
PINx. Bit DDxn dalam register DDRx (Data Direction Register) menentukan arah pin. Bila
DDxn diset 1 maka Px berfungsi sebagai pin output. Bila DDxn diset 0 maka Px berfungsi
sebagai pin input.Bila PORTxn diset 1 pada saat pin terkonfigurasi sebagai pin input, maka
resistor pull-up akan diaktifkan. Untuk mematikan resistor pull-up, PORTxn harus diset 0 atau
pin dikonfigurasi sebagai pin output.
Pin port adalah tri-state setelah kondisi reset. Bila PORTxn diset 1 pada saat pin
terkonfigurasi sebagai pin output maka pin port akan berlogika 1. Dan bila PORTxn diset 0 pada
13

saat pin terkonfigurasi sebagai pin output maka pin port akan berlogika 0. Saat mengubah
kondisi port dari kondisi tri-state (DDxn=0, PORTxn=0) ke kondisi output high (DDxn=1,
PORTxn=1) maka harus ada kondisi peralihan apakah itu kondisi pull-up enabled (DDxn=0,
PORTxn=1) atau kondisi output low (DDxn=1, PORTxn=0).

14

BAB III
ALAT DAN BAHAN
3.1 Alat

Solder
Penyedot Timah
Tang
Bor

3.2 Bahan
o
o
o
o
o
o
o
o
o
o
o
o
o

o
o
o
o
o
o
o
o
o
o
o
o
o

PCB
Atmega 16
Pin Header Jantan dan betina
IC Regulator 7805
IC Regulator 7809
LED Camping
Photodioda
Inframerah
Resistor 1 K
Resistor 330
Capasitor
Capasitor Ceramic
IC L293D

15

Socket IC
Push Buttom
Cristal 12 Hz
Heat Sink
Gear Box
Kabel Pelangi
Motor DC 9 Volt
Timah
Lem Lilin
Battere
Ban
Fiber
Pelarut PCB

BAB IV
LANGKAH KERJA
4.1.1 BAGIAN UTAMA ROBOT
4.1.2 Rangka Dan Body

Gambar 41 Rangka dari Line Follower

Bagian ini digunakan untuk meletakkan semua komponen yang melengkapi robot seperti
minimum sistem, baterai, sensor, driver motor, dan lain lain. Bagian ini juga yang menentukan
kestabilan dari pergerakkan robot tersebut.

16

4.1.3 Minimum System

Gambar 2.2 Minimum system ATMEGA 16 pada Line Follower

Minimum sistem merupakan bagian utama dari robot ini, dimana pada bagian ini
digunakan untuk meletakkan semua komponen dari mikrokontroller baik ATMEGA 16,
port I/O, supply utama, dan lain lain.
4.1.4 Sensor

Gambar 2.3 Sensor garis pada Line Follower

17

Sensor digunakan sebagai input dari robot, pada sensor ini terdapat 8 buah photo diode,
8 buah infra red, dan beberapa resistor sebagai pembagi tegangan. Pada gambar dibawah
diperlihatkan salah satu penggunaan photo diode dan infra red sebagai input.

Gambar 2.4 Perangkaian Photo Diode dan Infra Red


Dengan rangkaian diatas kita dapat memperoleh perbedaan nilai yang ditangkap oleh
photo diode melalui Output CN1, output tersebut kita jadikan input pada mikrokontroller melalui
port A (ADC)
4.1.5

Motor

Gambar 2.7 Motor pada Line Follower

Motor yang kami gunakan disini adalah motor DC 9 Volt, tepatnya motor untuk pemutar
kaset, motor ini dapat dibeli ditoko elektronik terdekat. Kelemahan dari motor ini adalah tidak
mempunyai torsi yang cukup besar untuk menahan beban, walaupun mempunyai kecepatan yang
cukup baik.

18

4.2

SKEMATIK ROBOT LINE FOLLOWER

Gambar 5.6. Sistem Minimum ATmega16

5.1.1. SKEMATIK SENSOR

Gambar 5.7. Sistem Minimum Sensor

19

5.1.2. SKEMATIK DRIVER MOTOR L293D

Gambar 5.8 skematik driver motor IC293D

5.2.

Program
/*****************************************************
This program was produced by the
CodeWizardAVR V1.24.5 Evaluation
Automatic Program Generator
Copyright 1998-2005 Pavel Haiduc, HP InfoTech s.r.l.
http://www.hpinfotech.com
e-mail:office@hpinfotech.com
Project :
Version :
Date : 7/13/2011
Author : Freeware, for evaluation and non-commercial use only
Company :
Comments:

Chip type
: ATmega16
Program type
: Application
Clock frequency : 12.000000 MHz
Memory model
: Small
External SRAM size : 0
Data Stack size : 256
*****************************************************/

20

#include <mega16.h>
#include <delay.h>
#include <stdio.h>
int i;
int Mu,Ma;
char LCD_buffer[16];
char buffer1[16],buffer2[16], buffer3[16],buffer4[16],ref, sensor[8], n_sensor ;
unsigned int ADCIN0, ADCIN1, ADCIN2, ADCIN3, ADCIN4, ADCIN5,
ADCIN6, ADCIN7;
unsigned char x,input,td,start=0,parkir=0,counting,loop,pwm_kiri,pwm_kanan;
eeprom unsigned char max_speed;
eeprom unsigned char ref0,ref1,ref2,ref3,ref4,ref5,ref6,ref7;

// Alphanumeric LCD Module functions


#asm
.equ __lcd_port=0x15 ;PORTC
#endasm
#include <lcd.h>
#define ADC_VREF_TYPE 0x00
interrupt [TIM0_OVF] void timer0_ovf_isr(void)
{
// Place your code here
TCNT0=0xEE;
x++;
if(x>=pwm_kiri) PORTD.4=0;
else
PORTD.4=1;
if(x>=pwm_kanan) PORTD.5=0;
else
PORTD.5=1;
}
// Read the AD conversion result
unsigned int read_adc(unsigned char adc_input)
{
ADMUX=adc_input | (ADC_VREF_TYPE & 0xff);
// Delay needed for the stabilization of the ADC input voltage
delay_us(10);
// Start the AD conversion
ADCSRA|=0x40;
//0x40;
// Wait for the AD conversion to complete
while ((ADCSRA & 0x10)==0);
ADCSRA|=0x10;
return ADCW;
}
21

// Declare your global variables here


void maju() //mundur
{PORTD.0=1; PORTD.1=0; PORTD.2=1; PORTD.3=0; }
void mundur()
//maju
{PORTD.0=0; PORTD.1=1;PORTD.2=0; PORTD.3=1;}
void b_kanan()
//belok kanan
{PORTD.0=0; PORTD.1=1;}
void b_kiri()
//belok kiri
{PORTD.2=0; PORTD.3=1;}
void s_kanan()
{PORTD.2=1; PORTD.3=0;}
void s_kiri()
{PORTD.0=1; PORTD.1=0;}
void mtr_kanan()
{ PORTD.0=0;PORTD.3=1; PORTD.2=1; PORTD.1=0; }
void mtr_kiri()
{PORTD.0=1;PORTD.3=0; PORTD.2=0; PORTD.1=1;}
void stop()
//stop
{PORTD.0=0;PORTD.1=0;PORTD.2=0;PORTD.3=0;}
void scaning(){
unsigned char xsensor;
//maju();
// n_sensor=~PINA;
// n_sensor=n_sensor & 0b00000000;
switch(n_sensor){
case 0b11111110: mtr_kanan();pwm_kiri=200; pwm_kanan=200;

td=1;

break;
case
0b11111101:
mtr_kanan();pwm_kiri=200;pwm_kanan=max_speed+200; td=1; break;
case 0b11111000: maju();pwm_kiri=200;pwm_kanan=200; td=1; break;
case 0b11111001:
maju(); pwm_kiri=200; pwm_kanan=100;
td=1;
break;
case 0b11111011:
maju(); pwm_kiri=200; pwm_kanan=100;
td=1;
break;
case 0b11110011:
maju(); pwm_kiri=240; pwm_kanan=150;
td=1;
break;
case 0b01111111: mtr_kiri();pwm_kiri=max_speed+150;pwm_kanan=150 ;
td=2; break;
case 0b11110111:
maju(); pwm_kiri=250; pwm_kanan=250;
td=1;
break;
case 0b11100111: maju(); pwm_kiri=250; pwm_kanan=250; break;
case 0b11101111: maju(); pwm_kiri=100; pwm_kanan=250; break;

22

case 0b11001111:

maju(); pwm_kiri=200; pwm_kanan=200;

td=2;

break;
case
0b11011111:
mtr_kiri();
pwm_kiri=max_speed+200;
pwm_kanan=200; td=2; break;
case 0b00011111:
maju(); pwm_kiri=max_speed+50; pwm_kanan=250;
td=2; break;
case 0b10111111:
mtr_kanan(); pwm_kiri=max_speed+200;
pwm_kanan=200; td=2; break;
case 0b00111111: mtr_kiri();pwm_kiri=max_speed+0;pwm_kanan=200 ;
td=2; break;
case
0b10111110:
mtr_kanan();pwm_kiri=max_speed+150;pwm_kanan=150 ; td=1; break;
case
0b01011111:
mtr_kiri();
pwm_kiri=max_speed+200;pwm_kanan=max_speed+200 ; td=2; break;
if(td==2){mtr_kiri();pwm_kiri=max_speed+30;pwm_kanan=max_speed+30;}
if(td==1){mtr_kanan();pwm_kiri=max_speed+30;pwm_kanan=max_speed+30;}
break;
}
}
void main(void)
{
// Declare your local variables here
//
Input/Output Ports initialization
// Port A initialization
// Func7=In Func6=In Func5=In Func4=In Func3=In Func2=In Func1=In
Func0=In
// State7=T State6=T State5=T State4=T State3=T State2=T State1=T State0=T
PORTA=0x00;
DDRA=0x00;
// Port B initialization
// Func7=In Func6=In Func5=In Func4=In Func3=In Func2=In Func1=In
Func0=In
// State7=T State6=T State5=T State4=T State3=T State2=T State1=T State0=T
PORTB=0x00;
DDRB=0xff;
// Port C initialization

23

// Func7=In Func6=In Func5=In Func4=In Func3=In Func2=In Func1=In


Func0=In
// State7=T State6=T State5=T State4=T State3=T State2=T State1=T State0=T
PORTC=0x00;
DDRC=0x00;
TCCR1A=0x00;
TCCR1B=0x00;
TCNT1H=0x00;
TCNT1L=0x00;
ICR1H=0x00;
ICR1L=0x00;
OCR1AH=0x00;
OCR1AL=0x00;
OCR1BH=0x00;
OCR1BL=0x00;
// Port D initialization
// Func7=In Func6=In Func5=In Func4=In Func3=In Func2=In Func1=In
Func0=In
// State7=T State6=T State5=T State4=T State3=T State2=T State1=T State0=T
PORTD=0x00;
DDRD=0xff;
// Timer/Counter 0 initialization
// Clock source: System Clock
// Clock value: 1382.400 kHz
// Mode: Normal top=FFh
// OC0 output: Disconnected
TCCR0=0x03;
TCNT0=0xee;
OCR0=0x00;;

// Timer(s)/Counter(s) Interrupt(s) initialization


TIMSK=0x01;
// Analog Comparator initialization
// Analog Comparator: Off
// Analog Comparator Input Capture by Timer/Counter 1: Off
ACSR=0x80;
SFIOR=0x00;
// ADC initialization
// ADC Clock frequency:
24

// ADC Voltage Reference: AREF pin


// ADC Auto Trigger Source: None
ADMUX=ADC_VREF_TYPE & 0xff;
ADCSRA=0x84;
//0x84;
// LCD module initialization
lcd_init(16);
#asm("sei")
lcd_gotoxy(0,0);
lcd_putsf("tes");
while (1)
{
//mtr_kiri();pwm_kanan=200;pwm_kiri=200;

//PORTD.5=1;
// mtr_kanan();
//
lcd_gotoxy(0,0);
//lcd_putsf("Bismillah");
scaning();
//max_speed++;
//max_speed--;
//counting++;
//if (PINC.1==0){max_speed++;delay_ms(50);}
//if (PINC.0==0){max_speed--;delay_ms(50);}
//sprintf( buffer4,"%3u",max_speed );
//lcd_gotoxy(7,1);
//lcd_puts(buffer4);
//if
(PINC.5==0){mtr_kanan();pwm_kiri=max_speed+0;pwm_kanan=max_speed+0;}
//if
(PINC.4==0){mtr_kiri();pwm_kiri=max_speed+0;pwm_kanan=max_speed+0;}
//if (PINC.2==0){start=1;parkir=0;}
//if (start==1)(scaning());
//if (PINC.3==0){(parkir=1);(start=0);}
//if (parkir==1)(stop());
//if (PINC.5==0){mtr_kanan();pwm_kiri=40;pwm_kanan=40;delay_ms(500);}
//if (PINC.4==0){mtr_kiri();pwm_kiri=40;pwm_kanan=40;delay_ms(500);}
//sprintf(
buffer1,"%03u,%03u,%03u,%03u",read_adc(0),read_adc(1),read_adc(2),read_adc(3));

25

//sprintf(
buffer2,"%03u,%03u,%03u,%03u",read_adc(4),read_adc(5),read_adc(6),read_adc(7));
//lcd_gotoxy(0,0);lcd_puts(buffer1);
//lcd_gotoxy(0,1);lcd_puts(buffer2);
ADCIN0=read_adc(0);ADCIN1=read_adc(1);ADCIN2=read_adc(2);ADCIN3=re
ad_adc(3); // pembacaan pohotodioda sebagai masukan ADC.
ADCIN4=read_adc(4);ADCIN5=read_adc(5);ADCIN6=read_adc(6);ADCIN7=re
ad_adc(7);

if (ADCIN0<120){sensor[0]=0;}else {sensor[0]=1;}
//di samping adalah
data hasil dari refrensi warna hitam dan putih..
if (ADCIN1< 140){sensor[1]=0;}else {sensor[1]=1;}
//refrensi
adalah data bilangan hitam tambah bilangan putih bagi 2. Atw H+P/2= ref.
if (ADCIN2< 100){sensor[2]=0;}else {sensor[2]=1;}
if (ADCIN3< 120){sensor[3]=0;}else {sensor[3]=1;}
if (ADCIN4< 160){sensor[4]=0;}else {sensor[4]=1;}
if (ADCIN5< ){sensor[5]=0;}else {sensor[5]=1;}
if (ADCIN6< 40){sensor[6]=0;}else {sensor[6]=1;}
if (ADCIN7< 30){sensor[7]=0;}else {sensor[7]=1;}
/*
if (ADCIN0<ref0){sensor[0]=0;}else {sensor[0]=1;}
//di samping adalah
data hasil dari refrensi warna hitam dan putih..
if (ADCIN1< ref1){sensor[1]=0;}else {sensor[1]=1;}
//refrensi adalah
data bilangan hitam tambah bilangan putih bagi 2. Atw H+P/2= ref.
if (ADCIN2< ref2){sensor[2]=0;}else {sensor[2]=1;}
if (ADCIN3< ref3){sensor[3]=0;}else {sensor[3]=1;}
if (ADCIN4< ref4){sensor[4]=0;}else {sensor[4]=1;}
if (ADCIN5< ref5){sensor[5]=0;}else {sensor[5]=1;}
if (ADCIN6< ref6){sensor[6]=0;}else {sensor[6]=1;}
if (ADCIN7< ref7){sensor[7]=0;}else {sensor[7]=1;}
*/
n_sensor=((sensor[0]*1)+(sensor[1]*2)+(sensor[2]*4)+(sensor[3]*8)+(sensor[4]*
16)+(sensor[5]*32)+(sensor[6]*64)+(sensor[7]*128));
//sprintf(
buffer1,"%1u-%1u-%1u-%1u-%1u%1u",sensor[0],sensor[1],sensor[2],sensor[3],sensor[4],sensor[5]);
//sprintf( buffer2,"%1u-%1u",sensor[6],sensor[7]);
//sprintf( buffer3,"%3u",n_sensor);
//lcd_gotoxy(0,0);lcd_puts(buffer1);
// disamping adalah perintah untuk
manampilkan pembacaan ADC di LCD
//lcd_gotoxy(12,0);lcd_puts(buffer2);
//lcd_gotoxy(13,1);lcd_puts(buffer3);

26

}
};

Pada tahap awal hal yang perlu dibuat adalah rangkaian minimum system ( perangkat
Mikrokontroller ) , proses awal yang perlu dilakukan dalam membentuk minimum system ini
yaitu menata letak dari komponen , kemudian membentuk jalur dari susunan komponen tersebut
dalam bentuk skema di kertas. Setelah itu skema tersebut dipindahkan ke dalam PCB , jika
digambar dengan proses manual maka kita menggunakan spidol OHP / Permanent namun dapat
juga digambar dengan proses pencetakan gambar dengan teknik menyetrika.
Setelah itu PCB dilarutkan dengan larutan FeCl , kemudian setelah dilarutkan kemudian
masuk ke proses Pengeboran. Ukuran mata bor sesuai dengan ukuran kaki komponen ( 0,8 mm ).
Setelah itu pasangkan komponen minimum system , komponen yang dipergunakan pada
minimum system seperti Elco 10 uF, resistor 1 kiloohm dan 10 kiloohm, push button , socket (
40 kaki / AT89S51 ), pin brush , pin header , Kondensator Keramik 33 pF, Kristal 12 MHz, dan
LED sebagai indikato pada rangkaian minimum system .
Lakukan selanjutnya penyolderan pada komponen tersebut , sebelum melakukan
penyolderan dilakukan proses penggosokan pada jalur agar timah mampu melebur dengan
sempurna pada jalur. Kemudian lakukan proses testing pada rangkaian agar mengetahui apakah
terdapat trouble pada rangkaian ?. Setelah membuat minimum system kemudian masuk pada
proses pembuatan Driver untuk Line Follower. Sedikit penjelasan minimum system. Minimum
System merupakan rangkaian yang berfungsi sebagai pememroses dalam rangkaian Line
Follower. Minimum System mengolah input dari sensor kemudian memproses Input , kemudian
mengolahnya lalu menentukan Output.
1.
Driver Line Follower
Pembuatan Driver Line Follower kurang lebih sama dengan tahap pada proses perancangan dan
pembuatan Minimum System. Namun pada proses pembuatan terdapat juga perbedaan. Seperti
pada pembentukan jalur dan pemasangan komponen sebab pada PCB Minimum System lebih
membutuhkan ruang yang lebih sedikit dibanding dengan Driver Line Follower sebab pada
Driver Line Follower terdapat komponen actuator berupa motor DC sehingga membutuhkan
ruang lebih untuk komponen tersebut. Pada bagian Driver Line Follower komponen yang
dibutuhkan seperti Transistor NPN 9013, Resistor 560 Ohm, Motor DC Mainan + gear set ( 5 V )
, dan Kabel Secukupnya. Selain itu pada bagian Driver disisipkan juga Tempat Sumber ( Baterai
27

). Setelah proses Perancangan, Pembuatan, dan Penyolderan Komponen , maka dilakukan proses
Testing rangkaian tersebut agar mengetahui apakah terdapat trouble , jika terdapat trouble maka
lakukan proses pengecekan secara terperinci dan tepat pada rangkaian. Setelah itu masuk pada
perancangan dan pembuatan rangkaian Sensor Line Follower. Penjelasan mengenai Driver Line
Follower , Driver berfungsi sebagai penggerak dari Line Follower.
2.
Sensor Line Follower
Melangkah ke rangkaian selanjutnya yaitu rangkaian Sensor Line Follower. Sebelum itu sedikit
penjelasan mengenai Sensor Line Follower , memiliki fungsi sebagai pendeteksi jalur. Sensor
memiliki prinsip membaca warna yang gelap ( mengarah ke warna Hitam ) namun jika sensor
bertemu pada warna cerah seperti Putih maka sensor secara otomatis tidak mampu berfungsi.
Jika pada jalur yang warna hitam maka sensor mengirimkan data menuju ke minimum system
namun jika sensor bertemu warna cerah maka sensor tidak mengirimkan input ke minimum
system. Data yang dikirim minimum system berupa tegangan , input tersebut menuju ke port
minimum system.
Proses pembentukan Sensor Line Follower kurang lebih sama dengan proses sebelum
sebelumnya. Seperti perancangan jalur , kemudian menggambarkan pada PCB , Pelarutan,
Pengeboran dan Penyolderan. Komponen pada sensor line follower seperti LED, LDR, resistor
220 ohm & 3 kilo ohm, dan Kabel Penghubung. Kemudian lakukan proses Testing , dengan
melakukan pengukuran pada output yang menuju ke minimum system. Namun ada antisipasi
yang baik untuk bagian sensor ini , yaitu dengan memasang rangkaian indikator. Berupa LED,
jadi rangkaian tersebut dipasang berhubungan dengan Sensor Line Follower. Jadi ketika Sensor
mendapatkan tegangan maka secara otomatis indikator akan menunjukkan output dari rangkaian
sensor tersebut. Apabila sensor menghasilkan output maka LED akan menyala dan jika tidak
menghasilkan maka LED akan padam. Ini juga menjadi indikasi apakah bagian sensor
mengalami trouble.
1.
Perakitan
Pada bagian ini seluruh rangkaian yang yang tadi dibuat kemudian dihubungkan Rangkain
Minimum System menjadi CPU , Sensor Line Follower berfungsi sebagai Input dan Driver Line
Follower sebagai output. Setelah seluruh rangkain terhubung lakukan proses testing lagi. Untuk
mengetahui apakah seluruh rangkaian telah terhubung. Lakukan dengan dengan mengecek
tegangan yag keluar dari Sensor kemudian tes lagi bagian driver dengan memberikan tegangan
dan lihat apakah motor mampu bergerak sesuai dengan keinginan. Setelah rangkaian line
follower telah selesai kemudian masuk ke bagian membuat Program / Instruksi.

28

2.

Pembuatan Instruksi / Program


Setelah pembuatan fisik Line Follower , kemudian berlanjut ke pembuatan program /
instruksi. Dalam mikrokontroller , program merupakan bagian terpenting dari line follower sebab
instruksi yang menentukan action yang akan dilakukan oleh driver. Susunan instruksi ini yang
mengatur dari kerja seluruh line follower. Jadi ketika input diterima maka mikrokontroller akan
segera membandingkan input dengan instruksi , kemudian mikrokontroller akan menentukan
instruksi yang akan dieksekusi ke driver sehingga driver akan bergerak.
Setelah melalui proses pembuatan program, kemudian progam didownload ke
mikrokontroller. Dan kemudian aktifkan line follower untuk melihat apakah program line
follower telah sukses. Dapat dilakukan perubahan yang pada program untuk mendapat kan Line
Follower yang mampu bergerak secara smooth.

29

BAB VI
PENUTUP
6.1. Kesimpulan

Photo dioda atau pendeteksi chaya akan berlofika 1 jika cahaya yang d pamcarkan oleh
led sebagian besar d terima oleh photo dioda i. Dan berlogika 0 jika hanya sedikit cahaya
yang di terima nya.

Photo dioda akan bekerja apabilaa cahaya yang di serapnya sangat sedikit atau pancaran
lampu led mengenai permukaan gelap.

6.2. Saran
Adapun kritik dan saran kami adalah sebagai berikut:
1)
Saat membuat layout PCB sebaiknya kita teliti dalam menentukan jarak kaki-kaki
komponen dan jalur-jalur komponen. Hal ini bertujuan agar tata letak komponen pada PCB
terlihat lebih rapi.
2)
Sebelum memasang transistor sebaiknya kita memperhatikan kakinya karena jika terjadi
kesalahan pada penentuan kaki transistor dapat membuat rangkaian tidak bekerja.
3)
Gunakan solder dengan mata solder yang masih baru agar hasil solderan bagus dan
terlihat rapi.
4)
Kami juga menyarankan kepada pembimbing agar lebih meningkatkan kerja sama
dan komunikasi yang jelas dengan mahasiswa, agar hasil praktek dapat terselesaikan sesuai
dengan yang diinginkan, semoga kedua belah pihak mendapatkan hasil yang positif dengan
diadakannya praktek kali ini.

30

BAB VII
DAFTAR PUSTAKA

http://id.wikipedia.org/wiki/Resistor
http://www.sisilain.net/2010/12/pengertian-pcb-printed-circuit-board.html
http://komponenelektronika.net/pengertian-kapasitor.htm
http://indo-ware.indonetwork.co.id/group+143447/ic-regulator.htm
http://nonoharyono.blogspot.com/2009/12/saklar-tekan-push-button.html
http://diary-mybustanoel.blogspot.com/2012/04/photodioda.html
http://id.wikipedia.org/wiki/Diode_pancaran_cahaya
http://pengertianpengertian.blogspot.com/2012/06/pengertian-infrared.html
http://www.energyefficiencyasia.org/docs/ee_modules/indo/ChapterElectricmotorBahasaI
donesia.pdf

31

32

Anda mungkin juga menyukai