TUTORIAL CARA MEMBUAT ROBOT.
LANGKAH MEMBUAT ROBOT DARI NOL.
Bagi
para pemula di bidang robotika dan mikrokontroler , biasanya selalu bertanya :
1.
Bagaimana cara memulai membuat robot ?
2.
Berapa biaya yang diperlukan untuk membuat robot ?
3.
Apa yang harus saya pelajari terlebih dahulu ?
4.
Buku apa yang membahas lengkap mengenai robot ?
5.
Bagaimana cara membuat dan mengupload program kedalam mikrokontroler ?
6.
Apa itu mikrokontroler ? apa hubungannya dengan robot ?
Dan
umumnya jika kita tanyakan ke forum diskusi online , jawabannya kurang
memuaskan.
masih
membingungkan , apalagi jika kita bukan siswa jurusan teknik elektronika atau
komputer.
Saya
coba urutkan hal yang mungkin wajib kita baca jika kita ingin mulai belajar
tentang membuat robot.
1. Cara
memulai pembuatan robot ,
Beli
komponen dasarnya dulu. Ini penting , karena pada akhirnya anda harus
praktekkan apa yang selama ini anda pelajari. Jadi tidak mungkin
hanya bertanya - tanya dan baca tutorial saja kita bisa bikin robot
Apa
saja yang harus dibeli ?
Pilih
satu proyek robot , misal Robot Line Follower ( Pengikut garis ) , Robot
penghindar rintangan ( Obstacle Avoidance ) , Robot pembaca sensor
( suhu , tekanan udara , detektor gas ).
( suhu , tekanan udara , detektor gas ).
Cari
cara pembuatannya di berbagai situs di Google. Gunakan bahasa Inggris agar
mudah mendapat materinya .
Berikut
Situs yang menyediakan Tutorial Robotik :
www.instructables.com
www.apcmag.com
www.letsmakerobot.com
Berikut
Situs asing yang menyediakan komponen robotik :
www.banggood.com
www.ebay.com
Ebay seller yang cukup baik ( murah produknya dan paket tiba dgn sukses )
diantaranya :
alice1101983
chip_partner
e_goto
electronics_lee
sure-hifi
Pemesanan via ebay
& Banggood menggunakan fasilitas Paypal dan kartu kredit Visa
Lamanya proses
pengiriman dari Ebay tergantung dari negara asal pengirim dan kota
kita selaku penerima
barang. Umumnya jika pesan dari seller China dan Hongkong lama
waktu pengiriman
sekitar 1 bulan untuk tiba di kawasan Jabodetabek . Untuk wilayah
lain , seperti di
Kalimantan , bisa sampai 3 bulan. Itu jika metodenya free shipping.
Ada opsi pengiriman
via express courier tinggal kontak sellernya saja.
Jika menggunakan
express courier seperti DHL , USPS bisa lebih cepat , tapi biayanya
tentu bertambah. Untuk
pembelian dibawah US$ 50 tidak kena pajak , tapi hanya kena
biaya bea cukai. Biasanya
berkisar Rp 5000 sd Rp 10000.
Alur belanja di Ebay :
masukkan username dan
password - klik kategori - ketik nama
barang yang dicari - klik
Opsi Buy it now , Free shipping - klik best match atau lowest
price - pilih barang
- masukkan shopping cart jika beli banyak jenis barang -
klik Buy it now -
otomatis masuk ke akun Paypal - bayar - Kartu kredit Visa Anda akan
menampilkan
tagihannya nanti.
barang dikirim - akan
ada surat dari kantor pos yg berisi pemberitahuan agar mengambil
paket di kantor pos
yang ditentukan atau kadang barang diantar langsung ke alamat.
Jika belum ada kabar
hingga 2 bulan , anda bisa tanyakan pada seller via form di Ebay.
Jika telah terkirim ,
berarti Anda tanyakan ke kantor pos dengan membawa nomer track
pengiriman atau jika
free shipping tanpa nomer tracking pun , titipkan saja no Hp pada
petugas pos agar
memberi kabar jika ada pengiriman buat Anda.
Jika meragukan barang
sampai atau tidak , Anda bisa meminta uang kembali ke Ebay.
Sebelum melakukan itu
sebaiknya berkomunikasi dulu dengan seller ybs.
Berikut
sejumlah situs lokal penyedia komponen robotik :
www.klinikrobot.com
www.klinik_robot.com
www.iseerobot.com
www.famosa.com
www.geraicerdas.com
www.toko-embedded.com
One-electronic
Tokopedia.
Para seller di Kaskus
dan Group Facebook .
Setidaknya ada beberapa
komponen dasar yang biasa dipakai , kita tidak perlu
membeli semuanya , karena
tergantung jenis robot yang mau dibuat ini diantaranya :
DC Gearbox Motor
Servo
Dual DC motor
controller
Roda dan Caster
PCB atau Breadboard
Sensor ( Sensor
Ultrasonik HC-SR05 , Sensor Infrared )
LCD 16x2 line
Baterai dan rumah
baterai
Sejumlah resistor ,
dioda , led , IC sesuai proyeknya.
Arduino boards (
Arduino Uno paling populer buat pemula )
Selain Arduino masih
banyak boards atau minimum system lain yang bisa digunakan.
Tetapi karena lebih
kompleks proses upload programmya , maka sementara buat pemula
boleh bermain dengan
Arduino dahulu .
Bisa juga beli Kit
Arduino yang sudah berisi komponen2 diatas.
Alat penunjangnya :
Adaptor
Komputer PC atau
Laptop
Solder dan bahan
pendukungnya.
Jika menggunakan
breadboard tidak perlu solder , hanya harus punya banyak
kabel jumper sebagai sarana untuk menghubungkan komponen elektroniknya.
kabel jumper sebagai sarana untuk menghubungkan komponen elektroniknya.
2. Biayanya
?
Ada beberapa jenis
board Arduino , ada yang original , clone dan palsu.
Original artinya asli
dari produsennya.
Clone artinya hasil
rakitan sendiri atau dari produsen lain dengan desain label berbeda
dari Arduino
originalnya namun sama persis fungsinya.
Palsu artinya
jiplakan dari Arduino original yang desain labelnya mirip aslinya.
Semua jenis board
diatas berfungsi sama baiknya , tentu ada kelebihan lain dari
produk original ,
misal kualitas komponennya sesuai standar RoHs.
Kisaran harga di
tahun 2015 sbb :
Arduino Uno original
harganya Rp 299 ribu
Arduino Uno clone
harganya bisa sampai Rp 185 ribu
Arduino Uno palsu
harganya bisa sampai Rp120 ribu.
Dalam membeli Arduino
clone ada yg menyertakan kabel USBnya dan ada yang tidak.
Jadi tanyakan dulu pada
Seller/Penjualnya.
DC Double Gearbox
motor Tamiya Rp 130 ribu
DC Gearbox motor
plastik yang kuning Rp 35 ribu
Sensor Ultrasonik HC
- SR05 harganya Rp 25 ribu.
Micro servo dari
harga Rp 30 ribu
Roda harga bervariasi
dari harga Rp 30 ribu
Belanja
Komponen Online di situs lokal dan luar negeri
Jika beli di situs
online lokal , ditambah ongkos kirim tapi cepat sampai.
Jika beli di situs
Ebay / Banggood , bisa free shipping dan harga bisa lebih murah ,
tapi free shipping
lama pengirimannya bisa sampai 3 bulan.
Coba saja buka situs
Ebay , saat ini bahkan harganya jauh lebih murah.
ada Arduino Nano V3
clone/palsu hanya seharga $ 2.99 ! atau sekitar Rp 36.000 saja.
Uniknya jika kita
beli hanya sebuah pun , mereka tetap kirim ke alamat kita.
Hanya saja lebih baik
kita membeli beberapa item dari satu Seller agar kepastian
pengiriman barangnya
lebih terjamin.
Cuma ya itu , pegel
nunggunya 3 bulan....
Kebijakan baru ttg
pengiriman paket dari China telah membuat prosedurnya lebih lama.
Padahal penyedia komponen
di Ebay rata2 seller dari China.
Jadi terserah , mau
komponen super murah tapi nunggu lama , atau mahal dikit
tapi langsung dapet.
( Sebetulnya beda harganya jauh banget sih )
Mahal ngga ? ya mahal
banget kalo cuma lihat fisik robotnya , dengan uang segitu
bisa beli mainan RC
Tank atau mobil RC yang jauh lebih keren kan ?
Tapi jika kita
menguasai pemrograman robot , mau bikin model robot apa saja ,
bisa , bahkan jadi
modal pengetahuan untuk karir di masa depan juga bisa !
3. Yang
harus dipelajari ?
Pengenalan terhadap
Microcontroler dan komponen elektronika.
Pengenalan
Pemrograman / Bahasa Pemrograman.
Pengetahuan dasar
komputer.
Bahasa Inggris.
4.Buku tentang Robot ?
Banyak , tapi tak ada yang
membahas secara keseluruhan secara detail.
Karena robotika terdiri
dari banyak disiplin ilmu.
Cara belajar sketch Arduino
bisa dengan mengubah variabel dari contoh yang sudah ada.
Jadi kita harus banyak
searching di Google , baca tutorial , gabung grup robot di facebook
baca buku2 tentang
programming , pengen cepat ya kursus atau bahkan kuliah lebih baik.
Untuk Arduino anda cukup
buka situs resmi Arduino.cc saja , langsung ngerti deh.
Bagi para pemula ,
sebaiknya ketahui dahulu ikhtisar bukunya , seringkali judul buku tidak
sesuai dengan harapan kita.
Banyak judul menarik , tapi pastikan sesuai dengan kebutuhan
Kadang kita ingin buku
berisi praktek pembuatan robot , setelah dibuka ternyata
lebih banyak
pembahasan teori dasar komponen elektronika.
Empat cover buku diatas
nampaknya bagus bagi pemula Arduino.
Soalnya tidak mudah cari buku semacam itu dalam bahasa Indonesia.
Buku itu dijual di Toko buku Gramedia.
Soalnya tidak mudah cari buku semacam itu dalam bahasa Indonesia.
Buku itu dijual di Toko buku Gramedia.
5.Apakah Mikrokontroler itu ?
Secara gambaran awam
sebagai berikut ,
Mikrokontroler berbentuk
seperti IC ( Integrated Circuit ) namun memiliki RAM , ROM
CPU ( Central Processing
Unit ), Clock , ADC ( Analog to Digital Converter ) dan
Port I/O ( Input Output )
sekaligus didalamnya.
Fungsinya tentu sebagai
pusat pengolah data , sebagai otak dari sebuah robot.
Program yang kita masukkan
kedalam Mikrokontroler akan menentukan cara kerja robot
tersebut. Berbagai sensor
dapat terhubung ke input mikrokontroler
demikian pula aktuator seperti misalnya motor listrik , lampu LED dsb
akan mendapat output sinyal dari mikrokontroler tsb.
demikian pula aktuator seperti misalnya motor listrik , lampu LED dsb
akan mendapat output sinyal dari mikrokontroler tsb.
Jenis
Mikrokontroler
Diantaranya
seri yg cukup populer al : AVR , Atmel MCS-51 , PIC & ARM .
Nama perusahaan pembuat
mikrokontroler al :
Atmel , Freescale
Semiconductor , Intel , Holtek , Microchip , NEC , Texas Instrument
Xilinx , Philips
Semiconductors , STmicroelectronics ( wikipedia ).
Mikrokontroler
tidak dapat berdiri sendiri tanpa bantuan komponen pendukung lain
seperti resistor , kristal
& kapasitor , dia
pun membutuhkan power supply dan komponen
input/output seperti sensor
, layar display LCD , servo dsb , sesuai
tujuan proyeknya.
Rangkaian pendukung
mikrokontroler ini biasa disebut minimum system board / minsys.
Mikrokontroler
bisa diprogram secara langsung maupun tidak langsung.
Secara
langsung ,
Artinya program yang
ditulis di layar IDE / komputer langsung ditanamkan pada
mikrokontroler via alat
downloader.
( misal alat USBASP atau alat lain spt Arduino board as ISP )
( misal alat USBASP atau alat lain spt Arduino board as ISP )
tentu dengan bantuan
minimum system board.
Biasanya menggunakan bahasa
pemrograman seperti Assembly , Bahasa C.
Secara tidak langsung ,
Artinya , program yang
ditulis di layar IDE / komputer ditanamkan pada mikro
kontroler via board
pendukung dan bantuan Bootloader.
( misal chip ATmega328 ditanamkan software bootloader Arduino )
dan diberi rangkaian minimum system yang sesuai /board Arduino.
( misal chip ATmega328 ditanamkan software bootloader Arduino )
dan diberi rangkaian minimum system yang sesuai /board Arduino.
Biasanya menggunakan bahasa
pemrograman tingkat tinggi
yg telah dipermudah pemakaiannya. Bahasa pemrograman tingkat tinggi memerlukan
baris perintah program yang lebih singkat dibanding bahasa Assembly / Bahasa Mesin.
yg telah dipermudah pemakaiannya. Bahasa pemrograman tingkat tinggi memerlukan
baris perintah program yang lebih singkat dibanding bahasa Assembly / Bahasa Mesin.
Arduino adalah contoh
bahasa tingkat tinggi yang mirip bahasa pemrograman C# .
Ada banyak jenis mikrokontroler dan minimum system yang menjadi pendukungnya.
Misal :
Mikrokontroler ATMega
328 dan Arduino board nya
6.Cara memasukkan program kedalam
Mikrokontroler
Masing masing pasangan
mikrokontroler dengan minimum systemnya memiliki cara
pemrograman yang berbeda.
Intinya Komputer PC harus
memiliki software programming
atau disebut juga
Integrated Development Environment ( IDE )yaitu tempat kita menulis
program menggunakan bahasa
pemrograman , menggabungkan program , compiling
process , dan kemudian
mengirimkannya kedalam mikrokontroler yang melekat pada
minimum system / board tadi
melalui kabel USB atau kabel serial ( DB9 ) atau kabel
paralel ( contoh kabel
printer ).
Tampilan Arduino IDE di layar PC
Tampilan IAR embedded workbench IDE untuk MSP430
Tampilan AVR Studio 4 untuk mikrokontroler Atmel
Penulisan program pada IDE
diatas menggunakan 'Bahasa Program'
Ada banyak bahasa program ,
silakan saja baca di Wikipedia.
Diantaranya Bahasa
Assembler , bahasa C , C++ , C# , Pascal dsb.
Menulis program sering
diistilahkan ' coding ' yaitu menyusun code bahasa program.
Biasanya orang memiliki
kesukaan yang berbeda dalam memilih bahasa program.
Artinya , ada yg menyukai
Assembly , C maupun C# . Jarang yg menguasai banyak bahasa
pemrograman sekaligus. Jadi
tergantung kebiasaan pengguna bahasanya saja.
Masing masing bahasa
program memiliki kelebihan dan kekurangan.
Untuk bahasa Assembly
misalnya irit space di memorynya , tapi panjang programnya
, Maklum bahasa
Assembly ( bhs mesin ) ini bahasa low level yg membutuhkan kejelian
bagi penggunanya.
bagi penggunanya.
Untuk Bahasa C relatif
lebih singkat penulisan programnya , tapi memakan space memory
lebih besar pada
memory di mikrokontroler.
Mudah dan sulitnya sih
tergantung kebiasaan masing masing pengguna.
MSP430 dan IDE nya
menggunakan bahasa C dalam programnya .
Arduino menggunakan
Processing & Wiring yang merupakan turunan bahasa C / mirip C#
Rangkaian program / code
dalam Arduino disebut Sketch.
Namun ada juga IDE Energia
yang bisa ditulis menggunakan Sketch dan diupload
ke MSP430.
Istilah upload berarti
memindahkan program yang kita tulis dan telah dikompilasi
pada IDE di PC kedalam
mikrokontroler kita .
Mikrokontroler yang akan
diisi program tadi disebut sebagai 'Target'
Upload juga diistilahkan
sebagai ' Burn / Burning program '.
Tetapi istilah Burning
program dipakai pada keadaan dimana program dimasukkan
kedalam chip target secara
langsung tanpa bantuan ' Bootloader ' seperti di Arduino.
( Bootloader adl semacam
program kecil yg ditanamkan pada chip target sbg alat bantu
dalam proses uploading
program dari IDE di pc ).
Ketika selesai menulis program
di IDE , program tersebut akan diproses dalam
software IDE , dikaitkan
antara Library & Object dsb kemudian diubah formatnya jadi
file Hex. Setelah itu
barulah diupload kedalam mikrokontroler.
Pada umumnya untuk
mikrokontroler selain Arduino diprogram menggunakan IDE
dan Compiler yang terpisah.
Seperti MSP430 menggunakan IDE dan Compiler terpisah.
Pada Arduino IDE , compiler
dsb sudah termasuk dalam satu software.
Pada system lain , misal
BASCOM , setelah menuliskan program dalam bahasa Basic pada
layar IDE nya kita akan
gunakan software lain ( misal Sinaprog ),
untuk mengkompilasi dan mengubahnya dalam kode mesin
yang dapat dipahami mikrokontroler.
untuk mengkompilasi dan mengubahnya dalam kode mesin
yang dapat dipahami mikrokontroler.
Mikrokontroler yang telah
diisi program selanjutnya bisa tetap di board atau bisa juga
dicabut / dipindahkan pada
rangkaian robot yang akan dibuat
Untuk Arduino , biasanya
mikrokontroler ATMega 328 tetap dibiarkan melekat pada
boardnya , jadi robot akan
membawa Arduino board nya kemana mana.
Arduino Board memiliki
rangkaian minimum system yang mampu
menerima hasil kompilasiIDE sekaligus memasukkannya pada
ATMega chip yang jadi otaknya.
menerima hasil kompilasiIDE sekaligus memasukkannya pada
ATMega chip yang jadi otaknya.
Kemudian ATMega chip
menjalankan program melibatkan segala macam sensor
( misal : Sensor suhu )
& aktuator ( misal DC Motor , Servo , LED )
yang terhubung pada Arduino
boardnya.
Tapi jika ingin banyak
membuat robot , kita bisa mengkloning Arduino pada mikro
kontroler ATMega 328 lain
yang masih kosong ( belum ada bootloadernya ).
Bootloader adalah software
yang diburn / ditanamkan pada memory flash
mikrokontroler dan
berfungsi seperti sistem operasi yang membantu masuknya program
melalui jalur komunikasi
Tx/Rx ke memory flash dalam mikon tersebut.
ATMega 328 yang kosong ,
setelah diisi bootloader Arduino
menggunakan alat spt USBASP
downloader , barulah disebut Arduino.
Sedangkan untuk
mikrokontroler dalam keadaan kosong tanpa bootloader ,
umumnya diprogram
menggunakan IDE dan Compiler yang terpisah.
Seperti MSP430 menggunakan
IDE dan Compiler terpisah.
Tidak ada yang sulit ,
hanya saja untuk pemula , Arduino nampak simple.
Kalau tiap Papan pengembang
( Development boards ) macam MSP430 , Arduino
memiliki banyak tutorial
berbahasa Indonesia , mungkin tak ada yang sulit.
Dan tetap saja Bahasa C
lebih luas jangkauannya dalam bidang pemrograman ,
dibanding bahasa pada
Arduino , karena bahasa C ibarat induknya.
Kalau Arduino , IDE dan
Compilernya menyatu dalam satu software.
Hanya saja penggunaan
bootloader akan memakan ruang memori pada
mikrokontroler itu , meski
tidak banyak.
7.Membuat robot tidak harus
menggunakan Mikrokontroler.
Bisa juga membuat robot
sederhana menggunakan komponen elektronika dasar dan IC
Sumber : Seattle Robotics
Dibawah ini BEAM robot menggunakan 3 Jenis komponen yg umum di pasaran
Baterai menggunakan 4x baterai AA , motor DC gunakan yang ada gearboxnya..
Rangkaian dari situs Let's make robots.
Dibawah ini BEAM robot menggunakan 3 Jenis komponen yg umum di pasaran
Baterai menggunakan 4x baterai AA , motor DC gunakan yang ada gearboxnya..
Rangkaian dari situs Let's make robots.
Model lain yg simpel hanya menggunakan LDR , motor bekas getar HP dan Dioda
Misalnya pada BEAM Robot
nya Mark Tilden.
BEAM singkatan dari Biology
, Electronics , Aesthetics and Mechanics .
Mottonya " Keep It
Simple " menggunakan komponen sedikit mungkin .
Biasanya terdiri dari dua
motor DC ukuran kecil , LDR , Transistor , resistor ,kapasitor
dioda , saklar dan sebuah
sel surya atau baterai jam.
Robot ini dapat dibuat agar
mengikuti cahaya , atau menjauhi cahaya , atau menghindari
halangan menggunakan "
Bump sensor " artinya jika menabrak sesuatu , saklarnya akan
terhubung. Komponen
pendukungnya sederhana , dari bahan kawat dan bahan bekas.
BEAM robot berbeda dengan
Robot yang memiliki mikrokontroler , karena berisi
program yang kompleks ,
sehingga robot dengan mikrokontroler sering disebut sebagai
Robot cerdas.Banyaknya
percabangan pada program konon menentukan tingkat kecer
dasan robot.
Mulailah dengan searching
Google menggunakan kata kunci berbahasa Inggris , entah
v kenapa banyak yang
menganggap para pemula robotika malas searching di Google ,
saya mengira penyebabnya
adalah skill berbahasa Inggris yang minim dan pemilihan kata
kunci yang kurang tepat.
Pemilihan kata kunci dengan bahasa Inggris akan mempercepat
pencarian topik. Lain
halnya jika menggunakan bahasa Indonesia. Mungkin karena Google
bukan buatan Indonesia , ya
jadinya seperti itu.
Programming is already hard
enough , so putting effort in understanding what is meant
should be avoided. Itu
sebabnya terjemahan proyek robotik perlu mendapat dukungan.
Bayangkan saja seperti
belajar cara menyanyikan tembang Jawa dari keping kepingan
prasasti dan manuskrip Jawa
kuno. (^_^).