42
Perancangan dan Implementasi Knowledge Base Controller
untuk Pengendalian Posisi Robot SCARA
dengan Beban Bandul
Rusdhianto EAK
Eko Yuliyanto
Ari Santoso
Laboratory of Control Engineering, Department of Electrical Engineering - ITS, Kampus Keputih, Sukolilo, Surabaya 60111, Indonesia
Phone : +62-31-5947302, Fax : +62-31-5931237 Email : rusdhianto@ee.its.ac.id
Abstrak - Robot SCARA merupakan kombinasi konfigurasi cylindrical dan revolute yang beroperasi dalam bidang horisontal dengan dua sambungan berputar (rotary joint) yang menghasilkan pergerakan dalam bidang horisontal. Sedangkan gerakan vertikal dihasilkan oleh ujung lengan. Robot SCARA diaplikasikan dengan beban bandul. Prinsip kerjanya adalah memindahkan beban bandul dari suatu titik menuju titik yang lain dengan menjaga agar ayunan bandul serta waktu tempuh tetap minimum.
Untuk mereduksi ayunan bandul dilakukan pengereman pada motor penggerak masing-masing lengan. Dengan menggunakan pendekatan fungsi koridor dan analisa regresi polinomial diperoleh suatu fungsi pengereman sebagai basis pengetahuan. Dari fungsi tersebut diperoleh
variabel, sinyal kontrol (uk), posisi target (θT), posisi
pengereman (θP), dan alpha (α). Dengan melakukan
percobaan diperoleh nilai alpha (α) yang sesuai
untuk setiap posisi target, ayunan dan waktu
tempuh.
Keywords: knowledge base, SCARA, fungsi koridor dan regresi polinomial.
1. PENDAHULUAN
SCARA (Selective Compliance Assembly Robot
Arm) adalah salah satu tipe robot yang banyak
diaplikasikan di industri karena memiliki kecepatan tinggi, aplikasi yang dapat diulang-ulang
(repeatable) dan aplikasi yang bergerak secara poin
ke poin dan kelebihan lainnya adalah poros ujungnya yang kaku dan kuat, cara menggerakkannya relative mudah, serta dapat diaplikasi pada macam-macam pekerjaan [1].
Permasalahan pada Robot SCARA yang diaplikasikan dengan beban bandul untuk memindahkan beban bandul dari suatu titik menuju titik yang lain yaitu menjaga agar ayunan bandul serta waktu tempuh agar tetap minimum.
Untuk mereduksi ayunan dilakukan pengereman
Ada beberapa teknik untuk melakukan pengereman agar trajectory/lintasan dari gerakan lengan robot tetap pada garis yang diinginkan [8][10][11].
Salah satu metode yang mulai banyak dikembangkan untuk teknik kontrol adalah kontrol berbasis pengetahuan [1][2][8]. Teknik ini berbasis fakta-fakta tentang obyek dalam domain yang ditentukan dan hubungannya satu sama lain dengan berbasis pengetahuan juga berisi pikiran, teori, prosedur praktis dan hubungannya satu sama lain [3]. Basis pengetahuan merupakan informasi terorganisasi dan teranalisis agar bias lebih mudah dimengerti dan bisa diterapkan pada pemecahan masalah dan pengambilan keputusan.
Fungsi koridor merupakan salah satu bentuk dari sistem pengaturan berbasis pengetahuan [8]. Apabila terdapat dua variabel dalam suatu fungsi namun tidak terdapat data maka dengan mendefinisikan suatu fungsi dan mencocokkan fungsi tersebut dapat diketahui hubungannya. Perubahan nilai perbandingan tersebut dapat diperoleh fungsi koridor, yaitu suatu fungsi yang memiliki nilai-nilai yang berubah seperti membuka dan menutupnya koridor suatu pintu yang berasal dari perubahan parameter pada bentuk-bentuk dan fungsi-fungsi tertentu [12].
Dengan menggunakan pendekatan fungsi koridor, pengereman dapat diturunkan menjadi suatu fungsi. Dari fungsi ini diperoleh beberapa variabel, posisi target, posisi pengereman, sinyal kontrol, dan
alpha. Variabel-variabel ini sebagai basis
pengetahuan, antara pengereman sebagai fungsi posisi target dan alpha sebagai fungsi posisi target. Dari fungsi pengereman sebagai fungsi posisi target
dan alpha sebagai fungsi posisi target dapat diregresi
secara polinomial untuk mendapatkan persamaan baru sebagai basis data untuk merancang kontroler berbasis pengetahuan (Knowledge Base).
2. DISAIN SISTEM
Ada tiga bagian utama dari sistem pengendalian robot Scara dengan kontroler berbasis pengetahuan,
43 2.1. Kontroler Koridor
Bentuk fungsi koridor yang digunakan adalah bentuk polinomial untuk memperoleh sinyal kontrol (uk) pada posisi target (θT) yang diinginkan, dengan persamaan : uk = 0.8* α
θ
θ
θ
θ
⎟⎟
⎠
⎞
⎜⎜
⎝
⎛
−
−
P T T *U maks untuk θP < θ < θT θT : Posisi Target θP : Posisi Pengeramanθ : Posisi antara sudut θT dengan sudut θP
α : variabel yang diubah-ubah (coba-coba)
uk : sinyal kontrol
Sedangkan untuk mengelolah sinyal error didesain seperti berikut yaitu dengan mencari basis data yang merupakan bagian dari basis penge-tahuan. Jika telah diperoleh pasangan data input - output kontroler ; misalnya (xi,yi),i=1...n;dan diinginkan untuk mencari hubungan fungsional antara input dan output kontroler, maka ada beberapa metode yang biasa digunakan, antara lain: • Regresi Linier
Regresi linier dapat digunakan apabila hubungan input-output dapat didekati dengan perasamaan :
b ax
y= + • Regresi dengan Transformasi Variabel
Regresi nonlinier dengan pendekatan regresi linier dengan transformasi variable seperti pada tabel berikut :
Tabel 1 Regresi Dengan Transformasi Variabel Fungsi untuk linierisasi Transformasi Bentuk Linier
x e y Exp: =α β y'=ln(y) y'=ln(α)+βx β αx y Power : = ' ln() ) ln( ' x x y y = = ' ) ln( ' x y= α +β ) log(x y=α+β x'=log(x) y=α+βx' x y cripocal: 1 Re =α+β⋅ x x'= 1 y=α+βx'
2.2. Sistem Mekanik dan Elektrik
Disain sistem mekanik dan elektrik dapat dilihat pada gambar 1 dan 2 dengan spesifikasi
mekanik dari robot yaitu berat bandul = 100 gram dan sudut lintasan (θ) joint 1 = sudut lintasan (θ)
joint 2 = 180°. Sedangkan untuk sistem elektrik
hanya terdiri dari dua motor DC untuk penggerak setiap lengannya, dua sensor posisi disetiap lengannya dan sensor untuk mengukur setiap ayunan
pada bandul.
Gambar 1 : Kontruksi Robot SCARA
Gambar 2 : Diagram Blok Sistem 2.3. Perangkat Lunak
Tujuan perancangan perangkat lunak pada tahap ini adalah untuk mendapatkan data hubungan posisi pengereman (θP), dengan posisi target (θT)dan data hubungan variabel alpha
(α
)
dengan posisi target(θT), atau disebut dengan program sebelum regresi. Langkah selanjutnya adalah meregresi data-data yang telah didapatkan dari tahap tersebut.44
Tabel 2 : Hasil percobaan α, θP, θT untuk Joint 1
NO GERAK SEARAH
JARUM JAM GERAK BERLAWANAN ARAH JARUM JAM
ΘAsal (°) Θ(°) P Θ(°) T
α
ΘAsal Θ(°) P Θ(°) Tα
1 0 4 10 0.6 180 108 0 1.8 2 0 8 20 0.6 180 112 10 2 3 0 12 30 0.6 180 116 20 2.3 4 0 16 40 0.6 180 120 30 2.8 5 0 20 50 0.6 180 124 40 3.2 6 0 24 60 0.6 180 128 50 3.8 7 0 28 70 0.6 180 132 60 5 8 0 32 80 0.7 180 136 70 5.8 9 0 36 90 0.9 180 140 80 6.5 10 0 40 100 1 180 144 90 7 11 0 44 110 1.2 180 148 100 7.2 12 0 48 120 1.3 180 152 110 7.3 13 0 52 130 1.3 180 156 120 7.5 14 0 56 140 1.2 180 160 130 7.8 15 0 60 150 1.1 180 164 140 8 16 0 64 160 1.1 180 168 150 8.1 17 0 68 170 1.1 180 172 160 8.2 18 0 72 180 1.1 180 176 170 8.3Tabel 3 : Hasil percobaan α, θP, θT untuk Joint 1
NO GERAK SEARAH
JARUM JAM GERAK BERLAWANAN ARAH JARUM JAM
ΘAsal (°) ΘP (°) ΘT (°)
α
ΘAsal ΘP (°) ΘT (°)α
1 0 4 10 4 180 108 0 2 2 0 8 20 3.9 180 112 10 2.1 3 0 12 30 3.8 180 116 20 2.3 4 0 16 40 3.75 180 120 30 2.6 5 0 20 50 3.7 180 124 40 2.7 6 0 24 60 3.5 180 128 50 3 7 0 28 70 3.3 180 132 60 3.5 8 0 32 80 3.2 180 136 70 3.7 9 0 36 90 2.9 180 140 80 4 10 0 40 100 2.8 180 144 90 4.1 11 0 44 110 2.6 180 148 100 4.25 12 0 48 120 2.5 180 152 110 4.3 13 0 52 130 2.35 180 156 120 4.4 14 0 56 140 2.25 180 160 130 4.5 15 0 60 150 2.1 180 164 140 4.6 16 0 64 160 1.9 180 168 150 4.7 17 0 68 170 1.5 180 172 160 4.8 18 0 72 180 1.2 180 176 170 545
3. HASIL EKSPERIMEN
Dari hasil regresi pada tahap awal didapatkan hubungan fungsional antara variabel α dengan posisi target pada Joint 1.
Gambar 3 : Hubungan fungsional alpha dengan posisi target pada joint 1
Gambar 4 : Hubungan fungsional alpha dengan posisi target pada joint 2
Dari data-data variabel alpha
(α
)
, posisi target(θT), dan posisi pengereman (θP), maka dilakukan regresi untuk mendapatkan hubungan fungsional masing-masing variable tersebut.Pada gambar 5 didapatkan suatu persamaan yang merupakan hubungan fungsional variable alpha dengan posisi target joint 1 untuk gerakan searah jarum jam.
Dari hasil regresi diperoleh suatu persamaan :
α = 8.609*10-18θ T9 – 8.12*10-15 + 3.14*10-12θT7 –3.1484*10-10θ T6 + 7.7072*10-8θT5 –5.391*10-6θ T4 + 2.197*10-4θT3 – 4.9894*10-3θ T2 + 0.05667θT + 0.3592
Gambar 5 : Hubungan fungsional alpha dengan posisi target joint 1 setelah regresi untuk gerak
searah jarum jam
Sedangkan pada gambar 6 didapatkan suatu persamaan yang merupakan hubungan fungsional variable alpha dengan posisi target joint 1 untuk gerakan berlawanan dengan arah jarum jam.
α = – 8.52*10-19θ T10 + 7.48*10-16θT9 – 2.74*10-13θT8 + 5.3918*10-11θ T – 6.0988*10-9θT6 + 3.8834*10-7θ T5 – 1.1984*10-5θT4 + 4.4226*10-5 θ T3 + 7.273*10-3 θT2 - 0.1397 θT + 2.5151
Gambar 6 : Hubungan fungsional alpha dengan posisi target joint 1 setelah regresi gerak berlawanan
jarum jam
Untuk hubungan fungsional antara variable alpha dengan posisi target joint 2 setelah regresi dengan gerakan searah jarum jam, maka didapatkan persamaan sebagai berikut :
α = 2.6*10-14θ T7 – 1.45*10-11θT6 + 2.87*10-9θT5 – 2.1908*10-7θ T4 + 1.9172*10-6θT3 + 4.052*10-4θ T2 – 0.02190 θT + 4.1791
46
Gambar 7 : Hubungan fungsional alpha dengan posisi target joint 2 setelah regresi untuk gerak
searah jarum jam
Sedangkan untuk arah gerakan berlawa-nan dengan jarum jam didaptkan persamaan sebagai berikut : α = 4.277*10-14θ T7 –3.1497*10-11θT6 + 9.2735*10-9θ T5 –1.3717*10-6θT4 + 1.0444*10-4θ T3 – 3.769*10-3θT2 + 0.074996 θT + 1.5183
Gambar 8 : Hubungan fungsional alpha dengan posisi target joint 2 setelah regresi gerak berlawanan
jarum jam
Karena semua posisi pengereman adalah 40 % dari posisi target maka dapat diperoleh persamaan : • Untuk gerakan searah jarum jam adalah :
θP = 0.4 θT
• Untuk gerakan berlawanan arah jarum jam adalah :
θP = 0.4 θT + 1.62
4. PENGUJIAN SISTEM
Pengujian plant dilakukan melalui tiga tahap. Tahap pertama yaitu untuk mengetahui pengaruh
kontrol, waktu tempuh dan ayunan bandul jika posisi target dan pengereman tetap.
Tahap kedua adalah mencari fungsi pengereman dengan nilai alpha (α) pada beberapa posisi target dan posisi rem dengan kriteria ayunan dan waktu tempuh minimum.
Tahap ketiga adalah untuk mengetahui kecocokan atau kesesuaian variabel posisi target (θT), posisi pengereman (θP),dan alpha (α) dengan kriteria ayunan dan waktu tempuh setelah hasil dari pengujian tahap kedua diregresi.
4.1. Analisa Pada Joint 1 Sudut mulai : 0° Sudut target : 150°
Waktu tempuh : 170 x 0.025 = 4.25 detik Posisi steady state : 147°
Ess = 3/150 * 100 % = 2 % Respon Output 0 0.5 1 1.5 2 2.5 1 18 35 52 69 86 103 120 137 154 Waktu (n iterasi) P o s isi Jo in t 1 ( v o lt )
Gambar 9 : Respon Output Dari gambar 9 diperoleh :
τ = 0.632 x 2 = 1.264 detik Ts = 3 x τ = 3.792 detik Ayunan Pada Sb. X 0 0.5 1 1.5 2 2.5 1 28 55 82 109 136 163 190 217 244 Waktu (n iterasi) P o s is i B andu l ( v ol t) Gambar 10 : Ayunan Sb. X
47 Ayunan Pada Sb. Y 0 0.5 1 1.5 2 2.5 1 30 59 88 117 146 175 204 233 262 Waktu (n iterasi) P o s is i B andul ( v ol t) Gambar 11 : Ayunan Sb. Y 4.2. Pada Joint 2 Sudut mulai : 0° Sudut target : 90°
Waktu tempuh : 160 x 0.025 = 4 detik Posisi steady state : 90.5°
Ess = 0.5/90 * 100 % = 0.56 % Respon Output 0 0.2 0.4 0.6 0.8 1 1.2 1.4 1.6 1.8 1 18 35 52 69 86 103 120 137 154 Waktu (n iterasi) P o si si Jo in t 2 ( v o lt)
Gambar 12 : Respon Output Joint 2 Dari gambar 12 diperoleh :
τ = 0.632 x 1.56 = 0.986 detik Ts = 3 x τ = 2.96 detik Ayunan Pada Sb. X 0 0.5 1 1.5 2 2.5 1 29 57 85 113 141 169 197 225 253 Waktu (n iterasi) P o s is i B and ul ( v ol t)
Gambar 13 : Ayunan Sb. X Joint 2
Ayunan Pada Sb. Y 0 0.5 1 1.5 2 2.5 1 27 53 79 105 131 157 183 209 235 Waktu (n iterasi) P o s is i B a nd ul ( v ol t)
Gambar 14 : Ayunan Sb. Y Joint 2
5. KESIMPULAN
• Metode ini dapat mengendalikan ayunan pada joint-joint dengan baik
• Dengan mengubah-ubah nilai α diperoleh sinyal kontrol yang sesuai dengan posisi target dan meminimumkan ayunan yang terjadi pada bandul.
• Error steady state kurang dari 5%, hal ini berarti bahwa hasil perancangan kontroler sesuai dengan yang dikehendaki.
6. DAFTAR PUSTAKA
[1] Avelino J. Gonzales dan Douglas D. Dankel, 1993 “ The Engineering of Knowledge-based
sistems “, Penerbit Prentice Hall Inc.
[2] Benjamin W. Wah, and C.V Ramamoortly, 1990, ” Computer for Artificial Intelegence
Processing “, John Weley & Sons, Inc. New
York.
[3] Charles L Phillips, Royce D. Harbour, 1998, Auburn University, University of Florida, “
Sistem Kontrol Dasar ”, Edisi Bahasa
Indonesia, Penerbit PT. Prenhalindo, Jakarta. [4] Che Mung On, 1998, ” Dynamic Simulation
of Electric Machinery”, Prentice Hall PTR,
Upper Saddle River, New Jersey 07458.
[5] Era Purwanto, Margo Pujiantoro, dan Akhmad Suyanto, 2000, “ Studi Penggunaan Speedsensor-Less dalam Pengaturan Kecepatan Motor Induksi “, Proceedings Industrial Electronics Seminar, ITS Surabaya.
[6] James P. Ignizio, 1991, “ Introduction to
Expert Sistem “, Mc. Graw-Hill.
[7] Kingsley Fitzgerald and Kusko, 1982, “
Electric Machinery, 3rd ed “ McGraw Hill Int.
[8] Lewi, Rusdianto Effendi, 2001, “
Perancangan Kontroler Nonlinier Berbasis Pengetahuan untuk Mengatur Kecepatan
48
Putaran Motor Induksi Tiga Fasa, Thesis
ITS.
[9] P. Hogenboom, 1998, “ Data Sheet Book 3 ”, Beek L, Netherlands. Elektuur BV.
[10] Rusdhianto Effendi AK, 1999, “ Sistem
Pengaturan I ” Diktat Kuliah FTI ITS
Surabaya.
[11] Sumanto, 1991, “ Mesin Arus Searah “, edisi kedua, cetakan pertama, penerbit ANDI OFFSET, Yogyakarta.
[12] Usman Tahir, 2001, “ Memperkecil Rugi-rugi Daya dengan metode Heurisfik pada Motor Induksi melalui Slip Energi Recovery “,
Thesis ITS.
[13] ..., 1996, “ National Semiconductor Data Book “ National.
Rusdhianto Effendie Abdul Kadier, dilahirkan di
Pekan Baru (Riau) 24 April 1957, menyelesaikan S1 pada tahun 1983 di Jurusan Teknik Elektro ITS dalam bidang Teknik Sistem Pengaturan dan pada tahun 1995 menyelesaikan S2 dalam Teknik Sistem Pengaturan di Jurusan Teknik Elektro ITB. Sejak tahun 1983 menjadi staf pengajar di Jurusan Teknik Elektro ITS hingga saat ini aktif sebagai peneliti di bidang Kecerdasan Buatan, Kontrol Robust, Identifikasi Sistem dan Optimasi Sistem.