Abstrak—Ilmu  robotika  telah  berkembang  pesat  selama dua  puluh  tahun  terakhir,  didorong  oleh  kemajuan  pesat dalam komputer  dan teknologi sensor serta kemajuan teoritis dalam  kontrol  dan  computer  vision.  Perkembangan  ini membuat  maraknya  penggunaan  robot  manipulator  dalam lingkungan  industri.  Di  antara  keuntungan  menggunakan robot adalah berdampak pada penurunan biaya tenaga kerja, meningkatkan  presisi  dan  produktivitas,  meningkatkan fleksibilitas, dan mengatasi kondisi kerja seperti membosankan,  berulang-ulang,  atau  pekerjaan  berbahaya. Masalah  utama  dalam  mengendalikan  manipulator  robot adalah  untuk  mengontrol  robot  untuk  mencapai  posisi  yang diinginkan.  Oleh  karena  itu  masalah  desain  kontrol  robot adalah  untuk  memilih  jenis  kontroler  yang  tepat.  Computed Torque  Controller (CTC) merupakan kontroler nonlinier yang handal yang secara luas digunakan dalam pengendalian robot manipulator.  Kontroler  CTC  didesain  berdasarkan  pada linierisasi  umpan  balik  dan  penghitungan  besar  torsi  lengan robot  yang  diperlukan  dengan  menggunakan  hukum  kontrol feedback nonlinier.  Kontroler  ini  menggunakan  analisis  gerak dinamik sehingga sangat memperhatikan energi dan gaya-gaya yang  terjadi  pada  pergerakan  robot  manipulator. Simulasi dilakukan  dengan  memberikan  trayektori  joint dari  satu  titk ke  titik  yang  lain.  Hasil  simulasi  menunjukkan  bahwa kontroler  PD  Fuzzy CTC  mampu  mengikuti  trayektori  joint dengan nilai RMSE posisi sudut joint dari kontroler PD Fuzzy CTC adalah 10 kali lebih kecil dibandingkan dengan kontroler PD CTC dengan ketelitian posisi end-effector dengan ketelitian mencapai 0,1 mm.
Kata  Kunci—Dinamik,  PD  Fuzzy CTC,  Robot  Manipulator, Trayektori.

## I. PENDAHULUAN
ERMASALAHAN  yang  sering  terjadi  adalah  kendali posisi  robot  manipulator  sesuai  dengan  referensi  yang diinginkan. Dalam kinematik  pergerakan robot tidak terlalu bermasalah dimana gaya-gaya  yang terjadi pada robot tidak diperhatikan.  Akan  tetapi  jika  pembahasannya  dalam  gerak dinamik,  gaya-gaya  yang  terjadi  harus  diperhatikan  untuk dilakukan  perhitungan  dalam  melakukan  pemodelan  robot manipulator.
Pengaturan  posisi  yang  sering  menjadi  kendala  pada robot  perlu  ditingkatkan  agar  lebih  baik.  Untuk  itu perlu dilakukan  pemilihan  jenis  kontroler  yang  tepat,  yang  bisa digunakan  untuk  mengendalikan  gerak  robot  manipulator. Untuk  itu  perlu  pemilihan  jenis  kontroler  yang  tepat,  yang bisa  digunakan  untuk  mengendalikan  gerak  robot manipulator. Computed Torque Controller (CTC) merupakan kontroler nonlinier yang handal yang secara luas digunakan dalam pengendalian robot manipulator. Kontroler CTC  berdasarkan  pada  linierisasi  umpan  balik  dan
menghitung besar torsi lengan robot yang diperlukan dengan menggunakan  hukum  kontrol feedback nonlinier.  Kontroler ini  bekerja  sangat  baik  ketika  semua  parameter  fisik  dan dinamik diketahui, tetapi ketika robot manipulator memiliki variasi  dalam  parameter  dinamik,  dalam  situasi  seperti  ini kontroler  tidak  mampu  menangani  kinerja yang  diinginkan [1]. Untuk menjamin agar mendapatkan kinerja sistem robot manipulator  yang  sesuai,  untuk  mengikuti  trayektori  posisi yang  diinginkan,  pada  makalah ini  dirancang  kontroler  PD Fuzzy CTC  yang  digunakan  untuk  mengoreksi  kekurangan respon yang ada pada kontroler PD CTC.
Makalah ini terbagi menjadi lima bagian sebagai berikut. Pada  bagian  II  akan  dijelaskan  model  dinamik  robot manipulator. Bagian III menjelaskan mengenai perancangan kontroler  PD Fuzzy CTC.  Pada  bagian  IV  akan  dijelaskan mengenai hasil pengujian dan analisis sistem. Pada akhirnya kesimpulan dari makalah ini akan dijelaskan pada bagian V.
II. MODEL DINAMIK ROBOT MANIPULATOR Berdasarkan  Amstrong  [1][2],  model  dinamik  yang digunakan untuk mengatur posisi robot manipulator PUMA- 560  didapatkan  dari  penurunan  persamaan lagrange yang bergantung dari tiga link pertama dari total enam link .
Berdasar  pada  pembelajaran  yang  dilakukan  oleh Amstrong  [1][2],  Robot  PUMA-560  memiliki  parameter- parameter yang digunakan dalam pemodelan dinamik. Tabel 2 dan Tabel 3 menunjukkan informasi parameter-parameter yang dimiliki robot PUMA-560 berupa konstanta inersia dan konstanta gravitasi.
Gambar 1. Bentuk Fisik Robot PUMA-560
Gambar  2  merupakan  penetapan frame yang  dibuat  sesuai dengan  standar Denavit-Hartenberg untuk  menggambarkan robot secara kinematika.

## Perancangan Pengaturan Posisi Robot Manipulator Berbasis PD Fuzzy Mamdani Computed Torque Control (PD Fuzzy CTC)
Duli Ridlo Istriantono dan Trihastuti Agustinah Teknik Elektro, Fakultas Teknologi Industri, Institut Teknologi Sepuluh Nopember (ITS) Jl. Arief Rahman Hakim, Surabaya 60111 Indonesia
e-mail : trihastuti@ee.its.ac.id
P
Gambar 2. Sistem Koordinat Link PUMA-560
Tabel 1 merupakan data parameter tiap link yang didapatkan berdasarkan penetapan frame .
Tabel 1.
Parameter DH PUMA-560 [3]
Link ke-i i a (mm) i  (deg) i d (mm) i  (deg) 1 0
-90 0 * 1 
2 431,8 0 149,09 * 2  3 -20,32 90 0 * 3  4 0 -90 433,07 * 4  5 0 90 0 * 5  6 0 0 56,25 * 6  Berikut ini merupakan 2 1
2 1 1
1 2 2 2 1 3 2 2 3 3 2 3 3 ( ) ( ) ( ) ( ) M B C G  
  
        

   
                                                
       (1)
Dimana  : vektor torsi
( ) M  : matriks inersia
( ) B  : matriks coriolis
( ) C  : matriks sentrifugal
( ) G  : matriks gravitasi  : vektor posisi
 
: vektor percepatan [ , ]     : vektor perkalian kecepatan
2 [ ]   : vektor kuadrat kecepatan

## Matriks inersia dihitung sebagai berikut
11 12 13 21 22 23 31 32 33 35 44 55 66 0 0 0 0 0 0 0 0 ( ) 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 M M M M M M M M M M M M M M      
           
    (2) 2 2 11 1 1 3 2 7 23 10 23 23 2 11 2 2 21 23 5 2 23 12 2 23 15 23 23 16 2 23 22 23 23 2( ) m M I I I c I s I s c I s c I s I c s I c c I s s I c s I s c             12 4 2 8 23 9 2 13 23 18 23 =I s +I c +I c +I s -I c M 13 8 23 13 23 18 23 M I c I s I c      22 2 2 6 5 3 12 2 15 16 3 2 m M I I I I s I c I I s    
   23 5 3 6 12 3 16 3 15 2 M I s I I c I s I      33 3 6 15 2* m M I I I    35 15 17 M I I   44 4 14 m M I I   55 5 17 m M I I   66 6 23 m M I I   21 12 31 13 32 23 , , M M M M M M    14 15 16 0, 0, 0 M M M    24 25 26 0, 0, 0 M M M    34 36 0, 0 M M   41 42 43 45 46 0, 0, 0, 0, 0 M M M M M      51 52 53 54 56 0, 0, 0, 0, 0 M M M M M     
61 62 63 64 65 0, 0, 0, 0, 0 M M M M M      (3)
Matriks coriolis dihitung sebagai berikut
112 113 115 123 214 223 225 235 314
412 412 415 514 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 ( ) 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 b b b b
b b b b b B b b b b       
 
  
   
   
  (4) 112 3 2 2 5 223 7 23 23 12 223 15 23 23 2 2 16 223 21 23 23 22 23 10 23 2 11 2 2( 2 (1 2 )) (1 2 ) (1 2 ) b I s c I c I s c I s I s c I c I s c I s I s I s               113 5 23 2 7 23 23 12 23 2 15 23 23 16 2 23 2 2 21 23 23 22 23 10 23 2( 2 (1 2 )) (1 2 ) b I c c I s c I s c I s c I c c I s c I s I s          
2 115 23 23 15 23 23 16 2 23 22 23 2( ) b s c I s c I c c I c        123 8 23 13 23 18 23 2 b I s I c I s     214 14 23 19 23 20 23 b I s I s I s      223 12 3 5 3 16 3 2 b I s I c I c       225 16 3 22 2 b I c I   235 225 b b    314 20 14 19 23 b I I I s    412 214 b b   413 314 b b   415 20 23 17 23 b I s I s    514 415 b b   (5)
Matriks sentrifugal dihitung sebagai berikut
12 13 23 21 31 32 51 52 0 0 0 0 0 0 0 0 0 0 0 0 ( ) 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 c c c c c c C c c                       (6) 12 4 2 8 23 9 2 13 23 18 23 c I c I s I s I c I s      13 123 0.5 c b  21 112 0.5 c b   23 223 0.5 c b  31 113 0.5 c b   32 23 c c   51 115 0.5 c b   52 225 0.5 c b   (7)
Matriks gravitasi dihitung sebagai berikut 2 3 5 0 ( ) 0 0 G G G G                       (8) 2 1 2 2 23 3 2 4 23 5 23 G g c g s g s g c g s      3 2 23 4 23 5 23 G g s g c g s    5 5 23 G g s 
(9)
Percepatan posisi dapat ditulis sebagai berikut
1 2 ( ) ( ( ) ( ) ( )) M B C G                      (10)
Tabel 2.
Konstanta Inersia [1][2] Konstanta Inersia ( Kg.m 2 )
1 1.43 0.05 I  
2 1.75 0.07 I   1 1.38 0.05 I   4 0.69 0.02 I   5 0.372 0.031 I   6 0.333 0.016 I  
7 0.298 0.029 I  
8 0.134 0.014 I   
9 0.0238 0.012 I  
10 0.0213 0.0022
I   
11 0.0142 0.007 I   
12 0.011 0.0011
I   
13 0.00379 0.0009 I  
14 0.00164 0.00007 I   15 0.00125 0.0003 I   16 0.00124 0.0003 I  
17 0.000642 0.0003 I  
18 0.000431 0.00013 I  
19 0.0003 0.0014 I  
20 0.000202 0.0008 I   
21 0.0001 0.0006 I   
22 0.000058 0.00001
I    23 0.00004 0.00002 I   1 1.14 0.27 m I  
2 4.71 0.54 m I  
3 0.827 0.093 m I   4 0.2 0.016 m I  
5 0.179 0.014 m I   6 0.193 0.016 m I  
Tabel 3. Konstanta Gravitasi [1][2]
Konstanta Gravitasi ( N.m ) 1 37.2 0.5 g    4 8.44 0.2 g   
2 1.02 0.5 g   5 0.249 0.025 g  
3 0.0282 0.0056 g   

## III. PERANCANGAN KONTROLER PD FUZZY CTC
Pada  makalah ini  dirancang  kontroler Proporsional Derivative (PD),  kontroler Fuzzy dan  kontroler Computed Torque  Controller (CTC).  Kontroler  PD  digunakan  untuk memperbaiki  respon steady  state dari  sistem  kontrol  robot manipulator,  dirancang  melalui  pendekatan  karakteristik respon  sistem.  Lalu  kontroler Fuzzy digunakan  sebagai koreksi  terhadap gain kontroler  PD  yang  digunakan  untuk memperbaiki  respon  transien  dari  sistem  kontrol  robot manipulator.  Sedangkan  kontroler  CTC  merupakan kontroler  yang  digunakan  dalam  pemodelan  dinamik  robot manipulator  yang  menggunakan  besaran  torsi  sebagai metode kendali robot manipulator.
Untuk  memudahkan  dalam  perancangan  pengaturan robot  manipulator  perlu  dirancang  sebuah  blok  diagram sistem. Gambar 3  menunjukkan blok diagram kontrol robot manipulator yang merepresentasikan sistem secara umum.

## Gambar 3. Blok Diagram Kontrol Robot Manipulator

## A. Perancangan Kontroler PD
Kontroler  PD  dirancang  untuk  memperbaiki  respon steady  state dari  sistem  kontrol  manipulator,  digunakan untuk mengolah  data error dan perubahan error dari posisi sudut yang dinginkan terhadap posisi sudut aktual.
Dalam  perancangan  ini  kontroler  PD  didesain  dengan menerapkan  metode tuning Ziegler-Nichols dengan menggunakan  parameter  yang  sudah  ditentukan.  Tabel  4 menunjukkan  nilai  parameter  yang  bisa  digunakan  dengan beberapa kemungkinan kontroler yang bisa dipilih.
Tabel 4. Metode Ziegler-Nichols [4]
Tipe Kontrol K P K I K D P 0.5 K U - - PI 0.45 K U 1.2 K P / T U - PD 0.8 K U - K P T U /8 PID 0.6 K U 2 K P / T U K P T U /8
Setelah  didapatkan nilai gain kontroler PD,  model dinamik menjadi berbentuk PD CTC seperti berikut [1].
2 ( )( ) ( )( ) ( ) ( ) d p d M
K e K e B C G                    (11)
Sehingga bentuk struktur kontroler menjadi
Gambar 4. Struktur Kontroler PD CTC [2]

## B. Perancangan Kontroler Fuzzy
Kontroler Fuzzy yang  digunakan adalah kontroler Fuzzy tipe Mamdani .  Tipe Mamdani digunakan  karena  tipe  ini memiliki  masukan  yang  sifatnya human  input sehingga sangat sesuai dengan sistem kontrol robot manipulator yang nonlinier.  Kontroler  ini  digunakan  untuk  memperbaiki respon  transien  sebagai  koreksi  dari  respon  sinyal  kontrol dari kontroler PD.
Gambar  5 menunjukkan  blok  diagram  perancangan kontroler Fuzzy ,  gambar  6-8 menunjukkan  fungsi keanggotaan  untuk input dan output ,  Tabel  5 menunjukkan rule  base kontroler  dan  gambar  9 merupakan  diagram simulink sistem kontrol robot manipulator.
Gambar 5. Struktur Kontroler PD Fuzzy CTC
Gambar 6. Fungsi Keanggotaan untuk Input Sinyal Error
Gambar 7. Fungsi Keanggotaan untuk Input Sinyal Delta Error
Gambar 8. Fungsi Keanggotaan untuk Output Sinyal Kontrol
Tabel 5. Aturan Dasar Mack Vicar Whelan Output Delta Error
NL NS ZE PS PL Error NL NL NL NS NS ZE NS NL NS NS ZE PS ZE NS NS ZE PS PS PS NS ZE PS PS PL PL ZE PS PS PL PL
Di  mana  deskripsi  linguistik dari  fungsi  keanggotaan input dan output adalah Negative  Large (NL), Negative  Small (NS), Zero (ZE), Positive  Small (PS)  dan Positive  Large (PL).
Dari  aturan  dasar  yang  sudah  dibuat  dilakukan  proses inferensi  untuk  menarik  kesimpulan  sinyal  kontrol  yang digunakan. Aturan inferensi menggunakan metode Mamdani yang  menentukan  nilai  maksimum  sinyal  kontrol  dari minimum input sinyal error dan delta error .
Agar  sistem  mendapatkan  besaran  yang real maka dilakukan  defuzzifikasi  untuk  memetakan  besaran  dari himpunan Fuzzy ke  dalam  bentuk  nilai crisp .  Metode  yang digunakan  dalam  defuzifikasi  adalah  metode centroid ( center of gravity atau center of area ).

## Gambar 9. Diagram Simulink Sistem Kontrol Robot Manipulator
IV. HASIL PENGUJIAN DAN ANALISIS SISTEM
Pada  Bagian  ini  akan  dibahas  mengenai  pengujian  data antara respon masukan posisi sudut dalam ruang sendi yang diinginkan dengan respon keluaran posisi sudut dalam ruang sendi yang aktual. Kedua posisi sudut tersebut nantinya akan dibandingkan  dan  dianalisis  lebih  lanjut,  dimana  nilai keduanya  akan  menentukan  posisi  koordinat end-effector dari  robot  manipulator  dalam  ruang  kartesian.  Selanjutnya pergerakan  robot  manipulator  disimulasikan  menggunakan robotics toolbox Peter Corke versi 8.

## A. Pengujian Posisi Sudut Setiap Joint
Pengujian posisi sudut setiap joint perlu dilakukan untuk mengetahui perbandingan  antara  posisi  sudut  yang diinginkan  dengan  posisi  sudut  aktual  sebelum  diberikan kontroler  dalam  sistem  kontrol  robot  manipulator.  Pada pengujian ini ada  dua masukan posisi sudut  yang  diberikan untuk enam joint dari robot  manipulator.  Sinyal input yang diberikan pada tiap-tiap joint berupa trayektori kubik. Tabel 6 dan  Tabel  7 menunjukkan  hasil  pengujian  posisi  sudut setiap joint robot  manipulator  dengan  masukan  dua  posisi sudut  dimana q x merupakan  posisi  robot  manipulator  ke- x , θ d merupakan  posisi  sudut joint yang  diinginkan,  dan θ a merupakan posisi sudut joint aktual.
Tabel 6. Pengujian Posisi Sudut Joint 1, Joint 2 dan Joint 3 q 0 =0 Joint 1 Joint 2 Joint 3 θ d ( deg ) θ a ( deg ) θ d ( deg ) θ a ( deg ) θ d ( deg ) θ a ( deg ) q 1 45 68.4 -90 -136.8 -45 -68.4 Tabel 7.
Pengujian Posisi Sudut Joint 4, Joint 5 dan Joint 6 q 0 =0 Joint 4 Joint 5 Joint 6 θ d ( deg ) θ a ( deg ) θ d ( deg ) θ a ( deg ) θ d ( deg ) θ a ( deg ) q 1 30 45.55 0 0 -180 -273.6
Gambar 10-15 menunjukkan respon posisi joint berdasarkan data pada tabel 6-7.
Gambar 10. Respon Joint ke-1 Posisi Pertama Gambar 11. Respon Joint ke-2 Posisi Pertama Gambar 12. Respon Joint ke-3 Posisi Pertama
Gambar 13. Respon Joint ke-4 Posisi Pertama Gambar 14. Respon Joint ke-5 Posisi Pertama Gambar 15. Respon Joint ke-6 Posisi Pertama
Dari respon posisi joint pada Gambar 10-15 didapatkan nilai RMSE  antara  nilai set  point dan  aktual,  ditunjukkan  pada tabel 8.
Tabel 8. Nilai RMSE tanpa Kontroler Nilai RMSE Posisi 1 ( q 1) Joint 1 1,14437 Joint 2 2,288741 Joint 3 1,14437 Joint 4 0,761025 Joint 5 0 Joint 6 4,577482

## B. Pengujian Posisi End-Effector Robot Manipulator
Pengujian ini  dimaksudkan untuk  mengetahui  koordinat posisi  dari end-effector robot  manipulator  pada  awal sebelum  diberikan  kontroler  dalam  sistem  kontrol. Koordinat dari posisi yang diinginkan dibandingkan dengan koordinat  dari  posisi  aktual.  Koordinat  posisi  didapatkan dengan  menggunakan  persamaan  transformasi  homogen dalam forward  kinematics .  Tabel  9 menunjukkan  posisi koordinat sumbu x , y dan z dari end-effector . Tabel 9. Koordinat Posisi End-effector Robot Manipulator Koordinat x i y i z i
q 1 Set Point -0,3399 -0,1291 0,07144 Aktual -0,3412 -0,1282 -0,07613
Gambar  16 menunjukkan  posisi  awal dan  Gambar  17 menunjukkan  posisi  akhir  robot  manipulator dalam  bentuk plot gambar.
Gambar 16. Posisi Awal Robot Manipulator

## Gambar 17. Posisi Akhir Robot Manipulator Pertama
Dari  persamaan  yang  berdasarkan  tabel  4 didapatkan beberapa  nilai T U yang  akan  menentukan  nilai gain K P dan K D .  Nilai set  point yang  diberikan  sebesar  90 o dan  hasil tuning ditunjukkan pada tabel 10.
Tabel 10. Data Hasil Tuning Gain kontroler PD
Data Tuning K U T U K P K D Set Point = 90 100 0,625 80 6,25 Tabel 11.
Nilai RMSE Kontroler PD Fuzzy CTC Nilai RMSE Posisi 1 ( q 1) Joint 1 0,001167805 Joint 2 0,00228027 Joint 3 0,00111588 Joint 4 0,000778844 Joint 5 4,5289E-16 Joint 6 0,004420558
Dengan  posisi end-effector ditunjukkan  pada  tabel  12 berikut.
Tabel 12. Koordinat Posisi End-effector Robot Manipulator (PD Fuzzy CTC) Koordinat x i
y i z i q 1 Set Point -0,3399 -0,1291 0,07144 Aktual -0,3399 -0,1291 0,07145

## V. KESIMPULAN
Kontroler  PD  CTC  mampu  memperbaiki  respon  posisi tanpa kontroler, di mana posisi joint robot manipulator dapat mengikuti trayektori yang diinginkan. Kontroler  PD Fuzzy CTC  mampu  memperbaiki kekurangan respon pada kontroler PD CTC,  di mana posisi joint robot  manipulator  dapat  mengikuti  trayektori  yang diinginkan  dengan  nilai  RMSE  sekitar  10  kali  lebih  kecil pada tiap-tiap joint . Kontroler PD Fuzzy CTC dapat memperbaiki posisi end- effector lebih baik dibandingkan dengan kontroler PD CTC dengan ketelitian mencapai 0,1 mm.

## DAFTAR PUSTAKA
[1] Piltan  Farzin,  Yarmahmoudi,  M.H.,  Shamsodini  Mohammad,
Mazlomian  Ebrahim  and  Hosainpour  Ali,  “PUMA-560  Robot Manipulator  Position  Computed  Torque  Control  Methods  Using MATLAB/SIMULINK  and  Their  Integration  into  Graduate Nonlinier Control  and  MATLAB  COURSE”, International Journal of Robotics and Automation , (IJRA), Vol. 3, No. 3, 2012.
[2] Fu, K.S., "Geometric Approach in  Solving  Inverse Kinematics of PUMA Robots", IEEE Trans. Aero and Elect Sys , Vol. AES-20, No.
6, pp. 695-706.
[3] Armstrong, B., Khatib, O., and Burdick, J., “The Explicit Dynamic Model  and  Inertial  Parameters  of  the  PUMA  560  Arm”, IEEE
Conference , 2002, pp. 510-518.
[4] Ziegler, J.G and  Nichols, N.B.,  “Optimum  Setting  for  Automatic Controller”, Transaction of the ASME 64, pp. 759-768, 1942.