BAB II LANDASAN TEORI

dokumen-dokumen yang mirip
BAB II LANDASAN TEORI

BAB 2 LANDASAN TEORI

BAB II LANDASAN TEORI

PENERAPAN LEGO MINDSTROMS NXT FORKLIFT DAN CONVEYOR ROBOT UNTUK MENSORTIR BARANG MENGGUNAKAN SENSOR WARNA

BAB II KECERDASAN-BUATAN ROBOT PENCARI JALUR

Gambar 2.1 Robot Lego Mindstroms EV3

PERANCANGAN APLIKASI MOBILE REMOTE CONTROL BERBASIS ANDROID PADA ROBOT LEGO MINDSTORMS NXT 2.0

BAB III PERENCANAAN PERANGKAT KERAS DAN LUNAK

BAB II DASAR TEORI. Arduino adalah pengendali mikro single-board yang bersifat opensource,

Pemrograman Robot LEGO (RCX & NXT)

BAB III PERANCANGAN ALAT

BAB II LANDASAN TEORI

BAB III ANALISIS DAN PERANCANGAN

BAB III PERANCANGAN DAN PEMBUATAN ALAT

BAB III PERANCANGAN DAN PEMBUATAN APLIKASI

BAB III PERANCANGAN DAN PEMBUATAN ALAT

BAB III METODE PENELITIAN

BAB I PENDAHULUAN. mempertegas hubungan yang erat antara robot dan otomatisasi.

BAB III PERANCANGAN KECERDASAN-BUATAN ROBOT PENCARI JALUR

BAB III METODE PENELITIAN. pada blok diagram tersebut antara lain adalah webcam, PC, microcontroller dan. Gambar 3.1 Blok Diagram

BAB IV PENGUJIAN ALAT DAN ANALISA

MOTOR DRIVER. Gambar 1 Bagian-bagian Robot

PERANCANGAN DAN IMPLEMENTASI COMPUTER VISION PADA ROBOT PENDETEKSI OBJEK BERBASIS SMARTPHONE ANDROID DAN MIKROKONTROLER ATMEGA128

IMPLEMENTASI MIKROKONTROLER PIC 16F877A DALAM PERANCANGAN ROBOT OBSTACLE AVOIDANCE

Grafik hubungan antara Jarak (cm) terhadap Data pengukuran (cm) y = 0.950x Data pengukuran (cm) Gambar 9 Grafik fungsi persamaan gradien

BAB III PERANCANGAN ALAT. menjadi acuan dalam proses pembuatannya, sehingga kesalahan yang mungkin

BAB III PERANCANGAN. Pada bab ini akan dibahas mengenai beberapa hal dasar tentang bagaimana. simulasi mobil automatis dirancang, diantaranya adalah :

BAB IV PENGUJIAN DAN ANALISA RANGKAIAN

ROBOT ULAR PENDETEKSI LOGAM BERBASIS MIKROKONTROLER

BAB IV PENGUJIAN ALAT DAN ANALISA

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

BAB 3 PERANCANGAN SISTEM. Computer. Parallel Port ICSP. Microcontroller. Motor Driver Encoder. DC Motor. Gambar 3.1: Blok Diagram Perangkat Keras

BAB III PERANCANGAN DAN PEMBUATAN ALAT

BAB 3 PERANCANGAN SISTEM

BAB 3 PERANCANGAN ALAT DAN PROGRAM

III. METODE PENELITIAN. Penelitian dan perancangan tugas akhir ini dilakukan di Laboratorium Terpadu

BAB 4 IMPLEMENTASI DAN EVALUASI. Pada Bab IV ini menjelaskan tentang spesifikasi sistem, rancang bangun

ROBOT YANG DIPROGRAM OLEH WINDOW PARAMETER MELALUI MEDIA INFRA RED

BAB IV HASIL DAN UJI COBA

BAB II LANDASAN TEORI

BAB III MIKROKONTROLER

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

Pembuatan Sistem Pengendali 4 Motor DC Penggerak 4 Roda Secara Independent Berbasis Mikrokontroler AT89C2051

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

BAB IV ANALISA DAN PENGUJIAN ALAT

Written by Mada Jimmy Monday, 24 August :40 - Last Updated Thursday, 18 November :51

Perancangan Model Alat Pemotong Rumput Otomatis Berbasis Mikrokontroler AT89C51

BAB IV PENGUJIAN ALAT DAN ANALISA

BAB I PENDAHULUAN. Mikrokontroler merupakan pengontrol mikro atau disebut juga Single Chip

III. METODE PENELITIAN. Teknik Elektro Universitas Lampung dilaksanakan mulai bulan Desember 2011

BAB 4 IMPLEMENTASI DAN EVALUASI. menggunakan serial port (baudrate 4800bps, COM1). Menggunakan Sistem Operasi Windows XP.

BAB IV PERANCANGAN. 4.1 Flowchart

BAB III PERANCANGAN ALAT

BAB III PERANCANGAN DAN PEMBUATAN ALAT

RANCANG BANGUN ROBOT PENGIKUT GARIS DAN PENDETEKSI HALANG RINTANG BERBASIS MIKROKONTROLER AVR SKRIPSI

BAB III PEMBUATAN ALAT Tujuan Pembuatan Tujuan dari pembuatan alat ini yaitu untuk mewujudkan gagasan dan

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

BAB I PENDAHULUAN. 1.1 Latar Belakang Masalah

BAB III PERANCANGAN DAN PEMBUATAN ALAT

BAB III PERANCANGAN SISTEM

BAB III PERANCANGAN SISTEM

BAB II DASAR TEORI. mikrokontroler yang berbasis chip ATmega328P. Arduino Uno. memiliki 14 digital pin input / output (atau biasa ditulis I/O,

ROBOT CERDAS BERKAKI PEMADAM API

BAB II DASAR TEORI. Gambar 2.1. Smartphone Android Sony Xperia Mini st15i

BAB III ANALISIS DAN DESAIN SISTEM

BAB IV PENGUJIAN ALAT DAN PEMBAHASAN

BAB IV HASIL DAN UJI COBA

BAB III PERANCANGAN PERANGKAT KERAS MOBILE-ROBOT

BAB III PERANCANGAN SISTEM

BAB III PERANCANGAN DAN PEMBUATAN ALAT

BAB III ANALISIS DAN DESAIN SISTEM

BAB 3 PERANCANGAN SISTEM

Media Informatika Vol. 15 No. 2 (2016) SIMULASI ROBOT LINE FOLLOWER DENGAN PROTEUS. Sudimanto

BAB III PERANCANGAN DAN PEMBUATAN ALAT

BAB III PERANCANGAN SISTEM

BAB III DESKRIPSI DAN PERANCANGAN SISTEM

BAB III METODE PENELITIAN

BAB III PERANCANGAN DAN REALISASI PERANGKAT KERAS

Percobaan 2 I. Judul Percobaan Sistem Kendali Digital Berbasis Mikrokontroler

BAB III ANALISA DAN PERANCANGAN

BAB 4 HASIL DAN PEMBAHASAN

BAB IV PENGUJIAN DAN ANALISA RANGKAIAN KONTROL PANEL

BAB II LANDASAN TEORI

BAB III PERANCANGAN ALAT

BAB III PERANCANGAN SISTEM. untuk efisiensi energi listrik pada kehidupan sehari-hari. Perangkat input untuk

III. METODE PENELITIAN. Teknik Elektro Universitas Lampung dilaksanakan mulai bulan Mei 2012 sampai

BAB III PERANCANGAN Bahan dan Peralatan

BAB III PENGENDALIAN GERAK MEJA KERJA MESIN FRAIS EMCO F3 DALAM ARAH SUMBU X

PERANCANGAN ROBOT OKTAPOD DENGAN DUA DERAJAT KEBEBASAN ASIMETRI

Indra manusia: penglihatan, suara, sentuhan, rasa, dan bau memberikan kami informasi penting berfungsi dan bertahan Robot sensor: mengukur

AN-0011 LINE TRACKER ROBOT DENGAN MENGGUNAKAN UNIVERSAL DELTA ROBO KITS

BAB II TINJAUAN PUSTAKA

Perancangan Robot Pemadam Api Divisi Senior Berkaki

BAB III PERENCANAAN DAN PEMBUATAN PERANGKAT LUNAK

BAB IV ANALISIS DAN PEMBAHASAN

BAB III METODE PENELITIAN DAN PERANCANGAN SISTEM. patok, serta pemasangan sensor ultrasonik HC-SR04 yang akan ditempatkan pada

BAB III PERANCANGAN SISTEM

BAB IV HASIL KERJA PRAKTEK. elektronika dan sensor sebagai alat pendukung untuk membuat sebuah remote control

Tutorial Eagle. Berikut jendela baru

BAB III PERENCANAAN DAN PERANCANGAN

Transkripsi:

BAB II LANDASAN TEORI 2.1. Perkembangan Robot Istilah robot muncul pertama kali pada Czecholoslovakian satirical play, Rossum s Universal Robots, oleh Karel Capek pada tahun 1920. Robot pada pementasan ini cenderung berperilaku seperti manusia. Berangkat dari hal tersebut, terlihat beberapa cerita fiksi ilmiah yang melibatkan robot dengan emosi manusia dalam masyarakat. Hal tersebut berubah ketika General Motors memasang robot pertamanya di pabrik manufakturingnya pada tahun 1961. Mesin-mesin automatis ini merepresentasi image yang seluruhnya berbeda dari robot berbentuk manusia. Ketika para pencipta robot pertama kali mencoba meniru manusia dan hewan, mereka menemukan bahwa hal tersebut sangatlah sulit, membutuhkan tenaga perhitungan yang jauh lebih banyak dari yang tersedia pada masa itu. Jadi, penekanan perkembangan diubah ke bidang riset lainnya. Robot sederhana beroda digunakan untuk melakukan eksperimen dalam tingkah laku, navigasi, dan perencanaan jalur. Teknik navigasi tersebut telah berkembang menjadi sistem kontrol robot otonom yang tersedia secara komersial, contoh paling mutakhir dari sistem kontrol navigasi otonom yang tersedia sekarang ini termasuk sistem navigasi berdasarkan laser dan VSLAM (Visual Simulraneous Localization and Mapping) dari Activ Media Robotics dan Evolution Robotics. Ketika para teknisi siap untuk mencoba robot berjalan kembali, mereka mulai dengan heksapoda dan platform berkaki banyak lainnya. Robot-robot 6 P a g e

tersebut meniru serangga dan arthropoda dalam bentuk dan fungsi. Tren menuju jenis badan tersebut menawarkan fleksibilitas yang besar dan terbukti dapat beradaptasi dengan berbagai macam lingkungan, tetapi biaya dari penambahan kerumitan mekanikal telah mencegah pengadopsian oleh para konsumen. Dengan lebih dari empat kaki, robot-robot ini stabil secara statis yang membuat mereka bekerja lebih mudah. Tujuan dari riset robot berkaki dua adalah mencapai gerakan berjalan menggunakan gerakan pasif-dinamik yang meniru gerakan manusia. Perkembangan hebat telah dibuat dalam robot medis, dengan dua perusahaan khusus, Computer Motion dan Intuitive Surgical, yang menerima pengesahan peraturan di Amerika Utara, Eropa, dan Asia atas robot-robotnya untuk digunakan dalam prosedur pembedahan minimal. Tempat lain dimana robot disukai untuk menggantikan pekerjaan manusia adalah dalam eksplorasi laut dan eksplorasi antariksa. Untuk tugas-tugas ini, bentuk tubuh artropoda umumnya disukai. Mark W. Tilden dahulunya spesialis Laboratorium Nasional Los Alamos, membuat robot murah dengan kaki bengkok tetapi tidak menyambung, sementara orang lain mencoba membuat kaki kepiting yang dapat bergerak dan tersambung penuh. Robot bersayap eksperimental dan contoh lain mengeksploitasi biomimikri juga dalam tahap pengembangan dini. Yang disebut nanomotor dan kawat cerdas diperkirakan dapat menyederhanakan daya gerak secara drastis, sementara stabilisasi dalam penerbangan nampaknya cenderung diperbaiki untuk riset militer teknologi permata-mataan. 7 P a g e

2.2. Perancangan Robot Mobil Salah satu jenis robot mobil yang umum digunakan adalah robot mobil dengan sistem penggerak differensial. Alasan utamanya karena relatif fleksibel dalam melakukan manuver. Gambar 2.1. Posisi dan orientasi robot mobile dalam sistem koordinat cartesian Untuk panjang jari-jari roda r, serta kecepatan rotasi roda kanan, dan kiri berturut-turut ω R dan ω L, maka kecepatan linier roda kanan dan kiri dapat dicari dengan persamaan berikut : (1) (2) Ketika robot melakukan gerak memutar sesaat dengan panjang jari-jari R yang diukur dari pusat rotasi dan titik pusat kedua roda, kecepatan rotasi dapat dihitung sebagai : (3) (4) 8 P a g e

Kecepatan linier robot v(t) dan kecepatan rotasi robot ω(t) dapat diketahui berdasarkan kedua kecepatan linier roda. Secara matrik dapat disajikan sebagai berikut : (5) Persamaan (5) di atas memperlihatkan relasi kinematika langsung antara kecepatan linier roda-roda robot terhadap kecepatan linier dan angular robotnya, sedangkan persamaan (6) di bawah memperlihatkan relasi sebaliknya. (6) Syarat mutlak pengendalian posisi robot mobil adalah diketahuinya posisi dan orientasi robot tiap saat. Salah satu solusinya adalah dengan menghitung jarak tempuh roda setiap waktu. Jarak tempuh roda kiri (S L ), roda kanan (S R ), dan jarak rata-rata (S) dalam kawasan waktu berturut-turut sebagai berikut : (7) (8) (9) Pendekatan rumus untuk orientasi, posisi koordinat x, dan koordinat y berturut-turut sebagai berikut. (10) (11) (12) 9 P a g e

2.3. Robot Lego Mindstorm NXT LEGO Mindstorm NXT adalah perangkat robot yang pertama dirilis sebagai robot edukasi pada akhir Juli 2006. Seri NXT ini merupakan penerus dari seri sebelumnya, yaitu RIS (Robotics Invention System). Robot lego mindstorm NXT dapat diprogram sesuai dengan keinginan. Adapun beberapa bahasa pemrograman yang dapat dijalankan dalam lego NXT yaitu NXT-G, Next Byte Codes (NBC), Not exactly C (NXC), RobotC, lejos NXJ, Microsoft Robotics Studio, dan masih banyak lagi. Robot Lego ini terdiri dari komponen-komponen yang bisa di lepas pasang, sehingga kita bisa membuat berbagai bentuk robot, misalnya : Gambar 2.2. Contoh bentuk robot lego mindstorm NXT 10 P a g e

Komponen-komponen yang ada di robot lego mindstorm NXT adalah : 2.3.1. Brick Gambar 2.3 Brick Brick adalah komponen paling penting dari robot NXT, karena berfungsi sebagai pengendali (otak dan sumber tenaga robot NXT). Program yang sudah dibuat dapat di-upload ke NXT Brick untuk di compile. Spesifikasi teknis dari NXT Brick, yaitu : 32-bit AT91SAM7S256 (ARM7TDMI) main microprocessor @ 48 MHz (256 KB flash memory, 64 KB RAM) 8-bit Atmega48microcontroller @ 4 MHz (4 KB flash memory, 512 Bytes RAM) LCD display 100 x 64 piksel Bluetooth Satu port USB 2.0 Empat port input : port 1, port 2, port 3, dan port 4 Tiga port output : port A, port B, dan port C Speaker terintegrasi untuk mengeluarkan output suara Empat tombol : cancel, OK, left, dan right Penggunaan dua processor membuat Lego Mondstorm NXT dapat menjalankan lebih dari satu Thread pada program. Hal ini disebabkan oleh adanya 11 P a g e

2 (dua) processor yang mengerjakan fungsi yang berbeda pada saat bersamaan. Mikrokontroler ARM7 berfungsi sebagai master controller yang fungsi utamanya mengatur jalur komunikasi. Fungsi dari mikrokontroler AVR adalah pengatur daya, pengatur Pulse Width Modulation (PWM) untuk mngendalikan ketiga motor, serta Analog to Digital Converter (ADC) dari terminal masukan. Gambar 2.4. Diagram blok NXT brick Brick dapat menerima masukan dari 4 sensor, dan menjalankan 3 motor sekaligus, dengan bentuk seperti di bawah ini. Gambar 2.5. Brick dengan 4 sensor dan 3 motor 12 P a g e

Tampilan pada layar LCD brick adalah sebgai berikut : Gambar 2.6. Tampilan pada layar LCD brick Brick dapat kita ibaratkan seperti CPU pada komputer, yang berfungsi untuk mengolah data. Brick berfungsi untuk mengendalikan jalannya robot sesuai dengan program yang kita buat. Pada pembuatan program dengan NXT kita dapat melakukannya dengan 2 cara : Membuat program secara langsung pada NXT Brick Membuat program melalui komputer, selanjutnya kita upload ke NXT Brick. Untuk program-program yang sederhana kita dapat membuatnya secara langsung pada NXT Brick, sedangkan untuk program-program yang kompleks dan rumit kita dapat membuatnya di komputer terlebih dahulu. 13 P a g e

Cara membuat program sederhana langsung pada NXT brick, yaitu : Gambar 2.7. Cara membuat program pada NXT brick Contoh pemrograman yang bisa dibuat langsung pada brick adalah program untuk robot mini golf. Dimana robot tersebut bergerak seperti orang yang sedang bermain golf. Langkah-langkah untuk membuat robot mini golf tersebut sebagai berikut. Gambar 2.8. Contoh pemrograman pada brick 14 P a g e

2.3.2. Motor Motor pada lego mindstrom NXT berfungsi untuk menggerakkan bagian robot, seperti memutar roda atau menjadi sendi. Satu brick bisa dipasang hingga 3 (tiga) buah motor. Motor pada NXT Mindstorm tidak menggunakan motor DC biasa. Motor DC memiliki keterbatasan dalam hal kemampuan torsi putar, karena motor DC tidak mempunyai umpan balik untuk mengadaptasi beban pada motor DC. Pada robot lego mindstorm NXT, motor yang dipakai adalah motor DC servo yang dilengkapi dengan sebuah encoder yang berfungsi sebagai umpan balik, sehingga pusat pengendalian dapat memberikan arus yang sesuai dengan beban pada motor. Kecepatan sudut maksimum motor adalah satu putaran per detik. Servo juga dapat digunakan untuk menghitung drajat perputaran atau rotasi. Akurasi dari servo motor mencapai kurang lebih satu derajat. Dalam perkembangannya, motor servo dipadukan dengan susunan gearing tertentu untuk mendapatkan torsi akhir yang lebih besar. Torsi yang besar yang didapat dalam waktu singkat merupakan kelebihan motor servo. Kekurangan motor servo adalah kurangnya akurasi sehingga diperlukan suatu pengendali yang dapat meningkatkan keakurasian. Gambar di bawah ini menunjukkan motor lego mindstorm NXT. Gambar 2.9. Motor Dalam perkembangannya motor servo dipadukan dengan susunan gearing tertentu untuk mendapatkan torsi akhir yang lebih besar. Torsi yang besar yang 15 P a g e

didapat dalam waktu singkat merupakan kelebihan motor servo. Kekurangan motor servo adalah kurangnya akurasi sehingga diperlukan suatu pengendali yang dapat meningkatkan keakurasian. Dari gambar di bawah, maka kita dapat melihat konstruksi bagian dalam motor pada robot lego mindstorm NXT. Gambar 2.10. Konstruksi bagian dalam motor 2.3.3. Sensor Sentuh Sensor sentuh bekerja seperti indera peraba manusia. Sensor sentuh bekerja berdasarkan penekanan dari saklar, seperti yang terlihat pada gambar 2.11. Saklar yang digunakan pada sensor ini merupakan saklar normally off, yang artinya jika saklar ditekan, maka akan mengindikasikan logika 1 dan jika dilepas, maka akan berlogika 0. Gambar 2.11. Saklar sentuh Guna sensor sentuh ini adalah untuk membuat suatu aksi dari robot yang jika sensor tersebut ditekan, maka robot akan melakukan gerakan/aksi tertentu, tetapi jika sensor tersebut dilepas, maka robot akan melakukan aksi 16 P a g e

lainnya. Sensor ini dapat kita kombinasikan dengan sensor yang sama atau dengan sensor yang berbeda.. Gambar 2.12. Sensor Sentuh 2.3.4. Sensor Ultrasonik Sensor Ultrasonik adalah sensor yang memanfaatkan gelombang ultrasonik sebagai alat navigasi. Gelombang ultrasonik adalah gelombang yang memiliki frekuensi lebih dari 20 KHz. Beberapa hewan tertentu dapat mendengarkan gelombang ultrasonik, seperti lumba-lumba dan kelelawar. Sensor ultrasonik pada lego mindstorm NXT berbentuk seperti mata. Mata sebelah kanan berfungsi sebagai pemancar gelombang (transmitter) dan mata sebelah kiri berfungsi sebagai penerima gelombang (receiver). Gambar 2.13. Sensor Ultrasonik 2.3.5. Sensor Cahaya Sensor cahaya adalah sensor yang digunakan untuk mendeteksi dan mengukur intensitas cahaya atau gelap terang. Sensor cahaya pada lego mindstorm NXT terdiri dari dua komponen, yaitu LED dan phototransistor. 17 P a g e

Sensor ini dapat membedakan terang dan gelap, serta mengukur intensitas cahaya di suatu ruangan maupun pada permukaan yang berwarna. Sensor ini dapat dilihat pada gambar berikut. Gambar 2.14. Sensor Cahaya Sensor didasarkan pada prinsip yang berbeda. LEGO sensor menggunakan LED RGB, dan berturut-turut bersinar lampu merah, hijau dan biru pada objek. Cahaya yang dipantulkan dikumpulkan oleh sensor peka cahaya dengan panjang gelombang semua. HiTechnic memiliki LED putih, dan sebuah chip warna khusus yang sensitif. Chip ini memiliki tiga daerah sensitif tercakup merah, hijau dan filter biru. Keuntungan tambahan dari metode HiTechnic dapat mendeteksi warna cahaya yang dikirim di atasnya (dalam mode pasif, dengan LED putih mematikan). 2.3.6. Sensor Suara Sensor suara adalah sensor yang digunakan untuk mendeteksi adanya suara. Sensor ini disesuaikan dengan kemampuan pendengaran manusia, yaitu antara 20 Hz sampai 20 KHz. Sensor suara pada lego midstorm NXT digunakan untuk mengukur intensitas suara lingkungan. Sensor ini dapat mendeteksi suara sampai maksumum 90 desibel (db). Gambar di bawah ini merupakan sensor suara pada lego mindstorm NXT. 18 P a g e

Gambar 2.15. Sensor Suara Sensor suara berfungsi seperti telinga, yaitu untuk menangkap suara. Sensor suara dalam Lego Mindstorms NXT ini mampu untuk mengukur kenyaringan dari lingkungan robot. Dengan menggunakan sensor ini, robot lego mindstorms NXT dapat berpindah atau bergerak ke area yang lebih tinggi atau menurunkan kenyaringannya tergantung pada kode NXT-G yang telah dibuat. Sensor suara mengukur tingkat volum pada skala 0 sampai 100, 100 menjadi yang sangat keras, 0 menjadi yang sepenuhnya diam. Sensor suara mampu untuk mengukur kenyaringan berciri sama dalam desibel (db) dan dba (frekwensi sekitar 3-6 khz, yang mana telinga manusia adalah yang paling sensitif). 2.3.7. Konektor Sensor dihubungkan ke NXT brick menggunakan suatu 6-position modular connector yang mengutamakan kedua antarmuka digital dan analog. Antarmuka yang analog adalah backward-compatible (dengan menggunakan suatu adapter) dengan Robotics Invention System yang lama. Antarmuka yang digital mampu untuk kedua komunikasi I 2 C dan RS-485. 19 P a g e

Gambar 2.16. NXT sensor interface pin-out 2.3.8. Komponen Tambahan Selain komponen utama, ada juga komponen tambahan untuk membuat robot lego mindstorm NXT. Komponen-komponen yang terdapat di robot lego mindstorm NXT seara lengkap, yaitu : Gambar 2.17. Komponen robot NXT 20 P a g e

2.4. Program NXT-G Untuk menjalankan robot NXT, pertama-tama kita harus memprogram robot tersebut dengan program yang kita inginkan. Ada banyak bahasa pemrograman yang dapat digunakan untuk memprogram NXT, salah satunya adalah NXT-G. NXT-G atau LEGO MINDSTROMS Education NXT adalah software untuk memogram NXT Brick dari komputer yang dapat dilakukan secara grafikal. Perangkat lunak ini adalah cukup untuk pemrograman dasar, seperti driving motor, membuat sensor sebagai masukan/input, membuat kalkulasi/perhitungan, dan mempelajari struktur program sederhana dan aliran kontrol. MINDSTORMS NXT digunakan untuk menciptakan perangkat lunak yang mengendalikan tindakan dari perangkat keras robot. Software NXT MINDSTORMS adalah suatu sistem instruksi assembling visual/icon. Aliran arah yang pada umumnya bergerak dari kiri ke kanan. Perangkat lunak ini adalah suatu contoh dari suatu program yang di-compile. Program yang dibuat di NXTharus dicompile dan di-download ke NXT Brick sebelum Robot melaksanakan program itu. Gambar 2.18. Tampilan awal program NXT-G 21 P a g e

Gambar di atas merupakan overview dari software NXT-G. Pada bagian yang bernomor 1 (satu) adalah bagian untuk memulai suatu program baru. Sebelum memulai, nama file dapat diubah terlebih dahulu, setelah itu tekan tombol Go untuk menuju ke lembar kerja baru. Untuk bagian yang bernomor 2 (dua), jika kita sebelumnya telah memiliki file program, maka dapat kita buka dengan cara memilih nama file yang kita punya terlebih dahulu sebelum menekan tombol Go. Gambar 2.19. Tampilan lembar kerja baru Gambar di atas adalah gambar saat kita menekan tombol Go pada bagian membuat lembar kerja baru. Block function yang dapat digunakan untuk memprogram adalah yang berada di sebelah kiri. Cara untuk memprogramnya cukup dengan klik blok fungsi yang kita inginkan kemudian didrag menuju awal rangkaian program start, kemudian letakkan di tempat yang disediakan. 22 P a g e

Gambar 2.20. Memulai program di NXT-G Setelah kita memasang blok, maka pada panel bagian bawah akan muncul parameter dari blok tersebut (masing-masing blok memiliki parameter sendiri), dari parameter tersebut, dapat kita atur berbagai kondisi yang dapat terjadi sesuai dengan keinginan kita. Berikut ini adalah penjelasan beberapa Block yang akan digunakan untuk melakukan program pada project ini. 2.4.1. Move Block Gambar 2.21. Move block 23 P a g e

Salah satu block yang dapat kita pakai untuk memprogram robot adalah Move Block. Move Block memiliki fungsi untuk membuat motor pada robot bekerja (maju atau mundur). Jika disesuaikan dengan model robot, kerja motor dapat membuat variasi gerak pada robot. Selain maju dan mundur, robot juga dapat diperintahkan berbelok hanya dengan menggunakan satu blok saja. Biasanya untuk membuat hasil yang baik, untuk melakukan belok digunakan dua buah move block. Gambar 2.22. Parameter move block Gambar di atas adalah parameter yang terdapat pada Move Block. Pada parameter tersebut, dapat kita atur port motor mana saja yang ingin dijalankan, arah gerak motor, steering pada motor, kecepatan gerak motor, durasi gerak motor, dan perintah sebelum melanjutkan ke blok berikutnya. 2.4.2. Switch Block Switch Block merupakan sebuah blok yang memiliki kondisi lebih dari satu. Dalam beberapa bahasa pemrograman lain logika dari switch block ini sama dengan logika if then else. Switch block ini juga memiliki dua kontrol yang berbeda, yaitu sensor dan value. Pada switch block ini, program yang akan berjalan adalah program pada kondisi yang telah terpenuhi. Jika sudah terpenuhi satu kondisi, maka program itu saja yang akan berjalan sampai switch block menemukan kondisi berikutnya, namun jika hanya 1 (satu) kondisi saja 24 P a g e

yang terpenuhi sampai akhir, maka program yang terdapat pada kondisi lainnya tidak akan berjalan. Berikut adalah gambar kedua switch block tersebut. Gambar 2.23. Switch block dengan control sensor dan value Untuk switch block yang menggunakan control sensor, parameternya tergantung dari jenis sensor yang digunakan. Untuk blok yang menggunakan control value, parameternya tergantung pada tipe dari value yang digunakan. Berikut adalah masing-masing parameter dari switch block tersebut. Gambar 2.24. Parameter switch block dengan control sensor Gambar 2.25. Parameter switch block dengan control value 25 P a g e

2.4.3. Loop Block Loop block berfungsi untuk melakukan perulangan pada suatu program. Pada beberapa bahasa pemrograman lain, logika loop block sama dengan logika repeat until. Loop block juga memiliki beberapa control, yaitu forever, sensor, time, count, dan logic. Berikut adalah gambar-gambarnya. Gambar 2.26. Loop block dengan control forever, sensor, time, count, dan logic Masing-masing loop block tersebut memiliki parameter yang hampir sama, terutama yang memiliki control time dan count. Untuk control logic, syarat yang dapat dimasukkan hanya true dan false saja. Untuk control sensor, parameternya tergantung dari masing-masing jenis sensor -nya. Untuk control forever, program akan diulang selamanya, untuk menghentikannya, kita harus melakukan terminating program langsung pada robot. Berikut adalah parameter loop block dengan control time. Gambar 2.27. Parameter loop block dengan control time 26 P a g e

2.4.4. Download, Run, dan Stop Setelah selesai membuat program, maka program tersebut dimasukkan ke dalam brick dengan cara menggunakan ikon di bawah ini. Namun, harus menggunakan kabel data untuk memindahkan program dari komputer ke brick. Gambar 2.28. Ikon untuk memasukkan program ke brick Gambar no 1 di atas merupakan ikon untuk menampilkan NXT window, seperti gambar di bawah ini. Gambar 2.29. NXT window 27 P a g e

Gambar no 2 adalah ikon untuk download dan run selected. Ikon ini berfungsi untuk memasukkan program ke dalam brick dan langsung menjalankannya, namun program yang dimaksud adalah program tertentu yang sudah dipilih saja, bukan seluruh program. Gambar no 3 adalah ikon untuk download seluruh program dalam file yang sedang dibuka. Apabila menggunakan ikon ini, robot tidak akan langsung bergerak sesuai program, karena hanya memindahkan file saja. Gambar no 4 adalah ikon stop. Digunakan untuk menghentikan program yang sedang dijalankan. Gambar no 5 adalah ikon download and run. Ikon ini berfungsi untuk menyimpan program yang sudah dibuat dalam satu file ke dalam memory brick dan langsung menjalankan program tersebut. 28 P a g e