BAB III PERANCANGAN DAN PEMBAHASAN ALAT

dokumen-dokumen yang mirip
BAB IV UJI COBA DAN ANALISA

BAB III PERANCANGAN SISTEM. Secara garis besar rangkaian pengendali peralatan elektronik dengan. blok rangkaian tampak seperti gambar berikut :

BAB III ANALISA DAN CARA KERJA RANGKAIAN

BAB III PERENCANAAN DAN REALISASI

Blok sistem mikrokontroler MCS-51 adalah sebagai berikut.

BAB II DASAR TEORI Arduino Mega 2560

BAB III PERANCANGAN ALAT. eletronis dan software kontroler. Konstruksi fisik line follower robot didesain

MIKROKONTROLER Arsitektur Mikrokontroler AT89S51

BAB III PERANCANGAN DAN PEMBUATAN ALAT

BAB 3 PERANCANGAN SISTEM. pada sistem pengendali lampu telah dijelaskan pada bab 2. Pada bab ini akan dijelaskan

BAB IV PROTOTYPE ROBOT TANGGA BERODA. beroda yang dapat menaiki tangga dengan metode pengangkatan beban pada roda

Memprogram Port sebagai Output dan Input Sederhana

BAB III ANALISIS DAN PERANCANGAN

BAB III PERANCANGAN DAN PEMBUATAN ALAT

BAB IV HASIL PENGUKURAN DAN PENGUJIAN ALAT SISTEM PENGONTROL BEBAN DAYA LISTRIK

BAB II TEORI DASAR 2.1 Pendahuluan 2.2 Sensor Clamp Putaran Mesin

BAB III PERANCANGAN ALAT

MIKROKONTROLER AT89S52

BAB III PERANCANGAN ALAT

BAB II TINJAUAN PUSTAKA

BAB III PERANCANGAN DAN CARA KERJA RANGKAIAN

BAB III PERANCANGAN. Perancangan tersebut mulai dari: spesifikasi alat, blok diagram sampai dengan

RANCANG BANGUN PENGAMAN MOBIL BERBASIS MIKROKONTROLER AT89S51 DENGAN APLIKASI TELEPON SELULER SEBAGAI INDIKATOR ALARM

BAB 2 LANDASAN TEORI

BAB III PERANCANGAN DAN REALISASI PERANGKAT KERAS DAN PERANGKAT LUNAK SISTEM. Dari diagram sistem dapat diuraikan metode kerja sistem secara global.

BAB I PENDAHULUAN 1.1 Latar Belakang 1.2 Rumusan Masalah

BAB III PERENCANAAN PERANGKAT KERAS DAN LUNAK

BAB III PERANCANGAN DAN PEMBUATAN ALAT

BAB 2 LANDASAN TEORI. Mikrokontroler AT89S52 termasuk kedalam keluarga MCS-51 merupakan suatu. dua macam memori yang sifatnya berbeda yaitu:

BAB III PERANCANGAN SISTEM

BAB III PERANCANGAN ALAT. dimmer atau terang redup lampu dan pengendalian pada on-off lampu. Remote

BAB III PERENCANAAN SISTEM DAN PEMBUATAN ALAT

BAB III PERANCANGAN SISTEM

Crane Hoist (Tampak Atas)

BAB III PERANCANGAN ALAT SIMULASI PEGENDALI LAMPU JARAK JAUH DAN DEKAT PADA KENDARAAN SECARA OTOMATIS

BAB III PERANCANGAN SISTEM

yaitu, rangkaian pemancar ultrasonik, rangkaian detektor, dan rangkaian kendali

ROBOT ULAR PENDETEKSI LOGAM BERBASIS MIKROKONTROLER

BAB III PERANCANGAN DAN PEMBUATAN PERANGKAT KERAS

BAB III METODE PENELITIAN

BAB III DESKRIPSI MASALAH

BAB III ANALISA SISTEM

PERTEMUAN PERANGKAT KERAS MIKROKONTROLER

BAB III ANALISIS DAN PERANCANGAN

BAB III PERANCANGAN SISTEM

BAB II LANDASAN TEORI. Dalam merancang sebuah peralatan yang cerdas, diperlukan suatu

BAB II LANDASAN TEORI

dan sensor warna sebagai masukan atau inpu, dan keluaran atau ou^u, ya 8 berupa respon dari Valve. Blok diagram sistem dapa, diliha, pada Gambar 3.

melibatkan mesin atau perangkat elektronik, sehingga pekerjaan manusia dapat dikerjakan dengan mudah tanpa harus membuang tenaga dan mempersingkat wak

BAB III PERANCANGAN SISTEM

BAB III PERENCANAAN DAN REALISASI SISTEM

BAB 3 PERANCANGAN SISTEM

3.2. Tempat Penelitian Penelitian dan pengujian alat dilakukan di lokasi permainan game PT. EMI (Elektronik Megaindo) Plaza Medan Fair.

BAB III PERANCANGAN SISTEM

BAB III PERANCANGAN SISTEM

BAB III PERANCANGAN PERANGKAT KERAS MOBILE-ROBOT

BAB III ANALISIS DAN DESAIN SISTEM

BAB IV ANALISA DAN PENGUJIAN ALAT

BAB II TINJAUAN PUSTAKA. Mikrokontroler, sebagai suatu terobosan teknologi mikrokontroler dan

ROBOT OMNI DIRECTIONAL STEERING BERBASIS MIKROKONTROLER. Muchamad Nur Hudi. Dyah Lestari

BAB III PERANCANGAN KECERDASAN-BUATAN ROBOT PENCARI JALUR

BAB III METODE PENELITIAN DAN PERANCANGAN SISTEM. Metode penelitian yang digunakan adalah studi kepustakaan dan

BAB 2 LANDASAN TEORI. Mikrokontroler, sebagai suatu terobosan teknologi mikrokontroler dan

BAB II KWH-METER ELEKTRONIK

BAB III ANALISIS DAN PERANCANGAN

DAFTAR ISI HALAMAN PENGESAHAN... ABSTRAKSI... KATA PENGANTAR... DAFTAR ISI... DAFTAR TABEL... DAFTAR GAMBAR... DAFTAR LAMPIRAN...

BAB IV PENGUJIAN DAN ANALISA DATA

DAFTAR ISI HALAMAN JUDUL... HALAMAN PENGESAHAN P EMBIMBING... HALAMAN PENGESAHAN P ENGUJI... HALAMAN PERSEMBAHAN... HALAMAN MOTTO... KATA PENGANTAR...

BAB II DASAR TEORI. open-source, diturunkan dari Wiring platform, dirancang untuk. memudahkan penggunaan elektronik dalam berbagai

BAB IV PENGUJIAN DAN ANALISA DATA

BAB III ANALISIS DAN DESAIN SISTEM

BAB III PERANCANGAN ALAT. Gambar 3.1 Diagram Blok Pengukur Kecepatan

BAB III METODE PENELITIAN

BAB IV PENGUKURAN DAN ANALISIS SISTEM. diharapkan dengan membandingkan hasil pengukuran dengan analisis. Selain itu,

III. METODE PENELITIAN. Penelitian tugas akhir ini dilaksanakan di Laboratorium Elektronika Dasar

TUGAS MATAKULIAH APLIKASI KOMPUTER DALAM SISTEM TENAGA LISTRIK FINAL REPORT : Pengendalian Motor DC menggunakan Komputer

BAB 2 TINJAUAN TEORITIS

BAB I PENDAHULUAN. Kendaraan bermotor pada masa kini didesain sedemikian rupa untuk lebih

BAB II TINJAUAN PUSTAKA

BAB III RANCANG BANGUN SISTEM KARAKTERISASI LED. Rancangan sistem karakterisasi LED diperlihatkan pada blok diagram Gambar

BAB III PERANCANGAN SISTEM

BAB III PERANCANGAN SISTEM

BAB III PERANCANGAN DAN PEMBUATAN ALAT

ANTAR MUKA DST-51 DENGAN MODUL AD-0809

BAB III PERANCANGAN Gambaran Alat

BAB 3 PERANCANGAN SISTEM. sensor ultrasonik sebagai pemancarnya. Sementara untuk modul receiver, jika

BAB 3 PERANCANGAN ALAT DAN PROGRAM

BAB III PERANCANGAN PERANGKAT KERAS DAN LUNAK

ARSITEKTUR MIKROKONTROLER AT89C51/52/55

BAB III ANALISIS DAN PERANCANGAN

BAB III PERANCANGAN ALAT

DAFTAR ISI. HALAMAN PENGESAHAN... i. KATA PENGANTAR... iii. DAFTAR ISI... v. DAFTAR TABEL... x. DAFTAR GAMBAR... xi. DAFTAR LAMPIRAN...

BAB III PERANCANGAN SISTEM

BAB III PERANCANGAN DAN PEMBUATAN ALAT

BAB 3 PERANCANGAN SISTEM

BAB III PERANCANGAN STAND ALONE RFID READER. Dalam penelitian ini, perancangan sistem meliputi :

BAB 2 LANDASAN TEORI. Agar kendaraan lebih teratur dan tidak terlalu padat, biasanya tempat perparkiran ini dibagi

Mikrokontroler 89C51 Bagian II :

BAB III PERANCANGAN DAN PEMBUATAN ALAT

BAB III PERANCANGAN DAN PEMBUATAN APLIKASI

Transkripsi:

BAB III PERANCANGAN DAN PEMBAHASAN ALAT III.1. Blok Sistem Robot Secara Umum SISTEM KONTROL AKTUATOR MEKANIK ROBOT SENSOR SISTEM & SISTEM RODA KAKI SISTEM TANGAN Untuk Navigasi Untuk Manipulasi (gerak berpindah) (gerak penanganan) Gambar 3.1. Diagram blok sistem robot secara umum Gambar diatas merupakan blok sistem robot secara umum dan orientasi fungsinya yang biasa kita jumpai dan berhubungan dengan Real World. Berikut adalah penjelasan dari blok rangkaian diatas : Sistem kontrol (control system) 32

Adalah rangkaian elektronik yang setidak-tidaknya terdiri dari rangkaian prosesor (CPU, memori, komponen interface Input / Output), signal conditioning untuk sensor (analog dan atau digital), serta driver untuk aktuator. Mekanik robot (mechanical robot) Adalah sistem mekanik yang dapat terdiri dari fungsi gerak. Jumlah fungsi gerak disebut sebagai derajat kebebasan atau degree of freedom (DOF). Sebuah sendi yang diwakili oleh sebuah gerak aktuator disebut sebagai satu DOF. Sensor Adalah perangkat atau komponen yang bertugas mendeteksi (hasil) gerakan atau fenomena lingkungan yang diperlukan oleh sistem kontroler. Dapat dibuat dari sistem yang paling sederhana seperti sensor inframerah, ultrasonic, saklar ON/OFF, dan sebagainya. Aktuator (actuator) Adalah perangkat elektromekanik yang menghasilkan daya gerakan. Terdiri dari tiga jenis, yaitu: 1. Electric actuator, yaitu perangkat menggunakan sistem motor listrik (motor DC, motor DC servo, maupun motor stepper. 2. Pneumatik actuator, yaitu perangkat yang menggunakan udara atau gas nitrogen. 3. Hydraulic actuator, yaitu perangkat yang menggunakan bahan cair seperti oli [12] Sistem roda 33

Adalah sistem mekanik yang dapat menggerakkan robot untuk berpindah posisi. Sistem kaki Pada dasarnya sistem kaki adalah gerakan roda yang didisain sedemikian rupa hingga memiliki kemampuan gerak seperti mahluk hidup. Robot berjalan dengan sistem dua kaki yang memiliki struktur kaki seperti manusia setidak-tidaknya mempunyai sendi-sendi yang mewakili pergelangan kaki, lutut, dan pinggul. Sistem tangan Adalah bagian atau anggota badan robot selain sistem roda atau kaki. Dalam konteks mobile robot, bagian tangan ini dikenal sebagai manipulator yaitu sistem gerak yang berfungsi untuk memanipulasi (memegang, mengambil, mengangkat, memindah atau mengolah) obyek. [4] III.2. Diagram Blok Rangkaian Dibawah ini adalah gambar blok rangkaian dari robot yang dibuat oleh penulis yang terdiri dari tiga proses, yaitu input (sensor), proses (mikrokontroler), dan output (motor DC). Blok Rangkaian Sensor INPUT 34

Ultrasonic Transmitter Halangan Ultrasonic Receiver Pengkondisian Sinyal Mikrokontroler AT89C52 PROSES Blok Rangkaian Motor DC Motor DC Driver motor DC OUTPUT Gambar 3.2. Diagram blok rangkaian Berdasarkan blok diagram diatas, sensor yang digunakan untuk mengenal keadaan lingkungan luar dimana robot ini akan beroperasi adalah sensor ultrasonic. Sensor ini akan bekerja dengan cara mendeteksi adanya halangan dari pergerakan robot mobile ini. Pendeteksian sinyal yang datang menggunakan prinsip pemantulan dari rangkaian transmitter ke rangkaian receiver dari sensor ultrasonic. Hasil pemantulan tersebut masih dalam bentuk sinyal analog. Sedangkan sinyal yang dibutuhkan oleh bagian processing dalam hal ini dilakukan oleh mikrokontroler adalah sinyal digital. Oleh karena itu maka pada output rangkaian receiver sensor ultrasonic dibuat rangkaian tambahan lagi berupa rangkaian transistor yang dalam rangkaian ini memiliki fungsi sebagai saklar. 35

Output dari rangkaian transistor sebagai saklar ini sudah dalam bentuk digital, yaitu berupa kondisi HIGH (1) atau LOW (0). Dari proses pengkondisian sinyal ini maka diperoleh keluaran berupa data digital dari receiver dan akan diberikan kepada mikrokontroler AT89C52. Mikrokontroler akan mengolah hasil input dari blok rangkaian sensor yang terdapat pada P1.1 sampai P1.3. Prosesnya adalah bagaimana mikrokontroler akan menterjemahkan hasil input dari sensor dan mensingkronisasikannya dengan program yang sudah tertanam di chip mikrokontroler tersebut. Proses mikrokontroler untuk menterjemahkannya dan menjadi penghubung antara input dan output sangat rumit. Disini mikrokontroler akan menggabungkan dan mensinkronisasikan antara software dengan blok perancangan hardware. Dari hasil proses yang dilakukan oleh mikrokontroler maka akan dihasilkan suatu kondisi perintah kepada driver dari motor dc, dalam hal ini berupa IC L293D yang kemudian akan menggerakkan motor dc, baik ke arah kanan maupun ke arah kiri tergantung dari hasil input dari sensor dan hasil output dari mikrokontroler AT89C52 yang diberikan kepada IC pada driver motor tersebut. III.3. Perancangan Perangkat Keras (Hardware) III.3.1. Blok rangkaian sensor ultrasonic 36

Pemancar gelombang ultrasonic disusun oleh sebuah transduser ultrasonik yang diberi gelombang kotak dengan frekuensi sekitar 40 KHz. Gelombang kotak dihasilkan oleh untai multivibrator yang disusun oleh IC 555 yang bekerja secara astable. Rangkaian pemancar ultrasonic ditunjukkan gambar 3.3 (a). 9V Transmitter 9V Receiver D3 C1 R1 VR TRM 4 6 8 2 IC 555 3 5 1 R2 C2 RCV C7 R2 R3 TR2 C1 TR1 R1 R4 C2 R5 C3 D2 D1 R6 C4 R7 C5 TR3 SN7473 C6 R8 4 1 13 11 R9 LED R10 TR4 P1 µc (a) (b) Gambar 3.3. Rangkaian sensor ultrasonik. (a) Transmitter (b) Receiver Rangkaian sensor dibuat sebanyak 3 bagian yang pada tiap bagian dari sensor terdiri dari pasangan transmiter dan receiver dari sensor ultrasonic. Ketiga bagian tersebut ditempatkan pada bagian depan serta bagian samping kanan dan kiri dari robot. Output dari ketiga pasangan sensor ini dihubungkan ke mikrokontroler melalui Port1 agar dapat diolah yang kemudian akan menghasilkan keluaran 37

untuk memberikan input kepada IC L293D sebagai driver motor untuk menggerakkan motor sesuai dengan data yang diterima dari mikrokontroler. Selain sebagai input data, output dari sensor digunakan juga sebagai pembangkit sinyal interrupt. Untuk itu, maka diperlukan rangkaian lain yang akan membangkitkan sinyal interrupt ketika salah satu atau lebih sensor tersebut mendeteksi sambungan antara transmiter dengan receiver. Pada kasus ini penulis menambahkan gerbang logika OR. Dengan menggunakan gerbang logika OR, interrupt high akan aktif (INT 1=1). Komponen yang digunakan adalah IC 74LS32. Ultrasonik input A B INT 1 C Gambar 3.4. Rangkaian pembangkit interupt Dibawah ini adalah keluaran yang dihasilkan dari rangkaian dengan menggunakan gerbang logika OR Tabel 3.1 Tabel kondisi pembangkit interrupt A B INT 1 38

0 0 0 0 1 1 1 0 1 1 1 1 III.3.2. Blok rangkaian mikrokontroler Jenis mikrokontroler yang digunakan adalah AT89C52 yang memiliki empat buah port I/O, yaitu: 1. P0 (pin 32 sampai pin 39) 2. P1 (pin 1 sampai pin 8) 3. P2 (pin 21 sampai pin 28) 4. P3 (pin 10 sampai pin 17) Pada perancangan alat ini penulis hanya menggunakan tiga port saja, yaitu Port 0 berfungsi sebagai output. Pin yang digunakan yaitu pada P0.0 sampai P0.6. Kelima pin ini akan dihubungkan ke input dari IC untuk driver motor dc. Kemudian Port 1 berfungsi sebagai input dari rangkaian sensor ultrasonik. Masing-masing sensor menempati satu bit pada Port 1 yaitu P1.0, P1.1, dan P1.2. Yang ketiga adalah Port 3. Port ini adalah port khusus pada keluarga 8051, karena memiliki fungsi interrupt. Oleh karena perancangan alat ini menggunakan rutin interrupt, maka kaki P3.3 (yang berfungsi sebagai INT 1) dihubungkan ke output rangkaian pembangkit interrupt dari rangkaian sensor dengan menggunakan gerbang logika OR pada IC 74LS32. 39

Pada blok rangkaian dari mikrokontroler ini juga terdapat rangkaian reset, yaitu jika kita mengeksekusi tombol yang ada, maka secara otomatis address program dari mikrokontroler akan menuju ke alamat 0000H. Nilai tersebut dinamakan sebagai vektor reset, yang merupakan nomor awal dari memoriprogram yang menampung program agar dapat dijalankan. Dengan kata lain akan kembali ke awal perintah atau program. Perintah ini merupakan satu-satunya perintah yang tidak dapat dihalangi oleh perintah lain. Pembahasan diatas memberkan gambaran bahwa proses reset merupakan peristiswa perangkat keras (sinyal reset dihubungkan ke kaki reset mikrokontroler) yang dipakai untuk mengatur kerja dari software, yakni menentukan aliran proses program prosesor. Selain rangkaian reset, juga terdapat rangkaian yang osilator. Ini merupakan rangakain yang memicu CPU dan mikrokontroler untuk mengerjakan satu intruksi ke instruksi berikutnya dalam proses yang berurutan. Setiap langkah kecil dari operasi mikrokontroler membutuhkan waktu sebanyak satu atau beberapa clock untuk melakukannya yang akan menentukan kecepatan kerja dari mikrokontroler. Program untuk mengendalikan kerja dari mikrokontroler disimpan dalam memori program, yang merupakan kumpulan dari instruksi kerja mikrokontroler. Sepanjang mikrokontroler bekerja, instruksi tersebut byte demi byte akan diambil CPU dan selanjutnya dipakai untuk mengatur kerja mikrokontroler. Proses pengambilan kerja dari instruksi dari memori program 40

disebut fetch cycle dan saat CPU melaksanakan instruksi tersebu dinamakan execuets cycle. Semua mikrokontroler maupun mikroprosesor dilengkapi oleh sebuah register yang berfungsi kusus untuk mengatur fetch cycle, register tersebut dinamakan Program Counter (PC). Nilai dari PC secara otomatis akan bertambah satu setiap kali selesai mengambil 1 byte isi memori program, dengan demikian isi memori program bisa berurutan diberikan ke CPU. Saat mikrokontroler di-reset, isi PC menjadi 0000H, artinya sesaat setelah reset isi dari memori program nomor 0 dan seterusnya akan diambil ke CPU dan diperlakukan sebagai instruksi yag akan mengatur kerja mikrokontroler. Dengan demikian, awal dari program pengendali harus ditempatkan di memori nomor 0, setelah reset mikrokontroler menjalankan program mulai dari memori program 0000H, dengan melakukan fetch cycle SENSOR 1 dabn execute cycle terus menerus tanpa henti. P1.0 Vcc SENSOR 2 P1.1 P0.0 SENSOR 3 Jika sarana interrupt diaktifkan, dan tegangan P1.2 di kaki P0.1 INT 1 merubah P1.3 P0.2 P1.4 P0.3 dari 0 menjadi 1, maka 5 proses V menjalankan program diatas akan dihentikan P1.5 P0.4 sebentar, kemudian mikrokontroler sendiri akan P1.6 melayani P0.5 dulu permintaan 100? 10 µf interrupt, selesai melayani permintaan interrupt CPU akan melanjutkan AT89C52 P1.7 P0.6 RST P0.7 5 V mengerjakan program utama lagi. 30 pf 8K2 P3.0 (RXD) EA/Vpp P3.1 (TXD) ALE/PROG P3.2 (INT0) PSEN P3.3 (INT1) P2.7 (A15) P3.4 (T0) P2.6 (A14) P3.5 (T1) P2.5 (A13) P3.6 (WR) P2.4 (A12) P3.7 (RD) P2.3 (A11) XTAL 2 P2.2 (A10) 30 pf41 XTAL 1 P2.1 (A9) GND P2.0 (A8)

Gambar 3.5. Blok rangkaian mikrokontroler III.3.3. Rangkaian penggerak motor DC Untuk penggerak dari rangkaian roda pada robot menggunakan motor dc. Pada motor dc sendiri tidak dapat dikendalikan langsung oleh keluaran dari mikrokontroler. Tegangan mikrokontroler hanya sebesar 5 Volt, sedangkan motor Adc yang digunakan pada robot ini membutuhkan tegangan sebesar B 12 volt agar dapat bekerja dengan optimal. Oleh sebab itu, untuk mengendalikan motor dc 12 Volt dengan 100 tegangan O 5 Q3 Volt dari mikrokontroler, Q5 100 Operlu dibuat rangkaian 22 KO D 560 khusus. Rangkaian pengendali motor dc yang digunakan disini adalah rangkaian Q1 9013 yang dikenal dengan sebutan H-Bridge transistor circuit, dinamakan demikian 100 O Q4 D 438 12 V 42 D 560 Q6 D 438 100 O Q2 9013 22 KO

karena rangkaian transistor dan motor ini membentuk abjad H (gambar 3.6). Rangkaian ini umum digunakan untuk mengatur putaran motor ke arah yang diinginkan dengan memberikan logika Transistor-Transitor Logic (TTL) yang sesuai dengan ketentuan pada kaki inputnya (tabel 3.2). A 12 V B 22 KO 100 O Q3 D 560 Q5 D 560 100 O 22 KO Q1 9013 Q2 9013 100 O Q4 D 438 Q6 D 438 100 O Gambar 3.6. Driver motor DC menggunakan rangkaian H-Bridge Rangkaian penguat ini digunakan untuk mengatur putaran motor dc ke arah kanan atau kiri. Perputaran motor dc ini diatur dengan merubah polaritas dari tegangan yang bekerja pada motor dc. Jika titik A diberi input, maka transistor Q1 akan aktif, yang akan membuat transistor Q3 dan Q6 juga aktif. Q3 akan menghubungkan titik C pada motor ke +12 volt, dan Q6 menghubungkan ke ground. Dari sini pergerakan 43

putaran motor akan searah dengan jarum jam. Jika titik A tidak diberi input maka Q1, Q3 dan Q6 tidak akan menghantar, sehingga motor tidak akan bergerak. Kemudian sebaliknya jika titik B yang diberi input maka transistor Q2, Q4, dan Q5 akan aktif. Dengan transistor pada Q5 yang akan mendapat tegangan +12 volt dan transistor Q4 yang akan terhubung ke ground. Dengan kondisi seperti ini, maka motor akan berputar berlawanan dengan jarum jam. Dari rangkaian ini pula tidak diperbolehkan untuk mengaktifkan A dan B secara bersamaan. Jika hal tersebut dilakukan, maka akan terjadi hubungan singkat/korsleting. Dengan adanya hal seperti ini maka akan dapat merusak rangkaian H-Bridge ini, bahkan keseluruhan sistem. Tabel 3.2 Kondisi putaran motor Logika A Logika B Arah Putaran 0 0 Diam 0 1 Berlawanan jarum jam 1 0 Searah jarum jam 1 1 Dilarang Pada penelitian ini penulis mengganti rangkaian H-Bridge dengan sebuah komponen Integrated Circuit (IC) L293D. IC ini mempunyai fungsi yang sama dengan rangkaian H-Bridge. Gambar 3.7 menunjukkan konfigurasi pin dari IC L293D. 44

1 2 3 4 5 6 7 EN1 VSS IN1 IN4 OUT1 L293D OUT4 GND GND GND GND OUT2 OUT3 IN2 IN3 16 15 14 13 12 11 10 8 VC EN2 9 Gambar 3.7. Alokasi pin IC L293D Dari gambar diatas dapat diketahui bahwa IC ini mempunyai dua buah sumber tegangan, yaitu 5 volt untuk mengaktifkan IC yang terdapat pada pin 16 dan sumber tegangan 12 volt pada pin 8 yang berfungsi untuk menggerakkan motor dc. Pada pin 1 dan pin 9 berfungsi untuk meng-enable kan masingmasing motor. Sebab dalam rangkaian robot ini menggunakan dua buah motor dc. Pin 1 sebagai enable (EN1) untuk motor 1 dan pin 9 sebagai enable (EN2) untuk motor 2. Kemudian dari IC untuk driver motor dc ini setiap pin yang berfungsi sebagai input akan dihubungkan ke output dari mikrokontroler pada port 0 untuk menggerakkan arah putaran motor sesuai dengan data yang dikeluarkan dari mikrokontroler sehingga akan diperoleh suatu rangkaian seperti gambar berikut: 12 V 5 V 8 16 VC VSS P0.1 2 IN1 3 P0.2 P0.0 P0.4 7 IN2 1 EN1 10 IN2 L293D 6 11 P0.5 15 IN3 P0.3 9 EN2 14 GND GND 4 5 12 13 45

Gambar 3.8. Koneksi IC L293D dengan output dari mikrokontroler AT89C52 robot, yaitu: Berikut adalah tabel kondisi putaran motor dc terhadap arah pergerakan Tabel 3.3. Kondisi putaran motor terhadap arah pergerakan robot Motor kiri Motor kanan Arah pergerakan Maju Putar kanan Putar kiri Mundur III.3.4. Blok Rangkaian Catu Daya Dari keseluruhan rangkaian ini menggunakan tiga buah level tegangan, yaitu 5 volt yang digunakan untuk tegangan pada mikrokontroler dan, 9 volt untuk tegangan pada blok rangkaian transmitter sensor ultrasonic, serta 46

tegangan 12 volt untuk tegangan pada blok rangkaian receiver sensor ultrasonic dan pada rangkaian penggerak motor dc yang terdapat pada IC L293D. Sebagai sumber tegangan mengunakan baterai sebesar 1,5 volt sebanyak 8 buah. Dengan mengunakan regulator 7805 akan menghasilkan tegangan 9V RCV RCV RCV C1 R1 VR TRM C7 R2 R3 sebesar TR2 5 volt dan regulator R8 7809 menghasilkan tegangan sebesar 9 volt. C1 TR1 4 R9 Berikut R1 adalah gambar TR3rangkaian dari catu daya yang digunakan. 1 13 C2 R4 R5 C7 R2 R3 C1 C2 TR1 R1 TR2 R4 R5 C7 R2 R3 C1 C2 TR1 R1 4 6 8 2 9V IC 555 3 5 TR2 R4 R5 C3 D2 D1 C3 D2 D1 C3 D2 D1 R6 C4 R6 C4 R6 C4 R7 R7 R7 C5 C5 12v TR3 TR3 C5 9V 1N4001 Gambar 3.9. Rangkaian catu daya C2 Gambar dibawah ini merupakan gambar rangkaian dari robot pendeteksi 5V 12V 1 R2 2 rintangan secara keseluruhan dan merupakan P1.2 penggabungan P0.1 IN1 dari VC masing- 5V masing blok rangkaian yang telah dibuat diatas tadi. 100? SN7473 C6 C6 11 R8 1000 SN7473 µf 4 R9 1 13 11 9V SN7473 C6 R8 4 1 13 11 R9 10 µf LED R10 TR4 LED R10 TR4 LED R10 TR4 D3 D3 D3 1 1 a1 a1 7809 GND 0 7805 GND 0 b1 2 0.1µF b1 2 0.1µF P1.0 Vcc P1.1 P0.0 AT 89C52 P1.3 P0.2 P1.4 P0.3 P1.5 P0.4 P1.6 P0.5 P1.7 P0.6 RST P0.7 9v 5V 1 EN1 VSS 7 IN2 OUT1 9 EN2 OUT2 10 IN3 OUT3 15 IN4 OUT4 4 12 GND GND 5 13 GND GND L 293D 8K2 P3.0 (RXD) EA/Vpp P3.1 (TXD) ALE/PROG P3.2 (INT0) PSEN P3.3 (INT1) P2.7 (A15) P3.4 (T0) P2.6 (A14) 12v 1N4001 1000 µf 1 a1 7809 GND 0 2 b1 0.1µF 9v 30 pf P3.5 (T1) P2.5 (A13) P3.6 (WR) P2.4 (A12) P3.7 (RD) P2.3 (A11) XTAL 2 P2.2 (A10) XTAL 1 P2.1 (A9) 1 a1 7805 GND 0 2 b1 5v 30 pf 47 GND P2.0 (A8) 0.1µF

Gambar 3.9. Gambar rangkaian secara keseluruhan III.4. Perancangan Perangkat Lunak Dalam perancangan alat ini, bahasa yang digunakan oleh penulis adalah bahasa Assembler dengan bantuan software IDE 8051 yang dapat dijalankan pada sistem operasi Windows. 48

Gambar 3.10. Tampilan dari software IDE 8051 Software ini dapat berfungsi sebagai editor dan simulator dari program yang telah kita buat. Software ini akan menampilkan isi dari accumulator, program counter, stack pointer, register-register, dan port pada saat program buatan kita sedang dijalankan. Dengan demikian kita dapat mengetahui apakah program yang telah kita buat sudah benar atau belum. Bila belum benar, program dapat diperbaiki secara langsung dari software IDE 8051 ini. Bagi program yang telah di-compile maka akan terdapat dua jenis file, yaitu file berekstension LST, contohnya program.lst (gambar 3.10) dan file yang berekstension HEX, contohnya program.hex (gambar 3.11). 49

Gambar 3.11. Tampilan program yang memiliki ekstension LST Gambar 3.12. Tampilan program yang memiliki ekstension HEX. Untuk men-download program, file yang kita butuhkan adalah yang memilki ekstensi HEX seperti contoh diatas, yang selanjutnya akan kita 50

download pada EPROM writer, berikut adalah tampilan dari software untuk menjalankan EPROM writer, yaitu: Gambar 3.13. Tampilan software WACESS untuk men-download program III.5.`Flowchart program Dalam setiap pembuatan suatu alat, hal terpenting yang paling utama dalam perancangannya adalah bagaimana kita dapat mengetahui prinsip kerja dari alat yang dapat digambarkan dalam bentuk flowchart. Gambar dibawah adalah flowchart START program secara keseluruhan dari pembuatan alat ini. INISIALISASI INTERUPSI DETEKSI TRACK TRACK TERDETEKSI?? YA ROBOT BERGERAK SUBRUTINE DETEKSI TRACK MENGIKUTI TRACK TIDAK ROBOT TIDAK BERGERAK 51 TIDAK GARIS AKHIR?? YA STOP

Gambar 3.14. Flowchart program keseluruhan Program utama dari pembuatan robot ini adalah mendeteksi adanya input dari sensor ultrasonic kepada mikrokontroler AT89C52 yang terletak pada P0.0, P0.1, dan P0.2. Program akan bereaksi dengan mengirimkan output kepada driver motor dc sesuai dengan data yang diterimanya. Motor dc akan bergerak jika input dari sensor akan memiliki logka 1 (high). Untuk pengecekan bit pada program pendeteksi sinyal dalam bahasa Assembler menggunakan perintah Jump if Bit Set (JB). Perintah ini akan bekerja dengan cara mengecek kondisi bit satu dari masing-masing sensor yang terhubung ke port dari input dari mikrokontroler. Yang kemudian akan berpindah ke bagian label dari program pendeteksi sinyal yang telah ditentukan (address code) jika bit yang 52

diperiksa tersebut bernilai HIGH (1). Jika bit yang diperiksa bernilai LOW (0), maka program akan melaksanakan baris perintah setelah perintah JB tersebut. Cara kerja dari program secara keseluruhan adalah sebagai berikut: 1. Yang pertama adalah inisialisasi interupsi, yaitu INT1. Inisialisasi interupsi dilakukan pada register IE. Dimana untuk mengaktifkan INT1 maka pada program harus diberikan perintah MOV IE, #84H. 2. Jika sensor mendeteksi adanya halangan baik yang ada di sisi depan, kiri, maupun sisi depan robot maka interupsi akan aktif dan menuju subroutine sensor. Selanjutnya akan mencari sensor mana yang akan mengalami perubahan pada masukannya. Sensor yang pertama kali dicek adalah yang terhubung dengan P0.0 pada mikrokontroler, selanjutnya P0.1 dan P0.2. Jika ada sensor yang terdeteksi maka data yang mengalami perubahan akan diberikan ke driver penggerak motor yang selanjutnya roda dari robot akan berputar sesuai dengan input sinyal dari sensor kepada mikrokontroler. 3. Subroutine dari motor berisi perintah mengeluarkan output berupa arah putaran roda dari robot (tabel 3.4). Tabel 3.4. Kondisi putaran motor terhadap sensor 53

SU.2 SU.1 SU.0 Kondisi putaran motor 0 0 0 Stop 0 0 1 Kiri 0 1 0 Mundur 0 1 1 Kiri 1 0 0 Kanan 1 0 1 Maju 1 1 0 Kanan 1 1 1 Mundur 4. Kondisi ini akan berlangsung secara terus menerus sampai batas akhir dari track. 5. Selanjutnya program akan kembali ke program utama jika tidak ada lagi interupsi yang diterima oleh sensor. Dari penjelasan flowchart pada gambar 3.14 diatas, maka dalam perancangan alat ini terdapat dua program pengendali, yaitu: 1. Program deteksi rintangan Sensor ultrasonic akan mendeteksi adanya objek yang menghalangi pergerakan dari robot, baik yang ada di samping kanan, kiri maupun sisi depan. Program ini menggunakan fasilitas interupsi 1 (INT1). Dibawah ini adalah flowchart dari program deteksi rintangan. 54

START CEK SENSOR1 SENSOR 1 TERDETEKSI?? Y T CEK SENSOR2 CEK SENSOR2 SENSOR 2 TERDETEKSI?? Y SENSOR 2 TERDETEKSI?? Y T T CEK SENSOR3 CEK SENSOR3 CEK SENSOR3 CEK SENSOR3 SENSOR 3 TERDETEKSI?? Y SENSOR 3 TERDETEKSI?? Y SENSOR 3 TERDETEKSI?? Y SENSOR 3 TERDETEKSI?? Y T T T T IR = 000 STOP UT = 100 KANAN IR = 010 MUNDUR IR = 110 KANAN IR = 001 KIRI IR = 101 MAJU IR = 011 KIRI IR = 111 MUNDUR RETI Gambar 3.15. Flowchart program deteksi rintangan Program ini akan mengecek kondisi bit satu per satu dimulai dari P0.0 yang terhubung ke sensor ultrasonic kiri, selanjutnya akan mengecek sensor ultrasonic depan. Proses ini berlangsung terus-menerus sesuai dengan flowchart diatas. Hingga terdapat hasil akhir yang akan mempengaruhi kondisi putaran dan arah motor. 55

* * * * * * * * * * * * * * * * * * program deteksi sensor * * * * * * * * * * * * * * * * * * * SCAN: K: JB SU_1, D ; cek sensor kanan ; SU = xx1, cek sensor depan KD: JB SU_2, Q ; cek sensor kanan depan ; SU = x10, cek sensor kiri KDQ: JB SU_3, SCAN_KANAN ; cek sensor kanan depan kiri ; SU = 100, KANAN LJMP SCAN_STOP ; SU = 000, STOP D: JB SU_2, DQQ ; cek sensor depan ; SU = x11, cek sensor depan kiri kiri DQ: JB SU_3, SCAN_MAJU ; cek sensor depan kiri ; SU = 101, MAJU LJMP SCAN_KIRI ; SU = 001, KIRI DQQ: JB SU_3, SCAN_MUNDUR ; cek sensor depan kiri kiri ; SU = 111, MUNDUR LJMP SCAN_KIRI ; SU = 011, KIRI Q: JB SU_3, SCAN_KANAN ; cek sensor kiri ; SU = 110, KANAN LJMP MUNDUR ; SU = 010, MUNDUR OUT: RETI 2. Program pengendali motor Untuk program pengendali arah putaran motor ini dihasilkan dari adanya input dari sensor. Program ini berisi bit 0 dan 1 yang konfigurasi masing-masing bitnya sudah diprogram dan ditentukan dari output IC L293D sebagai driver motor. Berikut adalah subroutine dari program pengendali motor. * * * * * * * * * * program motor * * * * * * * * * * KANAN: MOV MDC, #00011011b ACALL DELAY RET KIRI: MOV MDC, #00101101b ACALL DELAY RET MAJU: MOV MDC, #00101011b ACALL DELAY RET 56

MUNDUR: MOV MDC, #00011101b ACALL DELAY RET 57