8/17/2019 Praktikum 3 Line Follower
1/13
8/17/2019 Praktikum 3 Line Follower
2/13
ROBOTIKA 2
ROBOT LINE FOLLOWER SEDERHANA
D .a/bar Ran*+aian
PC6/TOSC1 28
PC5 27
PC4 26
PC3 25
PC2 24
PC1/SDA 23
PC0/SCL 22
PC7/TOSC2 29
PA6/ADC6 34
PA5/ADC5 35
PA4/ADC4 36
PA3/ADC3 37
PA2/ADC2 38
PA1/ADC1 39
PA0/ADC0 40
PA7/ADC7 33
PB6/MISO7
PB5/MOSI6
PB4/SS5
PB3/AIN1/OC04
PB2/AIN0/INT23
PB1/T12
PB0/T0/XCK1
PB7/SCK8
PD6/ICP120
PD5/OC1A19
PD4/OC1B18
PD3/INT117
PD2/INT016
PD1/TXD15
PD0/RXD14
PD7/OC221
RESET9
XTAL113
XTAL212
AVCC 30
AREF 32
U1
ATMEGA8535
D 7
1 4
D 6
1 3
D 5
1 2
D 4
1 1
D 3
1 0
D 2
9
D 1
8
D 0
7
E
6
R
5
R S
4
V S S
1
V D D
2
V E E
3
LCD1LM016L
RV1
1K
0 !
RV2
1"
0 !
RV3
1"
0 !
RV4
1"
0 !
RV5
1"
0 !
RV6
1"
0 !
RV7
1"
0 !
RV8
1"
0 !
RV9
1"
D1
LED#BLUE
D2
LED#BLUE
D3
LED#BLUE
D4
LED#BLUE
D5
LED#BLUE
D6
LED#BLUE
D7
LED#BLUE
D8
LED#BLUE
R1
330R
R2
330R
R3
330R
R4
330R
R5
330R
R6
330R
R7
330R
R8
330R
IN12
OUT1 3
OUT2 6
OUT3 11
OUT4 14
IN27
IN310
IN415
EN11
EN29
VS
8
VSS
16
G ND G ND
U2
L293D
IN1
IN2
IN3
IN4
EN2
EN1
$5V $12V
IN1
IN2
EN1
EN2
IN3
IN4
$88%8
$88%8
.a/bar %# Rangkaian robot line %ollower sederhana
E Lan*+ah Ker"aAdap$n langkah ker*a pada praktik$m ini adalah sebagai berik$t
6# Merangkai peralatan ses$ai dengan rangkaian per(obaan2# Men*alankan program "ode3ision A5R+# Pilih men$ 'ile 89 :ew dan B$at ;Pro*e(t< bar$
.a/bar %$ Window $nt$k memb$at Pro*e(t bar$
=# Pilih tipe (hip A5R ;AT4>,Attin,ATmega,'P-&I"< karena mikrokontrolerang akan dig$nakan adalah ATmega./+/#
8/17/2019 Praktikum 3 Line Follower
3/13
ROBOTIKA 2
ROBOT LINE FOLLOWER SEDERHANA
.a/bar %% Window $nt$k memilih tipe "hip
/# Pada window ang m$n($l, pilih Tab ;"hip
8/17/2019 Praktikum 3 Line Follower
4/13
ROBOTIKA 2
ROBOT LINE FOLLOWER SEDERHANA
.a/bar %0 Kon?g$rasi Port pada "ode3isionA5R
7# Pilih Tab
8/17/2019 Praktikum 3 Line Follower
5/13
ROBOTIKA 2
ROBOT LINE FOLLOWER SEDERHANA
.a/bar %3 Kon?g$rasi Port pada "ode3isionA5R
6># Klik tombol ;Cenerate program, sa3e and exit< $nt$kmenghasilkan dan menimpan kon?g$rasi program# -impan dengannama Per(obaan 2#
.a/bar %4 Tombol $nt$k menimpan pro*e(t pada window"odeWi@ardA5R
66# Pada ?le Per(obaan +#( , ketikkan listing program berik$t ini
#include #include #include #include #include #define IN1 POR!."#define IN POR!.1#define IN3 POR!.#define IN$ POR!.3#define %N1 O&R1'
#define %N O&R1(#asm .e)u **lcd*+o,t - "15/#endasm
#define '!&*0R%*2P% ""unsigned cha, ,ead*adcunsigned cha, adc*in+ut4'!67-adc*in+ut 9 '!&*0R%*2P% : "ff4/delay*us1"4/'!&;R'9-"$"/hile '!&;R' : "1"4--"4/'!&;R'9-"1"/,etu,n '!&=/
int P1?P?P3?P$?P5?P@?PA?P8/unsigned cha, lcdB15C/
Doid lcd*senso,4
8/17/2019 Praktikum 3 Line Follower
6/13
ROBOTIKA 2
ROBOT LINE FOLLOWER SEDERHANA
lcd*gotoy"?"4/ s+,intflcd?EFE?P14/ lcd*+utslcd4/
lcd*gotoy3?"4/
s+,intflcd?EFE?P4/ lcd*+utslcd4/
lcd*gotoy@?"4/
s+,intflcd?EFE?P34/ lcd*+utslcd4/
lcd*gotoyG?"4/
s+,intflcd?EFE?P$4/ lcd*+utslcd4/
lcd*gotoy"?14/ s+,intflcd?EFE?P54/ lcd*+utslcd4/
lcd*gotoy3?14/
s+,intflcd?EFE?P@4/ lcd*+utslcd4/
lcd*gotoy@?14/
s+,intflcd?EFE?PA4/ lcd*+utslcd4/
lcd*gotoyG?14/
s+,intflcd?EFE?P84/
lcd*+utslcd4/
if P1 >- 18"4 POR(." - 1/
else POR(." - "/
if P >- 18"4 POR(.1 - 1/
else POR(.1 - "/
if P3 >- 18"4 POR(. - 1/
else POR(. - "/
if P$ >- 18"4
POR(.3 - 1/else
POR(.3 - "/
if P5 >- 18"4
POR(.$ - 1/
else POR(.$ - "/
if P@ >- 18"4
8/17/2019 Praktikum 3 Line Follower
7/13
ROBOTIKA 2
ROBOT LINE FOLLOWER SEDERHANA
POR(.5 - 1/else
POR(.5 - "/
if PA >- 18"4 POR(.@ - 1/
else POR(.@ - "/
if P8 >- 18"4
POR(.A - 1/else
POR(.A - "/
Doid maHu4 IN1 - 1/IN-"/IN3-1/IN$-"/ %N1 - 1""/ %N - 1""/Doid manuDe,*anan4 IN1 - 1/ IN - "/ IN3 - "/ IN$ - 1/ %N1 - 1""/ %N - 1""/Doid manuDe,*i,i4 IN1 - "/ IN - 1/ IN3 - 1/ IN$ - "/ %N1 - 1""/ %N - 1""/Doid belo*anan4 IN1 - 1/ IN - "/ IN3 - "/ IN$ - "/ %N1 - 1""/ %N - 1""/Doid belo*i,i4 IN1 - "/ IN - "/ IN3 - 1/ IN$ - "/ %N1 - 1""/ %N - 1""/Doid idle4 IN1 - "/ IN - "/ IN3 - "/ IN$ - "/ %N1 - 1""/ %N - 1""/
Doid mainDoid4!!R(-"/!!R!-"3/
&&R1'-"'1/&&R1(-""!/
'!67-'!&*0R%*2P% : "ff/
'!&;R'-"8$/;IOR:-"%/
lcd*init1@4/
hile 14 P1 - ,ead*adc"4/P - ,ead*adc14/P3 - ,ead*adc4/P$ - ,ead*adc34/ P5 - ,ead*adc$4/P@ - ,ead*adc54/PA - ,ead*adc@4/P8 - ,ead*adcA4/
lcd*clea,4/
lcd*senso,4/
delay*ms5"4/
ifPOR( -- "b"""""""149POR( -- "b""""""1144
manuDe,*anan4/ %N1 - ""/ %N - ""/
8/17/2019 Praktikum 3 Line Follower
8/13
ROBOTIKA 2
ROBOT LINE FOLLOWER SEDERHANA
lcd*gotoy13?14/ lcd*+utsEJ>E4/
else ifPOR( -- "b"""""1""49POR( -- "b"""""11"49POR( -- "b"""""11144
belo*anan4/ %N1 - 5"/ %N - ""/ lcd*gotoy13?14/ lcd*+utsEJ>>E4/ else ifPOR( -- "b"""11"""49POR( -- "b""111"""49POR( -- "b"""111""44 maHu4/ %N1 - 5"/ %N - 5"/ lcd*gotoy13?14/ lcd*+utsEKE4/ else ifPOR( -- "b""1"""""49POR( -- "b"11"""""49POR( -- "b111"""""44
belo*i,i4/ %N1 - ""/ %N - 5"/ lcd*gotoy13?14/ lcd*+utsE
8/17/2019 Praktikum 3 Line Follower
9/13
ROBOTIKA 2
ROBOT LINE FOLLOWER SEDERHANA
Cambar +#6># Men$ $nt$k meng8(ompile program pada "ode3isionA5R
6+# 0nt$k sim$lasi b$ka program Prote$s, lal$ rangkai ses$aipet$n*$k per(obaan# Klik kanan pada Atmega./+/ lal$ pilih ditProperties#
.a/bar %## Meng$bah properties pada Atmega./+/ pada so%tware
Prote$s
6=# Pada bagian Program ?le ganti men*adi 0R& ang men$n*$k ?lehex ang dihasilkan "ode3ision A5R# Klik Ok#
8/17/2019 Praktikum 3 Line Follower
10/13
ROBOTIKA 2
ROBOT LINE FOLLOWER SEDERHANA
.a/bar %#$ Bagian program ?le tempat mengisi 0R& ?le EF
6/# Pilih men$ !eb$g lal$ klik ;-tart)Restart !eb$gging<
.a/bar %#% Mem$lai sim$lasi dengan men$ !eb$g 89 -tart
6# Perhatikan hasil program pada rangkaian Prote$s67# 0nt$k rilna, rangkai ATmega./+/ dengan &"!, motor !", !ri3er
motor &24+!, dan sensor proximit#6.# B$ka program ProgI-P# &al$ h$b$ngkan 0-BA-p ke komp$ter
melal$i kabel 0-B# Pada ProgI-P, ikon ;PRC I-P< menandakan bahwa0-BAsp siap dig$nakan#
.a/bar %#& :oti?kasi bahwa 0-BAsp siap dipakai
64# At$r 3al$e '$sebit men*adi >x"4'
8/17/2019 Praktikum 3 Line Follower
11/13
ROBOTIKA 2
ROBOT LINE FOLLOWER SEDERHANA
.a/bar %#0 Pengat$ran '$sebit pada ProgI-P
2># -etelah mengat$r '$sebit, pilih men$ 'ile 89 &oad 'lash# 0nt$kmeload ?le hex ang dihasilkan dari program "ode5isionA5R#
.a/bar %#1 Men$ $nt$k mem$at ?le EF pada ProgI-P
26# -etelah ?le di load, maka tekan tombol ;A$to< $nt$kmendownload program ke -istem minim$m#
22# -etelah didownload, h$b$ngkan 0-BAsp ke -istem minim$mAtmega./+/ dengan inp$t tegangan dari (at$daa#
2+# Amati pergerakan motor ang har$s ses$ai program ang telahdib$at serta nilai pada &"! *ika sensor proximit diarahkan ke keadaangelap 1hitam ma$p$n terang 1p$tih#
8/17/2019 Praktikum 3 Line Follower
12/13
ROBOTIKA 2
ROBOT LINE FOLLOWER SEDERHANA
F Dia*ra/ Alir 5Flow,hart6
8/17/2019 Praktikum 3 Line Follower
13/13
ROBOTIKA 2
ROBOT LINE FOLLOWER SEDERHANA
.a/bar %#2 Flowchart program
. Ha'il Pra+ti+!/a# Rangkaian pada Prote$s
PC6/TOSC1 28
PC5 27
PC4 26
PC3 25PC2
24PC1/SDA
23PC0/SCL
22
PC7/TOSC2 29
PA6/ADC6 34
PA5/ADC5 35
PA4/ADC4 36
PA3/ADC3 37
PA2/ADC2 38
PA1/ADC1 39
PA0/ADC0 40
PA7/ADC7 33
PB6/MISO7
PB5/MOSI6
PB4/SS5
PB3/AIN1/OC04
PB2/AIN0/INT23
PB1/T12
PB0/T0/XCK1
PB7/SCK8
PD6/ICP120
PD5/OC1A19
PD4/OC1B18
PD3/INT117 PD2/INT0
16 PD1/TXD
15 PD0/RXD
14
PD7/OC221
RESET9
XTAL113
XTAL212
AVCC 30
AREF 32
U1
ATMEGA8535
D 7
1 4
D 6
1 3
D 5
1 2
D 4
1 1
D 3
1 0
D 2
9
D 1
8
D 0
7
E
6
R
5
R S
4
V S S
1
V D D
2
V E E
3
LCD1
LM016L
RV1
1K
0 !
RV2
1"
0 !
RV3
1"
0 !
RV4
1"
1 0 0 !
RV5
1"
1 0 0 !
RV6
1"
0 !
RV7
1"
0 !
RV8
1"
0 !
RV9
1"
D1
LED#BLUE
D2
LED#BLUE
D3
LED#BLUE
D4
LED#BLUE
D5
LED#BLUE
D6
LED#BLUE
D7
LED#BLUE
D8
LED#BLUE
R1
330R
R2
330R
R3
330R
R4
330R
R5
330R
R6
330R
R7
330R
R8
330R
IN12
OUT1 3
OUT2 6
OUT3 11
OUT4 14
IN27
IN310
IN415
EN11
EN29
VS
8
VSS
16
G ND G ND
U2
L293D
IN1
IN2
IN3IN4
EN2
EN1
$5V $12V
IN1
IN2
EN1
EN2
IN3
IN4
$180
$180
.a/bar %#3 Rangkaian hasil praktik$m
b# 'isik rangkaian.a/bar %#4 'isik rangkaian per(obaan
H Anali'a Per,obaanBerdasarkan per(obaan ang telah dilak$kan, ketika 3al$e hasil
pemba(aan pada PORTB ang mewakili kondisi sensor Proximit, robotdapat mengambil tindakan ses$ai dengan instr$ksi program ang telahdiberikan# Tanggapan ang diberikan k$rang (epat, hal ini ditimb$lkan olehproses kon3ersi sinal dari sensor proximit, ke &"!, dan ke dri3er Motor&24+!#
I Ke'i/7!lan!engan mengkombinasikan antara metode pengontrolan motor !"
dengan PWM, dengan metode pemba(aan sensor Proximit dengan A!",maka dapat dib$at seb$ah robot line %ollower sederhana ang memilikikemamp$an $nt$k mengik$ti garis# Pemba(aan garis dapat ditingkatkan
dengan mengg$nakan metode PI!, ang menghasilkan program robot line%ollower ang lebih baik dan e?sien#