bab 3 perancangan model industrial …thesis.binus.ac.id/doc/bab3/2009-1-00450-sk bab...
TRANSCRIPT
39
BAB 3
PERANCANGAN MODEL INDUSTRIAL ROBOT SECARA KINEMATIK
Model industrial robot yang akan dirancang merupakan model skala kecil dari
robot industri yang mudah dibawa / dipindahkan. Robot ini dirancang untuk dapat
menirukan pergerakan robot industri. Perancangan yang dimaksud meliputi model
kinematika dalam bentuk simulasi software, dan robot portable itu sendiri yang dalam hal
ini digerakan oleh servo motor.
Pada penelitian ini sebelum mengembangkan robot (fisik robot), terlebih dahulu
mengembangkan simulasi sifat kinematikan robot pada komputer menggunakan software
Matlab untuk melihat pergerakan robot sesuai dengan tujuan dan untuk memastikan robot
berjalan dengan baik nantinya. Hal ini dilakukan untuk mengantisipasi apabila sistem
yang dibuat mengalami kegagalan karena akan memakan biaya yang lumayan besar dan
akan membuang waktu yang sangat banyak. Setelah simulasi telah berjalan dengan baik
kemudian dilakukan perancangan hardware.
3.1 Defenisi Masalah
Dari permasalahan yang telah disampaikan pada BAB I maka perlu diangkat
skripsi tentang ”Perancangan Model industrial robot secara Kinematik” yaitu terdapat
beberapa permasalahan utama yaitu
• Keterbatasan literatur research teori kinematik khususnya robot dalam penelitian
ini.
40
• Hasil pengamatan di Universitas Bina Nusantara, baik dalam proses pembelajaran
yang terjadi dikelas maupun skripsi yang telah dikembangkan sejauh ini.
• Adanya keterbatasan – keterbatasan tertentu seperti mahalnya harga sebuah robot.
Permasalahan dari keterbatasan literature research tentang studi mekanik mengenai
berbagai macam jenis robot, karena dalam melakukan studi kepustakaan khususnya di
perpustakaan Universitas Bina Nusantara dan juga melalui internet yang mana umumnya
pembahasan adalah tentang industrial robot jenis puma dan jarang ditemukan adanya
pembahasan mengenai robot jenis lainnya.. pembelajaran model kinematika robot yang
dirasakan saat ini lebih banyak menggunakan persamaan matematika dibandingkan
dengan penggunaan alat bantu untuk mendalami anatomi robot itu sendiri.
Dari semua pencapaian skripsi yang pernah dilakukan di Universitas Bina
Nusantara dijadikan sebagai langkah awal dalam perancangan ini. Oleh karenanya
perancangan yang dilakukan akan memperhatikan dan memanfaatkan hasil-hasil yang
sudah diperoleh dari skripsi (Wiharda et.al, 2003 dan Andi Rosady et al, 2004).
Berdasarkan hal diatas, Robot yang akan dirancang pada penelitian ini adalah
merupakan sebuah robot yang berbeda dengan robot jenis PUMA. Robot pada peneliitan
ini memiliki 5 derajat kebebasan dan gripper, serta bersifat portable agar dapat membantu
proses pembelajaran robotika di universitas bina nusantara, khususnya mengenai sifat
kinematika robot.
41
3.2 Pendekatan dan Metodologi
Adapun pendekatan dan metodologi dalam menyelesikan BAB 3 ini adalah :
Pendekatan :
• Pada penelitian ini untuk Perhitungan Forward kinematik melakukan
pendekatan dengan menggunakan Konsep Denavit-Hartenberg.
• Pada penelitian ini untuk Perhitugan Invese kinematik melakukan pendekatan
dengan menggunakan metoda numerik.
Metodelogi :
• Melakukan pembelajaran mengenai Workspace dan kinematik lengan robot
melalui berbagai buku / artikel journal, internet.
• Pemodelan kinematika robot.
• Merancang Simulasi robot pada komputer menggunakan Software Matlab.
• Membangun lengan robot, meliputi mekanik, elektronik dan perangkat lunak
yang dibutuhkan.
• melakukan Validasi (perbandingan antara HASIL SIMULASI robot dan data
hasil percobaan.
• Melakukan evaluasi terhadap sistem.
3.3 Pegembangan Model Kinematika untuk Simulasi Model Industrial Robot
Pada penelitian ini untuk pengembangan model kinematika pada simulasi
kinematika robot dilakukan untuk menjawab permasalahan dalam kinematika itu sendiri,
42
yakni Forward Kinematics dan Invese Kinematics. Perhitungan kinematika untuk
Forward Kinematics dan Invese Kinematics mengacu pada penggunaan model Denavit –
Hartenberg Parameter (D-H Parameter) dalam membentuk matriks transformasi
homogeneous yang dipakai dalam pemodelan lengan robot. Model pergerakan lengan
robot yang dirancang menggunakan gerak rotasi untuk menjangkau posisi dan orientasi
dari end effector (dalam hal ini ialah gripper). Penggunaan konsep D-H Parameter untuk
melakukan proses perhitungan Forward Kinematics dan Invese Kinematics akan
menggunakan software Matlab sebagai sistem pusatnya.
3.3.1 Penggunaan Konsep Denavit-Hartenberg dalam Simulasi
Konsep Denavit-Hartenberg ini sangat mempengaruhi dalam menentukan
perhitungan Forward kinematik dan Invese kinematik, karena Model Industrial robot ini
terdiri atas sejumlah bagian tubuh seperti link dan sejumlah joint. Setiap joint mewakili
satu derajat kebebasan. Untuk mendeskripsikan hubungan rotasional antara link-link yang
berdekatan, maka terlebih dahulu merancangan sebuah metode matriks yang secara
sistematis membangun sebuah sistem koordinat dari masing-masing link. Gambar 3.1 dan
gambar 3.2 menunjukkan sistem koordinat link industrial robot.
43
Gambar 3.1 Koordinate Frame lengan robot.
Gambar 3.2 Koordinate Frame lengan robot Model tabung.
Untuk mencari sebuah matrik transformasi dari sebuah ujung alat hingga basis dari
sebuah manipulator, ditentukan frame dari link-link dan mendapatkan teknik yang
44
sistematikal, yang dapat menjabarkan kinematika dari sebuah robot dengan i derajat
kebebasan. Setiap joint pada sebuah robot industri memiliki batasan operasi yang berbeda
satu sama lain. Batasan operasi joint robot berupa batasan pergeseran (translasi) dan
perputaran (rotasi) dari sebuah joint. Batasan translasi dan rotasi ini memiliki 2
pergerakan yang berbeda yaitu bergeser atau berputar ke arah positif (Berlawanan jarum
jam) dan bergeser atau berputar ke arah negatif (searah jarum jam). Besar nilai batasan
negatif disebut batasan minimum (min) dan besar nilai batasan positif akan disebut batasan
meximum (max) untuk sebuah joint. Besar nilai batasan operasi dihitung dari posisi joint
pada posisi awal robot. Untuk robot ini nilai awal pada setiap joint pada saat robot
dihidupkan yaitu menuju 0° atau dalam posisi tengah. Dan untuk nilai maximum sebesar
90° dan minimumnya sebesar -90°.
range = max – min
range = total pergerakan joint (°)
max = nilai batas pergerakan positif (°)
min = nilai batas pergerakan negatif (°)
Tabel 3.1 Tabel Batasan Rotasi Lengan Robot
Joint i batasan operasi pergerakan robot Struktur Max Min Joint Range
1 Waist 900 -900 1800
2 Shoulder 900 -900 1800
3 Elbow 900 -900 1800
4 Pitch 900 -900 1800
5 Roll 900 -900 1800
45
Pada penelitian ini untuk Model industrial robot menggunakan 5 buah joint ( Tidak
termasuk gripper) dengan diketahuinya nilai max, min dan range. Dalam simulasi
parameter joint untuk batasan operasi ini akan diperhitungkan untuk pergerakan
kinematika baik dengan Invese kinematics dan Forward kinematics. Gambar 3.3 dan
Tabel 3.2 di bawah ini merupakan contoh parameter Denavit- Hartenberg untuk simulasi
dan robot(fisik) pada penelitian ini dengan joint [i] dan [i] buah link.
Gambar 3.3 Lengan Robot Untuk Karakteristik D-H Parameter
46
Tabel 3.2 Sistem koordinat Link untuk Model Industrial Robot
Joint i i ai (mm) di (mm) Joint Range
1 00 100 120 -900 - 900
2 900 90 40 -900 - 900
3 00 60 0 -900 - 900
4 900 60 0 -900 - 900
5 00 60 0 -900 - 900
dimana :
i = joint ke-i
ai = jarak perpotongan sumbu Zi-1 dengan sumbu Xi ke pusat sumbu koordinat ke-i
sepanjang sumbu Xi (atau jarak terpendek antara sumbu Zi-1 dan sumbu Zi).
α i = Sudut dari sumbu Zi-1 ke sumbu Zi dengan poros sumbu Xi (perputarannya dengan
menggunakan aturan tangan kanan).
di = Jarak dari pusat koordinat ke – (i-1) ke perpotongan sumbu Zi-1 dengan sumbu Xi
sepanjang sumbu Zi-1 (offset distance).
θ i = Sudut pada joint dari sumbu Xi-1 ke sumbu Xi dengan sumbu Zi-1 sebagai porosnya
(perputarannya menggunakan aturan tangan kanan).
Dengan mengetahui batasan operasi dari joint-joint robot industri dan parameter
Denavit-Hartenberg maka dapat ditentukan area jangkauan (Workspace) dari robot
industri.
47
Berikut Rumus Matriks Transformation Homogeneus berdasarkan konsep
Denavit-Hartenberg untuk joint-joint i terhadap i-1 pada joint putar
adalah:
Pers 3 - 1
3.3.2 Pemodelan Forward Kinematics dan Invese Kinematics Secara Umum.
Pada penelitian ini akan memperhitungkan Forward kinematics dan Invese
kinematik.
3.3.2.1 Pengembangan Forward Kinematic dalam Simulasi
Melalui persamaan yang didapatkan berdasarkan konsep Denavit-Hertenberg,
matriks transformasi dari masing-masing joint untuk mendapatkan posisi dan orientasi
pada Model industrial robot dapat dicari dengan memasukan parameter-parameter Model
industrial robot. Pada penelitian ini matriks transformasi homogenous yang digunakan
adalah untuk mencari 0A1, 1A2, 2A3, 3A4, 4A5 dan 0A5. Pada foward kinematics
menggunakan matriks homogeneous dengan parameter D-H, parameter-parameter yang
diberikan akan menghasilkan sebuah matriks yang memberi nilai posisi dan orientasi
sebuah matriks rotasi untuk end effector.
48
Untuk mendapatkan matriks transformasi homogenous yang digunakan adalah
untuk mencari 0A1, 1A2, 2A3, 3A4, 4A5 dan 0A5 maka nilai yang ada pada tabel Sistem
koordinat Link untuk Model industrial robot menggunakan konsep D-H parameter di
substitusikan pada persamaan (3 - 1) matriks transformasi pada Model industrial robot
Rumus Matriks Transformasi D-H Parameter :
Substitusi nilai pada tabel sistem koordinat link untuk mendapatkan matrik
transformasi homogeneusnya :
Matriks Transformasi Joint 1 Terhadap Base :
Matriks Transformasi Joint 2 Terhadap Joint 1 :
Pers (3-2)
Pers (3-3)
49
Matriks Transformasi Joint 3 Terhadap Joint 2 :
Matriks Transformasi Joint 4 Terhadap Joint 3 :
Matriks Transformasi Joint 5 Terhadap Joint 4 :
Maka untuk matrik Transformasi joint 5 Terhadap Base =
3.3.2.2 Pengembangan Invese Kinematics dalam Simulasi dengan Cara Numeric
Pada penelitian ini perhitungan Invese kinematik dengan pendekatan numeric telah
dilakukan sampai dengan joint 5. Mencari sudut masing-masing joint dengan informasi
yang minimum berupa titik koordinat target dibutuhkan untuk mencari Invese kinematics.
Pers (3-6)
Pers (3-5)
Pers (3-4)
50
Untuk melakukan ini, maka Invese kinematics Model industrial robot berdasarkan input
posisi yang diberikan akan diproses melalui perhitungan trial and error yang menghasilkan
output simulasi Invese kinematics berupa lima buah sudut pada setiap joint Untuk cara
numeric atau cara mencoba coba ini menggunakan sedikit campuran dari cara Forward
kinematics yang dihitung berulang-ulang agar end effector mengarah ke target. Tentu saja
cara ini akan sangat tidak efisien bila dilakukan dengan perhitungan matematis. Maka cara
ini biasanya diproses dengan teknologi komputer, dan tampilan pun akan dapat
digambarkan secara langsung dan proses perhitungan akan lebih cepat.
Pendekatan metode numeric ini sendiri digunakan adalah dengan melakukan terus
menerus pengecekan dengan cara Forward kinematics secara berulang dengan resolusi
pergerakan 1 derajat dimulai dari joint ke 5. Posisi awal robot dalam melakukan pencarian
dengan menggunakan metode numerik ini terlihat seperti gambar 3.4. Kemudian
dilakukan pengujian apakah end effector atau joint 5 yang berjarak lebih dekat ke target.
Bila ya maka putar atau mencari titik hanya memutar joint 5 saja. Apabila joint 5 tidak
mencapai target maka joint 4 digerakkan sejauh 1 derajat, lalu joint 5 melakukan
pencarian lagi sejauh sudut putarnya seperti yang terlihat pada gambar 3.5. Apabila tidak
mencapai target maka joint 4 akan melakukan kenaikan 1 derajat lagi. lalu joint 5
melakukan pencarian lagi sejauh sudut putarnya. Apabila tidak mencapai target, maka
joint 4 akan bertambah 1 derajat seperti yang terlihat pada gambar 3.6. Apabila joint 4 dan
joint 5 sudah berputar sejauh sudut putarnya tetapi tidak mendekati target. Maka joint 3
akan naik 1 derajat. Begitu seterusnya. Dengan kata lain metode ini melakukan percobaan
1 per 1 sampai mendekati target.
51
Gambar 3.4 Metode numeric dalam pemecahan masalah Invese kinematik
Gambar 3.5 Lengan Robot sedang melakukan pencarian sudut untuk
mendekati target
Gambar 3.6 Target ditemukan pada Metode numeric
Target
Target
Target
52
3.3.2.3 Penggunaan Variabel
Karena penjelasan dari persamaan kinematika dan pembuatan program simulasi
saling berkaitan maka akan lebih efektif jika penggunaan variabel yang ada di persamaan
kinematika dihubungkan dengan variabel yang ada di dalam program.
i = joint ke-i atau link ke-i
a = offset distanc
α = Alpha atau sudut punter (offset angle)
d = distance
Theta = θ atau sudut joint
PX = posisi end effector pada sumbu X
PY = posisi end effector pada sumbu Y
PZ = posisi end effector pada sumbu Z
A = i-1 Ai matriks transformasi homogeneous Denavit-Hartenberg 4x4 yang melakukan
tranformasi kerangka koordinat i relatif ke kerangka koordinat i-1
3.4 Perancangan Program Simulasi
Pada penelitian ini program simulasi ini akan dibuat memakai sorfware Matlab dan
hasilnya susah berbasiskan user interface atau GUI untuk memudahkan user dalam
memakai program simulasi ini dalam melakukan perhitungan Forward dan Invese
kinematiya. Sebelum masuk dalam perancangan programnya, terlebih dahulu perlu
ditentukan kesamaan dalam satuan pada variabel yang digunakan, hal ini diperlukan untuk
menghindari kesalahan dalam perhitungan.
53
Tabel 3.3 Variabel dan satuan untuk perhitungan simulasi
No Variabel Satuan
1 Jarak, posisi, panjang link Millimeter (mm)
2 Input sudut joint Derajat (0)
Program simulasi ini mempunyai sistem yang terpecah dalam 3 modul
1. Input
2. Proses
3. Output
Program simulasi ini akan digunakan sebagai simulator kinematika Model
industrial robot, dimana pengguna akan memperoleh output berupa informasi pergerakan
kinematika robot yang berbentuk grafik koorditare 3D beserta posisi (x,y,z) dan orientasi.
Hal ini didapat dari hasil pemrosesan variabel-variabel yang dimasukkan berdasarkan
aturan-aturan dan perhitungan yang telah umum dipakai pada robot industri
Modul Forward kinematik adalah modul untuk melakukan pergerakan secara
Forward kinematics, sedangkan modul Invese kinematik adalah untuk melakukan
pergerakan dengan metode Invese dengan memasukkan tujuan dari robot untuk
mendapatkan θi. Forward kinematics dan Invese kinematics merupakan hal yang saling
berkaitan, dimana jika modul Invese menjadi input maka modul Forward akan menjadi
output, dan jika modul Forward menjadi input maka modul Invese akan menjadi output.
54
3.4.1 MATLAB sebagai Lingkungan Pemrograman Simulasi Model industrial robot
MATLAB (Matrix Laboratory) adalah sebuah program untuk analisis dan
komputasi numerik yang merupakan bahasa pemrograman matematika lanjutan dengan
dasar pemikiran menggunakan sifat dan bentuk matrik
MATLAB sering digunakan untuk
Matematika dan komputasi
Pengembangan dan algoritma
Pemrograman modeling, simulasi dan pembuatan prototipe
Analisa data, eksplorasi dan visualisasi
Analisis numerik dan statistik
Pengembangan aplikasi teknik
.Pembuatan aplikasi, termasuk pembuatan antarmuka grafis (Graphical
User Interface)
Dengan berbagai alasan seperti diatas, matlab memang spesial perhitungan yang
menggunakan matriks dan vektor sebagaimana yang digunakan dalam penelitian ini. maka
pada penelitian ini memakai software matlab untuk menghitung proses matrik
homogeneus dan perhitungannya dapat dibuat dan diproses dengan waktu yang lebih
singkat.
Dalam membentuk kerangka perancangan sofware simulasi ini, modul dibagi
menjadi tiga bagian utama, yaitu modul input, modul proses, modul output. Untuk sourse
code program ini dapat dilihat pada lampiran 3.
55
Pada proses pembuatan program simulasi ini. Program akan dipecah menjadi
beberapa file.m agar memudahkan dalam melakukan modifikasi. File file yang dibentuk
dalam membuat program simulasi ini adalah :
• Menu Utama:
Menu1.m Muncul GUI Simulator Kinematika Robot (pilih Direct atau Invers)
• Direct Kinematics:
Input : Menu21.m Input untuk Direct Kinematics ( Setelah pilih Direct
dari menu1.m)
Process: HitDirect.m Melakukan perhitungan matriks transformasi
homogeneous 4x4
Output: Menu22.m Menampilkan Posisi dan Orientasi dari End effector
Grafik.m Menampilkan Grafik Posisi dan Orientasi dari End effector
• Invers Kinematics:
Input: Menu31.m Input untuk Invese Kinematics ( Setelah pilih Invese
dari menu1.m)
Process: Numeric.m Melakukan pencarian sudut setiap joint dengan
metode numeric.
Cari.m Melakukan perhitungan numeric dengan ketelitian (kenaikan) 1
derajat.
Output: Menu32.m Menampilkan Sudut setiap joint pada IRP.
56
3.4.2 Modul Input
Pada bagian modul input pada saat program dijalankan akan tampil menu seperti
gambar 3.7 dibawah ini. Lalu pilih menu yang diinginkan.
Gambar 3.7 Menu Utama pada program simulasi
1. Untuk Forward kinematics
Pada gambar 3.8 dibawah ini merupakan tampilan modul input dari Forward
kinematik. Nilai input yang diberikan berupa besar sudut untuk tiap-tiap joint (θ i )
Gambar 3.8 Menu input Forward kinematik
57
2.Untuk Invese kinematics
Pada gambar 3.9 dibawah ini merupakan tampilan modul input dari Invese
kinematik Pada modul modul ini memiliki beberapa keterangan :
• Posisi awal end effector (Px, Py, Pz)
• Posisi akhir end effector (Px, Py, Pz)
• Nilai input yang diberikan berupa posisi X,Y,Z
Gambar 3.9 menu input Invese kinematik
3.4.3 Modul Proses
Modul proses mempunyai tugas untuk mengolah input yang berupa parameter
tetap maupun parameter pergerakan dalam bentuk matriks. Nilai parameters tersebut
58
sesuai dengan konsep D-H Parameter. Modul proses merupakan sebuah fungsi yang
terdiri dari rumus-rumus untuk mengolah input yang masuk menjadi solusi tersendiri.
Modul proses menghasilkan pemetaan posisi dan orientasi untuk solusi Forward
kinematics, dan menghasilkan pemetaan besarnya sudut-sudut joint untuk solusi Invese
kinematics.
Pada Forward Kinematics saat melakukan kalkulasi matriks homogenusnya yang
mana akan mengkalkulasi matriks homogenus untuk 0A0 (dari titik 0 world coordinate ke
base dari robot), 0A1 (dari titik base ke joint1), 1A2 (dari joint 1 ke joint 2), 2A3 (dari
joint 2 ke joint 3), 3A4 (dari joint 3 ke joint 4), 4A5 (dari joint 4 ke joint 5) dan 0A5 (dari
joint 5 ke base) hal ini dilakukan untuk mendapatkan nilai posisi dan orientasi dari end
effector terhadap base.
Pada Invese kinematics maka program simulasi akan mengecek input posisi pada
modul input. Apakah diisi dengan benar atau tidak, kemudian mengukur radius posisi
yang dimasukkan dari pusat (370,0,160) yang juga merupakan posisi pusat awal base,
yang kemudian dibandingkan dengan range maksimum yang dapat dicapai oleh robot.
Jika radius lebih besar dari range maksimum yang dapat dicapai oleh robot, maka
program akan menampilkan pesan error berupa, posisi berada diluar jangkauan robot dan
proses pencarian sudut untuk Invese dihentikan karena pasti tidak akan menemukan
solusinya. Jika posisi berada dalam jangkauan maka ada kemungkinan untuk menemukan
solusi besar sudut-sudut dari joint. Maka proses pencarian sudut dilanjutkan. Proses Invese
ini sudah dijelaskan pada bagian Pengembangan Invese Kinematics dalam Simulasi
59
dengan Cara Numeri. Pada gambar 3.10 dibawah ini menggambarkan flowchart untuk
Forward dan Invese kinematik
Gambar 3.10 Flowchart untuk Forward kinematik dan Invese kinematik
60
3.4.4 Modul Output
Modul Output dari simulasi ini memberikan beragam informasi yang membantu
agar pengguna dapat memahami pergerakan lengan robot. Informasi yang diberikan
seperti :
1. Keterangan Posisi (x,y,z)
2. Orientasi
2. grafik 3D
Modul proses akan menghasilkan data yang berupa matriks-matriks, pada modul
output ini sebagian dari matriksnya akan diterjemahkan dalam grafik tiga dimensi yang
akan memudahkan dalam pembacaan hasil modul proses. Contoh dari hasil kalulasi
matriks dan menghasilkan Grafik 3D matriks posisi dalam solusi Forward kinematics.
Gambar 3.11 Grafik 3D lengan robot
61
3.4.5 Tampilan Error
Berikut sejumlah tampilan error yang terdapat pada program simulasi :
Pada gambar 3.12 merupakan tampilan error untuk Validasi input yang tidak boleh
lebih dari 90 derajat. Hal ini terjadi karena user memasukkan inputan melebihi 90 derajat
pada modul input Forward kinematik
Gambar 3.12 Validasi input yang tidak boleh lebih dari 90 derajat.
Pada gambar 3.13 merupakan tampilan error untuk Validasi apabila arah (positif
atau negatif) tidak dipilih. Hal ini terjadi karena user tidak memilih arah yang akan dituju
dalam pada modul input Forward kinematik. Arah yang harus dipilih berupa arah positif
atau arah negatif.
Gambar 3.13 Validasi apabila arah (positif atau negatif) tidak dipilih
62
Pada gambar 3.14 merupakan tampilan error untuk pada saat user belum
memasukkan sudut pada joint ke 5.
Gambar 3.14 Apabila waktu dikalkulasi belum memasukkan sudut pada 5 joint.
Pada gambar 3.15 merupakan tampilan error pasa saat ada posisi yang belum dimasukkan
Gambar 3.15 Apabila waktu dikalkulasi posisi awal masih ada yang tidak
dimasukkan
Pada gambar 3.16 merupakan tampilan error pada saat posisi akhir masih ada yang
belum dimasukkan
Gambar 3.16 Apabila waktu dikalkulasi posisi akhir masih ada yang tidak
dimasukkan
63
Pada gambar 3.17 merupakan tampilan error pada saat memasukkan inputan pada
modul Invese melewati jangkauan lengan robot.
Gambar 3.17 Error disebabkan posisi awal berada di luar jangkauan IRP
Pada gambar 3.18 merupakan tampilan error apabila inputan yang kita masukkan
bukan angka
Gambar 3.18 Error disebabkan input yang dimasukkan bukan angka
3.4.6 Tampilan Keseluruhan Software
Untuk menggunakan program simulasi ini dibutuhkan tersedianya program
MATLAB pada komputer. Dalam program MATLAB, simulasi ini dapat dibuka dengan
mengetikkan menu1 pada command window. Tampilan ini akan memudahkan operator
untuk mengoperasikan program simulasi.
Tampilan ini akan berkaitan dengan graphical user interface (GUI) yang akan
mempermudah operator dalam menggunakan simulasi.
64
Pada Gambar 3.19 dapat dilihat bahwa simulasi ini menyediakan 2 menu pilihan,
diantaranya adalah menu direct kinematics (menu 1), Invese kinematics (menu 2). Untuk
pertama kali coba memilih menu direct kinematik.
Gambar 3.19 Menu untuk simulator kinematik
Setelah memilih menu direct kinematik maka tampilan selanjutnya seperti gambar
3.20 di bawah ini. Gambar berupa modul input untuk direct kinematik. Inputan berupa
sudut joint dan pilih sesuai arah putar joint
Gambar 3.20 Inputan Forward kinematik
Pilih Menu Forward Kinematics
Pilih arah putar joint
Masukkan besar sudut joint
Klik kalkulasi untuk melakukan perhitungan
65
Setelah memasukkan sudut putar dan arah putar joint maka klik tampilan
kalkulasi. Ketelah klik tampilan kalkulasi maka modul proses akan melakukannya. Dan
akan mendapatkan nilai posisi dan orientasi seperti gambar dibawah ini
Gambar 3.21 Hasil kalkulasi Forward kinematik
Setelah klik tampilkan grafik maka akan mendapatkan gambar grafik seperti dibawah ini.
Gambar 3.22 Grafik 3D hasil kalkulasi Forward kinematik
Klik tampilkan grafik untuk munculkan grafik
66
Untuk selanjutnya mencoba Invese kinematik. Maka pilih menu Invese kinematik
sepeti gambar dibawah ini.
Gambar 3.23 Menu simulator
Setelah klik Invese kinematik maka akan muncul pop up seperti gambar dibawah
ini yang berisikan informasi Workspace lengan robot.
Gambar 3.24 Pop up pada Invese kinematik menjelaskan tentang Workspace
Pilih Menu Inverse Kinematics
67
Setelah itu muncul modul inputan untuk permasalahan Invese kinematik. Inputan
yang dimasukkan berupa target yang posisi akhir yang diinginkan berupa posisi x,y,z.
Seperti yang terlihat pada gambar dibawah ini.
Gambar 3.25 Menu inputan untuk Invese kinematik
Setelah memasukkan inputan berupa posisi x,y,z. Maka modul input akan
menkalkulasi inputan tersebut pada modul proses. Lalu akan mandapatkan modul output
berupa nilai sudut joint seperti gambar dibawah ini.
Gambar 3.26 Hasil kalkulasi Forward kinematik
Inputan berupa posisi x, y dan z
68
3.5 Perancangan Hardware Model industrial robot
Pada perancangan hardware Model industrial robot ini akan dirancang hardware
mekanik berupa lengan robot fisik dan harware elektronik berupa mikroconroller untuk
mengontrol harware mekanik.
Berikut karakteristik dan komponen hardware Model industrial robot pada
penelitian ini:
Komponen Model industrial robot :
1. Manipulator
• Mekanik
• Penyangga gerakan ( appendage)
• Base (pondasi / landasan robot)
2. Controler
Adalah jantung dari robot untuk mengontrol pergerakan lengan robot.
3. Power Supply
Sumber tenaga yang dibutuhkan oleh robot. Pada penelitian ini memakai 2
poser supply. Pertama power suppy untuk keperluan mikrokontroller dan
kedua power supply untuk keperluan motor servo dc.
4. End effector
Piranti yang terpasang pada lengan robot untuk melaksanakan fungsi-
fungsi tertentu Untuk memenuhi kebutuhan si pemakai. Pada penelitian ini
end effector yang dipakai berupa gripper.
Gripper (pencengkram) : piranti untuk memegang dan mencengkram
obyek, misalnya : tangan mekanik, piranti pengait, magnet atau penghisap.
69
5. Control Program
Pada penelitian ini digunakan 2 jenis program code untuk mengontrol
lengan robotnya. Pertama menggunakan bahasa pemograman Assembly
dan kedua menggunakan bahasa pemograman Visual Basic.
Karekteristik Model industrial robot pada penelitian ini :
1. Base
2. Waist
3. Shoulder
4. Elbow
5. Wrist pitch
6. Wrist Roll
7. GRIPPER (End effector)
3.5.1 Perancangan Hardware Mekanik
Untuk perancangan hardware ini ada 4 hal utama yang harus dilakukan yaitu
menentukan Workspace, menentukan panjang link, menentukan arah putar joint dan
proses perakitan.
3.5.1.1 Menentukan Workspace
Workspace (area kerja) adalah luas area dimana robot itu dapat bekerja. Secara
teknis dapat dikatakan adalah dimana ujung bagian masih digerakkan di bawah control.
70
Work Volume diperhitungkan dari :
• Konfigurasi Fisik
• Ukuran
• Jangkauan Lengan
• Hubungan / Joint Manipulator
Fungsi mengetahui Workspace :
• Lay Out
• Area Kerja dan Safety Area
• Program
Gambar berikut merupakan Workspace untuk Model industrial robot.
Workspace
Dari atas Dari samping
Gambar 3.27 Workspase
71
3.5.1.2 Menentukan Panjang Setiap Link
Dari Workspace di atas maka ditentukanlah panjang setiap link. Ukuan untuk
panjang setiap link Bisa dilihat pada gambar dibawah ini
- Panjang Link 1 dan Link 2 = 100 mm
Gambar 3.28 Link 1 dan link 2
- Panjang Link 3 = 80 mm
Gambar 3.29 Link 3
- Panjang Link 4 = 60 mm
Gambar 3.30 Link 4
72
- Panjang Link 5 = 60 mm
Link 5 ini secara fisik hanyalah tempat penyangga servo motor untuk joint 6 dalam
melakukan pergerakan gripper. Panjang link 5 diukur dari titik akhir joint 5 sampai titik
akhir end effector seperti yang terlihat pada gambar 3.31 di bawah ini.
Gambar 3.31 Link 5
3.5.1.3 Menentukan Posisi Stuktur dan Arah Putar Antara Joint Dengan Link
Agar memudahkan dalam proses perakitan ada baikknya terlebih dahulu
tentukan posisi struktur letak joint dan arah putar joint seperti yang terlihat pada
gambar 3.32 dan gambar 3.33 dibawah ini
Gambar 3.32 Sudut putar kerangka Model industrial robot
Gripper Arah putar joint
Base
73
Gambar 3.33 Arah dan dan sudut putar lengan robot
3.5.1.4 Proses Perakitan
Proses perancangan ini diawali dengan pembuatan Base, Link, Clamp, dan gripper.
1. Pembuatan Base
Pada penelitian ini pembuatan base dilakukan dengan proses pembubutan.
Sebelum melakukan proses pembubutan awalnya base diukur terlebih dahulu
untuk menentukan tinggi dari lengan robotnya. Tinggi dari base ini sekitar 120
mm dengan struktur seperti gambar dibawah ini.
74
Gambar 3.34 Base
2. Pembuatan Link
Pada penelitian ini pembuatan base dilakukan dengan proses pembubutan
Sebelum melakukan proses pembubutan awalnya link diukur terlebih dahulu
seperti yang sudah dibahas pada subbab diatas pada penentuan panjang link.
Struktur link bisa dilihat pada gambar dibawah ini
Gambar 3.35 Link
120 mm
100 mm
100 mm
75
3. Pembuatan Clamp
Pada penelitian ini pembuatan clam dilakukan dengan proses pembubutan.
Fungsi clamp ini adalah untuk mengikat servo motor pada link Struktur clamp
bisa dilihat pada gambar dibawah ini
Gambar 3.36 Clamp
4. Gripper
Pada penelitian ini pembuatan gripper berfungsi untuk memegang dan
mencengkram obyek Struktur gripper bisa dilihat pada gambar dibawah ini
Gambar 3.37 Gripper
76
5. Servo motor
Motor servo DC berguna untuk menggerakkan lengan robot. Disini
fungsinya sebagai joint. Berikut gambar servo motor dc
Gambar 3.38 Servo Motor
Dibawah ini merupakan gambar informasi dari model industrial robot
Gambar 3.39 Informasi Lengan Robot
77
Hasil akhir dari rancang bangun hardware mekanik adalah seperti gambar dibawah ini
Gambar 3.40 Hasil akhir rancang bangun robot
3.5.2 Perancangan Hardware Elektronik
Perancangan hardware elektronik ini berfungsi untuk mengontrol lengan robot.
Pada perancangan ini meliputi perancangan modul mikrocontroller, modul power supply,
modul servo motor, modul teaching box, modul indikator dan modul RS-232.
3.5.2.1 Perancangan Modul Mikrocontroller
Berikut merupakan gambar perancangan modul mikrocontroller dan rangkaian
mikrocontroller..
78
Gam
bar 3.42 Rangkaian Mikrokontroller
79
Sebuah Mikrokontroller akan dapat bekerja jika diberikan Rangakain Auto Reset
yang terdiri dari sebuah Elco 10µf & sebuah Resistor 8,2kΩ. Dalam Rangkaian ini juga
diberikan Rangkaian Reset Manual menggunakan sebuah Push Button yang dibatasi
dengan sebuah Resistor 470Ω supaya Arus yang masuk ke kaki Reset saat Push Button
ditekan tidak langsung tetapi melalui Resistor tersebut.
Diberikan juga Rangkaian Oscilator supaya Mikrokontroller akan mendapatkan
denyut sehingga Mikrokontroller dapat bekerja menjalankan Program yang terdapat pada
ROM Internal. Rangkaian ini terdiri dari Xtal 11.0592 Mhz & 2 buah Kapasitor 33pf.
3.5.2.2 Rangkaian Power Supply
Gambar berikut merupakan rangkaian power supply.
Gambar 3.43 Rangkaian Power supply
Rangkaian Power Supply yang dirancang menggunakan Sebuah Trafo Step Down
untuk menurunkan Tegangan 220 Volt AC menjadi 12 Volt AC yang kemudian akan
disearahkan menjadi 12 VDC menggunakan Dioda Bridge tetapi tegangan DC yang
dihasilkan masih belum sempurna sehingga digunakan sebuah Elco 1000µf sebagai Filter
agar Tegangan DC yang dihasilkan menjadi sempurna. Untuk menghasilkan Tegangan 5
80
Volt DC digunakan sebuah Regulator 7805 yang kemudian juga difilter kembali
menggunakan sebuah Elco 220µf.
3.5.2.3 Rangkaian Motor Servo
Rangkaian ini berguna untuk memberikan signal ke motor servo untuk
menggerakkan motor servo seperti terlihat pada gambar dibawah ini.
Gambar 3.44 Rangkaian Motor Servo
81
3.5.2.4 Rangkaian Indikator
Rangkaian indikator ini berguna sebagai indikasi untuk servo. Jadi apabila
servonya aktif maka bagian indikator ini akan menyalakan lampu untuk menandakan
servo mana yang sedang aktif. Berikut merupakan gambar rangkaian indikator
Gambar 3.45 Rangkaian Indikator
3.5.2.5 Perancangan Modul Teaching Box ( kontroller manual robot )
Teaching Box digunakan pada model industrial robot sebagai alat pengendali dari
lengan Robot tersebut. Teaching Box selain untuk menggerakan lengan Robot secara
manual. Berikut gambar rangkaian teaching box
Gambar 3.46 Rangkaian Teaching Box
82
3.5.2.6 Perancangan Modul Interface RS 232
Berikut gamabr rangkaian modul interface RS 232
Gamabr 3.47 Rangkaian Modul interface RS 232
Komunikasi antara Mikrokontroller dengan Komputer PC dapat melalui Serial
Port tetapi butuh sebuah Interface sebagai pengantar berkomunikasinya. MAX232
digunakan sebagai Sinkronisasi data dari Mikrokontroller ke Komputer PC karena Logika
yang terdapat pada Komputer PC adalah :
• Logika 1 pada Komputer PC adalah tegangan antara -3 sampai -15 Volt
• Logika 0 pada Komputer PC adalah tegangan antara 3 sampai 15 Volt
Sedangkan logika yang terdapat pada Mikrokontroller adalah :
• Logika 1 pada Mikrokontroller adalah 5 Volt
• Logika 0 pada Mikrokontroller adalah 0 Volt atau Ground
83
Standar logika digital untuk logika 0 adalah tegangan yang sangat rendah atau bisa
juga Ground bahkan jika menggunakan tegangan -, maka tegangan – tersebut dapat
dianggap sebagai logika 0, sedangan untuk logika 1 adalah tegangan yang nilainya lebih
tinggi daripada logika 0 yaitu bisa 5 Volt, 9 Volt, 12 Volt ataupun 18 Volt tergantung dari
Power supply yang digunakan.
Oleh karena itu tegangan yang dihasilkan oleh Mikrokontroller adalah tegangan
yang sesuai dengan standar logika digital, tetapi logika yang dihasilkan oleh Komputer PC
tidak sesuai dengan logika digital. Tegangan -3 sampai -15 Volt yang dihasilkan
Komputer PC dianggap sebagai logika 1 yang sebenarnya seharusnya adalah logika 0
tetapi dalam level tegangan yang berbeda. Tegangan +3 sampai +15 Volt yang dihasilkan
Komputer PC dianggap sebagai logika 0 yang seharusnya adalah logika 1.
Jadi Logika yang dihasilkan Komputer PC supaya dapat Sinkron dengan
Mikrokontroller & sebaliknya, maka logika tersebut harus dibalik dengan menggunakan
sebuah Inverter. Tetapi Inverter biasa hanya akan bertugas untuk membalikkan logika
saja, sedangkan tegangan yang dihasilkan pada saat sudah dibalik juga harus sesuai
dengan standarnya masing masing. Oleh karena itu digunakan MAX232 sebagai interface
yang dapat membalikkan logika sekaligus dapat membalikkan Standar tegangan dari
standar tegangan yang dihasilkannya.
84
Level tegangan yang masuk ke MAX232 tidak boleh terbalik, untuk Input &
Output tegangan Digital harus masuk ke R1Out & T1In. Sedangkan tegangan Komputer
PC harus masuk ke kaki R1In & T1Out.
Keempat buah kapasitor Elektrolit yang terhubung ke MAX232 digunakan sebagai
Rangkaian Voltage Doubler & Voltage Inverter yang berlangsung di dalam IC MAX232.
Jika keempat buah Kapasitor tersebut tidak digunakan, maka Komunikasi antara
Mikrokontroller & Komputer PC tidak akan terjadi.
3.5.2.7 Rangkaian keseluruhan
Dibawah ini menunjukkan gambar rangkaian keseluruhan dari hardware elektronik
85
Gambar 3.48 Rangkaian keseluruhan hardware elektronik
86
3.6 Perancangan Perangkat lunak Model industrial robot
Perancangan perangkat lunak merupakan perancangan program yang ada pada
AT89S51 dan visual basic.
3.6.1 Perancangan Perangkat Lunak Bahasa Assembly
Pemrograman microcontroller yang menggunakan bahasa assembly berfungsi
untuk mengatur atau memperoses servo motor dc dengan teknik PWM, mengatur
indikator led, menerima inputan teaching box dan mengatur komunikasi antara PC dan
mikrokontroler. dengan memanfaatkan komunikasi serial. Untuk source code program
dapat dilihat pada lampiran 1. berikut gambar flowchart dari Program assembly untuk
model industrial robot
Gambar 3.49 Flowchart Assembly
87
3.6.2 Perancangan Perangkat Lunak Visual Basic
Pemrograman visual basic berfungsi sebagai tampilan data untuk mengontrol robot
secara otomatis dan dapat menyimpan posisi gerakan robot sesuai tujuannya. Ketika
program dijalankan yang pertama kali dilakukan adalah melakukan inisialisasi terhadap
port serial yaitu menentukan setting port serial, serta mengaktifkan port. Sehingga ketika
program dijalankan komunikasi dengan menggunakan port serial langsung dapat
digunakan. Untuk source code program dapat dilihat pada lampiran 2
3.6.2.1 Modul Input
Didalam pemrograman visual basic ini bagian input yang terdiri dari inputan data
berupa besar sudut pergerakan joint yang berfungsi untuk menggerakkan lengan robot
yang dikirim ke mikrocontroller. Pada visual basic ini juga bisa mensave posisi gerakan
robot sesuai tugas yang diberikan kepanya. Untuk posisi gerakan yang disave bisa banyak
selama mikrocontroller dan servo mampu menjalankannya. Berikut tampilan program
visual basic.
88
Tampilan Visual BasicPemilihan Port
Dan melakukanKoneksi keDrive unit
Pemilihan jumlahSudut yang diperlukan
Sesuai tujuanDari joint 1 - 6
TampilanBesarSudut
UntukSave Posisi
Untuk meloadPosisi yang
Sudah disave
Melakukan EksekusiTerhadap Posisi
yang sudah di save
Gambar 3.50 Tampilan Visual Basic
3.6.2.2 Modul Proses
Modul proses ini berfungsi untuk memproses inputan dari user dan akan dikirim
ke microcontroller berupa nilai yang sudah di tentukan. Dan juga memproses data yang
disimpan untuk save posisi dalam melakukan tugas tertentu. Berikut flowchart visual
basic untuk model industrial robot.
89
90
3.6.2.3 Modul Output
Modul output ini berfunsi untuk menampilkan data inputan pada layar berupa
besar sudut yang diberikan user dan juga memberikan perintah pada mikrocontroller untuk
melakukan pergerakan pada lengan robot sesuai inputan user, baik itu perintah pergerakan
lengan robot maupun perintah save posisi
3.7 Rancangan Bangun Sistem Keseluruhan
1. Modul Utama Model industrial robot
Gambar 3.52 Modul Utama Model industrial robot
TEACHING BOX
PC / KOMPUTER
DRIVE UNIT
MODEL
INDUSTRIAL ROBOT
INPUT CONTROLLER OUTPUT
91
2. Foto lengan robot nya
Gambar 3.53 Foto lengan robot
3. Control Unit dan Teaching box
Gambar 3.54 Kontroller lengan robot dan teaching box