BAB III PERANCANGAN SISTEM Pada bab ini akan dibahas mengenai perancangan sistem dan realisasi perangkat keras, konstruksi fisik dan perangkat lunak dari setiap modul yang mendukung alat secara keseluruhan. Secara lengkap, alat yang dirancang dan direalisasikan dapat dilihat pada Gambar 2.1. Perancangan perangkat keras meliputi mekanik dan elektronik, sedangkan perancangan perangkat lunak berupa baris-baris program yang diunduhkan pada mikrokontroler. 3.1 Cara Kerja Sistem Robot penyapu lantai ini dirancang mempunyai 2 (dua) mode penggunaan, yaitu mode acak dan zig-zag. 3.1.1 Mode Acak Pada mode ini, robot penyapu lantai akan bergerak secara acak atau secara bebas. Pada saat robot penyapu ini dijalankan robot berjalan maju kedepan. Pada saat sensor ultrasonik bagian depan mendeteksi adanya objek penghalang maka akan berbelok dengan sudut 125 0 ke arah kiri atau ke arah kanan secara bergantian seperti terlihat pada Gambar 3.1. Gambar 3.1Arah Belok Robot Pada Sensor Penghalang Depan Dengan Sudut 125 0 Jika sensor ultrasonik yang terdapat di bagian bawah robot pada saat mendeteksi adanya tebing robot akan mundur sejauh 10 cm dan berbelok 9 10 dengan sudut 125 0 kearah kiri atau ke arah kanan secara bergantian seperti terlihat pada Gambar 3.2. Gambar 3.2 Arah Belok Robot Pada Sensor Tebing DenganSudut 125 0 Sensor ultrasonik yang terdapat pada bagian depankiri dan depankanan robot pada saat mendeteksi adanya halangan secara berturut-turut akan berputar kearah kanan atau kiri dengan sudut 60 0 , seperti terlihat pada Gambar 3.3. Gambar 3.3 Arah Belok Robot Pada Sensor Penghalang Depan Kanan dan Depan KiriDenganSudut 60 0 Sedangkan sensor yang terdapat pada sisikiri dan sisi kanan robot akan berputar kekanan atau ke kiri dengan sudut 30 0 , seperti terlihat pada Gambar 3.4. 11 Gambar 3.4 Arah Belok Robot Pada Sensor Penghalang Sisi Kanan dan Sisi Kiri Dengan Sudut 30 0 3.1.2 Mode Zig – Zag Mode ini robot penyapu lantai akan bergerak secara zig-zag atau secara beraturan. Pada saat robot penyapu ini dijalankan, robot berjalan maju kedepan. Pada saat sensor ultrasonik sisi depan mendeteksi adanya objek penghalang di depan, maka akan berbelok dengan sudut 180 0 ke arah kiri atauke arah kanan secara bergantian seperti terlihat pada Gambar 3.5. Gambar 3.5Arah Belok Robot Pada Sensor Penghalang Depan Dengan Sudut 180 0 Jika sensor ultrasonik yang terdapat di bagian bawah robot pada saat mendeteksi adanya tebing, robot akan mundur sejauh 10 cm dan berbelok dengan sudut 180 0 ke arah kiri atau ke arah kanan. 12 Gambar 3.6 Arah Belok Robot Pada Sensor Tebing DenganSudut 180 0 Sensor ultrasonik yang terdapat pada bagian depan kiri dan depan kanan robot pada saat mendeteksi adanya objek penghalang secara berturut-turut akan berputar kearah kanan atau kiri dengan sudut 60 0 , seperti pada Gambar 3.3. Sedangkan jika sensor yang terdapat pada kiri dan kanan mendeteksi adanya objek penghalang robot akan berputar ke kanan atauke kiri dengan sudut 30 0 , seperti pada Gambar 3.4. 3.2 Perancangan dan Realisasi Perangkat Keras Perancangan perangkat keras untuk bangun robot penyapu lantai adalah dengan membuat untai masing-masing dari bagian sistem dan rancangan konstruksi fisik.Perangkat keras yang dirancang dan direalisasikan pada alat ini terdiri dari mikrokontroler sebagai pengendali utama, push buttonsebagai masukan mode kerja robot, driver L298sebagai driver motor, sensor ultarasonik SRF04 sebagai pendeteksi objek penghalang dan tebing dan kompas digital CMPS10 sebagai penunjuk arah. Kontruksi fisik yang dirancang dan direalisasikan pada alat ini terdiri dari roda, sikat samping sisi kanan dan sisi kiri, sikat bagian tengah dan tangki penampung sampah. 13 3.2.1 Push Button Modul push button yang digunakan adalah aktif low (pull up). Bentuk dari push button ditunjukkan oleh Gambar 3.7. V1 5V R1 10K Mikrokon Button Gambar 3.7 UntaiPush Button Untai push button terdiri dari sebuah resistor yang diseri dengan sebuah tombol normally-opened (NO). Resistor berfungsi sebagai beban yang mencegah terjadinya hubung-singkat ketika tombol ditekan. Nilai resistor yang digunakan dalam level teganganTTL adalah 10 Ω.[1] Terlihat jelas seperti Gambar 3.7 jika push button tidak ditekan maka pada input mikrokontrolernya bernilai 1, namun jika push button ditekan maka pada input mikrokontroler bernilai 0. 3.2.2 Mikrokontroler Alat yang dirancang menggunakan mikrokontroler keluarga AVR jenis ATmega32a sebagai pengendali utama. Pada perancangan ini masukan mode kerja melalui push button, sensor ultrasonik (SRF04) dan kompas digital (CMPS10) sedangkan output berupa driver motor . Konfigurasi penggunaan pin/port mikrokontroler ATmega32a dapat dilihat dalam Tabel 3.2 dan skema dari board mikrokontroler dapat dilihat pada Gambar 3.8. 14 Tabel 3.1 Konfigurasi Penggunaan PIN/PORT Mikrokontroler ATmega32a Nomor Pin Nama Fungsi 33 – 40 PA7 – PA0 LCD 1– 6 PB0 – PB7 SRF04 22,23& 28,29 PC0,PC1 & PC6,PC7 SRF04 14 – 17 PD0 – PD3 DRIVER MOTOR 18,19 PD4,PD5 PUSH BUTTON 20,21 PD6,PD7 CMPS10 Gambar 3.8Skema Dari Board Mikrokontroler 15 3.2.3 Modul Sensor Ultrasonik (SRF04) Sensor ultrasonik digunakan untuk mendeteksi dan mengukur jarak sensor terhadap objek penghalang yang berada di depan sensor. Alasan pemilihan menggunakan sensor ultrasonik adalah karena tidak terpengaruhi oleh warna halangan maupun intensitas cahaya di sekelilingnya. Sensor ultrasonik bekerja pada frekuensi sekitar 40kHz.[3] Sensor ultrasonik yang digunakan adalah Devantech SRF04 yang mempunyai spesifikasi, yaitu tegangan catu daya 5 volt kompatibel dengan TTL, konsumsi arus rata-rata 30 mA dan 50 mA maksimal, frekuensi kerja 40kHz, jangkauan 3 cm minimal dan 3 m maksimal, masukan trigger minimal 10us level TTL, pulsa echo – sinyal level TTL positif dengan lebar proposrsional terhadap jarak,[3] dimensi kompak (24mm(p) x 20mm(d) x 17mm(t) Gambar 3.9 Bentuk fisik dari Sensor Ultrasonik (SRF04) Prinsip kerja SRF04 adalah transmitter memancarkan seberkas sinyal ultrasonik (40kHz) yang bebentuk pulsatik, jika di depan SRF04 ada objek padat maka receiver akan menerima pantulan sinyal ultrasonik tersebut. Receiver akan membaca lebar pulsa (dalam bentukPWM) yang dipantulkan objek dan selisih waktu pemancaran. Dengan pengukuran tersebut, jarak objek di depan sensor dapat diketahui.[3]Untuk lebih jelasnya perhatikan Gambar 3.10. Untuk mengaktifkan SRF04, mikrokontroler harus mengirimkan pulsa positif minimal 10us melalui pin trigger, maka SRF04 akan mengeluarkan sinyal ultrasonik sebesar 8 cycle dan selanjutnya SRF04 akan memberikan 16 pulsa 100us-18ms pada outputnya tergantung pada informasi jarak pantulan objek yang diterima. [3] Gambar 3.10 Diagram Waktu Sensor Ultrasonik[3] Dalam menentukan jarak robot terhadap objek penghalang menggunakan rumus: Dv t 2 (3.1) Dimana : D = Jarak (m) v = Kecepatan suara 340 m/s t = Waktu pantulan (s) Untuk mengetahuikecepatan suara terhadap perubahan waktu digunakan rumus:[2] t t2 t1 (3.2) Gambar 3.11 Cara Kerja Pemancar dan Penerima Sensor Ultrasonik (SRF04)[2] 17 3.2.4 Modul Driver Motor Modul ini memiliki komponen utama sebuah chip driver motor DC servo yang dapat dengan mudah dikendalikan dari mikrokontroler secara langsung. Modul yang ditunjukkan pada Gambar 3.12 menggunakan kan motor DC sampai menggerakkan ICdriver L298 yang memiliki kemampuan mengg dengan 4 amper dan tegangan maksimum 40 volt DC untuk satu kanalnya.[3] Gambar 3.12 Bentuk Fisik Modul Driver Motor (L298) Spesifikasi Spesifikasi: 1) TeganganOperasi TeganganOperasi: 5-46V 2) Total Arus DC yang mampu dilewatkan sampai dengan 4 ampere mpere. kerja:500mA 3) Arus kerja 4) Ukuran Ukuran:: 49.0mm(X) x 45.4mm(Y) x 1.9mm(Z) 18 Tabel 3.2 Keterangan Pin Driver Motor Namapin Keterangan Pin GND Tegangan Sumber (-) IC / Ground VCC Tegangan Sumber IC (+) VS Tegangan Sumber Motor IN1 Input-1 (termasuk bagian 1 IC) IN2 Input-2 (termasuk bagian 1 IC) IN3 Input-3 (termasuk bagian 2 IC) IN4 Input-4 (termasuk bagian 2 IC) OUT_1 Output -1 (termasuk Bagian 1 IC) OUT_2 Output -2 (termasuk Bagian 1 IC) OUT_3 Output -3 (termasuk Bagian 2 IC) OUT_4 Output -4 (termasuk Bagian 2 IC) Gambar 3.13 Ilustrasi Pengendalian Arah Putar Motor DC Gambar 3.13menunjukkan bahwa dengan membalik polaritas sumber maka arah putaran akan berlawanan arah dengan sebelumnya. Ini berlaku untuk motor DC.[3] Input untuk motor servo kanan adalah input 1,2. Pengendalian arah putarnya pada Tabel 3.4. 19 Tabel 3.3 Sistem Pengendalian Driver Motor Input Enable =H Function Input 1 = H Maju Input 2 = L Input 1 = L Mundur Input 2 = H Enable=L Input 1 = Input 2 Motor Berhenti Cepat Input 1 = x Motor Bebas Input 2 = x dan Berhenti H=high L=low X = sembarang Vin2 VCC Vin1 R1 R3 Q1 D2 D1 Q3 M1 R4 R2 D3 Q2 Vo2 D4 Q4 Vo1 Gambar 3.14 UntaiDriver Motor Dengan H-BRIDGE Cara Kerja: 1) Jika Vinput1 diberi logika ‘1’ (5 volt) dan Vinput2 diberi logika ‘0’ (dibawah 1 volt) maka Q1 dan Q4 akan aktif/ saturasi, Q2 dan Q3 akan off / cut off. Hal ini menyebabkan Vo1 bernilai sebesar Vmotor dan Vo2ground / 0 volt.[3] 2) Jika Vinput1 diberi logika ‘0’ (dibawah 1 volt) dan Vinput2 diberi logika ‘1’ (5 volt) maka Q1 dan Q4 akan off / cut off, Q2 dan Q3 akan aktif / saturasi. Hal ini menyebabkan Vo1 bernilai ground / 0 volt dan Vo2 sebesar Vmotor (berlawanan arah dengan kondisi nomor 1)[3] 20 3) Jika Vinput1 diberi logika ‘1’ (5 volt) dan Vinput2 diberi logika ‘1’ (5 volt) maka Q1 dan Q4 akan aktif/ saturasi, Q2 dan Q3 akan aktif / saturasi juga. Hal ini menyebabkan hubungan singkat atau short karena Vmotor dan ground terhubung. Kondisi ini terlarang, jadi harus dihindari saat pemograman.[3] 3.2.5 Kompas Digital (CMPS10) Sensor CMPS10 terdiri dari magnetometer 3-axis dan accelerometer 3axis serta mengunakan prosesor 16-bit, CMPS10 telah dirancang untuk mengurangi kesalahan yang disebabkan oleh miringnya PCB. CMPS10 menghasilkan hasil nilai keluaran dari 0-3599 mewakili 0-359.9 atau 0 sampai 255. Sedangkan CMPS10 membutuhkan power supply pada tegangan 3,3 - 5V dan arus minimal 25mA. Untuk mengakses sensor CMPS10 ada 3 cara yaitu dengan antarmuka serial, antarmuka I2C atau output PWM.[5] Gambar 3.15 Bentuk Fisik Dari Sensor Kompas Digital (CMPS10) Pada CMPS10 ini cara mengaksesnya dengan mengunakaninterface I2C pada PORTD.6 untuk pin SDA dan PORTD.7 untuk pin SCL untuk mengetahui nilai keluaran dari kompas digital dan menentukan kutub pada setiap mata angin yang ada dengan mengunakan pemograman bahasa C dengan compiler Codevision AVR[5] 21 3.2.6 Catu Daya Baterai merupakan sumber daya utama untuk seluruh untai pada Robot penyapu lantai. Baterai yang digunakan adalah Lipo Zippy 7,4 volt dengan arus kerja 6000mAh. Seperti yang ditunjukkan pada Gambar 3.17. Baterai tersebut disusun secara paralel sebanyak 2 (dua) buah, sehingga mendapatkan arus kerja 12.000mAh. Gambar 3.16Bentuk Fisik BateraiLipo Zippy 6000mA. 7,4V Gambar 3.17 Untai Regulator Tegangan 5 volt Pada keluaran (Output) dari baterai dibagi menjadi beberapa bagian. Sebagai sumber tegangan SRF04, CMPS10 dan mikrokontroler, yang membutuhkan sumber tegangan kerja 5 volt DC menggunakan regulator tegangan LM 7805 seperti pada Gambar 3.17. Sedangkan sumber tegangan untuk motor DC pada motor vacuum, sikat tengah, sikat samping kanan kiri dan roda penggerak menggunakan tegangan sumber sebesar 7,4 volt. 22 3.3 Perancangan Perangkat Lunak start Acak No No Ada Halangan Sisi Kanan ? N0 Ada Halangan Sisi Dkanan ? Yes Yes Putar Kiri 30 Putar Kiri 60 Yes No Ada Halangan Sisi Kiri ? No Ada Halangan Sisi DKiri ? Yes Yes Putar Kanan 30 Putar Kanan 60 No Yes Yes Yes Zig-Zag Prosedur Maju Prosedur Maju Ada Halangan Depan ? Ada Halangan Depan ? Yes Yes Prosedur Belok Kanan 120 Prosedur Belok Kanan 180 No No Ada Halangan Kanan ? Ada Halangan Kanan ? No No Ada Halangan Depan ? No Pilihan ? Yes Yes Prosedur Belok Kiri 180 Ada Halangan Kiri ? No Ada Halangan Depan ? Yes Ada Halangan Sisi Dkanan ? No Ada Halangan Depan ? Yes Yes Prosedur Belok Kiri 120 Prosedur Belok Kiri 180 Prosedur Mundur Prosedur Mundur Ada Halangan Bawah ? Ada Halangan Bawah ? No No Prosedur Mundur Prosedur Mundur Belok Kiri 120 Belok Kiri 180 Ada Halangan Bawah ? Ada Halangan Bawah ? No No Prosedur Mundur Prosedur Mundur Belok Kanan 120 Belok Kanan 180 END END Ada Halangan Sisi Kanan ? Yes Yes Putar Kiri 60 Putar Kiri 30 Ada Halangan Depan ? Prosedur Belok Kiri 120 Ada Halangan Kiri ? No No No Yes Ada Halangan Sisi DKiri ? No Ada Halangan Sisi Kiri ? Yes Yes Putar Kanan 60 Putar Kanan 30 Gambar 3.18 Diagram Alir Perangkat Lunak No Yes Yes No 23 3.3.1 Penjelasan Diagram Alir 1. Pada saat sistem diaktifkan, maka mikrokontroler akan mengaktifkan pilihan mode. 2. Terdapat 2 modepilihan penggunaan. a) Mode acak 1) Pada saat push button mode acakditekan maka robot akan bekerja maju kedepan sambil melakukan proses menyapu. 2) Pada saat sensor depan mendeteksi adanya halangan maka akan berbelok dengan sudut ∠120 . 3) Pada saat sensor depan kiri dan depan kanan mendeteksi adanya halangan maka robot akan berputar denan sudut ∠60 . 4) Pada saat sensor sisi kiri dan sisi kanan mendeteksi adanya halangan maka robot akan berputar dengan sudut ∠30 . 5) Pada saat sensor bawah mendeteksi adanya tebing, maka robot akan mundur dan berbelok ke kiri atau ke kanan dengan sudut∠120 . b) ModeZig – zag 1) Pada saat push button mode zig - zag ditekan maka robot akan bekerja maju kedepan sambil melakukan proses menyapu. 2) Pada saat sensor depan mendeteksi adanya halangan maka akan berbelok dengan sudut ∠180 . 3) Pada saat sensor depan kiridan depan kanan mendeteksi adanya halangan maka robot akan berputar dengan sudut∠60 . 4) Pada saat sensor sisi kiri dan sisi kanan mendeteksi adanya halangan maka robot akan berputar dengan sudut∠30 . 5) Pada saat sensor bawah mendeteksi adanya tebing, maka robot akan mundur dan berbelok ke kiri atau ke kanan dengan sudut ∠180 24 3.4 Konstruksi Fisik Konstruksi fisik dari badan robot penyapu lantai ini menggunakan akrilik 3mm,menjadi dasar tumpuan dari elektronik dan software. Kostruksi fisik utama robot penyapu laintai adalah bagian roda, penyapu samping, penyapu tengah, tangki penampung sampah dan kipas vacuum robot. 3.4.1 Roda Konstruksi roda menggunakan akrilik dengan tebal 3mm, ada pun diameter lingkaran roda 5,1 cm dan tebal dari roda 1,5 cm. Roda dari robot terletak disamping kanan bawah dan kiri bawah robot. (a) (b) (c) Gambar 3.19Bentuk Fisek Dari Roda Penggerak (a). Tebal Roda. (b). Diameter Roda. (c). Penempatan Roda Pada Robot. 3.4.2 Penyapu Sisi Kanan dan Sisi Kiri Kontruksi penyapu yang terletak pada bagian bawah dari robot yang menyerupai sebuah baling - baling, penyapu menggunakan senar pancing yang dijadikan satu. Penyapu ini berfungsi sebagai pengumpul debu, yang mana penyapu kanan berputar searah jarum jam dan penyapu kiri akan 25 berputar berlawanan arah putar jarum jam. Diameter dari penyapu adalah 13 cm dan jari – jari dari penyapu 6,5 cm. (a) (b) Gambar 3.20 Bentuk Fisik Penyapu Samping (a) Penyapu samping. (b) Penempatan Penyapu Pada Robot 3.4.3 Penyapu Tengah Konstruksi penyapu tengah berbentuk roll yang berfungsi sebagai penyapu. Seperti yang ditunjukkan pada Gambar 3.22. Penyapu tengah juga berfungsi sebagai pengangkat debu atau sampah ke atas sambil di sedot oleh vacuum. Penyapu tengah mempunyai panjang 12,2 cm dan diameter 2,7 cm. Penyapu di hubungkan dengan motor penggerak menggunakan slat belt. Sedangkan pengerak dari penyapu ini menggunakan motor dc seperti pada Gambar 3.24 (a). 3.4.4 Penampung Sampah Kostruksi tangki penampung seperti pada Gambar 3.24 terletak di bagian tengah dari robot penyapu lantai, yang berfungsi sabagai penampung debu. Tangki memiliki filteryang berfungsi sebagai penyaring debu agar tidak keluar dari tangki pada saat di hisapvacuum. Filter diletakkan pada bagian belakang tangki atau di depan kipas vacuum. 26 Gambar 3.21 Bentuk Fisik Penyapu Tenganh (a) (b) Gambar 3.22 Pemasangan (a)Belt dan (b) Penyapu Tengah Pada Robot (a) (b) Gambar 3.23 Bentuk FisikTangki Penampung (a) Tangki. (b) Filter Sampah dan Debu Dimensi dari tangki sampah panjang 12 cm, tinggi 9 cm dan lebar 9,7 cm. Dimensi filter debu dan sampah panjang 5,5 cm dan diameter 6,5 cm. 27 3.4.5 Kipas Vacuum Kontruksi kipas vacuum yang terletak di bagian belakang tengah, yang berfungsi sebagai penghisapdebu.Tampak pada Gambar 3.24 di mana bentuk fisik dari kipas vacuum yang digunakan pada robot penyapu lantai ini. Dimensi dari kipas vacuum diameter kipas 8,8 cm, diameter dari lubang 3,7 cm dan tebal dari kipas 3,5 cm (a) (b) Gambar 3.24 Bentuk Fisik Dari Kipas Vacuum. (a) Tampak Belakang. (b) Tampak Depan. 28 3.4.6 Hasil Perancangan Gambar 3.25, 3.26, 3.27 dan 3.28 menunjukkan hasil dari keseluruhan kontruksi atau perancangan dari tiap – tiap bagian dari rangkaian elektronik dan bentuk fisik dari Robot Penyapu Lantai ini. Gambar 3.25 Robot Tampak Belakang Gambar 3.26 Robot Tampak Depan 29 Gambar 3.27 Robot Tampak Samping Kanan Gambar 3.28 Robot Tampak Bawah