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 1 2 3 4 5
Struktur
Max
Min
Joint Range
Waist Shoulder Elbow Pitch Roll
900 900 900 900 900
-900 -900 -900 -900 -900
1800 1800 1800 1800 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 : Pers (3-2)
Matriks Transformasi Joint 2 Terhadap Joint 1 :
Pers (3-3)
49 Matriks Transformasi Joint 3 Terhadap Joint 2 :
Pers (3-4)
Matriks Transformasi Joint 4 Terhadap Joint 3 : Pers (3-5)
Matriks Transformasi Joint 5 Terhadap Joint 4 : Pers (3-6)
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.
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
Target
Gambar 3.4 Metode numeric dalam pemecahan masalah Invese kinematik Target
Gambar 3.5 Lengan Robot sedang melakukan pencarian sudut untuk mendekati target Target
Gambar 3.6 Target ditemukan pada Metode numeric
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.
Pilih Menu Forward Kinematics 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
Masukkan besar sudut joint
Pilih arah putar joint
Klik kalkulasi untuk melakukan perhitungan
Gambar 3.20 Inputan Forward kinematik
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
Klik tampilkan grafik untuk munculkan grafik
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
66 Untuk selanjutnya mencoba Invese kinematik. Maka pilih menu Invese kinematik sepeti gambar dibawah ini.
Pilih Menu Inverse Kinematics
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
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.
Inputan berupa posisi x, y dan z
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
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 fungsifungsi 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
Arah putar joint
Gripper
Base
Gambar 3.32 Sudut putar kerangka Model industrial robot
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
120 mm 100 mm
100 mm
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
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 Basic Pemilihan Port Dan melakukan Koneksi ke Drive unit
Tampilan Besar Sudut
Pemilihan jumlah Sudut yang diperlukan Sesuai tujuan Dari joint 1 - 6
Melakukan Eksekusi Terhadap Posisi yang sudah di save
Untuk Save Posisi Untuk meload Posisi yang Sudah disave
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
INPUT
CONTROLLER
OUTPUT
TEACHING BOX DRIVE UNIT
MODEL INDUSTRIAL ROBOT
PC / KOMPUTER
Gambar 3.52 Modul Utama Model industrial robot
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