• Tidak ada hasil yang ditemukan

Perancangan Robot Pemadam Api Berbasis Mikrokontrolera T89C51

N/A
N/A
Protected

Academic year: 2016

Membagikan "Perancangan Robot Pemadam Api Berbasis Mikrokontrolera T89C51"

Copied!
74
0
0

Teks penuh

(1)

PERANCANGAN ROBOT PEMADAM API

BERBASIS MIKROKONTROLER AT89C51

Diajukan untuk memenuhi salah satu persyaratan dalam menyelesaikan

pendidikan sarjana (S-1) pada Departeman Teknik Elektro

Oleh:

Raymond T. Simanjuntak 020402024

DEPARTEMEN TEKNIK ELEKTRO

FAKULTAS TEKNIK

UNIVERSITAS SUMATERA UTARA

MEDAN

(2)

PERANCANGAN ROBOT PEMADAM API BERBASIS MIKROKONTROLER AT89C51

Oleh:

Raymond T. Simanjuntak NIM. 020402024

Tugas Akhir ini diajukan untuk melengkapi salah satu syarat

untuk memperoleh gelar sarjana Teknik Elektro

Disitujui oleh:

Dosen Pembimbing,

Ir. Kasmir Tanjung NIP. 132 206 823

Diketahui Oleh:

Ketua Departemen Teknik Elektro FT USU,

Prof. Dr. Usman S. Baafai NIP. 130 365 322

DEPARTEMEN TEKNIK ELEKTRO FAKULTAS TEKNIK

UNIVERSITAS SUMATERA UTARA MEDAN

(3)

KATA PENGANTAR

Puji dan syukur penulis ucapkan kepada Tuhan atas penyertaan dan

anugrah-Nya sehingga pada akhirnya penulis dapat menyelesaikan skripsi ini. Skripsi ini

berjudul “Perancangan Robot Pemadam Api berbasis Mikrokontroler AT89C51”.

Penulis menyadari bahwa pada hakekatnya penulisan skripsi ini tidak dapat

diselesaikan penulis tanpa bantuan dan dorongan dari berbagai pihak. Oleh karena

itu, pada kesempatan ini penulis ingin mengucapkan terimakasih kepada:

1. Bapak Prof. Dr. Usman Baafai selaku ketua Departemen Teknik Elektro dan

Bapak Drs. Hasdari Helmi, MT selaku sekretaris Departemen Teknik Elektro.

2. Bapak Rachmad Fauzi, ST, MT selaku dosen wali penulis yang membimbing

penulis dalam perkuliahan.

3. Bapak Kasmir Tanjung, Ir selaku dosen pembimbing penulis yang telah

membimbing dan mengarahkan penulisan skripsi ini.

4. Seluruh dosen pengajar dan staf pegawai Departemen Teknik Elektro.

5. Teman-teman yang tidak henti-hentinya memberi perhatian, semangat dan

waktunya untuk berdoa sehingga penulis mampu menyelesaikan skripsi ini.

Demikianlah skripsi ini penulis selesaikan, semoga bermanfaat bagi

perkembangan robotika di Indonesia. Sekian dan terimakasih.

Medan, 6 Pebruari 2008

(4)

ABSTRAK

Secara umum robot dapat didefenisikan sebagai sebuah piranti mekanik yang

mampu melakukan pekerjaan manusia atau berprilaku seperti manusia. Salah satu

pekerjaan manusia yang dapat dilakukan robot adalah kegiatan pemadaman

kebakaran. Robot Pemadam Api dirancang untuk mencari dan memadamkan api lilin

yang terdapat disekitarnya. Untuk itu robot dilengkapi dengan sensor jarak dan

sensor api agar dapat menjelajah ruangan tanpa menabrak benda serta dapat

mendeteksi keberadaan api lilin. Program untuk menjalankan robot ditulis dalam dua

bagian: bagian jelajah dan bagian penemuan_api. Pada saat tombol catu daya

di-ON-kan, bagian jelajah akan dieksekusi. Robot akan menjelajah ruangan dan

menghindari tabrakan dengan benda yang terdapat disekelilingnya. Pada saat robot

mendeteksi keberadaan api lilin yang terdapat disekitarnya, bagian penemuan_api

akan dieksekusi. Pada bagian ini, robot akan berputar kearah api lilin dan bergerak

lurus mendekatinya hingga pada jarak yang mana api lilin dapat dipadamkan.

Kemudian robot akan memadamkan api dan kembali menjelajah ruangan sampai

(5)

DAFTAR ISI

LEMBAR PENGESAHAN ... i

ABSTRAK ... ii

KATA PENGANTAR ... iii

DAFTAR ISI ... iv

DAFTAR GAMBAR ... vii

DAFTAR TABEL ... ix

BAB I PENDAHULUAN ... 1

I.1 Latar Belakang ... 1

I.2 Tujuan Penulisan ... 2

I.3 Rumusan Masalah ... 2

I.4 Batasan Masalah ... 3

I.5 Metodologi Perancangan ... 4

I.6 Sistematika Penulisan ... 4

BAB II MIKROKONTROLER AT89C51 DAN KOMPONEN PENDUKUNG ... 6

II.1Mikrokontroler AT89C51 ... 6

II.1.1 Susunan Pin AT89C51 ... 6

II.1.2 Struktur Perangkat Keras AT89C51 ... 8

II.1.2.1 RAM Internal ... 10

II.1.2.2 Register Fungsi Khusus ... 11

II.2 Sensor Infra Merah Sharp GP2D12 ... 12

(6)

II.4 OP-Amp LM324 ... 15

II.5 Motor dc dan Motor Driver L293D ... 16

II.5.1 Motor dc ... 16

II.5.2 Motor Driver L293D ... 17

II.6 Timer 555 ... 17

II.7 Transistor 2PA733 ... 19

BAB III PERANCANGAN PERANGKAT KERAS ... 21

III.1 Spesifikasi Sistem ... 21

III.2 Rangkaian Dasar Mikrokontroler AT89C51 ... 22

III.2.1 Rangkaian Reset ... 22

III.2.2 Rangkaian Clock ... 24

III.2.3 Hubungan Port-port ... 25

III.3 Rangkaian Sensor Jarak ... 27

III.4 Rangkaian Sensor Api ... 28

III.5 Rangkaian Pembanding Tegangan ... 31

III.5.1 Rangkaian Pembanding Untuk Sensor Api ... 31

III.5.2 Rangkaian Pembanding Untuk Sensor Jarak ... 33

III.6 Rangkaian Motor dc ... 35

III.7 Rangkaian Duty Cycle Modulation ... 37

III.8 Rangkaian Saklar ... 39

III.9 Rangkaian Kipas Angin ... 40

III.10 Rangkaian LED Indikator ... 41

III.11 Rangkaian Robot Pemadam Api ... 42

BAB IV PERANCANGAN PERANGKAT LUNAK ... 43

(7)

IV.2 Bagian Jelajah ... 45

IV.3 Bagian Penemuan Api ... 49

BAB V IMPLEMENTASI DAN PENGUJIAN ... 53

V.1. Implementasi ... 53

V.2 Pengujian ... 54

V.2.1 Pengujian Rangkaian Sensor Jarak Dengan Pembanding Tegangan ... 54

V.2.2 Pengujian Rangkaian Sensor Api Dengan Pembanding Tegangan ... 55

V.2.3 Pengujian Rangkaian Motor dc dengan Rangkaian DCM ... 55

V.2.4 Pengujian Robot Pemadam Api ... 56

BAB VI KESIMPULAN DAN SARAN ... 58

VI.1. Kesimpulan ... 58

VI.2. Saran ... 58

DAFTAR PUSTAKA ... 59

LAMPIRAN A Rangkaian Robot Pemadam Api Phoenix ... 60

LAMPIRAN B Source Code... 61

(8)

DAFTAR GAMBAR

Gambar 2.1 Konfigurasi Pin Mikrokontroler AT89C51 ... 6

Gambar 2.2 Arsitektur AT89C51 ... 9

Gambar 2.3 Susunan SFR dan Susunan RAM internal AT89C51 ... 12

Gambar 2.4 Sensor Jarak GP2D12 dan Konfigurasi Pinnya ... 13

Gambar 2.5 Grafik Karakteristik Output GP2D12 Terhadap Benda yang Terdapat Dihadapannya ... 14

Gambar 2.6 Phototransistor ... 14

Gambar 2.7 Grafik Karakteristik Phototransistor ... 15

Gambar 2.8 Pin-pin dalam LM324 ... 16

Gambar 2.9 Diagram Block IC L293D ... 17

Gambar 2.10 Pin-pin dalam Timer 555 ... 18

Gambar 2.11 Transistor PN2222A ... 20

Gambar 3.1 Diagram Blok Perancangan Perangkat Keras ... 21

Gambar 3.2 Rangkaian Reset(A) dan Rangkaian Setaranya(B) ... 23

Gambar 3.3 Rangkaian Clock ... 25

Gambar 3.4 Hubungan Pin-pin Mikrokontroler ... 26

Gambar 3.5 Rangkaian Sensor GP2D12 ... 27

Gambar 3.6 Peletakan Sensor GP2D12 pada Badan Robot ... 28

Gambar 3.7 Rangkaian Sensor Api ... 29

Gambar 3.8 Susunan Phototransistor pada Badan Robot ... 30

Gambar 3.9 Hasil Penggabungan Beberapa Phototransistor ... 30

(9)

Gambar 3.11 Rangkaian Pembanding Tegangan Untuk Sensor Api ... 32

Gambar 3.12 Rangkaian Pembanding Tegangan Untuk Sensor Api Menggunakan LM324N ... 33

Gambar 3.13 Rangkaian Pembanding Untuk Sensor Jarak ... 34

Gambar 3.14 Rangkaian Pembanding Tegangan Untuk Sensor Jarak Menggunakan LM324N ... 35

Gambar 3.15 Rangkaian Motor dc ... 36

Gambar 3.16 Gelombang Dengan Frekwensi Duty Cycle 10%, 50% dan 90%... 37

Gambar 3.17 Rangkaian Duty Cycle Modulation ... 38

Gambar 3.18 Rangkaian Saklar ... 40

Gambar 3.19 Rangkaian Kipas Angin ... 41

Gambar 3.20 Rangkaian LED Indikator ... 42

Gambar 4.1 Diagram Alir Perangkat Lunak ... 44

Gambar 4.2 Diagram Alir Bagian Jelajah ... 48

Gambar 4.3 Daerah Pendeteksian Sensor Api ... 51

(10)

DAFTAR TABEL

Tabel 2.1 Keterangan Pin Out AT89C51 ... 7

Tabel 2.2 Karakteristik GP2D12 ... 13

Tabel 2.3 Kegunaan pin-pin pada Timer 555 ... 19

Tabel 3.1 Hubungan pin Enable, Input dan Output IC L293D ... 37

Tabel 4.1 Logika Pergerakan Robot Berdasarkan Pembacaan Sensor Jarak ... 46

(11)

I.1 Latar Belakang

Teknologi adalah cara untuk mendapatkan sesuatu dengan kualitas lebih baik

(lebih mudah, lebih murah, lebih cepat dan lebih menyenangkan). Salah satu

teknologi yang berkembang pesat saat ini adalah teknologi dibidang kerobotan.

Robot berguna untuk membantu manusia dalam melakukan pekerjaan tertentu

misalnya untuk melakukan pekerjaan yang memerlukan ketelitian tinggi, beresiko

tinggi, membosankan atau yang membutuhkan tenaga besar. Menurut buku The

Robot Builder's Bonanza yang ditulis oleh Gordon McComb secara umum robot

dapat didefenisikan sebagai sebuah piranti mekanik yang mampu melakukan

pekerjaan manusia atau berprilaku seperti manusia.

Salah satu pekerjaan manusia yang dapat dilakukan robot adalah kegiatan

pemadaman kebakaran. Jenis pekerjaan ini membutuhkan reaksi cepat karena

kebakaran dapat dihindari apabila api dapat dipadamkan ketika belum menyebar.

Ketika api telah menyebar pekerjaan pemadaman kebakaran akan menjadi pekerjaan

yang sulit dan beresiko tinggi. Masalah kebakaran dapat dikurangi apabila sumber

api dapat ditemukan dan dimatikan dalam waktu singkat.

Dengan latar belakang tersebut maka penulis membuat “Perancangan robot

pemadam api berbasis mikrokontroler AT89C51”. Dalam perancangan ini, api yang

(12)

I.2 Tujuan Penulisan

Tujuan penulisan tugas akhir ini adalah sebagai berikut:

1. Untuk merancang robot berbasis mikrokontroler AT89C51 yang dapat

mencari dan memadamkan api lilin yang berada disekitarnya.

2. Mengaplikasikan pelajaran digital, elektronika dan mikroprosesor yang

telah dipelajari selama perkuliahan.

3. Memperkaya pengetahuan penulis dan pembaca tentang mikrokontroler

dan aplikasinya.

I.3 Rumusan Masalah

Robot bertugas untuk mencari dan memadamkan api lilin yang terdapat

disekitarnya. Agar dapat melakukan tugas tersebut maka robot harus mampu

menjelajah ruangan tanpa menabrak dinding atau benda lainnya, mendeteksi

keberadaan api lilin yang terdapat disekitarnya, mendekati dan memadamkan api lilin

itu kemudian kembali menjelajah ruangan.

Pembuatan robot pemadam api meliputi perancangan perangkat keras dan

perangkat lunak.

Perangkat keras robot dirancang agar mikrokontroler dapat menerima masukan

dari sensor jarak dan sensor api kemudian memutuskan pergerakan motor dc melalui

H-bridge L293D dan transistor hingga fungsi robot untuk memadamkan api lilin

yang terdapat disekitarnya tercapai. Untuk mendeteksi dinding atau benda yang

terdapat disekitar robot digunakan sensor infra merah, sedangkan untuk mendeteksi

keberadaan api lilin digunakan phototransistor. Robot menggunakan dua buah motor

(13)

yang akan memadamkan api lilin. Sebagai pengendali robot digunakan

mikrokontroler AT89C51.

Sedangkan perangkat lunak ditulis agar mikrokontroler AT89C51 dapat

mengontrol proses pendeteksian benda disekitar robot, keberadaan api lilin dan

mengendalikan ketiga motor dc sehingga robot dapat melakukan tugas mencari dan

memadamkan api lilin dengan baik.

I.4 Batasan Masalah

Agar perancangan yang dibahas dalam tugas akhir ini tidak terlalu luas dan

menyimpang dari topik yang telah ditentukan, maka penulis perlu membatasi

permasalahan sebagai berikut:

1. Pembahasan tentang mikrokontroler AT89C51 hanya sebatas yang

berkaitan dengan perancangan ini.

2. Pembahasan mengenai komponen pendukung yang meliputi: sensor infra

merah GP2D12, phototransistor (sensor api), OP-AMP LM324N, motor

dc, motor driver L293D, timer 555, dan komponen lainnya hanya sebatas

teori umum dan yang berkaitan dengan perancangan robot pemadam api.

3. Api yang akan dipadamkan robot adalah api lilin. Lilin yang dipakai

adalah lilin putih dengan tinggi 14,5 cm dan berdiameter 1,5 cm.

4. Pembahasan cara kerja robot hanya sebatas menurut kebutuhan yang

meliputi analisis rangkaian tiap-tiap blok baik secara perangkat keras

(14)

I.5 Metodologi Perancangan

Metode perancangan yang dilakukan adalah sebagai berikut:

1. Studi literatur dan diskusi

Pada tahap pertama perancangan ini penulis akan mempelajari literatur yang

berhubungan dengan perancangan robot pemadam api, mikrokontroler AT89C51 dan

komponen pendukung yang digunakan. Penulis juga berdiskusi dengan dosen dan

teman untuk memperkaya wawasan penulis mengenai perancangan robot pemadam

api.

2. Perancang perangkat keras

Rangkaian yang akan dirancang meliputi rangkaian minimum

mikrokontroler, rangkaian pengendali sensor dan rangkaian pengendali motor.

3. Perancang perangkat lunak

Setelah semua perangkat keras selesai dirakit maka akan dilakukan

perancangan perangkat lunak yang terdiri dari diagram alir dan listing program.

4. Pengujian robot

Setelah perangkat keras dan perangkat lunak selesai dibuat, maka tahap

berikutnya adalah pengujian robot. Jika hasil pengujian tidak sesuai dengan yang

diharapkan, akan dilakukan perbaikan hingga tujuan tercapai.

I.6 Sistematika Penulisan

Tugas Akhir ini disusun berdasarkan kerangka penulisan sebagai berikut:

BAB I : PENDAHULUAN

Pada bab ini akan diuraikan mengenai latar belakang, tujuan,

(15)

BAB II : MIKROKONTROLER AT89C51 DAN KOMPONEN

PENDUKUNG

Bab ini berisi pembahasan mengenai mikrokontroler

AT89C51 dan komponen pendukung yang digunakan dalam

perancangan ini.

BAB III : PERANCANGAN PERANGKAT KERAS

Bab ini berisi perancangan perangkat keras robot pemadam

api.

BAB IV : PERANCANGAN PERANGKAT LUNAK

Bab ini berisi pembahasan mengenai perangkat lunak yang

ditulis agar robot pemadam api dapat bekerja dengan baik.

BAB V : IMPLEMENTASI DAN PENGUJIAN

Bab ini berisi implementasi perancangan, pengujian

komponen-komponen secara terpisah dan pengujian robot.

BAB VI : KESIMPULAN DAN SARAN

Bab ini berisi kesimpulan dan saran yang bermanfaat bagi

(16)

Dalam perancangan robot pemadam api digunakan mikrokontroler AT89C51

dan komponen pendukung seperti: sensor infra merah GP2D12, phototransistor

(sensor api), OP-AMP LM324N, motor dc, motor driver L293D, timer 555, dan

transistor 2PA773. Berikut penjelasannya.

II.1 Mikrokontroler AT89C51

AT89C51 merupakan mikrokontroler CMOS 8 bit dengan 4K bytes memori

flash, 128 byte RAM internal, 32 pin Input-Output, dua buah timer / counter 16 bit,

dan 6 sumber interupsi. Alasan pemilihan mikrokontroler ini sebagai komponen

utama robot pemadam api adalah sebagai berikut:

1. Mempunyai 32 pin I/O

2. Kompatibel dengan produk MCS-51 lainnya

3. Harga perunitnya murah dan masih tetap diproduksi

II.1.1 Susunan Pin AT89C51

(17)

Kegunaan setiap pin pada mikrokontroller AT89C51 dapat dilihat pada tabel

berikut.

Tabel 2.1 Keterangan pin out AT89C51

No. Pin Nama Pin Alternatif Keterangan

20 GND Ground

40 VCC Power supply

32 …39 P0.7…P0.0

D7…D0 dan A7…A0

Pada fungsi sebagai I/O biasa port ini dapat memberikan output sink ke delapan buah TTL input atau dapat diubah sebagai input dengan memberikan logika 1 pada port tersebut.

Pada fungsi sebagai low order multiplex address, data

port ini akan mempunyai internal pull up.

1…8 P1.0…P1.7

Port ini mempunyai internal pull up dan berfungsi

sebagai input dengan memberikan logika 1 sebagai output port ini dapat memberikan output sink keempat buah input TTL.

21…28 P2.0…P2.7 A8…A15

Port ini mempunyai internal pull up dan berfungsi

sebagai input dengan memberikan output sink keempat buah input TTL.

10...17 Port 3

Sebagai I/O biasa port 3 mempunyai sifat yang sama dengan port 1 maupun port 2. Sedangkan sebagai fungsi spesial, port – port ini mempunyai keterangan sebagai berikut : 10 11 12 13 14 15 16 17 P3.0 P3.1 P3.2 P3.3 P3.4 P3.5 P3.6 P3.7 RXD TXD 0 INT 1 INT T0 T1 WR RD

Port Serial Input. Port Serial Output. Port External Interupt 0. Port External Interupt 1. Port External Timer 0 input. Port External Timer 1 input.

External Data Memory WriteStrobe.

External Data Memory ReadStrobe.

9 RST Reset akan aktif dengan memberikan input high selama 2

cycle.

30 ALE PROG

Pin ini dapat berfungsi sebagai address latch enable

(ALE) yang me-latch low byte address pada saat

mengakses memori eksternal. ALE hanya akan aktif pada saat mengakses memori eksternal (Movx & Movc).

29 PSEN

Pin ini berfungsi pada saat mengeksekusi program yang terletak pada memori eksternal. PSEN akan aktif dua

kali setiap cycle.

31 EA VPP Pin ini akan berfungsi untuk menjalankan program yang ada pada memori internal pada kondisi

High.

19 XTAL 1 Input osilator.

(18)

II.1.2 Struktur Perangkat Keras AT89C51

AT89C51 adalah mikrokontroler keluaran Atmel dengan 4 kbyte Flash

PEROM (Programmable and Erasable Read Only Memory). AT89C51 merupakan

memori dengan teknologi nonvolatile memory, isi memori tersebut dapat diisi ulang

atau dihapus berkali-kali. Memori ini bisa digunakan untuk menyimpan instruksi

(perintah) berstandar MCS-51 code sehingga memungkinkan mikrokontroler ini

untuk bekerja dalam mode single chip operation yang tidak memerlukan memori

eksternal untuk menyimpan source code tersebut. Gambar 2.2 menunjukkan blok

diagram pada Mikrokontroler AT89C51.

AT89C51 mempunyai struktur memori yang terdiri atas :

1. RAM Internal

Memori sebesar 128 byte yang biasanya digunakan untuk menyimpan variabel atau

(19)

Gambar 2.2 Arsitektur AT89C51

2. Special Function Register (Register fungsi khusus)

Memori ini berisi register-register yang mempunyai fungsi-fungsi khusus

yang disediakan oleh mikrokontroler tersebut, seperti timer, serial, dan lain-lain.

3. Flash PEROM

Memori ini digunakan untuk menyimpan instruksi-instruksi MCS51.

AT89C51 mempunyai struktur memori yang terpisah antara RAM Internal

dan Flash PEROM-nya. RAM Internal dialamati oleh RAM Address Register

(Register Alamat RAM), sedangkan Flash PEROM yang menyimpan

perintah-perintah MCS-51 dialamati oleh Program Address Register (Program Register

(20)

Internal dan Flash PEROM mempunyai alamat awal yang sama yaitu alamat 00,

namun secara fisiknya kedua memori tersebut tidak saling berhubungan.

II.1.2.1 RAM Internal

RAM internal terdiri atas :

1. Register Banks

AT89C51 mempunyai 8 buah register yang terdiri atas R0 hingga R7.

Kedelapan buah register ini selalu terletak pada alamat 00H hingga 07H pada setiap

kali sistem direset. Namun posisi R0 hingga R7 dapat dipindah ke bank 1 (08 hingga

0FH), bank 2 (10H hingga 17H) atau bank 3 (18H hingga 1FH) dengan mengatur bit

RS0 dan RS1.

2. Bit Addressable RAM

RAM pada alamat 20H hingga 2FH dapat diakses secara pengalamatan bit

(bit addressable) sehingga hanya dengan sebuah instruksi saja setiap bit dalam area

ini dapat di-set, di-clear, di-AND dan di-OR.

Dalam aplikasinya, lokasi yang dapat diakses dengan pengalamatan bit ini dapat

juga digunakan untuk menandai suatu lokasi bit tertentu, baik berupa Register Fungsi

Khusus yang dapat dialamati secara bit (termasuk register I/O), ataupun lokasi –

lokasi tertentu yang dapat dialamati secara bit.

3. RAM Keperluan Umum

RAM Keperluan Umum dimulai dari alamat 30H sampai 7FH dan dapat

diakses dengan pengalamatan langsung maupun tak langsung. Pengalamatan

langsung dilakukan ketika salah satu operand merupakan bilangan yang

menunjukkan lokasi yang dialamati.

Sedangkan pengalamatan secara tak langsung pada lokasi dari RAM Internal

(21)

Register R0 atau R1. R0 dan R1 adalah dua buah register pada mikrokontroler

berarsitektur MCS51 yang dapat digunakan sebagai pointer dari sebuah lokasi

memori pada RAM Internal. Pengalamatan secara tak langsung biasa digunakan

untuk mengakses beberapa lokasi memori dengan letak yang beraturan.

II.1.2.2 Register Fungsi Khusus

AT89C51 mempunyai 21 Special Function Register (Register Fungsi

Khusus) yang terletak pada antara alamat 80H hingga FFH seperti gambar 2.3.

Beberapa dari register-register ini juga mampu dialamati dengan pengalamatan bit

sehingga dapat dioperasikan seperti yang ada pada RAM yang lokasinya dapat

dialamati dengan pengalamatan bit. Gambar 2.3 menunjukkan susunan Special

(22)

Byte Byte

Address Bit address Address Bit address

FF 7F

F0 F7 F6 F5 F4 F3 F2 F1 F0 B

E0 E7 E6 E5 E4 E3 E2 E1 E0 ACC General Purpose RAM

( GPR )

D0 D7 D6 D5 D4 D3 D2 D1 D0 PSW

B8 BF BE BD BC BB BA B9 B8 IP

30

B0 B7 B6 B5 B4 B3 B2 B1 B0 P3 2F 7F 7E 7D 7C 7B 7A 79 78

2E 77 76 75 74 73 72 71 70

A8 AF AE AD AC AB AA A9 A8 1E 2D 6F 6E 6D 6C 6B 6A 69 68

2C 67 66 65 64 63 62 61 60

A0 A7 A6 A5 A4 A3 A2 A1 A0 P2 2B 5F 5E 5D 5C 5B 5A 59 58

2A 57 56 55 54 53 52 51 50

99 Not bit addressable SBUF 29 4F 4E 4D 4C 4B 4A 49 48 98 9F 9E 9D 9C 9B 9A 99 98 SCON 28 47 46 45 44 43 42 41 40

27 3F 3E 3D 3C 3B 3A 39 38

90 97 96 95 94 93 92 91 90 P1 26 37 36 35 34 33 32 31 30

25 2F 2E 2D 2C 2B 2A 29 28

8D Not bit addressable TH1 24 27 26 25 24 23 22 21 20

8C Not bit addressable TH0 23 1F 1E 1D 1C 1B 1A 19 18

8B Not bit addressable TL1 22 17 16 15 14 13 12 11 10

8A Not bit addressable TL0 21 0F 0E 0D 0C 0B 0A 9 8

89 Not bit addressable TMOD 20 7 6 5 4 3 2 1 0

88 8F 8E 8D 8C 8B 8A 89 88 TCON 1F

87 Not bit addressable PCON B A N K 3

18

83 Not bit addressable DPH 17

82 Not bit addressable DPL B A N K 2

81 Not bit addressable SP 10

80 87 86 85 84 83 82 81 80 P0 0F

B A N K 1

8

7

B A N K 0

0 Default register R0 – R7

Gambar 2.3. Susunan SFR dan susunan RAM internal AT89C51

II.2 Sensor Infra Merah Sharp GP2D12

Dalam perancangan ini sensor Sharp GP2D12 digunakan pada sistem

navigasi robot agar mampu menghindari tabrakan dengan benda yang terdapat

didepannya dan mengikuti dinding yang terdapat disebelah kirinya. Sharp GP2D12

(23)

sensor ini terdapat pemancar dan penerima sinar infra merah. Beberapa fitur GP2D12

yang menjadi alasan pemilihan komponen ini adalah sebagai berikut:

• Outputnya analog

• Hampir tidak terpengaruh oleh warna benda yang dideteksi

• Pembacaan efektif 10 hingga 80 cm (lihat Gambar 2.5)

• Konsumsi arus rata-rata kecil, yaitu sebesar 33 mA

Gambar 2.4 Sensor jarak GP2D12 dan konfigurasi pinnya

Seperti yang terlihat pada Gambar 2.4 GP2D12 memiliki 3 pin: Vo, GND

dan Vcc. Vo adalah tegangan keluaran GP2D12 berdasarkan jarak benda yang

dibacanya. Berikut ini adalah tabel dan grafik karakteristik GP2D12

Tabel 2.2 Karakteristik GP2D12

Parameter Kondisi Nilai

minimum Nilai maksimum Satuan

Jarak yang diukur

( L) - 10 80 Cm

Tegangan

keluaran (Vo) L = 30 cm 0,25 0,55 V

Perbedaan tegangan keluaran ( Vo)

Perbedaan tegangan

keluaran pada L (80 cm – 10 cm)

1,75 2,25 V

Rata-rata

(24)

Gambar 2.5 Grafik karakteristik Output GP2D12 terhadap benda yang terdapat

dihadapannya

II.3 Phototransistor

Gambar 2.6 Phototransistor

Transitor merupakan sebuah piranti yang memungkinkan sebuah arus kecil

mengatur arus yang lebih besar. Pada phototransistor arus kecil itu berasal dari sinar

infra merah yang mengenai permukaannya. Semakin banyak sinar infra merah yang

mengenai permukaan phototransistor, maka arus yang dilewatkan akan semakin

besar. Karakteristik ini dapat dilihat pada Gambar 2.7 Karena kepekaannya terhadap

sinar infra merah dari api lilin dan harganya murah, dalam perancangan ini

(25)

Gambar 2.7 Grafik Karakteristik Phototransistor

II.4 OP-Amp LM324

Keluaran dari OP-AMP dipengaruhi oleh perbandingan antara kedua

masukannya (inverting dan non inverting). Apabila masukan inverting lebih besar

daripada masukan non inverting maka keluaran OP-AMP akan bernilai LOW.

Apabila masukan inverting lebih kecil daripada masukan non inverting maka

keluaran AMP akan bernilai HIGH. Dalam perancangan robot pemadam api,

OP-AMP yang digunakan adalah LM324. Alasan pemilihan LM324 adalah karena

beberapa karakteristiknya seperti:

• Hanya membutuhkan supply arus kecil: 375µA

• Rentang power supply yang lebar: +3V sampai +30V untuk catu daya tunggal

dan ± 1,5V sampai ± 15V untuk catu daya ganda

Dalam perancangan LM324 digunakan untuk mengubah keluaran dari sensor

(26)

LM324 terdiri dari empat buah OP-AMP yang terpisah, seperti yang terlihat pada

Gambar 2.8.

Gambar 2.8 Pin-pin dalam LM324

II.5 Motor dc dan motor-driver L293D II.5.1 Motor dc

Motor dc menerima masukan berupa arus searah. Pada perancangan ini

digunakan motor dc berukuran kecil yang disebut juga dinamo. Dinamo yang dipakai

adalah dinamo 5 Volt. Alasan pemilihannya adalah sebagai berikut:

• Ukurannya kecil dan ringan.

• Sumber tegangannya dapat berupa baterai kecil dan ringan sehingga

memudahkan dalam perancangan robot berukuran kecil.

• Arah putarannya dapat dengan mudah dibalikkan dengan cara membalikkan

kutub tegangan inputnya.

• Dapat dengan efisien dikendalikan pada tegangan 9V.

(27)

II.5.2 Motor driver L293D

Karena mikrokontroler tidak dapat memberikan arus yang cukup untuk

menggerakkan motor dc maka digunakan motor driver L293D. IC L293D dipakai

dalam perancangan ini karena L293D merupakan rangkaian H-Bridge yang

dirancang untuk memudahkan dalam memberikan arus dua arah hingga 1 A dengan

tegangan antara 4,5 volt hingga 36 volt kepada motor dc. IC L293D dapat digunakan

untuk men-drive motor dc half-bridge sebanyak empat buah atau dua motor dc

full-bridge. IC ini mempunyai empat pin input yang bersesuaian dengan empat pin

outputnya. Selain itu juga terdapat dua pin enable/disable untuk pin output 1,2 dan

pin output 3,4. Berikut ini adalah diagram bloknya.

Gambar 2.9 Diagram Blok IC L293D

II.6 Timer 555

Untuk mengendalikan kecepatan motor dc digunakan rangkaian duty cycle

(28)

atau osilasi yang akurat dan stabil. Alasan pemilihan LM555 sebagai komponen

utama pada rangkaian duty cycle modulation adalah sebagai berikut.

• Dapat mengatur duty cycle

• Dapat beroperasi pada mode astable dan monostable

• Dapat menghitung waktu dari mikro detik hingga berjam-jam

• Dapat menarik dan mengeluarkan arus listrik sebesar 200mA

Dalam mode operasi waktu tunda, lamanya waktu tunda dapat ditentukan

oleh sebuah resistor dan kapasitor eksternal. Sebagai osilator untuk operasi astable,

frekwensi dan duty cycle dikendalikan oleh dua resistor dan sebuah kapasitor

eksternal. Rangkaian dapat ditrigger atau direset pada saat pulsa clock turun, dan

rangkaian output dapat menarik atau mengeluarkan arus hingga 200mA atau

mengendalikan rangkaian TTL. Berikut konfigurasi pin LM555 beserta

kegunaannya.

1. GND

2. Trigger

3. Output

4. Reset

5. Control Voltage

6. Threshold

7. Discharge

8. +Vcc

(29)

Tabel 2.3Kegunaan pin-pin pada Timer 555

Pin Gambaran Kegunaan

1 Ground Dihubungkan ke ground

2 Trigger

Pin ini mencatu kapan memulai perhitungan waktu. Ketika nilainya LOW, pin output akan HIGH. Triger ini diaktifkan pada saat tegangan turun dan mencapai 1/3 dari tegangan positif pada pin 8.

3 Output

Pin output berguna untuk mengendalikan rangkaian eksternal. Pin ini mempunyai konfigurasi “totem pole”, yang membuatnya dapat mengeluarkan atau menarik arus. Pin Output akan bernilai HIGH saat pin trigger bernilai LOW dan akan bernilai LOW apabila pin treshold bernilai HIGH, atau jika pin reset bernilai LOW.

4 Reset Pin reset berguna untuk membuat pin output bernilai LOW. saat tidak digunakan, pin reset harus dihubungkan ke +V.

5 Control Voltage

Pin control voltage memungkinkan masukan dari tegangan eksternal untuk mempengaruhi perhitungan waktu timer 555. ketika tidak digunakan, pin ini harus dihubungkan ke kapasitor 0,01 uF dan ke ground.

6 Threshold Pin treshold akan membuat keluaran pin output bernilai LOW saat

tegangan pada pin ini dibawah 2/3 dari +V.

7 Discharge

Pin discharge akan terhubung ke ground ketika output pin bernilai HIGH. Pada umumnya pin ini digunakan untuk mengosongkan kapasitor selama asilasi.

8 +V Tegangan positif (3 - 18 Volt).

II.7 Transistor PN2222A

Dalam perancangan ini transistor digunakan sebagai saklar elektronik yang

akan menghidupkan dan mematikan kipas angin. Gambar 2.11 menunjukkan tiga

buah kaki transistor, yaitu basis, kolektor, dan emiter. Cara kerjanya adalah sebagai

berikut: apabila basis diberi logika HIGH, maka arus akan mengalir dari kolektor ke

emiter. Ketika basis diberi logika LOW, transistor akan tidak mengalirkan arus dari

kolektor ke emiter. Pada perancangan ini digunakan Transistor NPN tipe PN2222A

(30)
[image:30.612.161.456.248.532.2]
(31)

III.1 Spesifikasi Sistem

Dalam perancangan robot pemadam api mikrokontroler AT89C51 digunakan

sebagai komponen utama yang mengatur komponen lainnya seperti: sensor jarak

SHARP GP2D12, phototransistor (sensor api), motor dc, dan motor driver L293D.

Hardware robot dirancang agar mikrokontroler dapat menerima masukan dari sensor

jarak dan sensor api kemudian memutuskan pergerakan motor dc melalui H-bridge

L293D hingga fungsi robot untuk memadamkan api lilin yang terdapat disekitarnya

tercapai. Hardware robot dirancang sesuai diagram blok yang terdapat pada Gambar

[image:31.612.136.515.385.604.2]

3.1.

Gambar 3.1 Diagram Blok Perancangan Perangkat Keras

Mikrokontroler menerima sinyal masukan dari dua sumber, yaitu sensor api

(photo transistor) dan sensor jarak GP2D12. Agar mikrokontroler dapat membaca

(32)

L324N sebagai analog to digital converter. Swich digunakan untuk memberi

masukan pada mikrokontroler agar dapat menentukan mode robot, hal ini akan

dibahas lebih lanjut pada bab IV.

Berdasarkan masukan dari sensor jarak dan sensor api, mikrokontroler

menggerakkan tiga buah motor dc: motor dc penggerak roda kanan dan kiri serta

kipas angin. Dalam hal ini motor penggerak roda kanan dan kiri robot dikendalikan

melalui H-Bridge L293D, dan untuk mengendalikan kecepatannya digunakan

rangkaian Duty Cycle Modulation. Sedangkan kipas angin dikendalikan melalui

transistor 2PA733.

Berikut adalah penjelasan diagram blok pada Gambar 3.1 bagian demi

bagian.

III.2 Rangkaian Dasar Mikrokontroler AT89C51

Rangkaian sistem mikrokontroler AT89C51 berfungsi sebagai pusat kontrol

yang membaca sensor untuk menentukan keluaran yang berupa sinyal kontrol yang

mengendalikan motor dc. Untuk membuat sistem mikrokontroler bekerja, dibutuhkan

komponen-komponen tambahan. Untuk mereset mikrokontroler secara otomatis

setiap kali catu daya dinyalakan digunakan rangkaian reset. Dan sebagai penggerak

osilator internal digunakan rangkaian clock yang terdiri dari sebuah kristal dan dua

buah kapasitor. Berikut akan dijelaskan rangkaian reset dan rangkaian clock secara

khusus.

III.2.1 Rangkaian Reset

Rangkaian reset diperlukan untuk mereset mikrokontroler secara otomatis

(33)

perintah program yang dieksekusi dimulai pada alamat 0h. Ketika catu daya

diaktifkan, rangkaian reset menahan logika tinggi pin RST dengan jangka waktu

yang ditentukan oleh lamanya pengisian muatan C. Jika pin RST diberi logika high

selama dua siklus mesin maka mikrokontroler akan direset. Satu siklus mesin

(

osc f.

12

) membutuhkan waktu 1,085 µs, sehingga untuk mereset mikrokontroler

dibutuhkan waktu minimal 2,17 µs. Tegangan RST yang diijinkan sebesar 0,7 Vcc

hingga Vcc + 0,5. Jika tegangan RST minimal 3,5 V maka tegangan pada kapasitor

maksimal 1,5 V untuk dapat me-reset mikrokontroler. Rangkaian reset dibentuk

dengan rangkaian RC yang dapat dilihat dalam Gambar 3.2

[image:33.612.151.456.307.496.2]

vcc RST GND +vcc C R

Gambar 3.2 Rangkaian Reset(A) dan Rangkaian Setaranya(B)

Dari rangkaian setara diperoleh:

Vo = Vi

sC R R . 1 + (3.1)

Vo = Vi

sCR sCR

. 1

+ (3.2)

dengan tegangan Vi adalah Vcc yaitu 5V, dalam fungsi Laplace adalah

s

5

(34)

Vo = + = + = + RC s sCR CR sCR sCR s 1 1 . 5 1 . 5 1 . 5

Vo = 5.eRC tRC t e Vo = 5 ln RC t Vo = 5

t = RC

Vo

5

ln (3.3)

dengan Vo adalah tegangan logika nominal yang diijinkan pin RST di mana

Vo = 0,7 x Vcc = 0,7 x 5 volt = 3,5 volt

sehingga

t = RC 5 , 3

5 ln

t = 0,357.R.C (3.4)

dengan menggunakan pemisalan R = 10K dan t minimum adalah 2 µs maka untuk

amannya dimisalkan = 4 µs maka:

4.10−6

= 0,357 x 10 K x C

C = 1.1nF

telah memenuhi syarat minimal untuk dapat me-reset mikrokontroler AT89C51.

III.2.2 Rangkaian Clock

Kecepatan proses kerja mikrokontroler ditentukan oleh sumber clock

(pewaktuan) yang mengendalikan mikrokontroler tersebut. AT89C51 telah

(35)

clock. Untuk menentukan frekuensi osilatornya digunakan kristal yang dihubungkan

ke pin XTAL 1 dan pin XTAL 2, serta menghubungkan pin tersebut dengan

kapasitor yang dihubungkan ke ground. Besar kapasitansi kapasitor disesuaikan

dengan spesifikasi pada datasheet AT89C51, yaitu sebesar 30pF ± 10pF. Karena

kapasitor 30pF tidak tersedia dipasaran, maka digunakan kapasitor 33pF.

Pemilihan besar frekuensi disesuaikan dengan kebutuhan. Untuk

mempermudah perhitungan maka digunakan kristal 12MHz. Penggunaan kristal

12MHz akan mengakibatkan satu siklus mesin (12 periode) paling lama dapat

dikerjakan dalam waktu 1 s atau s

MHz 12 1µ

12 1

=

× . Rangkaian clock dalam

[image:35.612.142.497.282.547.2]

perancangan ini ditunjukkan dalam Gambar 3.3.

Gambar 3.3 Rangkaian clock

III.2.3 Hubungan Port-port

Mikrokontroler AT89C51 mempunyai empat buah port I/O yang dapat

digunakan. Dalam perancangan sistem mikrokontroler ini pin-pin I/O digunakan

adalah sebagai berikut:

1. Pin 0.0 – Pin 0.4 digunakan sebagai penerima masukan dari

(36)

2. Pin 1.0 – Pin 1.3 digunakan sebagai penerima masukan dari sensor

jarak GP2D12.

3. Pin 2.0 – Pin 2.4 digunakan sebagai pengendali motor driver L293D.

Dan Pin 2.5 sebagai pengendali kipas angin.

4. Pin 1.4 dihubungkan ke saklar yang menentukan robot bekerja dalam

mode jelajah atau dalam mode ruangan.

5. Pin 3.0 dan Pin 3.7 dan pin 1.5 digunakan untuk menyalakan dan

memadamkan LED indikator.

Hubungan pin-pin mikrokontroler ditunjukkan pada Gambar 3.4.

! ∀# ∃%

& %∋

( & )∗

( & )∗

( & )∗

( & )∗

( & )∗

( & )∗

( & )∗

( & )∗ ( & )∗

[image:36.612.138.514.305.658.2]

+ ,,

(37)

Pada rangkaian di atas, karena port 0 bersifat open drain, maka ketika

mengeluarkan logika ‘0’ maka akan terbaca sebagai logika ambang. Untuk itu

dibutuhkan resistor pull up agar bisa memberikan logika ‘0’. Ketika memberikan

logika ‘0’ maka tegangan keluaran (VOL) seharusnya adalah 0,5 V. Karena arus yang

dibutuhkan ketika logika ‘0’ (IOL) adalah 3,2 mA dan catu daya yang digunakan

(Vcc) adalah 5V, maka nilai R pull up yang dibutuhkan adalah:

OL OL up pull I V Vcc

R _ = − (3.5)

mA V V Rpull up

2 , 3 5 , 0 5 _ − = Ω ≈ Ω = k

Rpull_up 1406,25 1,5

III.3 Rangkaian Sensor Jarak

Dalam perancangan ini dibutuhkan empat buah sensor GP2D12. Sensor jarak

GP2D12 memiliki tiga buah pin keluaran: Vo (tegangan keluaran), Vcc dan GND.

Pin Vcc dihubungkan dengan sumber tegangan 5V. Pin GND dihubungkan ke

ground, dan Vo keempat sensor jarak dihubungkan ke pin 1.0 – pin 1.3 pada

mikrokontroler AT89C51 melalui rangkaian pembanding. Gambar 3.5 dan Gambar

[image:37.612.163.454.237.402.2]

3.6 berikut menunjukkan hubungan pin-pin GP2D12 dan posisinya pada badan robot.

(38)
[image:38.612.168.472.74.357.2]

Gambar 3.6 Peletakan Sensor GP2D12 pada Badan Robot

Keuntungan yang diperoleh dari penyusunan phototransistor seperti Gambar

3.6 adalah robot dapat menghindari tabrakan dengan benda di depan, di depan kiri

dan didepan kanan serta mengikuti dinding yang terdapat disebelah kiri dengan

hanya menggunakan empat buah sensor jarak.

III.4 Rangkaian Sensor Api

Rangkaian sensor api berfungsi untuk memberitahu mikrokontroler apabila

ada api yang terdeteksi disekitar robot. Komponen utama dari rangkaian ini adalah

phototransistor. Apabila api lilin terdeteksi, phototransistor akan mengalirkan arus

dari Vcc ke ground sehingga tegangan outputnya akan LOW. Output rangkaian

sensor api dihubungkan ke rangkaian pembanding. Berikut adalah rangkaian

(39)
[image:39.612.229.417.80.209.2]

Gambar 3.7 Rangkaian Sensor Api

Keluaran rangkaian akan menjadi masukan pada rangkaian pembanding.

Rangkaian pembanding dapat menerima masukan dengan tegangan -0.3 V hingga

5,03 V dan arus maksimum 50 mA. Sedangkan arus maksimum yang dapat melewati

phototransistor tidak diketahui karena ketidaktersediaan datasheetnya. Resistor R

akan membatasi arus yang mengalir pada phototransistor dan rangkaian pembanding.

Supaya aman, nilai arus yang melewati phototransistor dibatasi hingga 0,5 mA.

Dengan demikian besar tahanan minimum yang dibutuhkan adalah sebagai berikut.

R I V = ×

mA V R

5 , 0

5

=

= k

R 10

Sebuah phototransistor dapat mendeteksi api lilin dalam sudut pandang 500.

Sehingga agar dapat mendeteksi api dalam 3600 dibutuhkan paling sedikit 8 buah

phototransistor yang masing-masing mendeteksi api dalam sudut 450. Hal ini dapat

(40)

%) )

∗ )∗

[image:40.612.249.405.76.242.2]

!

Gambar 3.8 Susunan Phototransistor pada badan robot

Keuntungan yang diperoleh dari penyusunan phototransistor seperti Gambar

3.9 adalah keberadaan api dapat langsung diketahui sekaligus dengan posisinya

terhadap robot. Dengan demikian robot dapat berputar kearah lilin. Untuk

menyederhanakan pemrograman, kedelapan phototransistor itu dibagi dalam empat

kelompok. Yaitu dengan cara menyatukan keluaran phototransistor 1, 2, dan 3 serta

transistor 6, 7, dan 8. Hasilnya diperlihatkan pada Gambar 3.9. Keempat kelompok

itu adalah A, B, C, dan D.

Gambar 3.9 Hasil Penggabungan Beberapa Phototransistor

Posisi phototransistor seperti pada gambar diatas membuat robot dapat

[image:40.612.140.435.431.641.2]
(41)

api lilin itu, diperlukan sebuah phototransistor lagi (phototransistor C) yang

[image:41.612.207.424.134.300.2]

mengarah tepat kedepan robot seperti yang ditunjukkan pada Gambar 3.10.

Gambar 3.10 Susunan 9 Phototransistor pada Badan Robot

Gambar 3.10 menunjukkan bahwa antara phototransistor B dan D terdapat

celah sempit. Celah sempit ini adalah garis yang akan diikuti robot untuk mendekati

lilin. Hal ini akan dibahas lebih lanjut pada BAB IV.

III.5 Rangkaian Pembanding Tegangan

Pembanding tegangan berfungsi untuk membandingkan tegangan masukan,

dalam hal ini sinyal dari sensor jarak dan sensor api. Pembanding tegangan dalam

perancangan ini menggunakan penguat operasional LM324N.

III.5.1 Rangkaian Pembanding Untuk Sensor Api

Sinyal dari sensor sensor api dijadikan masukan bagi pembanding dengan

menghubungkannya ke masukan inverting IC LM324N. Saat tegangan masukan

pembanding berada di atas tegangan referensi, maka keluaran pembanding adalah

LOW (0V). Sebaliknya jika tegangan masukan pembanding di bawah tegangan

referensi, maka keluaran pembanding adalah HIGH (5V). Mikrokontroler akan

(42)

Tegangan referensi diperoleh dengan memanfaatkan potensiometer sebagai

pembagi tegangan. Karena arus input maksimum LM324 adalah 50mA dan agar

lebih aman arus dibatasi hingga 5mA, maka nilai potensiometer minimum yang

dibutuhkan adalah sebagai berikut.

R I V = ×

mA V R

5 5

=

= k

R 1

Rangkaian pembanding untuk sensor api ditunjukkan dalam Gambar 3.11 di

[image:42.612.137.480.301.476.2]

bawah ini.

Gambar 3.11 Rangkaian Pembanding Tegangan Untuk Sensor Api

Gambar 3.12 menunjukkan rangkaian pembanding untuk sensor api

(43)

Gambar 3.12 Rangkaian Pembanding Tegangan Untuk Sensor Api

Menggunakan LM324N

III.5.2 Rangkaian Pembanding Untuk Sensor Jarak

Rangkaian pembanding untuk sensor jarak memiliki sedikit perbedaan

dengan rangkaian pembanding sebelumnya. Rangkaian ini disusun untuk

menghasilkan sinyal keluaran LM324N yang stabil sehingga dapat dibaca

mikrokontroler dengan baik. Pada rangkaian ini keluaran dari sensor jarak GP2D12

dihubungkan ke masukan non inverting IC LM324N. Sehingga saat tegangan

masukan pembanding berada di atas tegangan referensi, maka keluaran pembanding

adalah HIGH (5V). Sebaliknya jika tegangan masukan pembanding di bawah

tegangan referensi, maka keluaran pembanding adalah LOW (0V). Mikrokontroler

akan membaca sinyal LOW itu sebagai tanda bahwa ada benda yang terdeteksi.

Rangkaian pembanding untuk sensor jarak ditunjukkan dalam Gambar 3.13 pada

[image:43.612.188.468.83.274.2]
(44)
[image:44.612.163.491.80.236.2]

Gambar 3.13Rangkaian Pembanding Untuk Sensor Jarak

Rangkaian pembanding untuk sensor jarak mempunyai konfigurasi schmitt

trigger untuk menghilangkan derau pada keluarannya. Untuk menghitung besar

treshold digunakan rumus:

sat V R R T 2 1

= (3.6)

Dimisalkan R1 = 100k Ohm dan R2 = 1 M Ohm dan Vsat = 5V, maka

V T 5 10 10 100 6 3 Ω Ω × = V T 5 10 10 100 6 3 Ω Ω × = V T =0.5

Pada gambar di halaman berikutnya digunakan dua buah potensiometer.

Sebuah digunakan untuk mengatur kepekaan sensor jarak bagian belakang (A dan D)

dan satu lagi digunakan untuk mengatur kepekaan sensor jarak bagian depan (B dan

C). Gambar 3.14 menunjukkan rangkaian pembanding untuk sensor api

(45)

Gambar 3.14 Rangkaian Pembanding Tegangan Untuk Sensor Jarak

Menggunakan LM324N

III.6 Rangkaian Motor dc

Rangkaian motor dc dirancang dengan menggunakan IC L293D karena

mikrokontroler tidak mampu men-drive beban induktif seperti motor dc secara

langsung. Hai ini disebabkan pin keluaran dari mikrokontroler tidak mampu memberi

arus yang cukup untuk motor dc. Input L293D berasal dari mikrokontroler dan pada

Gambar 3.15 terlihat bahwa keluarannya yang bersesuaian dihubungkan dengan

motor dc, dimana pin output 1 dan pin output 2 dihubungkan ke motor kiri,

[image:45.612.161.491.82.331.2]
(46)

Gambar 3.15 Rangkaian motor dc

IC L293D memiliki 2 pin enable. Pin enable 1 untuk mengaktifkan pin output

1 dan 2, sedangkan pin enable 2 digunakan untuk mengaktifkan pin output 3 dan 4.

kedua pin enable ini dipararelkan dan dihubungkan ke rangkaian Duty Cycle

Modulation, agar kecepatan motor dc dapat diatur.

Besarnya tegangan yang diberikan oleh L293D ke motor sama dengan besar

tegangan yang diberikan pada pin Vs (Vcc2) yaitu sebesar 9 volt. Sedangkan pin Vss

(Vcc1) digunakan sebagai sumber tegangan IC L293D.

Untuk mengendalikan arah putaran motor, pin input 1 - 4 pada L293D

dihubungkan ke pin 2.0 – pin 2.3 pada mikrokontroler AT89C51. Arah putaran

motor kiri ditentukan oleh pin input 1 dan 2, sedangkan arah putaran motor kanan

ditukan oleh pin input 3 dan 4. Tabel 3.1 berikut menunjukkan hubungan pin enable,

[image:46.612.156.508.92.350.2]
(47)
[image:47.612.144.512.109.202.2]

Tabel 3.1 Hubungan pin enable, input dan output IC L293D

Enable

1 dan 2 Input 1 Input 2 Output 1 Output 2 Gerakan Motor

0 x x 0 0 Diam

1 0 0 0 0 Diam

1 0 1 0 1 Berputar ke kanan

1 1 0 1 0 Berputar ke kiri

1 1 1 1 1 Diam

III.7 Rangkaian Duty Cycle Modulation

Rangkaian Duty Cycle Modulation digunakan untuk mengendalikan

kecepatan motor dc. Cara kerjanya adalah dengan mengirim sinyal yang meng-ON

dan meng-OFF-kan motor driver L293D dengan frekwensi tertentu. Waktu ON dan

OFF ini dikenal sebagai “duty cycle“. Gambar berikut menunjukkan bentuk

gelombang dengan frekwensi duty cycle 10%, 50% dan 90%.

Gambar 3.16 Gelombang Dengan Frekwensi Duty Cycle 10%, 50% dan 90%

Dapat dilihat bahwa pada duty cycle 10% sinyal akan HIGH selama 10% dari

panjang gelombang dan LOW pada 90% dari penjang gelombang berikutnya. Sinyal

ini akan dikirimkan ke motor driver L293D dengan frekwensi yang cukup tinggi

sehingga pulsa itu tidak berpengaruh pada kestabilan putaran motor. Hasil akhir dari

Duty Cycle Modulation adalah pengendalian kecepatan motor dc secara stabil dan

efisien. Berikut adalah gambar rangkaian Duty Cycle Modulation sederhana dengan

[image:47.612.156.452.361.523.2]
(48)
[image:48.612.161.495.82.244.2]

Gambar 3.17 Rangkaian Duty Cycle Modulation

Pada gambar diatas timer 555 difungsikan sebagai osilator astable. Artinya

pada saat di-ON-kan, timer 555 akan terus berosilasi tanpa ada interupsi dari luar.

Dapat dilihat bahwa Pin reset (pin 4) dihubungkan ke +V, sehingga tidak

mempengaruhi operasi rangkaian. Pin discharge dihubungkan ke resistor pull up R2

agar dapat men-drive driver motor dc L293D. Besar tahanan R2 ditentukan oleh arus

yang dibutuhkan oleh pin enable/disable L293D sehingga berlogika HIGH, yaitu

sebesar 5 mA. Dengan demikian besar tahanan yang dibutuhkan adalah sebagai

berikut.

R I V = ×

mA V R

5 5

=

= k

R 10

Cara kerja rangkaian adalah seperti berikut. Pada saat rangkaian di-ON-kan,

pin trigger (pin 2) akan LOW karena kapasitor C1 dikosongkan. Hal ini akan

memulai osilasi dan membuat pin output (pin 3) HIGH. Ketika pin output HIGH,

kapasitor C1 akan diisi kembali sesuai dengan bagian bawah R1 dan dioda D2.

(49)

Akibatnya output (pin 3) dan pin discharge (pin 7) bernilai LOW. Ketika pin output

bernilai LOW, kapasitor C1 diisi melalui bagian atas R1 dan D1. Ketika tegangan

pada C1 turun hingga dibawah 1/3 dari +V, pin output dan pin discharge akan

bernilai HIGH, dan siklus akan berulang.

Pin 5 tidak digunakan sebagai input tegangan luar, sehingga di bypass ke

ground melalui kapasitor 0,10 uF. Kapasitor C1 dikosongkan melalui satu sisi dari

R1 dan diisi melalui sisi R1 yang lain. Jumlah tahanan pengosongan dan pengisian

selalu sama, sehingga panjang gelombang yang dihasilkan selalu sama. R1 hanya

memvariasikan duty cycle. Frekwensi Duty Cycle dari rangkaian ini bergantung pada

nilai R1 dan C1. Sesuai dengan rumus:

1 * 1 44 , 1 C R

Frekwensi= (3.7)

Dengan R1 sebesar 100 k dan C1 sebesar 0.1 µF, maka:

6 3 10 1 , 0 10 100 44 , 1 − × × × = Frekwensi Hz Frekwensi=144

Diperoleh frekwensi pada rangkaian ini adalah 144 Hz. Pin output digunakan

untuk mengisi dan mengosongkan C1, dari pada pin discharge (pin 7). Hal ini

dilakukan karena pin output mempunyai konfigurasi totem pole. Ia dapat

mengeluarkan dan menarik arus, sementara pin discharge hanya dapat menarik arus.

Dengan catatan bahwa pin output dan pin discharge bernilai HIGH dan LOW pada

waktu yang bersamaan.

III.8 Rangkaian Saklar

Rangakaian saklar yang terhubung ke pin 1.4 adalah seperti Gambar 3.18

(50)

Ohm. Apabila saklar terbuka Pin 3.2 akan berlogika LOW apabila saklar ditutup

[image:50.612.156.450.366.532.2]

Pin3.2 akan berlogika HIGH.

Gambar 3.18 Rangkaian Saklar

Pada saat saklar terbuka Pin 3.2 akan berlogika HIGH dan ketika saklar

ditutup pin 3.2 akan berlogika LOW. Tahanan R berfungsi untuk membatasi arus

yang mengalir ke mikrokontroler agar mikrokontroler tidak terbakar. Nilai arus

dibatasi sehingga nilai maksimumnya 0,5 mA.

R I V = ×

mA V R

5 , 0

5

=

= k

R 10

III.9 Rangkaian Kipas Angin

Kipas angin yang berupa motor dc digunakan sebagai piranti yang akan

memadamkan api. Motor dc mempunyai dua buah kutub, kutub positif dan kutub

negatif. Kutub positif motot dc dihubungkan ke catu daya 5V sedangkan kutub

negatifnya dihubungkan ke emiter transistor. Basis transistor dihubungkan ke pin 2.4

pada mikrokontroler AT89C51, sedangkan kolektornya dihubungkan ke ground.

(51)

Karena motor dc mempunyai hambatan dalam 10kOhm, maka arus yang akan

melewati transistor adalah sebesar:

R I V = ×

Ω =

10 5V I

A I =0,5

Dengan demikian, transistor yang dipasang harus mampu melewatkan arus lebih dari

0,5 A. Pada perancangan ini transistor PN2222A yang dipakai dapat melewatkan

arus hingga 1A.

Sebuah dioda dipasang pararel dengan motor dc dan berlawanan arah dengan

arah arus yang mengalir didalam motor untuk menghilangkan arus induksi yang

[image:51.612.158.452.370.526.2]

dihasilkan. Gambar 3.19 berikut menunjukkan rangkaian kipas angin.

Gambar 3.19 Rangkaian Kipas Angin

III.10 Rangkaian LED Indikator

LED indikator adalah LED yang menunjukkan pembacaan sensor. Apabila

sensor yang bersesuaian mendeteksi keberadaan api atau benda disekeliling robot,

(52)

buah sensor jarak, maka terdapat sembilan buah LED status. Gambar 3.20

[image:52.612.161.455.342.495.2]

menunjukkan rangkaian LED indikator.

Gambar 3.20 Rangkaian LED Indikator

LED dapat dinyalakan dengan cara membuat pin mikrokontroler yang

terhubung dengannya bernilai LOW. Resistor digunakan untuk membatasi arus yang

mengalir ke mikrokontroler. Agar LED tidak rusak, maka arus yang mengalir

melaluinya harus dibatasi agar tidak lebih dari 20 mA. Agar lebih aman arus dibatasi

hingga 10 mA. Sehingga nilai resistor yang dibutuhkan adalah:

R I V = ×

A V

R 3

10 10

5 −

× =

Ω =500

R

III.11 Rangkaian Robot Pemadam Api

Rangkaian robot pemadam api adalah rangkaian hasil penggabungan semua

rangkaian yang dijelaskan diatas. Rangkaian ini membutuhkan sebuah

mikrokontroler AT89C51, sebuah motor driver L293D, tiga OP-AMP LM324N,

sebuah Timer 555, sembilan sensor api (photo transistor) empat sensor jarak SHARP

GP2D12, tiga motor dc dan komponen lainnya. Rangkaian robot pemadam api

(53)

Perancangan perangkat lunak dalam sistem ini bertujuan agar mikrokontroler

AT89C51 dapat mengontrol proses pendeteksian benda disekitar robot, keberadaan api

lilin dan mengendalikan ketiga motor dc sehingga robot dapat melakukan tugas mencari

dan memadamkan api lilin dengan baik. Software ini ditulis dalam bahasa assembly dan

akan ditanamkan pada mikrokontroler AT89C51. Software yang digunakan sebagai

assembler untuk menghasilkan file HEX dari bahasa assembly yang digunakan adalah

8051 Editor, Assembler, Simulator (IDE) Evaluation Vertion 1.20 dari AceBus.

IV.1 Perangkat Lunak Secara Garis Besar

Perancangan perangkat lunak robot pemadam api dilakukan dengan metode

poling. Dengan demikian mikrokontroler akan memeriksa pembacaan sensor jarak dan

sensor api lalu memutuskan pergerakan robot. Hal ini dapat dilihat dari souce codenya

yang terdapat pada

Lampiran B

. Secara sederhana program dapat dijelaskan melalui

diagram alir yang terdapat pada

Gambar 4.1

Ketika tombol power di-ON-kan, robot

akan bekerja dan mikrokontroler akan direset sehingga program akan mulai dijalankan

dari alamat 0h. Kemudian mikrokontroler akan memberi nilai awal pada setiap port I/O.

Setelah itu keluaran setiap sensor dibaca dan LED indikator yang bersesuaian dengan

sensor yang mendeteksi keberadaan api atau benda dinyalakan. LED indikator ini

(54)
[image:54.612.161.480.75.510.2]

Gambar 4.1

Diagram Alir Perangkat Lunak

Dari gambar diatas dapat dilihat bahwa bagian jelajah menjadi prioritas utama.

Hanya jika ada api lilin yang terdeteksi dan tidak ada benda didepan robot, program

jump ke bagian penemuan_api. Bagian jelajah dibagi dua, yaitu mode ruangan dan

mode lapangan. Kedua mode ini diatur dengan meng-ON/OFF-kan saklar yang

terhubung dengan pin 1.4 pada mikrokontroler AT89C51. Sesuai dengan namanya mode

(55)

untuk menemukan api. Pada mode ruangan robot akan menelusuri dinding yang terdapat

di sebelah kirinya. Sedangkan dalam mode lapangan, robot akan bergerak maju dan

menghindari tabrakan dengan benda lain yang terdapat didepannya.

Apabila robot mendeteksi api lilin dan tidak mendeteksi ada benda didepannya,

maka robot akan mendekati api lilin itu hingga jarak tertentu dimana lilin dapat

dipadamkan dengan menghidupkan kipas angin. Robot akan mengasumsikan bahwa api

lilin telah padam ketika tidak mendeteksi keberadaannya lagi. Ketika hal itu terjadi,

program akan jump ke bagian awal, demikian seterusnya hingga tombol power

di-OFF-kan kembali.

IV.2 Bagian Jelajah

Pada sub bab berikut akan dijelaskan secara khusus bagian jelajah. Pada bagian

jelajah robot akan membaca keempat sensor jarak dan memutuskan pergerakan motor

kiri dan motor kanannya. Mikrokontroler akan mengetahui keberadaan benda

disekeliling robot ketika salah satu pin I/O yang terhubung ke rangkaian sensor jarak

bernilai LOW. Posisi masing-masing sensor jarak dapat dilihat pada

lampiran C

atau

pada

Gambar 3.7

. Karena ada empat buah sensor jarak, maka akan ditemukan

(56)
[image:56.612.143.509.107.438.2]

Tabel 4.1

Logika Pergerakan Robot Berdasarkan Pembacaan Sensor Jarak

Kondisi

C

B

A

D

Gerakan Robot

1

0

0

0

0

Balik Arah

2

0

0

0

1

Belok Kanan

3

0

0

1

0

Belok Kiri

4

0

0

1

1

5

0

1

0

0

6

0

1

0

1

7

0

1

1

0

8

0

1

1

1

Belok Kanan

9

1

0

0

0

10

1

0

0

1

11

1

0

1

0

12

1

0

1

1

Belok Kiri

13

1

1

0

0

14

1

1

0

1

Maju

15

1

1

1

0

16

1

1

1

1

Maju / Belok kiri *

*Maju pada mode lapangan dan belok kiri pada mode ruangan

Ide dasar dari penentuan gerakan robot berdasarkan pembacaan sensor jarak

adalah bagaimana agar robot dapat bergerak secara efektif menghindari tabrakan dengan

benda yang menghalangi jalannya dan bernavigasi didalam ruangan. Dari

Tabel 4.1

dapat dilihat bahwa pada bagian jelajah terdapat dua mode, yaitu mode ruangan dan

mode lapangan. Perbedan dari kedua mode ini hanya terdapat pada kondisi

limabelas

dan

enambelas

. Dimana pada mode lapangan robot akan terus maju apabila sensor B dan

C tidak mendeteksi benda. Sedangkan pada mode ruangan, robot akan berbelok terus

berbelok ke kiri apabila sensor pabila sensor B dan C tidak mendeteksi benda dan sensor

(57)

robot akan menjelajah ruangan dengan cara mengikuti dinding yang terdapat disebelah

kirinya.

Pada kondisi

tigabelas

dan

empatbelas

robot akan bergerak maju karena

terdeteksi benda disebelah kiri dan karena tidak terdeteksi adanya benda yang

menghalangi robot apabila gerakannya maju.

Pada kondisi

sembilan

hingga

duabelas

robot akan berbelok ke kiri karena sensor

B mendeteksi keberadaan benda di depan kanan robot, sehingga untuk menghindari

tabrakan dengan benda tersebut robot harus berbelok ke kiri. Dalam hal ini pembacaan

sensor A dan D diabaikan.

Pada kondisi

lima

hingga

delapan

robot akan berbelok ke kanan karena sensor

jarak C mendeteksi keberadaan benda di depan kanan robot, sehingga untuk

menghindari benda tersebut robot harus berbelok ke kanan. Dalam hal ini pembacaan

sensor A dan D juga diabaikan.

Pada kondisi

empat

robot berbelok ke kanan karena sensor B dan C mendeteksi

ada benda tepat didepan robot. Sehingga untuk menghindarinya robot harus berbelok ke

kanan atau kekiri. Dalam hal ini berbelok ke kanan dipilih agar robot dapat

memposisikan benda atau dinding itu disebelah kirinya. Hal ini akan menjadi penting

apabila robot berjalan dalam mode ruangan.

Pada kondisi

tiga

robot akan berbelok ke kiri karena sensor B, C dan D

mendeteksi ada benda tepat didepan dan dikanan robot. Sehingga untuk menghindarinya

(58)

Pada kondisi

dua

robot akan berbelok ke kanan karena sensor A, B dan C

mendeteksi keberadaan benda tepat di depan dan dikiri robot. Sehingga untuk

menghindarinya robot harus berbelok ke kanan.

Sedangkan pada kondisi

satu

semua sensor jarak mendeteksi keberadaan benda

di sekeliling robot. Sehingga untuk menghindarinya robot harus berbalik arah. Robot

berbalik arah dengan cara berbelok kanan hingga sensor B dan C tidak mendeteksi ada

benda tepat dihadapan robot.

Dengan demikian robot dapat menentukan setiap tindakan berdasarkan setiap

kemungkinan kondisi yang ada. Namun untuk menentukan tindakan apa yang akan

dilakukan, mikrokontroler tidak harus memeriksa pembacaan setiap sensor jarak, hal ini

[image:58.612.136.518.355.688.2]

dapat dilihat pada diagram alir pada

Gambar 4.2

.

(59)

Dari

Gambar 4.2

dapat dilihat bahwa urutan prioritas pemeriksaan sensor adalah

sensor C dan sensor B, setelah itu sensor A dan sensor D. Pembacaan sensor A dan D

diperiksa jika pembacaan sensor C dan B bernilai LOW (kondisi 1-4) dan jika kondisi

yang terjadi adalah kondisi limabelas atau enambelas.

IV.3 Bagian penemuan_api

Seperti yang telah dijelaskan pada sub bab III.3, robot pemadam api Phoenix

menggunakan sembilan buah phototransistor yang dibagi dalam 5 kelompok: A, B, C, D

dan E. Hal ini ditunjukkan oleh

Gambar 4.3.

Mikrokontroler akan mengetahui

keberadaan api lilin disekeliling robot ketika salah satu pin I/O yang terhubung ke

rangkaian sensor api bernilai HIGH. Karena terdapat lima kelompok phototransistor,

maka akan ditemukan tiga puluh dua kemungkinan kondisi.

Tabel 4.2

menunjukkan

(60)
[image:60.612.112.549.97.603.2]

Tabel 4.2

Logika Pergerakan Robot Berdasarkan Pembacaan Sensor Api

Depan

Depan

kiri

Depan

kanan

Kiri

Kanan

Kondisi

C

B

D

A

E

Gerakan Robot

1

0

0

0

0

0

Dilarang*

2

0

0

0

0

1

Belok kanan

3

0

0

0

1

0

4

0

0

0

1

1

Belok kiri

5

0

0

1

0

0

6

0

0

1

0

1

7

0

0

1

1

0

8

0

0

1

1

1

Belok kanan

9

0

1

0

0

0

10

0

1

0

0

1

11

0

1

0

1

0

12

0

1

0

1

1

13

0

1

1

0

0

14

0

1

1

0

1

15

0

1

1

1

0

16

0

1

1

1

1

Belok kiri

17

1

0

0

Gambar

Gambar 2.11 Transistor PN2222A
Gambar 3.1 Diagram Blok Perancangan Perangkat Keras
Gambar 3.2 Rangkaian Reset(A) dan Rangkaian Setaranya(B)
Gambar 3.3 Rangkaian clock
+7

Referensi

Dokumen terkait

Islam memandang perkawinan sebagai suatu peristiwa penting dalam kehidupan manusia serta merupakan sarana untuk mewujudkan rasa kasih sayang sesama manusia yang dari

Hipotesis yang diajukan pada penelitian ini adalah: terdapat perbedaan respon pemberian kalsium dan boron terhadap tingkat cemaran getah kuning pada buah manggis, serta

Semua dipanggil untuk menghayati keseluruhan ajaran dan nilai-nilai luhur perkawinan tanpa kecuali; semua pasangan suami-istri dipanggil kepada kesempurnaan hidup melalui

6 KAZALO TABEL IN SLIK TABELA 1: ZNAČILNOSTI INFORMACIJ GLEDE NA RAVEN ODLOČANJA 16 TABELA 2: SLOVENSKI ISKALNIKI POSLOVNIH INFORMACIJ 18 TABELA 3: TUJI ISKALNIKI POSLOVNIH

(3.28) Menimbang bahwa berdasarkan fakta persidangan, Pemohon telah mengajukan permohonan informasi (Surat P-1), keberatan (Surat P-2) serta permohonan penyelesaian

Jadi pH 6 ditetapkan sebagai pH optimum untuk adsorpsi logam Zn(II) oleh adsorben zeolit A dengan kapasitas adsorpsi sebesar 49,82 mg/g dan jumlah logam Zn(II) yang teradsorp

menggunakan beberapa pertanyaan untuk merinci lebih jauh masalah yang sedang dibahas dan secara perlahan mendorong kelompok untuk. menganalisis

Pada penelitian ini pola asuh orang tua yang baik dalam mendidik dan memberikan pola asuh yang baik terhadap anak atau remaja ditujukan pada item soal yang menunjukkan