perancangan sistem gerak motor pada robot...
TRANSCRIPT
PERANCANGAN SISTEM GERAK MOTOR PADA ROBOT BERODA
BERBASIS ARDUINO ATMEGA 128
Naskah Publikasi
diajukan oleh
Muhammad Furqan Ramadhan
09.11.2976
kepada
SEKOLAH TINGGI MANAJEMEN INFORMATIKA DAN KOMPUTER
AMIKOM
YOGYAKARTA
2012
Designing of Motion System Wheeled Robot Based on Arduino
Atmega 128
Perancangan Sistem Gerak Motor pada Robot Beroda Berbasis
Arduino ATmega 128
Muhammad Furqan Ramadhan
Jurusan Teknik Informatika
STMIK AMIKOM YOGYAKARTA
ABSTRACT
The development of technology is the reason a lot of popping one of a variety of
innovations including the Robotics Technology. The development of robotics in the
beginning instead of the discipline of electronics but from biologist and author of the novel
any drama in the eighteenth century. In 1920 the robot began to develop from the
disciplines of electronics, more specifically the branch of study disciplines, namely
electronic automatic control engineering, but in those days it was the computer that is the
main component of a robot that is used to refineries input data from sensors and control
actuators yet has fast computing capabilities than physical size computer at that time was
still quite large.
The robot revolution is the result of technological developments and have been
proven in the field of military, defense and security, production, and even in the field of
rescue or salvation. Robots that we know have expertise in defusing bombs, fire fighting,
and rescue victims of the earthquake. The ability of robots can not be separated from the
motor on the robot motion concepts and algorithms that have been planted therein.
Made robots have a variety of shapes one of which is a wheeled robot, the robot
wheels generally use the motor as a driving force and ultrasonic sensors as tools to
navigate and thus require a system board and logic algorithm to synchronize the
movement of the motor in order to create a robot that has the intelligence to run duties.
The use of technologies such as Arduino Board is very helpful especially for system
synchronization and integarasi board so the motion and navigation system can be
embedded in a single system. And in the end, the benefits of hardware and logic
embedded in the robot as one that can not be separated in the design of the motor
motion system on the robot's wheels.
Keywords : Motor, Robot, Technology
1. Latar Belakang Masalah
Perkembangan teknologi saat ini berkembang dengan pesat, hingga setiap
lapisan masyarakat memerlukannya. Perkembangan komunikasi, komputerisasi,
otomatisasi, dan robotika merupakan tuntutan teknologi modern yang sedang
berkembang saat ini dan perlu digali. Dengan semakin majunya ilmu pengetahuan
dan teknologi, masyarakat luas dapat menikmati kemudahan dalam mengerjakan
pekerjaannya dan terasa lebih menguntungkan dalam segi kenyamanan bekerja
dan finansial secara khususnya. Sebagai mahasiswa, sudah selayaknya berupaya
melakukan riset, penemuan dan pengembangan yang lebih lanjut, sehingga dapat
diperoleh pengalaman serta pengetahuan baru, yang akan menghasilkan praktisi
handal maupun ahli. Sehingga dapat menerapkan teknologi lebih tepat guna dan
efektif.
Dengan adanya persaingan teknologi dan ilmu pengetahuan yang ketat,
berbagai praktisi dan peneliti mengembangkan dan memanfaatkan alat kerja bantu
berupa robot. Secara umum robot merupakan perpaduan antara kinerja mekanis,
elektronis, dan pemrograman yang sesuai dengan kebutuhan. Robot yang kita
kenal memiliki keahlian dalam menjinakkan bom, pemadam api kebakaran, dan
penyelamat korban bencana gempa. Kemampuan dari robot-robot tersebut tidak
terlepas dari sebuah konsep gerak motor pada robot dan algoritma yang telah
ditanam didalamnya. Diantara robot-robot yang ada, terdapat jenis robot tak
berjalan dan robot berjalan atau disebut mobile robot. Keterbatasan bentuk
mekanis robot juga mempengaruhi kemampuan bagaimana robot dapat berjalan
dan area bagaimana robot tersebut bekerja.
2. Landasan Teori
2.1 Bagian Hardware
Hardware merupakan perangkat fisik dari sebuah sistem sehingga dapat
dilihat kasat mata dan dapat bekerja sebagaimana mestinya secara fisik. Hardware
dalam sebuah robot masih dikelompokan menjadi dua bagian yaitu :
1. Bagian Mekanis
2. Bagian Elektronis
2.1.1 Bagian Mekanis
Bagian Mekanis merupakan bagian – bagian robot yang bergerak secara
langsung, untuk melakukan gerakan – gerakan itu diperlukan yang sesuai dan
tepat dalam penggunaannya.
2.1.1.1 Motor DC
Motor DC digunakan dalam rangka yang memerlukan kepresisian yang
tinggi untuk pengaturan kecepatan, pada torsi yang konstan. Semua motor DC
beroperasi atas dasar arus yang melewati konduktor yang berbeda dalam magnet1.
2.1.2 Bagian Elektronis
Bagian elektronis tersebut terdiri dari komponen – komponen elektronika
yang terangkai sedemikian rupa sehingga bisa mendukung kinerja robot2. Bagian
elektronis pada robot ini terdiri dari empat bagian penting, yaitu :
1 Purwo,Setyo Aji,Perancangan Dan Sistem Pergerakan Robot Berkaki AV-COM Berbasis
Arduino Mega 128,hal 10 2011
2 Wasito.2006.Vademekum Elektronika Edisi Kedua.Jakarta: PT Gramedia Pustaka Utama.
1. Mikrokontroler
2. Line Detector
3. Sensor Ultrasonik
4. Regulator tegangan
2.1.2.1 Mikrokontroler
Mikrokontroler merupakan system computer yang seluruh atau sebagian
besar elemennya dikemas dalam satu chip IC dan modul-modul lain sehingga
dapat memproses masukan dan output3.
2.1.2.1.1 Arduino MEGA128
Arduino MEGA128 merupakan salah satu jenis mikrokontroler single-
board yang bersifat open-source, diturunkan dari Wiring platform, dirancang
untuk memudahkan penggunaan elektronik dalam berbagai bidang. Hardware
memiliki prosesor Atmel AVR dan software memiliki bahasa pemrograman
sendiri.
2.1.2.1.2 ATMEGA128
AT MEGA128 merupakan salah satu mikrokontroller yang memiliki
PORT yang lebih banyak dari pada seri ATMEL versi sebelumya, (seperti AT
MEGA16, AT MEGA32, AT MEGA 8535). Sehingga dalam penanganan kontrol
3 Budiarto,Widodo.2004.Interfacing Komputer dan Mikrokontroler.Jakarta.Penerbit Elex Media
Komputindo.Hal 28.
yang memerlukan I/O yang banyak, membuat komponen menjadi lebih hemat
baik dari segi sisi biaya dan desain hardware yang dibutuhkan4.
Gambar 2.5: Board Arduino MEGA1285
2.2 Bagian Perangkat Lunak
Secara umum, semua komponen mikrokontroler dijalankan oleh program
yang dimasukkan ke dalam mikrokontroler. Program yang dijalankan oleh
mikrokontroler tersusun dari bahasa pemrograman tingkat rendah (low level
language) atau disebut juga bahasa mesin.
2.2.1 Software Arduino IDE
Arduino IDE adalah lingkungan pengembangan Arduino yang berisi teks
editor untuk menuliskan kode, pesan area, teks console, toolbar dengan tombol
fungsi umum, dan serangkaian menu.
4 Iswanto.2008.Desain dan Implementasi Desain Embeded Mikrokontroler ATMega8835 dengan
Bahasa Basic.Penerbit Gava Media.Yogyakarta.Hal 51.
5 Anonim, 2011. Arduino Mega (http://www.arduino.cc/en/Main/ArduinoBoardMega, diakses 22
Maret 2012)
2.2.2 PID Control
Proportional Integral Differential Control atau disebut PID Control adalah
salah satu algoritma yang menjadi pendukung dalam perancangan robot agar
memiliki karakteristik dan kecerdasan. PID Control ini akan memberikan logika -
logika yang nantinya menjadi sebuah batasan - batasan bagi robot dalam bertindak
dalam mendukung tujuannnya. Sehingga perancangan robot yang dilengkapi oleh
PID control dapat memberikan kemudahan dalam membuat sebuah robot yang
memiliki kemampuan cerdas dalam menjalankan tugasnya. Sebuah kontroler PID
menghitung sebuah "kesalahan" nilai sebagai perbedaan antara variabel proses
diukur dan setpoint yang diinginkan. Controller mencoba untuk meminimalkan
kesalahan dengan menyesuaikan input proses kontrol6.
Gambar 2.21 : Diagram dari PID kontroler7
6 katsuhiko Ogata. 1997.Modern Control Engineering,hal 55-56.
7 Pitowarno,Endra.2007.Robotika desain,kontrol, dan kecerdasan buatan.Penerbit
Andi.Yogyakarta.Hal 43-45.
3.1 Perancangan Sistem
Sistem Robot Beroda 4T-Vi Wheel dirancang mengacu pada robot
bergerak otomatis. Sistem yang dirancang terlihat pada gambar 3.1
Gambar 3.1: Rancangan Sistem Robot Beroda 4T-Vi Wheel
Sensor digunakan untuk mengamati lingkungan luar berupa halangan yang
berupa dinding. Keluaran masing-masing sensor berbentuk tegangan analog
selanjutnya dikoversi oleh komparator kedalam bentuk sinyal digital. Sinyal
digital diteruskan dan diolah mikrokontroler ATMEGA128 pada board Arduino
MEGA128 berdasarkan basis pengetahuan yang ditanamkan di mikrokontroler
sehingga menghasilkan perintah aksi yang harus dilakukan oleh Robot Beroda 4T-
Vi Wheel.
Mikrokontroler Komparator Gerak
Sensor Lingkungan
Luar
3.2 Perancangan Elektronis
Skema rangkaian Robot Beroda 4T-Vi Wheel menggunakan 3 buah board
yaitu board utama Arduino ATMEGA128, konverter pin untuk mempermudah
pemasangan komponen sensor, servo, motor, dan board regulator tegangan.
3.2.1 Board Utama
Board utama pada Robot Beroda 4T-Vi Wheel adalah Arduino MEGA128
dengan IC AVR ATMEGA128 didalamnya.
Gambar 3.2: Arduino Shield
3.2.2 Prinsip Kerja
Gerakan Robot Beroda 4T-Vi Wheel digerakkan oleh motor DC, dimana
kombinasi motor DC dengan konsep 4WD untuk pergerakan robot yang lebih maksimal.
3.3 Perancangan Perangkat Lunak
Perangkat lunak ini dibuat dengan bahasa pemrograman C pada Arduino
IDE untuk membuat program pada mikrokontroller Arduino MEGA128 dan
Visual Basic untuk melakukan setting pengendalian motor sehingga diperoleh
pergerakan yang baik pada system gerak motor yang diinginkan. Perancangan
perangkat lunak terdiri dua bagian yaitu perangkat lunak di sisi hardware dan
software yaitu:
3.3.1 Flowchart Program Mikrokontroller
Diagram alir pada Robot Beroda 4T-Vi Wheel dibuat untuk mengetahui
proses kerja robot ketika berjalan, Sistem pengendalian robot dan menanggapi
lingkungan.
4. Pembahasan
4.1 Bagian Mekanis
Konstruksi mekanis Robot Beroda 4T-Vi Wheel dibuat layaknya robot
beroda empat atau wheeled robot. Bahan yang digunakan menggunakan bahan
yang ringan tetapi kuat, sehingga mampu menopang berat robot ketika berjalan.
Desain body dibuat menggunakan bahan akrilik dengan ketebalan 3 mm, 2
lapis. Bagian atas dan bawah untuk mengunci board utama Arduino , menata
baterai, sensor-sensor, regulator tegangan robot bagian atas.
Gambar 4.1: Bentuk bodi
Desain roda dibuat menggunakan bahan plastik karbon dengan ketebalan 7
mm, yaitu untuk menopang 4 buah motor DC menghadap ke atas (body). Serta
untuk menggerakkan roda ke depan dan ke belakang. Untuk menjaga kestabilan
robot ketika berjalan.
4.2 Bagian Elektronis
Bagian elektronis disini digunakan untuk menjembatani antara program
dan mekanis. Bagian ini terbagi menjadi 3 yaitu bagian regulator tegangan,
mikrokontroler dan sensor.
4.2.1 Regulator Tegangan
Regulator tegangan digunakan untuk menurunkan dan menstabilkan antara
tegangan baterai dan tegangan yang dibutuhkan oleh Arduino dan motor DC yaitu
sebesar 5volt.
4.2.2 Board Mikrokontroler
Bagian mikrokontroler yaitu Arduino ATMEGA128. Dimana bagian ini
menyimpan kode pemrograman dan tempat program dijalankan.
Gambar 4.10: Bagian mikrokontroler
4.2.3 Sensor Ultrasonik
Sensor ultrasonik digunakan untuk mengukur jarak robot terhadap dinding.
Mengubah data analog menjadi digital.
4.2.4 Sensor Line Detektor
Sensor line detektor digunakan untuk menbedakan gerak robot di area
hitam atau putih.
4.3 Pemrograman
4.3.1 Pemrograman Pengendali Motor
Mengarahkan pin kontrol pada setiap motor dc, ke masing-masing port.
Menentukan pengendalian line follower yaitu linekanan,dan linekiri.
4.3.2 Pemrograman Robot
Hasil dari perpaduan antara pergerakan dengan memadukan sensor-sensor
yang ada, sehingga diperoleh kombinasi perpaduan sudut, yang menyebabkan
robot bisa bergerak maju, belok kanan, belok kiri,berhenti dan mundur.
4.4 Pengujian
4.4.1. Pengujian Mikrokontroler
Adapun pengujian mikrokontroler bertujuan untuk mengetahui sejauh mana
perancangan sistem yang dilakukan dapat berjalan dengan baik. Pengujian
mikrokontroler akan dilakukan dengan melakukan komparasi yaitu antara sistem
robot yang menggunakan 1 buah mikrokontroler.
void setup(){
//setup line follower;
pinMode(lineKanan,INPUT);
pinMode(lineKiri,INPUT);
myservo.attach(37);
Serial.begin(9600);
}
#include <Servo.h>
Gambar 4.13: Diagram Blok Robot Menggunakan Satu Mikrokontroler
Dari Gambar 4.13 Menggambarkan sistem dari robot yang menggunakan 1 buah
mikrokontroler dimana proses input dari sensor dan output ke aktuator dilakukan
oleh satu mikrokontroler. Perancangan sistem pada robot 4T-Vi Wheel yang
dirancang oleh penulis menggunakan satu buah mikrokontroler.
Permasalahan terletakan ketika sensor ultrasonik dan aktuator bekerja
dalam waktu yang bersamaan dan diproses dalam satu mikrokontroler. Hal ini
dapat menyebabkan terjadi tabrakan pada timer yang ada di arduino karena untuk
mengontrol servo dibutuhkan servo library.
Percobaan Pengecekan Jarak Tempuh Sensor Ultrasonik :
Gambar 4.14: Pengecekan Jarak Tempuh Sensor Ultrasonik
Hal ini disebabkan oleh kebutuhan timer pada mikrokontroler yang tidak
dapat mengerjakan inputan dari sensor dan memperoses gerakan untuk aktuator
pada waktu yang bersamaan. Sehingga proses gerakan robot akan menjadi lambat,
dan cenderung tidak real time dalam menjalankan algoritma yang tertanam
didalam mikrokontroler.
4.4.2. Pengujian Robot Pada Lapangan KRCI
Robot akan ditempatkan didalam lapangan standar dari Kontes Robot
Cerdas Indonesia seperti pada Gambar 4.14. Ukuran lapangan menjadi parameter
dalam perancangan sistem navigasi pada robot hexapod ini. Adapun pengujian
dilakukan pada beberapa kondisi untuk memastikan navigasi robot sudah dapat
berjalan dengan baik.
5. Penutup
5.1 Kesimpulan
Dari beberapa tahap perancangan, pembuatan dan pengujian yang telah
dilakukan dapat diambil kesimpulan antara lain :
Dengan cara pemilihan motor DC yang mempunyai torsi memadai,
peletakan motor yang tepat serta memperhitungkan dimensi robot dari Robot
Beroda 4T-Vi Wheel akan menunjang kerja maksimal.
5.2 Saran
Dalam Perancangan dan Pembuatan Robot Beroda 4T-Vi Wheel penulis
memberi saran-saran pengembangan lebih lanjut untuk mencapai sistem
pengendalian robot dan komuniasi yang lebih sempurna:
1. Penggunaan komunikasi via wireless menggunakan Arduino WiFi
Shield, dan penambahan camera berbasis Internet Protokol menjadikan
robot lebih dinamis dan dapat dikendalikan tidak secara otomasi saja
tetapi juga dikendalikan manual secara jarak jauh.
2. Merapikan komponen elektronis dan mekanis sehingga robot tampak
lebih rapi. Serta pemasangan casing sehingga komponen elektronika
lebih terlindungi dari lingkungan luar.
3. Penggunaan elektronis yang lebih sederhana dan kecil tapi maksimal,
pemilihan baterai yang berukuran kecil, ringan dan memiliki arus
besar.
4. Pembuatan database didalam aplikasi Visual Basic, ditujukan agar
kombinasi gerakan motor pada roda dapat terekam, sehingga tidak
hanya dapat terlihat langsung posisi realtime saja, tetapi rekaman
posisi juga dapat disimpan. Ditujukan agar pergerakan robot dapat
dijalankan dan dilihat secara realtime.
DAFTAR PUSTAKA
Anonim, 2011. Arduino Mega
(http://www.arduino.cc/en/Main/ArduinoBoardMega, diakses 22 Maret 2012)
Anonim, 2011. Ping Ultrasonic Range Finder
Tutorial(http://www.arduino.cc/en/Tutorial/Ping, diakses 22 Maret 2012)
Anonim, 2011. Servo Library and Tutorial
(http://www.arduino.cc/playground/ComponentLib/Servo, diakses 5 April 2011)
Budiarto,Widodo.2004.Interfacing Komputer dan Mikrokontroler.Jakarta: Elex
Media Komputindo.
Iswanto.2008.Desain dan Implementasi Desain Embeded Mikrokontroler
ATMega8835 dengan Bahasa Basic. Yogyakarta: Gava Media.
Katsuhiko,Ogata.1997.Modern Control Enginneering.Upper Saddle River, NJ,
USA: Prentice Hall.
Pitowarno,Endra.2007.Robotika desain, kontrol, dan kecerdasan
buatan.Yogyakarta: Andi.
Suyadi,Taufiq Dwi Septian.2008.Build Your Own Line Follower
Robot.Yogyakarta: Andi.
Wasito.2006.Vademekum Elektronika Edisi Kedua.Jakarta: PT Gramedia Pustaka
Utama.