• Tidak ada hasil yang ditemukan

B400-EL3014-13214077-13214148 Final

N/A
N/A
Protected

Academic year: 2021

Membagikan "B400-EL3014-13214077-13214148 Final"

Copied!
26
0
0

Teks penuh

(1)

INSTITUT TEKNOLOGI BANDUNG

INSTITUT TEKNOLOGI BANDUNG

PROGRAM STUDI TEKNIK ELEKTRO

PROGRAM STUDI TEKNIK ELEKTRO

JALAN GANESHA NO. 10 Gedung Labtek V Lantai 2  (022)2508135-3!  (022)250 0"#0 $AN%&NG #0132

Le'ba Sa'u* %+ku'en

Judu* %+ku'en

PROYEK A

PROYEK AKHIR EL3014

KHIR EL3014 SISTEM

SISTEM

MIKROPROSESOR:

MIKROPROSESOR:

Se'i Aut+'ati, 2% a

Jeni/ %+ku'en

IMPLEMENTASI

IMPLEMENTASI

Catatan: Dokumen ini dikendalikan penyebarannya oleh Prodi Teknik Elektro ITB

N+'+ ei/i

02

02

Na'a i*e

355950275

355950275

angga* 4enebitan

24 Mei 2017

24 Mei 2017

&nit 4enebit

Proi Te!"i! E#e!$ro % IT&

Proi Te!"i! E#e!$ro % IT&

Ju'*a Ha*a'an

23

23

(te'a/uk *e'ba /a'u* ini)

%ata 4engu/u*

4engu/u*

Na'a Han/en N67 1321#0

Na'a %edd9 e*/an N67 1321#1#8

4e'bi'bing Na'a akad 6/an Haiadi anda angan Le'baga

4+ga' Studi eknik E*ekt+

Sek+*a eknik E*ekt+ dan 6n:+'atika 6n/titut ekn+*+gi $andung

Labtek V! Lantai 2! Ja*an Gane/a n+. 10! $andung

e*e+n ; <2 22 250 220 ak/ ;<2 22 253 #222 E'ai*;/tei=/tei.itb.a,.id

DAFTAR ISI

DAFTAR ISI

DA'TA

DA'TAR R ISI((((((((((((ISI((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((2((2

Dokumentasi Produk Proyek Akhir

(2)

)AT

)ATAATTAN AN SE*ARAH SE*ARAH PER&AIKAN PER&AIKAN DOKUMEN(((((((((((((DOKUMEN((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((3(((((3 PROPOSAL PROYEK PENGEM&ANGAN SEMI AUTOMATI) 2+D )AR((((((((((((((((4 PROPOSAL PROYEK PENGEM&ANGAN SEMI AUTOMATI) 2+D )AR((((((((((((((((4 1

1 PENGPENGANTANTARAR(((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((4(((((((4 1.1 6NG>ASAN 6S6 %O>&7EN...# 1.2 &J&AN 4EN&L6SAN%AN A4L6>AS6?> EG&NAAN %O>&7EN...# 1.3 EEENS6...# 2

2 IMPIMPLEMELEMENTNTASASI((((I((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((5((((((5

2.1 GA6S $ESA 4ENA4A6AN 674LE7ENAS6...5

2.2 IMPLEMENTASI MEKANIK ROBOT...5

2.3 IMPLEMENTASI MODUL AKTUATOR / MOTOR... 2.# 674LE7ENAS6 4E7$AAAN SENSO JAA> $ESA7AAN..."

2.5 674LE7ENAS6 SENSO 6%AN 4E7$AAAN  E7OE ONOL...10

2. 674LE7ENAS6 O7$OL S6H 4&SH O N...11

2. 674LE7ENAS6 L% 1@ 2...11

3 3 EKSPEKSPERIMERIMEN((EN((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((11((11 3.1 E>S4E67EN 7OO %...11

3.2 E>S4E67EN SENSO &LASON6> %AN L% 1@2...12

3.3 E>S4E67EN O7$OL S6H 4&SH O N...1#

3.# E>S4E67EN SENSO 6 NA  E%%AN  E7OE ONOL 6...15

(3)

Catatan Sejarah Perbaikan Dokumen

Catatan Sejarah Perbaikan Dokumen

,

,ERSIERSI TTANGGALANGGAL OOLEHLEH PPER&AIKANER&AIKAN

1 30 Ai* 201 Han/en %+ku'en e/i eta'a

2 2# 7ei 201 %edd9 dan Han/en %+ku'en e/i kedua

(4)

Proposal Proyek Pengembangan Semi Automatic 2D Car

Proposal Proyek Pengembangan Semi Automatic 2D Car

!

!

P

Pe

en

ng

ga

an

ntta

ar

r

1.

1.11 RIRINGNGKAKASASAN IN ISI SI DODOKUKUMEMEN N

%+ku'en ini bei/i ene*a/an i'*e'enta/i dai de/ain 2WD CAR 9ang te*a dibuat dan ek/ei'en 9ang te*a di*akukan.

• $ab 4enganta bei/i ingka/an i/i d+ku'en! tuuan enu*i/an dan a*ika/i?kegunaan d+ku'en! dan e:een/i.

• $ab 6'*e'enta/i tentang d+ku'enta/i bagian-bagian dai +9ek 9ang te*a dii'*e'enta/ikan /e/uai dengan de/ain 9ang te*a dibuat ada d+ku'en $300. • $ab Ek/ei'en

1.2

1.2 TuTujuajuan Penun Penulislisan daan dan Apn Apliklikasiasi/Ke/Kegungunaan Daan Dku!ku!enen

uuan dai enu*i/an d+ku'en ini daat die*a/kan /ebagai beikut.

1 Sebagai d+ku'enta/i a/i* enge'bangan +duk Se'i Aut+'ati, 2% a 2 4e'bei ga'b aan de/ain dan a/i* eng e'bangan +duk 9ang daat digunakan

untuk 'enge'bangan *ebi *anut.

3 4e'enuan tuga/ +9ek aki 'ata ku*ia EL301# Si/te' 7ik++/e/+.

1

1.."" RREE##EERREENNSSI I

1 4ing &*ta/+ni, ange inde! BOn*ineC. e/edia;

tt/;??DDD.aduin+.,,?en?tut+ia*?ing B%iak/e/ 2 Ai* 201! 00;0# 2 A%&6NO $a/ed 6 e'+te +nt+* +b+t! BOn*ine. e/edia;

tt;??DDD.in/tu,tab*e/.,+'?id?A%&6NO-ba/ed-6-e'+te-,+nt+*-+b+t? B%iake/ 2 Ai* 201! 00;1

3 6 +nt+* >it H++ku Guide! BOn*ine. e/edia;

tt/;??*ean./ak:un.,+'?tut+ia*/?i-,+nt+*-kit-++ku-guide B%iak/e/ 2 Ai* 201! 00;28

(5)

2

2

II"

"P

P#

#$

$"

"$

$%

%T

TA

AS

SII

$eikut i'*e'enta/i beda/akan de/ain 9ang te*a dibuat ada d+ku'en $300

2.1

2.1 Ga$Ga$is is %es%esa$ a$ PenPen&ap&apaiaaian n I!pI!ple!le!en'en'asi asi

6'*e'enta/i +duk Se'i Aut+'ati, 2% a te*a /e*e/ai /e*uun9a. Se*uu k+'+nen 9ang 'en9u/un badan +b+t te*a dia/ang dan be:ung/i /e*uun9a. 4+ga' untuk 'ena*ankan +b+t uga te*a dibuat ingga /e*e/ai dan te*a te*a di*akukan e,+baan. edaat eubaan de/ain +b+t dai an,angan +b+t ada *a+an-*a+an /ebe*u'n9a. 4eubaan 9ang di*akukan tidak te*a*u /igni:ikan dan akan die*a/kan ada bagian /e*anutn9a dai *a+an ini.

2.2

2.2

Implementasi Mekanik Robot

Implementasi Mekanik Robot

$agian 'ekanik +b+t te*a dia/ang /e*uun9a 9ang 'e*iuti '+t+ % 2 bua be/a'a dengan dua bua +da. 7+t+ te*a tea/ang ada /ebua keangka +*i'e 9ang didaatkan ketika 'e'be*i '+t+ '+t+ % te/ebut. >a'i 'enggunakan keangka te/ebut /ebagai keangka uta'a badan +b+t?'+bi* 9ang ka'i buat. Se*ain itu! ada bagian baDa keangka tedaat dua bua b+*a *+ga' 9ang tea/ang di dean dan be*akang. %ua b+*a *+ga' ini be:ung/i /ebagai +da dan en9angga aga +b+t daat begeak dengan /tabi*. 4ada bagian

ata/ keangka! dia/ang 4$ 9ang teubung dengan b+ad Aduin+ &NO! /en/+! dan k+'+nen *ainn9a. Ga'ba de/ain 4$ 9ang digunakan daat di*iat ada ga'ba di baDa ini.

(6)

G-./-r 2(1 De-i" P)& G-./-r 2(1 De-i" P)&

Ha/i* i'*e'enta/i badan +b+t /e,aa ke/e*uuan daat di*iat ada ga'ba di baDa ini.

G-./-r 2(2 &--" Ro/o$ Mo/i# 1 G-./-r 2(2 &--" Ro/o$ Mo/i# 1

(7)

G-./-r 2(3 &--" Ro/o$ Mo/i# 2 G-./-r 2(3 &--" Ro/o$ Mo/i# 2

G-./-r 2(4 &--" Ro/o$ Mo/i# T-.-! A$- G-./-r 2(4 &--" Ro/o$ Mo/i# T-.-! A$-

(8)

G-./-r 2(5 &--" Ro/o$ Mo/i# T-.-! &e#-!-" G-./-r 2(5 &--" Ro/o$ Mo/i# T-.-! &e#-!-"

G-./-r 2( &--" Ro/o$ Mo/i# T-.-! De-" G-./-r 2( &--" Ro/o$ Mo/i# T-.-! De-"

2.3

2.3 Impl

Implemen

ementasi

tasi Modu

Modul Akt

l Aktuato

uator / M

r / Motor

otor

(9)

47 bea/i* digenea/ikan dengan 'enggunakan i'e 2 untuk 'engatu dut9 ,9,*e (0-100F 0-255) 9ang akan di'a/ukkan ke enab*e die '+t+! k+den9a /bb;

6nut>ii dan inut>anan 'euakan aiabe* 9ang 'en9i'an ni*ai atau be/a 47 untuk '+t+ kii dan '+t+ kanan. Ni*ai 47 ini akan 'enentukan be/a ke,eatan uta '+t+. Ni*ai 47 'ini'a* 100 kaena /ete*a di*akukan e,+baan! didaatkan baDa aabi*a ni*ai 47 *ebi enda 100! 'aka '+t+ tidak beuta. Ha* ini di/ebabkan enegi 9ang dibeikan keada '+t+ tidak ,uku kuat untuk 'e*aDan ke*e'ba'an atau enegi ge/ek 9ang dibutukan untuk 'e'buat '+t+ 'u*ai beuta. Sedangkan ni*ai 'ak/i'a* 47 255 kaena ti'e 2 9ang digunakan /ebe/a

8 bit /eingga ni*ai 'ak/i'a* 9ang daat di,aai +*e 47 ti'e ada*a 255. b. Atu aa dan ke,eatan '+t+ % dengan L2"3%

%ai ga'ba di baDa! daat di*iat in 'ana /aa 9ang digunakan untuk 'enggeakkan dua bua '+t+ %. 4in EN be:ung/i 'engakti:kan ke*uaan die L72"3%. 4in ini akan dibeikan 'a/ukan 47 dai 'ik+k+nt+*e A7328. Se*anutn9a in 6N be:ung/i 'enentukan aaka '+t+ akan beuta dan ke 'ana aa uta '+t+. >+n:igua/i in 6N ini daat di*iat ada tabe* 2.1. 4+De '+t+ bea/a* dai tegangan  V a/i* egu*a/i L64O 2 /e*.

" void setPWM(double inputKiri, double inputKanan)

{

TCCR2A = _B(C!M2A") # _B(C!M2B") # _B(W$M2") # _B(W$M2%)& TCCR2B = _B(C'22)&

!CR2A = inputKiri& !CR2B = inputKanan& 

(10)

G-./-r 2(7 S!e.-$i! LM293D G-./-r 2(7 S!e.-$i! LM293D T-/e# 2(1 Ko"6ir-i i" IN1 -" IN2 $er8--$ er-! .o$or 1 T-/e# 2(1 Ko"6ir-i i" IN1 -" IN2 $er8--$ er-! .o$or 1 E

ENN1 1 .. IINN11 IINN22 GGEERRAAK K MMOOTTOOR R

255 H6GH LO 7OO 1  E4A

128 H6GH LO 7OO 1  SE%ANG

128 H6GH H6GH 7OO 7A6

255 LO H6GH 7OO 1  E4A

128 LO H6GH 7OO 1  SE%ANG

128 LO LO 7OO 7A6

2.(

2.( I!pI!ple!le!en'en'asi Pasi Pe!)e!)a&aa&aan Sean Sensns$ *a$$ *a$ak )eak )e$sa$sa!aa!aann

Sen/+ aak 9ang digunakan ada*a /en/+ u*ta/+nik ing aa**a. Sen/+ 9ang digunakan /eban9ak e'at bua 9ang be:ung/i 'e'ba,a aak beikut.

• Jaak %ean •

Jaak Se+ng >anan • Jaak >anan • Jaak >ii

7a/ing-'a/ing /en/+ 'e'butukan 3 bua kabe* untuk diubungkan ke 'ik+k+nt+*e 'e*a*ui aan 4$! 9aitu kabe* V! g+und! dan data. O*e kaena itu! untuk /en/+ aak /e*uun9a dibutukan 8 +t di b+ad Aduin+ &NO! 9aitu V! g+und! dan in A%0;5.

(11)

4e'ba,aan bea/i* teat dan ,eat dengan k+de /bb;

2.+ 2.+ I I

!ple!en'asi Sens$ IR dan Pe!)a&aan Re!'e ,n'$l !ple!en'asi Sens$ IR dan Pe!)a&aan Re!'e ,n'$l

6 SO4 138 6 e,eie 'e'e*ukan tiga bua in! 9aitu V! g+und! dan data. Sen/+ 'enei'a data dai /ebua e'+te ,+nt+* in:aed. &ntuk 'enggunakan e'+te ,+nt+* ini! dibutukan in:+'a/i k+de 9ang dikii'kan ika 'enekan t+'b+* tetentu. O*e kaena itu! di*akukan e,+baan untuk 'engetaui ni*ai 9ang dikii'kan bebeaa t+'b+* 9ang akan digunakan. >+de 9ang digunakan untuk e,+baan ini ada*a /ebagai beikut.

in*lude +Rre-ote./0 int R1C_P = "%& Rre*v irre*v(R1C_P)& de*ode_results results& void setup() { 'erial.be3in(45%%)& 11 in*lude +Pin3./0

Pin3 pin36epan = Pin3(2)& Pin3 pin3Kanan6epan = Pin3(7)& Pin3 pin3Kanan = Pin3(8)& Pin3 pin3Bela9an3 = Pin3(:)& Pin3 pin3Kiri = Pin3(5)& Pin3 pin3Kiri6epan = Pin3(;)&

double <ara96epan, <ara9Kanan6epan, <ara9Kanan, <ara9Bela9an3,

<ara9Kiri, <ara9Kiri6epan& void setup(){ 'erial.be3in("":2%%)&  void loop(){ ba*aPin3()& 'erial.print(6epan> )& 'erial.print(<ara96epan)& 'erial.print( 6epanKanan> )& 'erial.print(<ara9Kanan6epan)& 'erial.println()& ??dst  void ba*aPin3(){ pin36epan.@ire()& <ara96epan = pin36epan.*enti-eters()& pin3Kanan6epan.@ire()& <ara9Kanan6epan = pin3Kanan6epan.*enti-eters()& pin3Kanan.@ire()& <ara9Kanan = pin3Kanan.*enti-eters()& pin3Bela9an3.@ire()& <ara9Bela9an3 = pin3Bela9an3.*enti-eters()&

(12)

irre*v.enableRn()& ?? 'tart t/e re*eiver  void loop() { i@ (irre*v.de*ode(results)) { 'erial.println(results.value, 1)&

irre*v.resu-e()& ?? Re*eive t/e neDt value 

Ha/i* e,+baan 'e'beikan data /ebagai beikut. T-/e# 2(2 Ni#-i !e#-r-" e$i- $o./o# re.o$e IR T-/e# 2(2 Ni#-i !e#-r-" e$i- $o./o# re.o$e IR To./o To./o ## HeeH 0 8" 100 "8 200 $0#  1 30  2 18E  3 A8 5 # 10E  5 38   5AA 5  #2$ % 8 #A$ 5 " 52A % 2.

2.-- I!I!plple!e!enen'a'asi Tsi T!!))l Sil Si'&'& Pu Pus Ons On

+'b+* ini digunakan /eban9ak dua bua ada /i/i /e+ng kanan dan kii. 7a/ing-'a/in g t+'b+* an9a akan digunakan /atu bua /aa /e/uai dengan '+de 9ang /edang dia*ankan +*e +b+t. Jika +b+t da*a' '+d e following right wall ! 'aka t+'b+* kanan /aa 9ang digunakan. $egitu uga /eba*ikn9 a untuk following left wall ! an9a t+'b+* kii /aa 9ang digunakan. +'b+* ini be:ung/i ika '+bi* 'enabak /e/uatu ada /i/i /e+ng dean '+bi*.

(13)

2.

2.00 I!I!plple!e!enen'a'asi si ,,D 1D 1-  -  2 2

L% 12 digunakan untuk 'ena'i*kan '+de 9ang /edang dia*ankan +*e +b+t! ke,eatan +da kanan dan kii (da*a' ni*ai 47)! dan aak kanan?kii /eta dean. L% dia/ang ada bagian ata/ dean badan +b+t. L% 'enggunakan bebeaa in /ebagai beikut.

T-/e# 2(3 Ko"6ir-i i" L)D 12 T-/e# 2(3 Ko"6ir-i i" L)D 12

N

N--..- - PPii"" PPii" " --- - AArrii""oo

V V G+und GN% S 2 E  %#  %5 8 % " % 4#

&

&

$

$'

'S

SP

P$

$R

RII"

"$

$%

%

".

".11 EkEksspepe$i$i!!en Men M''$ D$ D, ,

4e,+baan '+t+ % di*akukan untuk 'enge*+'+kkan bebeaa eni/ geakan 9ang die*ukan da*a' +ga' Da** :+**+De. Ha/i* e,+baan untuk /etia geakan ada*a /ebagai beikut.

T-/e# 3(1 *e"i Ger-!-" Mo$or T-/e# 3(1 *e"i Ger-!-" Mo$or

G

Geerr--!!--"" PP&&44 PP&&55 PPDD44 PPDD55 PP++M M KKiirrii PP++M M KK--""--""

7au *uu/ 1 0 1 0 255 252

7undu *uu/ 0 1 0 1 255 252

4uta kanan 0 1 1 0 250 250

4uta kii 1 0 0 1 250 250

$eenti 0 0 0 0 -

-7au be*+k 1 0 1 0 a Va

4+t 4$#;5 dan 4%#;5 ada*a +t 9ang be:ung/i untuk 'engatu aa uta +da. 4+t 4$#;5 'engatu aa +da kii /edangkan +t 4%#;5 'engatu aa uta +da kanan. 4ada geak 'au *uu/! ni*ai 47 kii *ebi be/a dai 47 kanan. 4adaa* ika ingin 'au *uu/! /eau/n9a ni*ai keduan9a /a'a aga 'endaatkan enegi 9ang /a'a be/a. Na'un! /ete*a di*akukan e,+baan! diketaui baDa +da kii 'e'e*ukan t+/i 9ang *ebi be/a dai +da kanan untuk beuta. %engan kata *ain! tedaat ebedaan kaaktei/tik 'ekanik antaa +da kanan dan kii. Jika ni*ai 47 keduan9a /a'a! akibatn9a +b+t akan ,endeung bea*an bebe*+k ke kii. $eda/akan a/i* e,+baan! ni*ai 47 dengan k+n:igua/i ada tabe*

te*a daat 'e'buat '+bi* bea*an *uu/. 4ada '+de geak uta! be/a 47 +da kanan dan kii b+*e /a'a tetai dengan aa uta 9ang be*aDanan tegantung aa uta 9ang dituu. %engan ,aa ini! '+bi* daat beuta di te'at dengan u/a +b+t /ebagai ++/.

(14)

&ntuk 'e'buat '+bi* beenti! ,uku dengan 'e'buat /e'ua ni*ai +t 4$#;5 dan 4%#;5 'enadi 0 /e*uun9a atau 1 /e*uun9a. Sedangkan untuk '+de 'au be*+k! ni*ai 47 diadikan aiabe* aga be/an9a begantung ada kebutuan atau begantung ada aak '+bi* dai dinding. Jika 47 kii *ebi be/a dai kanan! 'aka +b+t akan 'au /a'bi* bebe*+k ke kanan. Seba*ikn9a ika 47 kanan *ebi be/a dai kii! 'aka +b+t akan 'au

/a'bi* bebe*+k ke kii.

".2

".2 EksEkspe$pe$i!ei!en Sen Sensns$ Ul$ Ul'$a'$asnsnik dik dan an ,D 1,D 1-2 -2

4e,+baan /en/+ u*ta/+ni, dan L% 12 di*akukan be/a'aan untuk 'e'e'uda e,+baan keduan9a. %a*a' e,+baan ini! ka'i 'ena'i*kan aak 9ang teuku +*e /en/+

u*ta/+nik ke *a9a L%. edaat *i'a k+ndi/i engukuan dengan a/i* /ebagai beikut.

G-./-r 3(1 Se#r8 e"or $i-! i8-#-" G-./-r 3(1 Se#r8 e"or $i-! i8-#-"

(15)

G-./-r 3(3 Se"or !iri i8-#-" G-./-r 3(3 Se"or !iri i8-#-"

G-./-r 3(4 Se"or ero" !-"-" i8-#-" G-./-r 3(4 Se"or ero" !-"-" i8-#-"

(16)

G-./-r 3(5 Se"or !-"-" i8-#-" G-./-r 3(5 Se"or !-"-" i8-#-" T-/e# 3(2 Ko"6ir-i 8-i# L)D

T-/e# 3(2 Ko"6ir-i 8-i# L)D P

Pooiiii SSee""oorr >ii ata/ %ean >anan ata/ >anan >ii baDa Se+ng >anan baDa >ii

4ada ga'ba 3.1 bi/a di*iat ni*ai aak 9ang dita'i*kan ada L% *ebi be/a dai 10 /e*uun9a. Ha* ini di/ebabkan /en/+ tidak dia*angi ada aak 9ang dekat. Sedangkan ada # ga'ba beikutn9a! te*iat tedaat /ebua ni*ai aak 9ang ke,i* (di baDa 10) 9ang dita'i*kan. 4+/i/i ni*ai 9ang ke,i* te/ebut begantung ada /en/+ 9ang dia*angi. >+n:igua/i +/i/i /en/+ teaa +/i/i ni*ai ada L% daat di*iat ada tabe* 3.2. %ai e,+baan 9ang di*akukan! daat di/i'u*kan baDa /e*uu /en/+ u*ta/+nik 9ang

digunakan bekea dengan baik! begitu u*a dengan L%.

".

"."" EkEkspspe$e$i!i!en Ten T!)!)l Sl Sii'&'& Pu Pus Os Onn

4e,+baan t+'b+* /Dit, ini di*akukan dengan 'e'beikan /uatu einta keada +b+t aabi*a t+'b+* te/ebut ditekan. 4einta 9ang di*akukan ada*a 'undu *uu/! de*a9 /e*a'a bebeaa Daktu! uta kii! dan de*a9 /e*a'a bebeaa Daktu. 6ni di*akukan ika t+'b+* /i/i kanan 9ang tetekan. Sedangkan bi*a t+'b+* kii 9ang tetekan! 'aka +b+t akan 'e*akukan einta 9ang /a'a ke,ua*i uta kii 'enadi uta kanan. $eikut ada*a k+de untuk t+'b+*

kanan. i@(ETo-bol)

(17)

delaG(7%%)& 

Sedangkan bi*a k+de untuk e,+baan t+'b+* kii ada*a /ebagai beikut. i@(ETo-bol2) { MundurFurus()& delaG(8%%)& PutarKanan(":%)& delaG(7%%)& 

+'b+* ini akan /e*a*u 'e'beikan ni*ai 1 atau *+gika &E bi*a da*a' k+ndi/i tidak ditekan. Sedangkan bi*a t+'b+* /Dit, tetekan! 'aka t+'b+* akan 'enga/i*kan ni*ai 0 atau *+gika ALSE. O*e kaena itu! enge,ekan di*akukan dengan 'e'eik/a aaka +'b+*1 atau +'b+*2 'enga/i*kan *+gika ALSE.

".(

".( EksEkspe$pe$i!ei!en Senn Sens$ Is$ In3$n3$a Red da Red dan Rean Re!'!'e ,ne ,n'$'$l IR l IR

4ada e,+baan 'enggunakan /en/+ 6 dan e'+te ,+nt+* 6! ka'i 'e'buat aga +b+t daat digeakkan dengan 'enggunakan e'+te ,+nt+*. edaat " eni/ geakan 9ang daat di*akukan +*e +b+t ika dikenda*ikan dengan e'+te. Jeni/ t+'b+* dan geakan 9ang dia/i*kan +*e +b+t daat di*iat ada tabe* di baDa ini.

T-/e# 3(3 Ko"6ir-i $o./o# -- re.o$e ;o"$ro# -" er-!-" T-/e# 3(3 Ko"6ir-i $o./o# -- re.o$e ;o"$ro# -" er-!-"

L

L--//ee# # TToo..//oo## *ee"* "ii  GGeerr--!!--"" I eu/ beuta kii KKI eu/ beuta kanan

- eu/ 'undu *uu/ < eu/ 'au *uu/

KII $eenti

2 7au *uu/ /ebenta # $euta kii /ebenta  $euta kanan /ebenta 8 7undu *uu/ /ebenta

$eikut ada*a k+de +ga' *engka untuk 'ena*ankan +b+t dengan 'enggunakan e'+te ,+nt+* 6. in*lude +FiHuidCrGstal./0 in*lude +Rre-ote./0 in*lude +avr?io./0 in*lude +util?delaG./0 FiHuidCrGstal l*d((2,, 5,, ;,, I,, 4,, "I);); int R1C_P == "%;;

int -ode == %;; ?? %> oto-atis& "> -anual& 2> stop&

int speedKanan == 2:2;;

int speedKiri== 2::;;

Rre*v irre*v((R1C_P););

de*ode_results results;;

'R((TM1R"_!J_ve*t)) ?? interrupt untu9 -ena-ba/ <u-la/ <a- dan

(18)

stopat*/

{ {

if

if ((irre*v..de*ode(&(&results)))) {

{

l*d..*lear();();

irre*v..resu-e();(); ?? Re*eive t/e neDt value

} }

if

if((results..value====%DJJ4I5;)) { { -ode == ";; } } if

if((results..value====%DJJ5I4;)) { { -ode == %;; } } if if((results..value====%DJJB%8J)) { { -ode == 2;; } } TJR" == ((" << <<T!");); TCT" == :I4"%;; } } void setup(){(){ l*d..be3in(("5,, 2);); 66R6 == 66R6 || %b%%"""%%%;; 66RB == 66RB || %b%%"""%%%;; irre*v..enableRn();(); int_re-ote();(); } } void loop(){(){ sei();(); if if((-ode ==== %){){ l*d..setCursor((%,,%);); l*d..print((ALT!MATC);); } } else else ifif((-ode ====")) {{ l*d..setCursor((%,,%);); l*d..print((MALAF R1M!T1);); if

if ((irre*v..de*ode(&(&results)))) {

{

l*d..*lear();();

'erial..println((results..value,, 1););

irre*v..resu-e();(); ?? Re*eive t/e neDt value

} } if if((results..value====%DJJ"%1J)) { { PutarKiri();(); _delaG_-s(("%%);); results..value == %DJJC276;; } } if

if((results..value====%DJJ"I1;)) {

{

Ma<uFurus();();

(19)

if

if((results..value====%DJJ:AA:)) { { PutarKanan();(); _delaG_-s(("%%);); results..value == %DJJC276;; } } if

if((results..value====%DJJ8AB:)) { { MundurFurus();(); _delaG_-s(("%%);); results..value == %DJJC276;; } } if if((results..value====%DJJC276)) { { l*d..setCursor((%,,");); l*d..print((B1R1T);); } } if if((results..value====%DJJ2266)) { { PutarKiri();(); _delaG_-s((2:%);); } } if

if((results..value====%DJJAI:;)) { { Ma<uFurus();(); _delaG_-s((2:%);); } } if if((results..value====%DJJ%2J6)) { { PutarKanan();(); _delaG_-s((2:%);); } } if if((results..value====%DJJ1%"J)) { { MundurFurus();(); _delaG_-s((2:%);); } } } } else else {{ l*d..*lear();(); l*d..print(( -ode B1R1T);); ber/enti();(); _delaG_-s((:%);); } } analo3Write((7,,speedKiri);); analo3Write(("",,speedKanan);); ber/enti();(); } } void ber/enti(){(){ di3italWrite(("2,,F!W);); di3italWrite(("7,,F!W);); di3italWrite((8,,F!W);); di3italWrite((:,,F!W);); delaG((:%);); } } void PutarKiri(){(){ 1"

(20)

di3italWrite(("2,,F!W);); di3italWrite(("7,,$);); di3italWrite((8,,$);); di3italWrite((:,,F!W);); } } void PutarKanan(){(){ di3italWrite((8,,F!W);); di3italWrite((:,,$);); di3italWrite(("2,,$);); di3italWrite(("7,,F!W);); } } void Ma<uFurus(){(){ di3italWrite(("2,,$);); di3italWrite(("7,,F!W);); di3italWrite((8,,$);); di3italWrite((:,,F!W);); } } void MundurFurus(){(){ di3italWrite(("7,,$);); di3italWrite(("2,,F!W);); di3italWrite((:,,$);); di3italWrite((8,,F!W);); } } void int_re-ote ( ( void ) ) { { TM'K" == %b%%%%%%;;

TM'K" == _B((T!1");); ??-en3a9ti@9an !ver@lo nterrupt

TCCR"A == %;;

TCCR"B == %b%%%%""%";; ??pres*alar "%28

TCT" == :I4"%;; ?? untu9 %," deti9

sei();(); } }

".+

".+ EksEkspe$pe$i!ei!en Rn R)' )' SeSe!i !i AuAu'!'!a'ia'i& 24& 24D ,D ,a$ a$

4ada e,+baan aki ini! +b+t te*a daat dengan baik 'engikuti dinding kanan atau kii. >e'a'uan +b+t *ebi baik da*a' 'engikuti dinding kanan kaena tedaat /en/+ aak ada /i/i /e+ng kanan! /eingga 'e'eke,i* ke'ungkinan +b+t untuk 'enabak. Se*a'a e,+baan di*akukan! 'a/i ada ke'ungkinan +b+t 'enabak dan tidak daat begeak *agi. Ha* ini teadi ika '+bi* 'enabak ada /udut tetentu di 'ana /en/+ tidak daat 'endetek/i aak dengan baik. Na'un a* ini /angat aang teadi. >e*e'aan *ainn9a ada*a '+bi* 'a/i bea*an dengan kuang ai. Seing ka*i +b+t te*iat bebe*+k be*ebian atau bea*an dengan te*a*u /eing be*+k kanan-kii /eingga tidak /tabi*.

$eikut ada*a k+de +ga' *engka untuk 'ena*ankan +b+t /e'i aut+'at,i 2% a dengan '+de following right wall .

(21)

in*lude +util?delaG./0 Pin3 pin36epan == Pin3((A7););

Pin3 pin3Kanan == Pin3((A2););

Pin3 pin3'eron3 == Pin3((A%););

Pin3 pin3Kiri == Pin3((A"););

FiHuidCrGstal l*d((2,, 5,, ;,, I,, 4,, "I););

double <ara96epan,, <ara9Kanan,, <ara9Kiri,, <ara9'eron3;;

int R1C_P == "%;;

int -ode;; ?? %> all 9anan& "> all 9iri& 2> -anual& 8>ber/enti&

int speedKanan == ";:;; int speedKiri== ";:;; 'R((TM1R"_!J_ve*t)) { { displaGara9();(); TJR" == ((" << <<T!");); TCT" == :44"%;; } } void setup(){(){ l*d..be3in(("5,, 2);); l*d..print((WAFF J!FF!W1R);); _delaG_-s(("%%%);); int_<ara9();(); 66RC == 66RC && %b""%""""";; P!RTC == ((" << << PC:);); 66R6 == 66R6 || %b%%"""%%%;; 66RB == 66RB || %b%%"""%%%;; } } void loop(){(){ ba*aPin3();(); allKanan((";:,,"%,,7:,,:);); } }

void allKanan((int 'peedAal,, int 'etPointara9,, int Kp,,int Kd)) {

{

int Prevara9Kanan;;

int To-bol == di3italRead((A:););

??Para-eter P6

int 1rrorara9 == 'etPointara9-- <ara9Kanan;;

int 6erivative1rrorara9 == Prevara9Kanan-- <ara9Kanan;;

int PersenBelo9 == ((((((Kp**1rrorara9)/)/"%)+)+ ((

((Kd**6erivative1rrorara9)/)/"%));)); ?? <i9a ne3ati@ (terlalu 9e 9iri)& positi@ (terlalu 9e 9anan)

??Para-eter Wall Jolloin3

unsi3ned */ar 6epan6e9at == ":;;

int t/res/old== 5%;;

-ode == %;;

??pe-batasan nilai

(22)

if if((PersenBelo9 > > t/res/old)) { { PersenBelo9== t/res/old;; } } if if((PersenBelo9 < < --t/res/old)) { { PersenBelo9== --t/res/old;; } }

speedKiri == 'peedAal -- PersenBelo9;;

speedKanan == 'peedAal ++ PersenBelo9;;

if

if(!(!To-bol)) ??sit*/ terte9an atau -obil -enabra9

{ { MundurFurus();(); _delaG_-s((7%%);); PutarKiri((":%);); _delaG_-s((7%%);); } } else else ??WallJolloer { { if

if((<ara96epan < < 6epan6e9at)) ??depan de9at

{ { if if((<ara96epan > > 7)) { {

PutarKiri((2%%);); ??belo9 9anan

_delaG_-s(("7%);); } } else else ??nabra9 { { MundurFurus();(); _delaG_-s((2%%);); PutarKiri((2:%);); _delaG_-s((":%);); } } } } else

else ?? depan <au/

{ { if if((<ara9Kanan > > 7%)) { { Ma<uBelo9((2::,,"%%);); _delaG_-s((2%%);); Ma<uFurus();(); _delaG_-s((2%%);); } } else else { { if if((<ara9'eron3 > > "%)) { {

Ma<uBelo9((speedKiri,, speedKanan););

_delaG_-s((:%);); } } else else { { Ma<uBelo9((":%,,2%%);); _delaG_-s(("%%);); } } } }

(23)

} }

void allKiri((int 'peedAal,, int 'etPointara9,, int Kp,,int Kd)) {

{

int Prevara9Kiri;;

int To-bol2 == di3italRead((A8););

??Para-eter P6

int 1rrorara9 == 'etPointara9-- <ara9Kiri;;

int 6erivative1rrorara9 == Prevara9Kiri-- <ara9Kiri;;

int PersenBelo9 == ((((((Kp**1rrorara9)/)/"%)+)+ ((

((Kd**6erivative1rrorara9)/)/"%));)); ?? <i9a ne3ati@ (terlalu 9e 9anan)& positi@ (terlalu 9e 9iri)

??Para-eter Wall Jolloin3

unsi3ned */ar 6epan6e9at == ":;;

int t/res/old== 5%;; -ode == ";; ??pe-batasan nilai if if((PersenBelo9 > > t/res/old)) { { PersenBelo9== t/res/old;; } } if if((PersenBelo9 < < --t/res/old)) { { PersenBelo9== --t/res/old;; } }

speedKiri == 'peedAal ++ PersenBelo9;;

speedKanan == 'peedAal -- PersenBelo9;;

if

if(!(!To-bol2)) ??sit*/ terte9an atau -obil -enabra9

{ { MundurFurus();(); _delaG_-s((7%%);); PutarKanan((":%);); _delaG_-s((2%%);); } } else else ??WallJolloer { { if

if((<ara96epan < < 6epan6e9at)) ??depan de9at

{ { if if((<ara96epan > > 7)) { {

PutarKanan((2%%);); ??belo9 9anan

_delaG_-s((":%);); } } else else ??nabra9 { { MundurFurus();(); _delaG_-s((7%%);); PutarKanan((2:%);); _delaG_-s((2%%);); } } } } else

else ?? depan <au/

{ { if if((<ara9Kiri > > 7%)) { { Ma<uBelo9(("%%,,2::);); _delaG_-s((":%);); 23

(24)

Ma<uFurus();(); _delaG_-s(("%);); } } else else { {

Ma<uBelo9((speedKiri,, speedKanan););

_delaG_-s((:%);); } } } } Prevara9Kiri == <ara9Kiri;; } } } } void displaGara9(){(){ l*d..*lear();(); l*d..print((<ara96epan);); l*d..setCursor((I,, %);); if if((-ode ==== %)) { { l*d..print((<ara9Kanan);); } } else else ifif((-ode ==== ")) { { l*d..print((<ara9Kiri);); } } _delaG_-s(("%%);); } }

void ba*aPin3((void){){

pin36epan..@ire();();

<ara96epan == pin36epan..*enti-eters();();

pin3Kanan..@ire();();

<ara9Kanan == pin3Kanan..*enti-eters();();

pin3'eron3..@ire();();

<ara9'eron3== pin3'eron3..*enti-eters();();

pin3Kiri..@ire();();

<ara9Kiri== pin3Kiri..*enti-eters();(); }

}

void ber/enti((void){){

l*d..setCursor((%,, ");); l*d..print((%);); l*d..setCursor(("2,, ");); l*d..print((%);); P!RTB == ((% << << PB8)) || ((% << << PB:);); P!RT6 == ((% << << P68)) || ((% << << P6:);); _delaG_-s((:%);); } }

void PutarKiri((int 9e*epatan){){

l*d..setCursor((%,, "););

l*d..print((9e*epatan););

l*d..setCursor(("2,, "););

l*d..print((9e*epatan););

(25)

void PutarKanan((int 9e*epatan){){ l*d..setCursor((%,, ");); l*d..print((9e*epatan);); l*d..setCursor(("2,, ");); l*d..print((9e*epatan);); P!RT6 == ((% << << PB8)) || ((" << << PB:);); P!RTB == ((" << << P68)) || ((% << << P6:););

setPWM((9e*epatan,,9e*epatan);); }

}

void Ma<uFurus((void){){

l*d..setCursor((%,, ");); l*d..print((22:);); l*d..setCursor(("2,, ");); l*d..print((22:);); P!RT6 == ((" << << PB8)) || ((% << << PB:);); P!RTB == ((" << << P68)) || ((% << << P6:);); setPWM((2::,,2:2);); } }

void MundurFurus((void){){

l*d..setCursor((%,, ");); l*d..print((22:);); l*d..setCursor(("2,, ");); l*d..print((22:);); P!RT6 == ((% << << PB8)) || ((" << << PB:);); P!RTB == ((% << << P68)) || ((" << << P6:);); setPWM((2::,,2:2);); } }

void Ma<uBelo9((int 9iri,, int 9anan){){

l*d..setCursor((%,, ");); l*d..print((9iri);); l*d..setCursor(("2,, ");); l*d..print((9anan);); if if ((9anan> > 2::){){ 9anan == 2::;; } } else else ifif((9anan < <"%%){){ 9anan == "%%;; } } if if((9iri > > 2::){){ 9iri == 2::;; } } else else ifif((9iri < <"%%){){ 9iri == "%%;; } } P!RTB == ((" << << PB8)) || ((% << << PB:);); P!RT6 == ((" << << P68)) || ((% << << P6:););

setPWM((9iri,, 9anan);); }

}

void setPWM((double inputKiri,, double inputKanan))

(26)

{ { TCCR2A == _B((C!M2A")) || _B((C!M2B")) || _B((W$M2")) || _B((W$M2%);); TCCR2B == _B((C'22);); !CR2A == inputKiri;; !CR2B == inputKanan;; } }

void int_<ara9((void)) {

{

TM'K" == %b%%%%%%;;

TM'K" == _B((T!1");); ??-en3a9ti@9an !ver@lo nterrupt

TCCR"A == %;; TCCR"B == %b%%%%""%";; ??pres*alar "%28 TCT" == :44"%;; ?? untu9 %," deti9 sei();(); } }

Referensi

Dokumen terkait

Multivariate analysis was performed for the sex category variable and overt hyperthyroid showed that it had significant bivariate association with cognitive impairment

Gout adalah radang sendi yang merupakan akibat dari deposit kristal asam urat (monosodium urate) di jaringan dan cairan dalam tubuh3. Proses ini disebabkan karena peningkatan

D istribusi frekuensi responden berdasarkan ti ngkat pengetahuan WU S yang tel ah mel akukan pemeri ksaan IVA di Puskesmas Karanganyar dengan prosentase terti nggi

Saya dapat memilih donat dengan berbagai variasi topping yang banyak hanya di J.Co donuts&amp;coffee.. Bisa membeli donat J.Co donuts&amp;coffee membuat saya bangga

Fazlur Rahman dalam bukunya 51 mengatakan “apa yang dikatakan Shadra adalah bahwa inspirasi bagi ajaran-ajarnnya yang diklaimnya sebagai orisinal, berasal dari bagian-bagian

a. Data karakteristik responden pada bab pembahasan dapat disimpulkan bahwa mayoritas berjenis kelamin laki-laki, yaitu sebesar 58%, berusia 38-47 Tahun sebanyak 38 %, dan

Sebanyak 100 galur generasi lanjut yang berasal dari 58 persilangan turunan tetua toleran kekeringan hasil seleksi tadah hujan (pedigree disajikan pada Tabel 1)

Samson Rahman (Jakarta: Akbar Media Eka Sarana, 2003), 101-135; Muhammad al- Ghazali, Sejarah Perjalanan Hidup Muhammad, terj.. Yahudi Khaibar direlokasi ke luar Jazirah Arab,