BAB II LANDASAN TEORI 2.1 Robotik
Robotik memiliki unsur yang sedikit berbeda dengan ilmu dasar atau terapan yang lain dalam berkembang. Ilmu dasar biasanya berkembang dari suatu asas atau hipotesis yang kemudian diteliti secara metodis. Ilmu terapan dikembangkan setelah ilmu-ilmu yang mendasarinya berkembang dengan baik. Sedangkan ilmu robotik lebih sering berkembang melalui pendekatan praktis pada awalnya. Kemudian melaui suatu pengamatan perilaku mahluk hidup atau benda / mesin / peralatan bergerak lainnya dikembangkanlah penelitian secara teoritis. Dari teori kembali kepada praktis, dan dari sini robot berkembang menjadi lebih canggih. Untuk mengetahui dalam tema apa saja robotik dapat diteliti, Gambar 2.1 mengilustrasikannya. Di dalam Gambar 2.1 dijelaskan tentang keterkaitan seluruh komponen atau sub-domain dalam ruang lingkup penelitian dibidang robotik. Secara garis besar penelitian di bidang robotik dapat dilakukan dengan memilih tema berdasarkan alur dalam 4 tahapan, yaitu klasifikasi, obyek penelitian, fokus penelitian dan target penelitian, dan blok klarifikasi, struktur robot dapat diketahui berada dalam kelompok mana. Pada dasarnya dilihat dari struktur dan fungsi fisiknya (pendekatan visual) robot terdiri dari dua bagian, yaitu non-mobile robot dan mobile robot. Kombinasi keduanya dapat menghasilkan kelompok kombinasi konvensional (mobile dan non-mobile) dan kelompok non-konvensional. Kelompok pertama sengaja diberi nama konvensional karena nama yang dipakai dalam konteks penelitian adalah nama-nama yang dianggap sudah umum, seperti mobile manipulator, climbing robot, walking robot dan nama-nama lain yang sudah popular. Sedangkan nonkonvensional dapat berupa robot humanoid, animaloid, extra-ordinary, atau segala bentuk inovasi penyerupaan yang biasa dilakukan.
5
5
Sumber: Pitowarno, Endra. 2006. Robotika Desain, Kontrol, dan Kecerdasan Buatan. Yogyakarta : Andi Gambar 2.1. Ilustrasi penelitian dalam domain robotic
6
Dari kelompok non-mobile yang sering disebut sebagai “keluarga robot: adalah robot arm atau manipulator saja. Sementara yang lebih mudah dikenali sebagai mesin cerdas (intelligent machine) yang tidak selalu tampak memiliki bagian tangan, kaki atau roda untuk bergerak lebih lazim disebut dengan nama khusus sesuai dengan fungsinya. Mereka biasanya memiliki nama-nama yang tersendiri. Misalnya mesin-mesin otomatis Lathe (bubut), Milling (giling), Drilling Machine (mesin bor), CNC (Computer Numerical Control), EDM (Electric Discharge Machine), dan berbagai peralatan otomatis yang biasa dijumpai di pabrik-pabrik modern. Mobile Robot adalah tipe robot yang paling popular dalam dunia penelitian robotik. Dari segi manfaat, penelitian tentang berbagai tipe mobile robot diharapkan dapat membantu manusia dalam melakukan otomatisasi dalam transportasi, platform bergerak untuk robot industri ekplorasi tanpa awak, dan masih banyak lagi (Pitowarno, 2006). Robot berdasarkan mobilitasnya terbagi dalam dua kelompok. Kelompok pertama merupakan robot yang dioperasikan pada lingkungan yang tetap dengan pergerakan yang cenderung tetap dan tertentu (sebagai robot industri/stationary robot). Pada kelompok yang kedua, robot dapat bergerak secara otonomi, memiliki navigasi, dan gerakan yang tidak tetap tergantung dari medan jelajah (dikenal dengan mobile robot). Desain mobile robot dapat bergerak menggunakan kaki (leg robot), roda (wheel robot), dan tank (Halim, 2007). 2.2 Mikrokontroler ATmega8535 Mikrokontroler AVR (Alf and Vegard’s Risc processor) standart memiliki arsitektur 8 bit, dimana semua instruksi dikemas dalam kode 16-bit dan sebagian besar instruksi dieksekusi dalam 1(satu) siklus clock. AVR berteknologi RISC (Reduced Instruction Set Computing). Di dalam Mikrokontroler Atmega8535, sudah berisi: 1. Saluran I/O sebanyak 32 buah, yaitu Port A sampai Port D 2. ADC (Analog to Digital Converter) 10 bit sebanyak 8 chanel. 3. Tiga buah Timer/Counter 4. CPU yang memiliki 32 buah register
5
5. 131 Instruksi yang hanya membutuhkan 1 siklus clock 6. Watchdog Timer dengan osilator internal 7. 2 buah timer/counter 8 bit 8. 1 buah timer/counter 16 bit 9. Tegangan operasi 2,7 V – 5,5 V
10. Internal SRAM sebesar 1KB 11. Memori Flash sebesar 16KB dengan kemampuan Read While Write.
12. Unit interupsi internal dan eksternal 13. Port antarmuka SPI 14. Kecepatan hampir mencapai 16 MPIS pada Kristal 16 Mhz 15. Internal downloader USB AVR (In-system Programming dilengkapi
LED programming indicator) 16. Tidak membutuhkan power tambahan saat melakukan download program 17. EEPROM sebesar 512 byte yang dapat diprogram saat operasi
Berikut diagram blok ATmega8535 ditunjukkan pada Gambar 2.2
5
Sumber : Heryanto, Ary dan Wisnu, Adi. 2008. pemrograman Bahasa C untuk Mikrokontroler ATMEGA8535. Yogyakarta : Andi Gambar 2.2. Blok diagram ATmega8535
7
Berikut sekema minimum system ATmega 8535 seperti ditunjukkan pada Gambar 2.3.
Sumber : Heryanto, Ary dan Wisnu, Adi. 2008. pemrograman Bahasa C untuk Mikrokontroler ATMEGA8535. Yogyakarta : Andi Gambar 2.3. Skema ATmega 8535 Konfigurasi pin ATmega8535, pada Gambar2.4 berikut ini merupakan susunan kaki standar 40 pin Mikrokontroler AVR ATmega 8535.
5
Sumber : Heryanto, Ary dan Wisnu, Adi. 2008. pemrograman Bahasa C untuk Mikrokontroler ATMEGA8535. Yogyakarta : Andi Gambar 2.4. Konfigurasi pin ATmega8535 Berikut ini adalah penjelasan umum susunan kaki dari ATmega8535 (Heryanto, 2008) : 1. VCC merupakan pin masukan positif catu daya. Setiap piranti
elektronika digital membutuhkan sumber daya yang umumnya sebesar 5V. Oleh karena itu, biasanya di PCB kit mikrokontroler selalu ada IC regulator 7805 2. GND sebagai pin ground 3. Port A (PA0..PA7) merupakan pin I/O dua arah dan dapat diprogram
sebagai pin masukan ADC 4. Port B (PB0..PB7) merupakan pin I/O dua arah dan pin fungsi khusus,
yaitu Timer/Counter, komparator analog, dan SPI 5. Port C (PC0..PC7) merupakan pin I/O dua arah dan pin fungsi khusus,
yaitu TWI, komparator analog dan Timer Osilator 6. Port D (PD0..PD7) merupakan pin I/O dua arah dan pin fungsi khusus, yaitu komparator analaog, interupsi eksternal, dan komunikasi serial 7. Reset merupakan pin yang digunakan untuk me-reset mikrokontroler 8. XTAL1 dan XTAL2 sebagai pin masukan clock eksternal. Suatu
mikrokontroler membutuhkan sumber detak (clock) agar dapat
6
mengeksekusi instruksi yang ada di memeori. Semakin tinggi nilai kristalnya, semakin cepat mikrokontroler tersebut 9. AVCC sebagai pin masukan tegangan untuk ADC 10. AREF sebagai pin masukan tegangan referensi 2.1 Sistem Gerak Tank Sistem gerak Tank merupakan kombinasi dari tiga bagian, yaitu drive sprocket, idler sprocket, dan track. Drive sprocket adalah sprocket yang berhubungan langsung dengan motor, idler sprocket adalah sprocket yang membantu pergerakan track. Track merupkan bagian yang menghubungkan idler sprocket dan drive sprocket serta mempunyai kontak langsung terhadap permukaan lantai yang dilaluinya. Berikut drive sprocket, idler sprocket, dan track ditunjukkan pada Gambar 2.5 (Halim, 2007).
(a)
(b)
(c)
Gambar 2.5. (a) drive sprocket, (b) idler sprocket (c) track 2.1 Sensor UltraSonic and Infrared Ranger (USIRR)
DT-SENSE UltraSonic and InfraRed Ranger merupakan modul sensor pengukur jarak dengan media gelombang ultrasonik dan dapat dihubungkan dengan maksimum 2 buah infrared ranger (Sharp GP2D12). Modul ini dapat dengan mudah dihubungkan ke berbagai sistem berbasis mikrokontroler dan hanya membutuhkan 1 pin I/O saja. Modul ini dapat digunakan dalam aplikasi pengukur jarak, pintu otomatis, sekuriti, robot cerdas, dan lain-lain. DT-SENSE UltraSonic and InfraRed ditunjukan pada Gambar 2.6.
5
Gambar 2.6. Sensor UltraSonic and InfraRed Ranger 2.2 Sensor UVTRON Flame Detector
Hamamatsu UVTron Flame Detector dan rangkaian driver dapat mendeteksi api dari lilin atau punting rokok dalam jarak 5 meter. Biasanya di gunakan sebagaia alat untuk mendeteksi sumber api. Tabung UVTron bekerja ketika katoda diberikan sinyal ultraviolet. Fotoelektron akan dipancarkan dari katoda oleh efek fotoelektron dan dipercepat ke anoda menggunakan medan listrik. Ketika tegangan diberikan, medan magnet meningkat, medan listrik semakin besar, dan energi kinetik elektron juga menjadi besar untuk mengionisasi molekul gas tabung untuk bertubrukan. Elektron yang dibangkitkan oleh ionisasi dipercepat yang membuat elektron mengionisasi molekul lainnya sebelum mencapai anoda. Berikut bentuk fisik sensor UVTron terlihat pada Gambar 2.7 (http://gedex.web.id/archives/2008/05/26/hamamatsuuv-tron-dan-avr/).
Sumber : http://gedex.web.id/archives/2008/05/26/hamamatsu-uv-tron-dan-avr/
7
Gambar 2.7. UVTron Flame Detector 2.3 Motor Servo
Motor servo biasanya digunakan untuk robot berkaki, berlengan atau sebagai aktuator pada mobile robot. Motor servo terdiri dari sebuah motor DC, beberapa gear, sebuah potensiometer, sebuah output shaft dan sebuah rangkaian kontrol elektronik. Motor servo dikemas dalam berbentuk segi empat dengan sebuah output shatf motor dan konektor dengan 3 kabel yaitu power, control, dan ground. Gear motor servo ada yang terbuat dari plastik, metal atau titanium. Di dalam motor servo terdapat potensiometer yang digunakan sebagai sensor posisi. Potensiometer tersebut dihubungkan dengan output shatf untuk mengetahui posisi aktual shaft. Ketika motor dc berputar, maka output shaft juga berputar dan sekaligus memutar potensiometer.
Rangakaian
kontrol
kemudian
dapat
membaca
kondisi
potensiometer tersebut untuk mengetahui posisi aktual sahft. Jika posisinya dengan yang diinginkan, maka motor dc akan berhenti. Sudut operasi motor servo (operating angle) bervariasi tergantung jenis motor servo. Ada 2 jenis motor servo yaitu: a. Motor Servo Standart
Yaitu motor servo yang mampu bergerak CW dan CCW dengan sudut operasi tertentu, misal 600, 900, atau 1800. Sering dipakai pada sistem robotika misalnya untuk membuat “Robot Arm”(robot lengan). b. Motor Servo Continuous
Yaitu motor servo yang mampu bergerak CW dan CCW tanpa batasan sudut operasi (berputar secara kontinyu). Sering dipakai untuk mobile robot (Andrianto, Heri. 2008). Motor servo biasanya menggunakan tegangan supply 4.8 hingga 7.2 volt. Berikut bentuk fisik motor servo terlihat pada Gambar 2.8.
5
Gambar 2.8. Motor Servo 2.1 Software Pemrograman dan Software Downloader
Software pemrograman adalah suatu program yang digunakan untuk menulis program. Salah satu software-nya yaitu CodeVisionAVR program ini mendukung berbagai macam jenis mikrokontroler diantaranya mikrokontroler ATmega8535.
Program
ini
juga
mendukung
berbagai
macam
bahasa
pemrograman diantaranya adalah bahasa assembler dan bahasa C. Software
Downloader
adalah
software
yang
digunakan
untuk
mendownload program yang berekstensi “.hex” ke mikrokontroler salah satunya jenis mikrokontroler ATmega8535. 2.7.1. Cara men-download progam ke mikrokontroler
Rangkaian Minimum System ATmega8535 sudah terdapat rangkaian downloadernya yaitu tinggal menghubungkan minimum sytem dengan port DB25. Langkah pertama yang dilakukan adalah membuat listing program yang dibuat menggunakan software CodeVisionAVR Evaluation yang menggunakan bahasa C, seperti tampak pada Gambar 2.9.
5
Gambar 2.9 Screenshot CodeVisionAVR Evaluation Dilakukan proses kompile listing untuk mengecek error program yang telah ditulis. Jika tidak terjadi error maka akan nampak seperti Gambar 2.10. Setelah itu dilakukan proses penyimpanan program. Program tersebut akan berekstensi “.c”, agar file dapat didownload ke mikrokontroler ATmega8535 file tersebut harus berekstensi “.hex”, untuk mengubahnya menjadi file yang berekstensi “.hex”, yaitu dengan cara “build” atau dengan menekan tombol “Shift+ f9”, maka akan tampak seperti pada Gambar 2.11.
5
Gambar 2.10 Screenshot proses Compile
Gambar 2.11 Screenshot proses “Build”
6
Pada langkah selanjutnya, untuk proses pengisian program (flash programing) ke mikrokontroler ATmega8535 yaitu dengan cara menekan tombol “program the chip”, maka akan tampil seperti yang ditunjukkan pada Gambar 2.12 (a) dan (b).
(a)
(b)
Gambar 2.12 Proses Flash programing