MODELING MOVING OBJECT CONTROL SYSTEM FOR MOTORIZED ARM ROBOT USING ADAM SERIES Senoaji1, Taufiqurrahman 2, Wahjoe Tjatur Sesulihatien 2, Rusminto Tjatur Widodo2 1 Penulis, Mahasiswa Jurusan Teknik Elektronika PENS - ITS 2 Dosen Pembimbing, Staf Pengajar di Jurusan Teknik Elektronika PENS - ITS Politeknik Elektronika Negeri Surabaya Electronics Engineering Polytechnic Institute of Surabaya Institut Teknologi Sepuluh Nopember Surabaya Kampus ITS Sukolilo, Surabaya 60111, INDONESIA Tel: +62 (31) 594 7280; Fax: +62 (31) 594 6114 email :
[email protected] [email protected] [email protected] [email protected]
Abstrak— Proyek akhir ini membahas tentang suatu sistem yang dapat digunakan sebagai alat bantu kecerdasan untuk berinteraksi antara robot lengan dengan manusia. Sistem robot lengan dibuat dengan menggabungkan kombinasi antara mekanik (robot lengan tipe ED-7220-4), rangkaian elektronika (mikrokontroler Atmega 16), sensor (optocoupler) dan aktuator (driver motor LM298 dan motor DC). Melalui persamaan permodelan kinematika robot lengan tipe ED7220-4, sistem ini mampu memberikan informasi mengenai nilai sudut dan koordinat tiap join lengan robot (base, shoulder, elbow, wrist-pitch/roll). Permodelan kinematika (kinematik maju dan kinematik terbalik) menggunakan metode Denavit-Hartenberg akan diuji melalui implementasi hardware (plant robot lengan tipe ED-7220-4) dan implementasi software (animasi 3D berbasis OpenGL pada QT Nokia Sdk). Dari pengujian hardware tiap join mulai join base, shoulder, elbow, wrist-pitch/roll diperoleh hasil error pergerakan tiap join berbeda-beda. Dan hasil error/kesalahan pergerakan tiap join sendi terakumulasi pada ujung end of effector dengan nilai sekitar 4% hingga 20%. Proyek akhir ini juga membahas tentang sistem integrasi antara robot lengan ED-7220-4 (machine to machine) dan plant projek lainya yaitu FA (factory automation) dengan menggunakan sistem komunikasi data secara ethernet melalui fasilitas ADAM. Kata kunci: Robot Lengan ED-7220-4, Atmega 16, optocoupler, driver motor LM298, motor DC, kinematik maju/kinematik terbalik, Denavit-Hartenberg, QT Nokia Sdk, human-machine interface, ethernet, ADAM BAB I PENDAHULUAN 1.1 Latar Belakang Saat ini perkembangan teknologi sudah sangat maju dan pesat, begitu pula perkembangan teknologi dibidang
1
robotika. Keunggulan dalam teknologi robot dapat dikatakan telah menjadi ikon kebanggaan negara-negara maju didunia seperti Jepang, Amerika, dan Jerman. Istilah robot hampir tak dapat dipisahkan dengan dunia industri. Dalam dunia industri, robot merupakan alat yang dapat digunakan sebagai alat bantu manusia yang memiliki beberapa kelebihan. Kelebihan tersebut salah satunya adalah dapat digunakan pada tempat-tempat yang tidak memungkinkan untuk di jangkau atau berbahaya bagi manusia. Sebuah industri laboratorium riset kimia adalah contoh tempat yang kadang tidak memungkinkan manusia berada di tempat itu karena bahaya gas beracun. Contoh lainya yaitu pada industri pembuatan disk yang perlu beroperesi pada ruangan steril dan industri perakitan elektronik. Oleh karena itu dalam pelaksanaan kerjanya, diperlukan adanya batasan jarak antara manusia itu sendiri terhadap obyek yang akan dikerjakan. Dengan adanya batasan tersebut, maka penggunaan robot sebagai alat bantu kerja merupakan alternatif yang aman bagi manusia yang berkerja tersebut. Seiring penggunaanya didunia industri sehingga munculah istilah industrial robot dan robot manipulator. Salah satu contoh robot yang populer yaitu robot lengan (arm robot) yang diciptakan untuk berbagai keperluan dalam meningkatkan produksi, memiliki bentuk lengan-lengan kaku yang terhubung secara seri dan memiliki sendi yang dapat bergerak memanjang/memendek (translation) maupun gerakan berputar (rotation). Robot lengan memiliki bentuk seperti layaknya tangan manusia dimana satu sisi lengan yang disebut pangkal ditanam pada bidang atau meja yang statis, sedangkan sisi lain yang disebut sebagai ujung (end of effector) dapat dimuati oleh tool tertentu sesuai dengan tugas dari robot. Didalam dunia mekanikal, robot lengan memiliki dua bagian yaitu bagian tangan (arm) dan pergelangan (wrist). Pada bagian pergelangan itulah dapat dipasang berbagai tool. Dalam merencanakan suatu lengan robot untuk aplikasi tertentu, perlu pertimbangan berbagai macam alternatif yang akan digunakan. Mulai pemilihan jenis
penggerak, konfigurasi robot, jenis joint dan lainnya. Oleh karena itu, dalam tugas akhir ini dirancang sebuah lengan robot yang dilengkapi cara perhitungan kinematika maju dan kinematika terbalik dengan metode geometric. Selain itu dalam tugas akhir ini juga dirancang perangkat lunak yang digunakan dalam berinteraksi antara manusia dengan robot lengan atau lebih sering dikenal dengan HMI (human-machine interface). Pembuatan HMI ini sangat penting, karena HMI memudahkan manusia (operator robot) dalam mengendalikan gerakan robot lengan sehingga gerakan robot dalam mencapai goal position.
3.
Menggunakan permodelan kinematika maju, robot lengan tipe ED-7220-4 akan bergerak berdasarkan input nilai sudut angle (θ) sehigga menghasilkan output berupa koordinat posisi (x,y,z). 4. Menggunakan permodelan kinematika terbalik, robot lengan tipe ED-7220-4 akan bergerak berdasarkan input nilai berupa koordinat posisi (x,y,z). 5. Kecepatan gerakan robot lengan tipe ED-7220-4 dibuat konstan dengan tegangan motor sebesar 12-15 volt, sehingga disini robot hanya diatur keakuratan saja. 6. Pergerakan robot lengan tipe ED-7220-4 dibuat sekuensial, sehingga robot akan join robot lengan bergerak bergantian secara berurutan. 7. Pergerakan robot lengan tipe ED-7220-4 dibuat tanpa memerhatikan momen inersia dan torsi (dinamika). 8. Komunikasi robot lengan tipe ED-7220-4 dengan konsole komputer menggunakan kabel serial. 9. Komunikasi robot lengan tipe ED-7220-4 dengan server menggunakan kabel ethernet. 10. Menggunakan Mikrokontroler ATmega 16 sebagai kontroller pergerakan robot. 11. Pembuatan HMI dilakukan dengan menggunakan software Qt.
1.2 Tujuan Proyek akhir ini bertujuan untuk membuat suatu analisa permodelan kinematika pergerakan Robot lengan ED7220-4 dalam memindahkan benda dari koordinat satu kekoordinat lainya. Robot lengan ED-7220-4 terdiri dari mekanik, elektronik, sensor dan aktuator akan dikontrol menggunakan mikrokontroler dan perangkat lunak HMI (human main interface). Kemudian robot lengan juga mampu berintegrasi dengan plant project lainya yaitu FA (factory automation) dengan bantuan sistem komunikasi via ethernet membentuk sebuah SCADA. Sehingga kedepannya robot lengan dapat diaplikasikan sebagai media pembelajaran untuk mata kuliah SMT (Sistem Manufaktur Terpadu) di kampus Politeknik Elektronika Negeri Surabaya.
BAB II DASAR TEORI
1.3 Permasalahan Adapun permasalahan yang akan dibahas adalah sebagai berikut : 1. Bagaimana menggabungkan unsur mekanik, elektronik, sensor dan akuator (motor DC) pada robot lengan tipe ED-7220-4.? 2. Bagaimana membuat perencanaan permodelan kinematika (kinematik maju/ kinematik terbalik) robot lengan 5 DOF tipe ED-7220-4 dengan menggunakan metode Denavite Hatenberg.? 3. Bagaimana membuat aplikasi dengan QT Nokia Sdk agar lengan robot tersebut dapat mengetahui goal position.? 4. Bagaimana membuat program simulasi pergerakan robot lengan menggunakan animasi 3D berbasis OpenGL.?
2.1 Pengantar robotika Robotika adalah ilmu yang mempelajari robot. Istilah robot pertama kali dipakai oleh dramawan dan novelis Ceko, Karol Capek pada tahun 1917. Kata robot berasal dari bahasa Ceko yaitu robota yang memiliki makna kerja (work). Robotika sendiri terdiri menjadi beberapa interdisiplin ilmu seperti mekanika, elektronika, teknik kontrol, mikroprosesor dan komputer [1]. 2.2 Robot Lengan (Arm Robot)
1.4 Batasan Masalah Adapun batasan–batasan masalah yang dibuat agar dalam pengerjaan proyek akhir ini dapat berjalan dengan baik adalah sebagai berikut: 1.
2.
Gambar 2.2 Komponen Robot Lengan
Persamaan permodelan kinematika robot lengan tipe ED-7220-4 kinematik maju dan kinematik terbalik yang diperoleh menggunakan metode DenavitHartenberg. Hasil persamaan permodelan kinematika robot lengan tipe ED-7220-4 (kinematik maju dan kinematik terbalik) akan diuji melalui implementasi hardware (robot lengan) dan software (animasi 3D).
2
Link Bagian robot yang bentuknya tetap dan dapat bergerak. Link biasanya dihubungkan dengan joint. Joint Penghubung link dengan link atau base yang dapat bergerak aktif (biasanya terdapat akuator). End of Effector Ujung robot yang dapat berinteraksi dengan objek.
2.4 Sistem Hardware
Tools Bagian yang diletakan pada ujung robot (End of Effector). Terdapat banyak jenis tools yang dapat dipasang. Namun pada robot lengan tools umumnya berupa gripper atau penjepit DOF (Degree of Freedom) Adalah jumlah derajat kebebasan atau jumlah gerakan independen yang dapat dilakukan oleh suatu robot.
2.4.1 Driver Motor (LM298) Rangkaian driver motor DC L298N ini disebut dengan hbridge dikarenakan konfigurasi susunan transistornya membentuk huruf H. Transistor2 ini digunakan sebagai switching sehingga nantinya motor dapat berputar searah jarum jam (clockwise) dan berlawanan arah jarum jam (counter-clockwise).
2.3 Permodelan Matematika Robot Lengan Berikut adalah point-point yang diperlukan dalam permodelan matematika. 2.3.1 Deskripsi Ruang dan Transformasi Secara umum berdasarkan sistem koordinat kerjanya, robot dapat dibagi dalam 4 kategori [3]: a. Cartesian Coordinate b. Cylindric Coordinate c. Spherical Coordinate d. Revolute or Articulate Coordinate 2.3.2 Kinematika Maju (Forward Kinematic) Kinematika Terbalik (Invers Kinematic)
Gambar 2.4 Rangkaian Driver Motor H-Bridge
2.4.2 Sensor Putaran (Optocoupler) Sensor optocoupler berfungsi untuk menghitung jumlah putaran motor menggunakan piringan berlubang. Sensor optocoupler menghasilkan pulsa dari putaran roda cacah yang berputar, pulsa ini yang akan digunakan sebagai masukan pada mikrokontroler untuk dihitung berapa pulsa yang diterima pada satuan waktu tertentu.
dan
Kinematika mengandung komponen transformasi ruang Cartesian ke ruang sendi ataupun sebaliknya. Jika jari-jari dan θ dari suatu struktur robot n-DOF diketahui maka posisi P(x,y,z) dapat dihitung. Transformasi koordinat ini dikenal sebagai kinematik maju. 2.3.3 Metode Denavite-Hartenberg Denavit-Hartenberg (DH) merupakan standar permodelan dan pergerakan robot. Metode ini dipublikasikan pertama kali oleh R.S.Denavit dan J.Hartenberg pada tahun 1947. Setiap robot akan dapat digambarkan secara kinematika dengan memberikan empat parameter (DH) untuk setiaap link. Secara umum bentuk tabel DH adalah sebagai berikut: JOINT-i
Gambar 2.5 Rangkaian Sensor Optocoupler
2.4.3 Mikrokontroler (Atmega 16)
Tabel 2.1 Tabel Denavit-Hatenberg θi αi di Keterangan ai
1
θ1
α1
a1
d1
Base
2 3 4 5
θ2 θ3 θ4 θ5
α2 α3 α4 α5
a2 a3 a4 a5
d2 d3 d4 d5
Shoulder Elbow Yaw Roll
Gambar 2.6 Minimum Sistem ATmega 16
Dari Tabel Denavit Hatenberg diatas dapat diubah menjadi persamaan Matriks sebagai berikut [6]: i-1
Ai =
𝑐𝑜𝑠θ𝑖 −𝑐𝑜𝑠𝛼𝑖 sinθ𝑖 𝑠𝑖𝑛θ𝑖 𝑐𝑜𝑠𝛼𝑖 cosθ𝑖 0 sin𝛼𝑖 0 0
𝑠𝑖𝑛𝛼𝑖 sinθ𝑖 −𝑠𝑖𝑛𝛼𝑖 𝑐𝑜𝑠θ𝑖 𝑐𝑜𝑠𝛼𝑖 0
a 𝑖 𝑐𝑜𝑠θ𝑖 a 𝑖 sinθ𝑖 𝑑𝑖 1
AVR merupakan seri mikrokontroler CMOS 8-bit buatan Atmel, berbasis arsitektur RISC (Reduced Instruction Set Computer). ATMega16 mempunyai empat buah port yang bernama PortA, PortB, PortC, dan PortD.
.............(2.1)
2.4.4 Adam 5000/485 Series ADAM merupakan piranti yang banyak digunakan untuk aplikasi kontrol dan akuisisi data pada peralatan industri.
3
BAB III PERENCANAAN DAN PEMBUATAN SISTEM 3.1 Konfigurasi Sistem Dalam bab ini akan dijelaskan mengenai perencanaan sistem yang akan dibuat. Terdapat 2 macam konfigurasi sistem yakni konfigurasi sistem keseluruhan (Scada) dan konfigurasi sistem robot lengan.
Gambar 2.8 Adam 5000/485 series
2.4.5 Serial Komunikasi RS-232 RS-232 adalah interface yang paling umum yang digunakan untuk berkomunikasi secara serial, tapi mempunyai batas-batas tertentu.
3.1.1 Konfigurasi Sistem Keseluruhan (Scada)
Gambar 2.9 Serial komunikasi RS-232 Gambar 3.1 Konfigurasi sistem keseluruhan Scada
2.5 Sistem software 2.5.1 Code Vision AVR
3.1.2 Konfigurasi Sistem Robot Lengan
CodeVisionAVR merupakan software C-cross compiler, dimana program dapat ditulis menggunakan bahasa-C. Dengan menggunakan pemrograman bahasa-C diharapkan waktu disain (developing time) akan menjadi lebih singkat.
Terpisah dari konfigurasi sistem keseluruhan, konfigurasi sistem robot lengan dapat bekerja sendiri sebagai plant kontrol. Sistem kerja robot lengan diatur oleh sebuah HMI (Human-Machine Interface) melalui komunikasi serial. Melalui HMI dapat dilakukan fungsi kerja kontrol pergerakan dan monitor pergerakan. Berikut ilustrasi dari konfigurasi sistem robot lengan: SERIAL RS-232
I/O A-D/D-A
Mikro PC-HMI ROBOT ARM (Console)
Gambar 2.10 Code Vision AVR ARM ROBOT ED-7220
Gambar 3.2 Konfigurasi Sistem Robot Lengan
2.5.2 QT SDK by Nokia 3.2 Perencanaan Perhitungan Kinematika Lengan Robot
QT SDK by Nokia (open Source) adalah toolkit yang digunakan untuk membangun aplikasi berbasis GUI di Unix.
3.2.1 Spesifikasi Robot Lengan tipe ED-7220C Robot lengan SCORBOT.
ED
7220
merupakan
robot
tipe
Gambar 3.3 Robot Lengan tipe ED-7220C
Gambar 2.11 Tampilan QT Example and Demos
Robot lengan ED 7220 memiliki lima derajat kebebasan 5 DOF (Degree of Freedom) yaitu base, shoulder, elbow, wrist-pitch, dan wrist roll. Kemudian pada End of Effector
4
C 4 S 3 A4 4 0 0
yang ditambahkan tools berupa gripper. Berikut adalah tabel spesifikasi dari robot lengan ED 7220: MODEL
Tabel 3.1 Spesifikasi Robot Lengan ED-7220 Robot Lengan tipe ED-7220D
Struktur Koordinat Robot Berat Robot Berat beban maksimum Batasan Base Gerak Shoulder Elbow Wrist Wrist.rot gripper Kapasitas daya Jangkauan atas maksimum Jangkauan bawah maksimum Jangkauan depan Gripper Open Closed Material d1= 370 mm a1= 20 mm d5= 80 mm a2= 220 mm a3= 220 mm
Robot articulated Vertikal 5 derajat kebebasan (5DOF) + gripper ± 33 kg ± 1 kg ± (0°-270°) 600 Pulsa/put ± (0°-85°) 450 Pulsa/put ± (0°-170°) 450 Pulsa/put ±(0°-170°) Pulsa/put ±(0°-170°) Pulsa/put ± 55mm 100 Pulsa/put 10-24 volt 960 mm 100 mm 610 mm 55 mm 30 mm Stainless steel
Matriks transformasi (join Roll) 4 A5 :
C5 S5 0 0 S C 0 0 5 4 ................................................. 3.5 A5 5 0 0 1 d5 0 0 0 1 Matriks transformasi 0T5 : 0
T5 0 A11 A2 2 A3 3 A4 4 A5
C1 S 0 T4 1 0 0
Metode Denvit-Hatenberg membutuhkan parameter (θi,, αi, di dan ai) dari robot lengan. Dari Tabel D-H diperoleh persamaan matriks nilai tiap join i-1Ai.
Matriks transformasi (join base)
C1 S 0 A1 1 0 0
0 C1 1 1 0
0
0 0 ....................................... 3.1 d1 1 1
A2 :
0
S2 0 a 2C2 C2 0 a 2S2 0 1 0 0 0 1
sx = C1C234S5 S1C5 ................................................................. 3.9 sy =
S1C234S5 C1C5 ................................................................ 3.10
sz =
S234S5 .................................................................................... 3.11
ox = C1S234 ..................................................................................... 3.12 oy = S1S234 .................................................................................... 3.13
S3 0 a 3C3 C3 0 a 3S3 ....................................... 3.3 0 1 0 0 0 1 3
0
C 2 S 2 0 0
nz = S 234C 5 ........................................................................................ 3.8
S2 0 a 2C2 C2 0 a 2S2 ....................................... 3.2 0 1 0 0 0 1
Matriks transformasi (join pitch)
0 C1 1 1
0 0 d1 1
Sehingga persamaan matriks lengan robot ED-7220-4 yang didapatkan adalah : nx = C1C234C5 S1S5 ...................................................................... 3.6 ny = S1C234C5 C1S5 ....................................................................... 3.7
Matriks transformasi (join elbow) 2 A3 : C 3 S 2 A3 3 0 0
S1
S1
C1C234C5 S1S5 C1C234S5 S1C5 C1S234 C1 a1 a 2C2 a 3C23 d5S234 S C C C S S C S C C S S S a a C a C d S 1 234 5 1 5 1 234 1 1 2 2 3 23 5 234 1 234 5 1 5 S234C5 S234S5 C234 d1 a 2S2 a 3S23 d5S234 0 0 0 1
A1 :
Matriks transformasi (join shoulder) C 2 S 1 A2 2 0 0
0
0
C3 S3 0 a 3C3 S C 0 a S 3 3 3 3 0 0 1 0 0 0 0 1 C 4 0 S 4 0 C 5 S 5 0 0 S 0 C 0 S C 0 0 5 4 5 4 0 1 0 0 0 0 1 d 5 0 0 0 1 0 0 0 1
3.2.2 Parameter DH Robot Lengan tipe ED-7220C
0
0 S4 0 0 C4 0 ................................................. 3.4 1 0 0 0 0 1
oz = C 234 .......................................................................................... 3.14 px=
C1 a1 a 2C2 a 3C23 d5S234 ......................................... 3.15
S1 a1 a 2C2 a 3C23 d5S234 ......................................... 3.16 pz= d1 a 2S2 a 3S23 d 5S234 ................................................... 3.17 py=
A4 :
Dari persamaan matriks diatas, dengan memasukkan nilai awal berupa sudut orientasinya maka akan diperoleh posisi gripper.
5
Kinematika Terbalik Robot Lengan Tipe ED-7220-4 C234C5 C 234S5 S C S S 234 5 234 5 S5 C5 0 0
Kebalikan dari kinematika maju, kinematika terbalik digunakan untuk mengetahui sudut-sudut tiap joint pada saat posisi orientasi gripper terhadap sumbu base diketahui. Perlu diingat bahwa persamaan matriks transformasi lengan robot empat axis yang sudah didapat adalah 0
T4 0 A1 1 A 2 2 A3 3 A 4 4 A5
Maka cara perhitungan dalam kinematika terbalik adalah dengan mengalikan masing-masing ruas kiri dan ruas kanan 1
persamaan diatas dengan 0 A1
A1 .
Berdasarkan inverse matriks dari C1 S1 0 a1 0 0 1 d 1 1 0 A1 S1 C1 0 0 0 0 0 1
0
0
......................................... 3.18 0
1 1 ,
matriks transformasi dengan A 0
1 0 1 4
A
Karena 0 A1 0
1 0 1 4
A
1 0 1 2 1 1 2
TA 0
3
maka :
4
A A A3 A4 A5 ........................... 3.19
1
0
A1 1 , maka persamaan 4.8 menjadi :
T A2 A3 3 A4 4 A5 .................................................. 1
C234C5 C234S5 S234 a 3C23 a 2C2 - d 5C234 S C S S C234 a 3S23 a 2S2 d 5S234 ........... 3.23 234 5 234 5 S5 C5 0 0 0 0 1 0
A1 adalah :
Dengan mengalikan ruas kiri dan ruas kanan persamaan
2
Dengan menganggap 0T5 masih dalam bentuk persamaan 3.20, maka ruas kiri persamaan matriks transformasi adalah : C1 S1 0 a1 nx s x ox px 0 0 1 d n s o p y y y 1 1 y 0 A1 0 T5 S1 C1 0 0 nz s z oz pz 0 0 0 1 0 0 0 1 C1n x S1n y C1s x S1s y nz sz S1n x C1n y S1s x C1s y 0 0
Langkah berikutnya dengan menyelidiki hubungan tiap elemen pada matriks transformasi yang telah didapatkan. Penyelidikan dilakukan dengan cara membuat sama dengan tiap-tiap elemen dalam matriks transformasi ruas kiri dan ruas kanan. Langkah-langkah yang ditempuh adalah sebagai berikut : Pencarian θ5 3.20 Dalam hal ini ditentukan nilai θ5 adalah 0. Hal tersebut dikarenakan nilai θ5 tidak mempengaruhi nilai hasil akhir perhitungan kinematika robot. Pencarian θ1 Dengan menyamakan komponen matriks (3, 4) (dibaca : baris tiga, kolom empat) didapat persamaan sebagai berikut : S1p x - C1p y 0
C1o z S1o y C1p x S1p y - a1 oz p z d1 S1o x C1o y S1p x C1p y 0 1
C1p y S1p x
1 arctan
.................................................................................... 3.21
A 2 2 A3 3 A 4 4 A 5
C 2 S 2 0 0
C 4 S 4 0 0
S2 0 a 2C2 C3 C2 0 a 2S2 S3 0 1 0 0 0 0 1 0 0 S4 0 C5 0 C4 0 S5 1 0 0 0 0 0 1 0
S3 0 a 3C3 C3 0 a 3S3 0 1 0 0 0 1
S5 0 C5
0
0
1
0
0
py
S1 p y C1 p x
.................................................................. 3.24
px
Dalam mencari θ1, perlu diingat definisi dari nilai arctan (y/x) dalam jangkauan –π ≤ 0 ≤ π. Dalam hal ini perlu agar dapat ditentukan kuadran sudut yang tepat. Nilai tangen untuk fungsi arctan dengan jangkauan –π ≤ 0 ≤ π adalah : 00 ≤ θ ≤ 900 → x positif, y positif 900 ≤ θ ≤ 1800 → x negatif, y positif 1800 ≤ θ ≤ 2700 → x negatif, y negatif 2700 ≤ θ ≤ 3600 → x positif, y negatif
Ruas kanan persamaan matriks transformasi adalah : 1
Sehingga bentuk persamaan matriks transformasi menjadi : C1s x S1s y C1o z S1o y C1p x S1p y C1n x S1n y n sz oz p z d1 z S1n x C1n y S1s x C1s y S1o x C1o y S1p x C1p y 0 0 0 1
yang mana merupakan
inverse dari matriks transformasi
S234 a 3C23 a 2C2 - d 5C234 C234 a 3S23 a 2S2 d 5S234 .......... 3.22 0 0 0 1
Pencarian θ234 : Dengan melihat hubungan komponen matriks (1, 3) dan (2, 3) didapatkan persamaan sebagai berikut :
0 0 d5 1
C1ox S1oy S234 oz C234
6
S 234 C1ox S1o y C234 oz
b2 C 2 a 3S3 S 2 (a 3 C 3 a 2 ) ............................ 3.32
Nilai
Untuk menyelesaikan persamaan 3.32 dan 3.33, digunakan metode Cramer. Mengenai beberapa aturan dalam metode Cramer akan dijelaskan dibawah ini : Suatu sistem persamaan linear yang terdiri dari persamaan :
Pencarian θ3 Dengan melihat hubungan komponen matriks (1,4) dan (2,4), yaitu :
Maka penyelesaian untuk mencari x1 dan x2 : a b1 Δ 1 a 1b 2 a 2 b1 a 2 b2
234
C o arctan
1 x
S1o y
................................. 3.25
oz
234 disesuaikan dengan posisi home, dimana posisi home adalah 2 90, 3 0, 4 180 . Maka nilai 234 adalah -90º
a1x1 b1x2 y1 a2 x1 b2 x2 y2
C1 p x S1 p y - a 1 a 3 C 23 a 2 C 2 d 5 S 234 p z d 1 a 3 S 23 a 2 S 2 d 5 C 234
Karena θ1 dan θ234 telah diketahui, maka persamaan diatas dapat disusun menjadi :
C1 p x S1 p y - a 1 d 5 C 234 a 3 C 23 a 2 C 2
y1
b1
y2
b2
Δx 2
a1
y1
a2
y2
y1b 2 y 2 b1 a 1 y 2 a 2 y1
b2 pz d1 d5C234 a 3S23 a 2S2 .................. 3.27
Δx1 Δx 2 x2 Δ Δ Maka penyelesaian untuk mencari S2 dan C2 adalah : b1 a 3S3 ΔC2 b1a 3C3 a 2 b2a 3S3 b2 a 3C3 a 2
Kedua persamaan 3.27 dan 3.28 dikuadratkan dan kemudian dijumlahkan untuk mendapatkan θ3 :
ΔS2
p z d 1 d 5 C 234 a 3 S 23 a 2 S 2
x1
Elemen ruas kiri diberi notasi, sehingga menjadi : b1 C1px S1p y - a1 d5C234 a 3C23 a 2C2 .. 3.26
b1 a 3C23 a 2C2 b22 a 3S23 a 2S2 2 2
2
Δ
b12 a 3 C23 a 2 C2 2a 3C23a 2C2 2
2
2
2
b22 a 3 S23 a 2 S2 2a 3S23a 2S2 2
2
2
2
b12 b2 2 a 3 C 23 S 23 a 2 C 2 S 2 2
2
2
2
2
b1 b2 a 3 a 2 2a 2a 3C3 2
2
2
2
b12 b22 a 3 a 2 2a 2a 3 2
C3
2
a 3C 3 a 2
b1
a 3S3
b2
b2a 3C3 a 2 b1a 3S3
a 3C3 a 2
a 3S3
a 3S3
a 3C3 a 2
a 3 C 3 a 2 a 3S 3 2
2
ΔC 2 b1a 3 C 3 a 2 b2a 3S3 Δ a 3 C 3 a 2 2 a 3S3 2 2a 2 a 3 C 2 C 23 S 2 S b2a 3 C 3 a 2 b1a 3S 3 ΔS 232 S2 Δ a 3 C 3 a 2 2 a 3S3 2 C2
S2 b2a 3C3 a 2 b1a 3S3 Tanθ 2 C2 b1a 3C3 a 2 b2a 3S3 b2a 3C3 a 2 b1a 3S3 ................. 3.33 θ 2 arctan b1a 3C3 a 2 b2a 3S3 Pencarian θ4 :
2
b12 b22 a 3 a 2 2a 2a 3 .................... 3.28 2
θ3 arcos
Δx1
2
Pencarian θ2 : Dengan melihat hubungan antara b1 dan b2 :
θ234 θ2 θ3 θ4
Maka diperoleh nilai untuk theta 4 adalah: θ4 θ234 θ2 θ3 ....................................................... 3.34
b1 a 3C23 a 2C2
a 3 C2C3 S2S3 a 2 C2
3.3 Perencanaan perangkat Keras (Hardware)
C2 a 3C3 a 2 S2 a 3S3 ........................... 3.29
3.3.1 Rangkaian Driver L298N
b 2 a 3S23 a 2S2
Disini kami merencanakan sebuah rangkaian driver motor menggunakan IC L298. Berikut table koneksi Driver Motor L298- motor DCdan
a 3 S2C3 C2S3 a 2S2 ............................. 3.30 C2 a 3S3 S2 a 3C3 a 2
keperluan PORT pada mikro.
Dari hasil penyederhanaan 3.30 dan 3.31, maka dapat diperoleh dua persamaan baru : b1 C 2 a 3 C 3 a 2 S 2 a 3S3 .......................... 3.31
Tabel 3.3 Koneksi Driver dan keperluan PORT pada mikro No
7
Driver Motor L298
OUT 1-2 / 34 ke Motor
IN1/3
IN2/4
ENA1/2
1
Driver Motor 1
2 3
Driver Motor 2
4 5
Driver Motor 3
6
Motor A Gripper Motor B Roll Motor C Pitch Motor D Elbow Motor E Shoulder Motor F Base
Port B.2 Port C.6 Port C.3 Port C.0 Port D.5 Port D.2
Port B.3 Port B.7 Port C.4 Port C.1 Port D.6 Port D.3
Gambar 3.11 Skematik koneksi Sensor Optocoupler ke Mikro
Port B.4 Port B.0
3.3.3 Mikrokontroler Atmega 16
Port C.5
Mikrokontroller adalah pusat kontrol yang mengatur sensor Optocupler dan akuator motor DC sehingga robot lengan mampu bergerak sesuai dengan yang diinginkan.
Port C.2 Port C.7 Port D.4
Dari table diatas dapat direncanakan skematik sebagai berikut:
Gambar 3.12 Skematik Rangkaian Mikro
Berikut pembahasan tentang perencanaan mikrokontroller adalah sebagai berikut: Tabel 3.5 Koneksi Port Mikro No 0
Gambar 3.8 Perencanaan Sistem Driver Motor L298 dan Mikro
3.3.2 Sensor Putaran (Optocoupler)
1
Berikut tabel koneksi mikrokontroller.
2
Sensor optocoupler dengan
3 Tabel 3.4 Koneksi Sensor dan keperluan PORT pada mikro No Sensor optocoupler Port Mikro
4
1
Motor A Gripper
Port A.5
5
2
Motor B Roll
Port A.4
6
3
Motor C Pitch
Port A.3
4
Motor D Elbow
Port A.2
5
Motor E Shoulder
Port A.1
6
Motor F Base
Port A.0
7
PORT A Sensor F Base Sensor E Shoulder Sensor D Elbow Sensor C Pitch Sensor B Roll Sensor A Gripper -
PORT B
PORT C
PORT D
EN1- Roll
IN1- Elbow
TX-SERIAL
IN3- Gripper
IN2- Elbow
IN4- Gripper
EN1Elbow IN3- Pitch
RXSERIAL IN1-Base
EN2Gripper -
IN2-Base
IN4- Pitch
EN1-Base
-
EN2- Pitch
-
IN3- Roll
-
IN4- Roll
IN3Shoulder IN4Shoulder EN2Shoulder
3.4 Perencanaan perangkat Lunak (Software) Perencanaan perangkat lunak meliputi 2 bagian yakni: Perencanaan program QT Nokia Sdk. Perencanaan program Code Vision.
Dari table diatas dapat direncanakan skematik koneksi rangkaian sensornya ke mikro. Berikut gambarnya desainnya dengan menggunakan program proteus.
3.4.1 Perencanaan Program HMI Interface) menggunakan QT
(Human-Machine
Perencanaan pada program QT Nokia Sdk sendiri akan dibagi menjadi 5 perencanaan yang meliputi: Tampilan Login Tampilan 3D animasi QT OpenGL Tampilan HMI (forward kinematics) Tampilan HMI (inverse kinematics) Tampilan HMI (ADAM series)
8
kinematik terbalik. Berikut halaman utama tampilan HMI (inverse kinematics):
Gambar 3.15 Tampilan HMI QT (Login)
Gambar 3.16 Tampilan pesan error saat salah loggin
Setelah user memasukan password dengan benar, maka program dapat diakses oleh user.
Gambar 3.19 Tampilan HMI (Inverse Kinematics)
3.4.1.4 Tampilan HMI (ADAM) Pada perencanaan halaman utama tampilan HMI (ADAM Series) akan diberi program koneksi QT ke network. Berikut halaman utama tampilan HMI (ADAM):
3.4.1.1 Tampilan 3D Animasi QT OpenGL Berikut perencanaan tampilan halaman utama “Tampilan 3D Animasi QT OpenGL”:
Gambar 3.20 Tampilan HMI (ADAM)
Berikut ini tabel perencanaan data protokol serial yang akan dikirim oleh QT: 3.4.2 Perencanaan Program Code Vision AVR 3.4.2.1 Perencanaan Program Parsing Data
Gambar 3.17 Tampilan 3D Animasi QT OpenGL
3.4.1.2 Tampilan HMI (Forward kinematic) Pada perencanaan halaman utama tampilan HMI (forward kinematics) akan diberi program perhitungan kinematik maju. Berikut halaman utama tampilan HMI (forward kinematics):
MULAI Mikrokontroller menunggu data serial yang masuk dari QT. ketika data masuk mikrokontroller membaca data secara urut dari data pertama hingga data terakhir.
N Case1: Cek Header Apakah “#”? Y
N
Case2: Cek join Apakah “a,b,c,d,e,f,g,h,I,j”?
Y
N Case3: baca data “data1, data2, data3 dst” Y
Gambar 3.18 Tampilan HMI (forward kinematics)
Data 1, data 2, data 3 disimpan. Menjadi nilai derajat dengan range 000 s/d 999
3.4.1.3 Tampilan HMI (Inverse Kinematic) Pada perencanaan halaman utama tampilan HMI (inverse kinematics) akan diberi program perhitungan
BERHENTI
Gambar 3.21 Flowchart Perencanaan Parsing Data
9
3.4.2.2 Perencanaan Program Sensor optocoupler dan driver motor
4.1.1
MULAI
Inisialisasi
PORTA.0 s/d PORTA.5 input dari sensor optocoupler PORTC.0 s/d PORTC.7 dan PORTD.3 s/d PORTD.7 output untuk driver motor LM298
SUDUT -130º -120 º -110 º -100 º -90 º -80 º -70 º -60 º -50 º -40 º -30 º -20 º -10 º 0º 10 º 20 º 30 º 40 º 50 º 60 º 70 º 80 º 90 º 100 º 110 º 120 º 130 º
Cek kondisi Interupt==1?
N
Y Motor BERGERAK
CONTER PUTARAN SENSOR OPTOCOUPLER
N
CEK KONDISI NILAI PUTARAN = DATA SERIAL Y Motor BERHENTI
BERHENTI
Gambar 3.22 Flowchart Membaca Sensor Putaran dan driver motor
BAB IV PENGUJIAN DAN ANALISA Pengujian software QT OpenGL dan hardware akan dilakukan tiap join, mulai join base, shoulder, pitch, elbow, roll dan gripper. Berikut hasil pengujian dan analisanya: 4.1 Pengujian Pegerakan Join Base 1) Pengujian Software Join Base Tabel 4.1 Hasil pengujian Software Join Base SUDUT -130º -120 º -110 º -100 º -90 º -80 º -70 º -60 º -50 º -40 º -30 º -20 º -10 º 0º 10 º 20 º 30 º 40 º 50 º 60 º 70 º 80 º 90 º 100 º 110 º 120 º 130 º
Pengujian Join Base Secara Hardware Berikut data hasil pengujian posisi join base secara hardware: Tabel 4.2 Hasil Pengujian Hardware Join Base PENGUJIAN JOIN BASE HARDWARE KOORDINAT KOORDINAT KOORDINAT X Y Z -1.37 -1.45 37 -1.09 -1.67 37 -0.77 -1.84 37 -0.43 -1.95 37 -0.08 -1.99 37 0.27 -1.98 37 0.61 -1.9 37 0.94 -1.76 37 1.24 -1.56 37 1.5 -1.31 37 1.71 -1.02 37 1.87 -0.70 37 1.96 -0.36 37 2 0 37 1.96 0.34 37 1.87 0.69 37 1.72 1.01 37 1.51 1.30 37 1.25 1.55 37 0.96 1.75 37 0.63 1.89 37 0.28 1.97 37 -0.068 1.99 37 -0.42 1.95 37 -0.76 1.84 37 -1.08 1.68 37 -1.36 1.46 37
4.2 Pengujian Pegerakan Join Shoulder
PENGUJIAN JOIN BASE SOFTWARE KOORDINAT KOORDINAT KOORDINAT X Y Z -1.28 -1.53 37 -0.99 -1.73 37 -0.68 -1.88 37 -0.34 -1.96 37 0 -2 37 0.34 -1.96 37 0.68 -1.88 37 1 -1.73 37 1.28 -1.53 37 1.53 -1.28 37 1.73 -0.99 37 1.88 -0.68 37 1.96 -0.34 37 2 0 37 1.96 0.34 37 1.88 0.68 37 1.73 1 37 1.53 1.28 37 1.28 1.53 37 0.99 1.73 37 0.68 1.88 37 0.34 1.96 37 0 2 37 -0.34 1.96 37 -0.68 1.88 37 -1 1.73 37 -1.28 1.53 37
4) Pengujian Software Join Shoulder Tabel 4.4 Hasil Pengujian Software Join Shoulder SUDUT 30 40 50 60 70 80 90 100 110 115
4.2.1
PENGUJIAN JOIN SHOULDER KOORDINAT KOORDINAT KOORDINAT X Y Z 21.05 0 47.99 18.85 0 51.13 16.14 0 53.84 13.01 0 56.04 9.53 0 57.67 5.84 0 58.67 2.01 0 59 -1.81 0 58.67 -5.51 0 57.68 -7.27 0 56.98
Pengujian Join Shoulder Secara Hardware Berikut data hasil pengujian secara hardware: Tabel 4.5 Hasil Pengujian Hardware Join Shoulder SUDUT 30 40 50 60 70 80
10
PENGUJIAN JOIN SHOULDER KOORDINAT KOORDINAT KOORDINAT X Y Z 21.15 0 47.82 19.1 0 50.83 16.44 0 53.59 13.17 0 55.95 9.73 0 57.6 5.84 0 58.67
90 100 110 115
2.01 -1.81 -5.32 -7.1
0 0 0 0
59 58.67 57.74 57.02
4.4 Pengujian Pegerakan Join Pitch/Roll 4.4.1
Pengujian Join Pitch/Roll Secara Software Tabel 4.10 Hasil pengujian Software join Pitch/Roll
4.3 Pengujian Pegerakan Join Elbow 4.3.1
PENGUJIAN JOIN PITCH/ROLL SOFTWARE KOORDINAT KOORDINAT KOORDINAT SUDUT X Y Z -210 15.03 0 73.51 -200 16.13 0 75.88 -190 16.81 0 78.41 -180 17.03 0 81 -170 16.8 0 83.61 -160 16.12 0 86.13 -150 15.02 0 88.5 -140 13.52 0 90.64 -130 11.67 0 92.49 -120 9.53 0 93.99 -110 7.16 0 95.09 -100 4.63 0 95.77 -90 2.03 0 96 -80 -0.56 0 95.77 -70 -3.09 0 95.09 -60 -546 0 93.99 -50 -7.6 0 92.49 -40 -9.45 0 90.64 -30 -10.95 0 88.5 -20 -12.05 0 86.13 -10 -12.73 0 83.61 0 -12.97 0 81 10 -12.73 0 78.41 20 -12.06 0 75.88 30 -10.96 0 73.51
Pengujian Join Elbow Secara Software Tabel 4.7 Hasil Pengujian Software Join Elbow PENGUJIAN JOIN ELBOW KOORDINAT KOORDINAT KOORDINAT X Y Z 23.26 0 53.47 23.68 0 55.18 24.01 0 59 23.68 0 62.81 22.69 0 66.52 21.07 0 69.99 18.87 0 73.13 16.16 0 75.84 13.02 0 78.05 9.55 0 79.67 5.85 0 80.66 2.03 0 81 -1.78 0 80 -5.45 0 79.69 -8.96 0 78.06 -12.1 0 75.87 -14.81 0 73.16 -17.02 0 70.02 -17.91 0 68.32
SUDUT -105 -100 -90 -80 -70 -60 -50 -40 -30 -20 -10 0 10 20 30 40 50 60 65
4.3.2
Pengujian Join Elbow Secara Hardware Berikut data hasil pengujian posisi join elbow secara hardware:
4.4.2
Berikut data hasil pengujian posisi join Pitch/Roll secara hardware:
Tabel 4.8 Hasil Pengujian Hardware join Elbow SUDUT -105 -100 -90 -80 -70 -60 -50 -40 -30 -20 -10 0 10 20 30 40 50 60 65
Pengujian Join Pitch/Roll Secara Hardware
PENGUJIAN JOIN ELBOW KOORDINAT KOORDINAT KOORDINAT X Y Z 22.36 0 53.68 23.8 0 55.93 24.01 0 59.38 23.65 0 63 22.69 0 66.52 20.87 0 70.32 18.99 0 72.98 16.31 0 75.72 13.02 0 77.95 9.55 0 79.67 5.85 0 80.66 2.03 0 81 -1.78 0 80.67 -5.66 0 79.61 -9.29 0 77.86 -12.39 0 75.62 -14.81 0 73.16 -16.82 0 70.35 -17.57 0 69.01
Tabel 4.11 Hasil Pengujian Hardware join Pitch/Roll PENGUJIAN JOIN PITCH/ROLL HARDWARE KOORDINAT KOORDINAT KOORDINAT SUDUT X Y Z -190 16.81 0 78.41 -182 17.02 0 80.48 -175 16.97 0 82.31 -165 16.52 0 84.89 -158 15.93 0 86.62 -150 15.02 0 88.5 -143 14.01 0 90.03 -130 11.67 0 90.49 -127.5 11.16 0 92.9 -116.5 8.72 0 94.42 -108 6.66 0 95.26 -100 4.63 0 95.77 -90 2.03 0 96 -80 -0.56 0 95.77 -71.5 -2.77 0 95.22 -61.5 -5.11 0 94 -52.5 -7.92 0 92.9 -47.5 -8.9 0 92.06 -39 -9.61 0 90.4 -30 -10.95 0 88.5 -23 -11.76 0 86.86 -16 -12.38 0 85 -5 -12.96 0 82 0 -12.96 0 81 10 -12.73 0 78.4
11
BAB V PENUTUP
DAFTAR PUSTAKA
Berdasarkan hasil uji coba dan analisa dari proyek akhir ini maka dapat ditarik kesimpulan dan beberapa saran, sebagai berikut : 5.1 Kesimpulan 1. Sistem robot lengan tipe ED-7220-4 terdiri atas unsur mekanik (robot tipe ED-7220-4), elektronik (Atmega 16), sensor (optocoupler) dan akuator (driver motor L298 dan motor DC). 2. Pergerakan animasi 3D robot lengan ED-7220-4 adalah berdasarkan nilai memasukan rumus persamaan Denavite Hatenberg dimana nilai θi,, αi, di dan ai (parameter Denavite Hatenberg) dihitung berdasarkan komputasi komputer, sehingga hasil pengujian implementasi pada software adalah ideal dan tidak terdapat error dalam mencapai goal position. 3. Setelah dilakukan pengujian hardware tiap join mulai join base, shoulder, elbow, pitch/roll dilakukan perbandingan hasil error dengan software. Maka diperoleh hasil error pergerakan tiap join berbedabeda untuk tiap join. Berikut hasil error pergerkan tiap join: a. Error rata-rata pergerakan base adalah (0.88%). b. Error rata-rata pergerakan shoulder adalah (0.5%). c. Error rata-rata pergerakan elbow adalah (0.67%). d. Error rata-rata pergerakan pitch/roll adalah (9.9%). Robot lengan ED 7220-4 yang digunakan adalah tipe articulate arm robot dimana nilai hasil error /kesalahan pergerakan sendi terakumulasi pada ujung sendi. Sehingga total error rata-rata pada ujung end of effector adalah 11.95%. 5.2 Saran Adapun saran dari penulis untuk TA selajutnya adalah: 1.
2.
3.
4.
Sensor putaran dapat ditambahkan menjadi 2 buah sehingga robot lengan lengan tipe ED-7220-4 mampu membaca arah putaran kanan kiri. Pergerakan robot lengan lengan tipe ED-7220-4 saat ini hanya bergantian/ sekuensial sehingga untuk kedepannya robot lengan lengan tipe ED-7220-4 mampu bergerak secara bersamaan. Error pergerakan robot lengan lengan tipe ED-72204 masih ada karena pengaruh mekanik dan motor. Error dapat diatasi dengan menambahkan kontroler dengan kontrol PID misalnya. Sistem ini dapat dikembangan kearah yang lebih komplek yaitu trajektori gerakkan robot, selain mampu menentukan koordinat posisi tetapi juga mampu mengambil benda serta menghindari obstacle/halangan dan memindahkan kesuatu tempat, menentukan seberapa kuat dalam menjepit benda.
12
[1] Pitowarno, E. (2006). “Robotika: Desain, Kontrol, dan Kecerdasan Buatan”. Yogyakarta : Andi [2] Zuhantoro, A. (2006). “Sistem pembelajaran Kinematika Robot Lengan 3D”. Surabaya: Proyek Akhir T. Elektronika PENS – ITS. [3] Risnumawan, A. (2009). “Human Friendly Arm robot Menggunakan Interaktif Optimasi Partikel Swarm (IPSO)”. Surabaya: Proyek Akhir T. Elektronika PENS – ITS. [4] K.S.Fu, R.C.Gonzales, C.S.G.Lee. (1987). “Robotics: Control, Vision, and intelligence”. McGraw-Hill International Edition. [5] Manjunath.T.C.(2007). “Kinematic Modeling and Maneuvering of 5 Axes Articulated Robot Arm”. International Journal of Mechanical, Industrial and Aerospace Engineering. [6] Lung-wen-tsai. (1999). “Robot analysis: the mechanical of serial manipulator”.Wiley-interscience publication. [7] Firdaus, Ermas. (2009). “Inverse Kinematics dengan menggunakan metode geometril pada lengan robot ”. Surabaya: Proyek Akhir T. Elektro– ITS. [8] Melani Shoemaker and Blake Hannaford, 2003 : Inverse Kinematics, Example: Chair Helper 5-DOF Robot. brl.ee.washington.edu/Education/EE543/EE543_2006/n otes/pdfs/shoemaker.h.pdf. [9] J.J. Pickle, Robotics Research Group. Joint Type, http://www.robotics.utexas.edu/rrg/learn_more/low_ed /joints/ [10] Huda, M. (2006). “Sistem Kontroller Untuk Pergerakan 3D pada Robot Lengan yang dipandu dengan Dua Kamera”. Proyek Akhir : T. Elektronika PENS – ITS [11] Budiharto, Widodo. (2008). “Panduan Praktikum Mikrokontroler AVR ATMega 16”. Jakarta : Elex Media [12] Advantech Co, Ltd, September 2001, Datasheet ADAM 5000, 26 Juni 2006, www.eepis-its.edu. [13] Gunadharma,. Komputer dan Industri, http://ocw.gunadarma. ac.id/course/industrialtechnology /informatics-engineering -s1/pengantarteknologi-komputer-dan-informatika-c/komputer-danindustri [14] Supriato. (2007). “Sistem Pengaturan dan Pengendalian 5-joint Arm Robot Trainer”. Malang: Tugas Akhir T. Elektro UMM – Malang. [15] ED Laboratory. (2001). Robot Trainer with ED-MK4 Instructions manual. Korea: ED Laboratory [16] Verma Anurag, Deshpande Vivek A. (2011). “End of Effector Posisition Anayisis of SCORBOT-ER plus Robot”. International Journal of Smart Home Vol 5 No.1. [17] http://doc.qt.nokia.com/4.7.html