## Penyelesaian Kinematika Langsung Manipulator Paralel Bidang 3-RRR Secara Eksak Menggunakan Open Source Computer Algebra Software: SymPy

## Adriyan
Program Studi Teknik Mesin, Fakultas Teknik, Universitas Muhammadiyah Riau Jl. Tuanku Tambusai Ujung Pekanbaru, Riau, Indonesia
E-mail : adriyan@umri.ac.id

## Abstract
The determination of a direct kinematic solution for any parallel manipulator was an interesting topic to study because of its mathematical’s complexity. This article presents the exact solution for direct kinematic problems  of  3-RRR  planar  parallel  manipulator  utilizing  the  open-source  computer  algebra  software: SymPy.  Thus,  a  symbolic  procedure  is  implemented  to  a  python’s  function  through  the extensive  use  of SymPy library. This developed function is utilized to compute the direct kinematic solution for the known numeric values of kinematic constants and the active joints. A calculation result shows that there are two real  solutions  to  its  direct  kinematic  problem.  Furthermore,  these  two  real  solutions  indicate  that  the manipulator possesses two assembly modes for its direct kinematic problems which had a distinction from its inverse kinematic solutions.
Keywords: planar parallel manipulator 3-RRR, the exact solution of the direct kinematic, and SymPy.

## Abstrak
Penentuan jawab kinematika langsung manipulator paralel merupakan hal yang menarik untuk dikaji karena kompleksitas matematisnya. Artikel ini menyajikan penyelesaian eksak permasalahan kinematika langsung manipulator  paralel  bidang  3-RRR  melalui  pemanfaatan  perangkat  lunak  aljabar  komputer  dengan  kode terbuka: SymPy. Prosedur penyelesaian secara simbolik diimplementasikan ke dalam sebuah fungsi python melalui penggunaan pustaka SymPy secara ekstensif. Melalui fungsi ini akan dikalkulasi jawab kinematika langsung  manipulator  secara  numerik  untuk  nilai  konstanta  kinematik  dan  besar  sudut  input  pada sambungan aktif. Hasil pengujian untuk suatu dimensi konstanta kinematika manipulator ini menunjukkan bahwa terdapat dua akar-akar ril penyelesaian  kinematika langsungya. Dua akar ril ini  mengindikasikan bahwa manipulator memiliki dua modus rakitan kinematika langsung yang berbeda dengan modus rakitan untuk jawab kinematika invers.
Kata kunci: manipulator paralel bidang 3-RRR, jawab eksak kinematika langsung, dan SymPy.

## 1. Pendahuluan
Memanipulasi  gerakan  suatu  objek  baik  di ruang  dan  di  bidang  dapat  dilakukan  dengan menggunakan  suatu  manipulator.  Manipulator menggunakan rantai kinematik sebagai penyusun utama pemanipulasi gerakan. Dalam hal ini, rantai kinematik  terdiri  atas  beberapa  batang  dan sambungan  yang disusun sedemikian rupa  untuk memenuhi tugas yang diinginkan untuk memanipulasi  gerakan.  Secara  garis  besar  rantai kinematik  ini  dibedakan  atas  tiga  yaitu  rantai kinematik  terbuka  ( open  loop ),  tertutup  ( closed loop ),  dan  kombinasi  ( hybrid ).  Selanjutnya,
manipulator dengan rantai kinematik terbuka dan tertutup  disebut masing-masingnya  dengan manipulator  serial  dan  paralel.  Sementara  itu, manipulator  dengan  rantai  kinematik  hibrida merupakan kombinasi rantai kinematik serial dan paralel.
Perbedaan  yang  cukup  mendasar  untuk diamati  pada  manipulator  serial  dan  paralel terletak  pada  ukuran  ruang  kerja  ( workspace ). Manipulator paralel memiliki ukuran ruang kerja yang lebih kecil dibandingkan manipulator serial [1].  Perbedaan  berikutnya  terletak  dalam permasalahan  kinematika  invers  dan  kinematika langsung  yang  bertolak  belakang  dalam  hal
penyelesaiannya  [2].  Permasalahan  kinematika langsung dapat dengan mudah diselesaikan untuk manipulator serial dibandingkan dengan manipulator  paralel.  Namun,  hal  sebaliknya ditemui untuk penyelesaian kinematika invers.
Penyelesaian permasalahan kinematika langsung  telah  menarik  minat  peneliti  untuk memecahkannya  dengan  diajukannya  berbagai metode.  Penentuan  jawab  eksak  merupakan langkah awal yang umum dilakukan seperti yang dinyatakan oleh Gosselin [3], Tsai [4], dan Merlet [5]. Dalam hal ini, jawab eksak diperoleh sebagai penyelesaian  suatu  polinom  berderajat  6  dan  8 untuk manipulator paralel bidang 3-RRR. Metode matematis  lainnya  seperti  Gröbner  basis  dan metode resultan juga diterapkan oleh Naderi, dkk untuk  menentukan  jawab  eksak  manipulator paralel bidang [6]. Melalui artikel ini ditunjukkan bahwa  manipulator  paralel  bidang  memiliki  6 jawab maksimum yang konsisten dengan laporan oleh Gosselin.
Namun,  melalui  jawab  ini  belum  dapat diidentifikasi  berapa  jumlah  akar-akar  ril  dari seluruh akar-akar polinom.  Untuk menjawab ini, Dastjerdi,  dkk  [7]  mengajukan  sebuah  indeks geometri  yang  disebut  dengan distance  circles’ intersection (DCI). Penerapan DCI menghasilkan jawab  kinematika  langsung  dengan  dua  akar  ril pada manipulator 3-RRR.
Di samping penyelesaian eksak atau geometri, metode lainnya juga diajukan seperti penyelesaian secara  numerik  dan  penggunaan  algoritma- algoritma pembelajaran mesin. Jawab kinematika langsung  manipulator  paralel  bidang  3-RRR secara  numerik  melalui  penggunaan  Simulink juga  diajukan  oleh  Dang,  dkk  [8].  Melalui penelitian  ini  disajikan  jawab  kinematika langsung manipulator paralel bidang 3-RRR yang dinyatakan  ke  dalam  suatu  fungsi  waktu  atau respons waktu. Respons ini dikalkulasi berdasarkan  input  di  sambungan  aktif  yang diaktuasi sebagai fungsi waktu juga.
Penerapan  jaringan  syaraf  tiruan  ( artificial neural networks atau ANN) merupakan hal yang cukup  populer  dilakukan.  Bidokhti  dan  Enferadi [9]  mengimplementasikan  dua  jenis  arsitektur ANN  yaitu back-propagation  neural  network (BPNN) dan radial basis function neural network (RBFNN).  Kedua  arsitektur  ini  digunakan  untuk menentukan  jawab  kinematika  langsung  dalam bentuk  suatu  lintasan  spiral.  Tentunya  kedua arsitektur  ini  dilatih  ( training )  berdasarkan lintasan  spiral  yang  dihasilkan  oleh  suatu  fungsi matematika  tertentu.  Hal  senada  juga  dilakukan oleh Sayed, dkk [10] yang mengimplementasikan neuro fuzzy inference system (NFIS) dengan pen- tuning -an  melalui particle  swarm  organization (PSO)  dan genetic  algorithm (GA).  Mereka
memberikan  jawab  kinematika  langsung  dalam respons waktu setelah proses training dan tuning pada  arsitektur  NFIS  yang  digunakan.  Langkah ini  tentunya  lebih  cocok  diterapkan  ketika berhubungan  dengan  sistem  kendali  manipulator ini.
Artikel yang ditulis ini akan mengajukan suatu proses komputasi simbolik-numerik penyelesaian permasalahan  kinematika  langsung  manipulator paralel  bidang  3-RRR.  Hal  ini  didasari  pada kenyataan  bahwa  manipulator  paralel  bidang  ini memiliki  jawab  tertutup.  Meskipun  representasi simbolik  untuk  konstanta  kinematiknya  tidak dapat  dinyatakan  secara  eksplisit.  Untuk  itu, proses  komputasi  simbolik-numerik  merupakan hal  yang  memungkinkan  dilakukan  melalui penggunakan  perangkat  lunak  computer  algebra system: SymPy [11].
Susunan  artikel  yang  ditulis  ini  terdiri  atas: Metode  penyelesaian  permasalahan  kinematika langsung di bagian 2. Bagian 3 menyajikan hasil beserta  pembahasan  penyelesaian  kinematika langsung  ini.  Akhirnya,  kesimpulan  ditarik sebagaimana yang diberikan dalam bagian 4.

## 2. Metodologi
Manipulator  paralel  bidang  3  DoF  dengan rantai kinematik 3-RRR ditunjukkan oleh Gambar 1.  Manipulator  ini  terdiri  atas  satu  batang  tetap sebagai base ,  satu platform yang  berupa  batang bergerak, serta enam buah batang biner bergerak lainnya. Base dan platform merupakan  batang ternari  dengan  bentuk  berupa  segitiga  sama  sisi. Selanjutnya,  keenam  batang  biner  bergerak  ini masing-masingnya  menyusun  tiga limb (kaki) manipulator  dengan  satu limb disusun  atas  dua batang. Keseluruhan sambungan yang digunakan untuk  menghubungkan  batang-batang  ini  hingga membentuk  suatu  mekanisme  pada  Gambar1 menggunakan sambungan revolut (R). Sambungan revolut pertama yang
menghubungkan  setiap  kaki  dengan base merupakan  sambungan  aktif  atau  sambungan yang diaktuasi.
Dengan  mengacu  pada  jumlah  batang  dan sambungan dapat ditentukan mobilitas manipulator  ini  melalui  persamaan  Grübler- Kutzbach yang didefinisikan oleh
𝑀 = 𝜆(ℓ − 𝑗 − 1) + ∑ 𝑓 𝑖 𝑖=1 (1)
dengan ℓ , j ,  dan f i menyatakan  jumlah  batang, sambungan,  dan  gerakan  yang  diizinkan  untuk setiap  sambungan.  Sementara  itu, λ merupakan suatu  konstanta  yang  mendefinisikan  jumlah gerakan suatu benda kaku secara bebas di bidang
atau  di  ruang  yang  bernilai  masing-masingnya  3 atau 6.
Gambar 1. Manipulator paralel bidang 3 DoF yang disusun oleh rantai kinematik 3-RRR.
Selanjutnya,  vektor  posisi  titik P pada platform
manipulator dapat ditentukan berdasarkan geometrinya untuk setiap limb dalam bentuk persamaan loop vektor. Dengan demikian, analisis posisi dapat dilakukan yang berupa kajian kinematika  invers  manipulator.  Untuk  kajian kinematika  invers  dapat  ditentukan  dengan pengetahuan  akan  input  pada platform atau disebut platform space ( x , y , φ ) untuk memperoleh besarnya  sudut  sambungan  aktif  atau actuator space ( θ 1 , θ 2 , θ 3 ).  Sebaliknya,  dengan  adanya informasi actuator  space dapat  diperoleh  nilai pada platform  space yang  disebut  kemudian dengan kajian kinematika langsung.
Jawab  tertutup  ( closed  form  solution ) kinematika  langsung  ini  dapat  ditentukan berdasarkan formulasi vektor posisi ini. Penyelesaiannya akan menghasilkan suatu polinom berderajat tertentu, katakanlah sebesar n . Polinom  berderajat n ini  tentunya  memiliki n buah  akar.  Namun,  tidak  seluruh n akar  ini  ini yang bernilai ril melainkan juga ada yang berupa akar  komples  dan  konyugatnya.  Untuk  sejumlah m ( m < n ) akar ril dapat dihitung besarnya  sudut orientasi platform φ . Akhirnya, nilai posisi titik P ( x , y ) dapat dihitung berdasarkan informasi sudut orientasi platform yang telah diperoleh ini.
Untuk  memudahkan  proses  komputasinya maka  dapat  dibuatkan  sebuah package yang dinyatakan  ke  dalam  beberapa  sebuah  fungsi dengan  bahasa  pemrograman  python.  Dalam  hal ini,  komputasi  secara  simbolik  secara  ekstensif digunakan  untuk  memperoleh  jawab  kinematika langsung  ini.  Selanjutnya,  penerapan  ini  dapat diimplementasikan menggunakan pustaka python untuk  komputasi  aljabar  simbolik,  yaitu  SymPy (Symbolic  Python).  Melalui  penerapan  ini  dapat ditentukan  jawab  kinematika  langsung  untuk m akar  ril  serta n – m akar-akar  kompleks  dan konyugatnya.
Tabel 1.
Nilai numerik untuk dimensi konstanta kinematik manipulator paralel bidang 3-RRR. Konstanta kinematik Dimensi (mm) Jari-jari base , r B 360 Batang bawah limb , a 220 Batang atas limb , b 240 Jari-jari platform , r P
80
Sebagai  suatu  studi  kasus  pada  manipulator paralel  bidang  3-RRR  digunakan  dimensi konstanta  kinematik  manipulator  seperti  yang diberikan dalam Tabel 1. Penerapan nilai numerik ini akan menghasilkan jawab untuk permasalahan
kinematika  langsung  manipulator.  Untuk  jawab- jawab  yang  memenuhi  dapat  divisualisasikan posisi  dan  orientasi  manipulator.  Jawab-jawab yang  memenuhi  ini  merupakan  modus  rakitan ( assembly modes ) kinematika langsung manipulator ini.
Komputasi  dilakukan  pada  notebook  yang memiliki  prosesor  Intel ® i7  11800H  dengan kecepatan 4.30 GHz dan RAM 32 GB. Sementara itu,  perangkat  lunak  python  dan  SymPy digunakan  dengan  masing-masingnya  pada  versi 3.9.12 dan 1.10.1.

## 3. Hasil dan Pembahasan
Penentuan  mobilitas  manipulator  paralel bidang  3  DoF  dengan  rantai  kinematik  3-RRR dapat  ditentukan  secara  langsung  dengan persamaan Grübler-Kutzbach berdasarkan jumlah batang dan sambungan. Manipulator ini memiliki 8 buah batang ( ℓ ) dan 9 buah sambungan ( j ) serta setiap  sambungan  revolut  akan  mengizinkan  1 gerakan  ( f i ).  Penerapan  persamaan  Grübler- Kutzbach menghasilkan mobilitas manipulator ini sebesar  3.  Mobilitas  sebesar  3  ini  merupakan kemampuan  dari platform untuk  memiliki gerakan umum di bidang, yaitu dua gerak translasi pada suatu bidang dan satu gerak rotasi yang tegak lurus terhadap bidang tersebut.

## 3.1. Persamaan Posisi
Titik P merupakan  titik  acuan  untuk mendeksripsikan gerakan platform yang dinyatakan oleh variabel-variabel dalam platform space . Merujuk pada geometri  manipulator  yang ditampilkan  dalam  Gambar  1  dapat  dituliskan secara  matematis  vektor  posisi  titik P terhadap titik O untuk ketiga limb -nya, yaitu
𝑂𝑃 ⃗⃗⃗⃗⃗  = 𝑂𝐴 𝑖 ⃗⃗⃗⃗⃗⃗⃗  + 𝐴 𝑖 𝐵 𝑖 ⃗⃗⃗⃗⃗⃗⃗⃗  + 𝐵 𝑖 𝐶 𝑖 ⃗⃗⃗⃗⃗⃗⃗  + 𝐶 𝑖 𝑃 ⃗⃗⃗⃗⃗⃗ , (2)
untuk i =  1;  2;  3,  dengan 𝑂𝑃 ⃗⃗⃗⃗⃗  = (𝑥 𝑦) 𝑇 , 𝑂𝐴 𝑖 ⃗⃗⃗⃗⃗⃗⃗  = 𝑟 B · (c𝛾 𝑖 s𝛾 𝑖 ) 𝑇 , 𝐴 𝑖 𝐵 𝑖 ⃗⃗⃗⃗⃗⃗⃗⃗  = 𝑎 · (c𝜃 𝑖 s𝜃 𝑖 ) 𝑇 , 𝐵 𝑖 𝐶 𝑖 ⃗⃗⃗⃗⃗⃗⃗  = 𝑏 · (c𝛽 𝑖 s𝛽 𝑖 ) 𝑇 , dan 𝑃𝐶 𝑖 ⃗⃗⃗⃗⃗⃗  = −𝐶 𝑖 𝑃 ⃗⃗⃗⃗⃗⃗  = 𝑟 P · (c(𝜑 + 𝛾 𝑖 ) s(𝜑 + 𝛾 𝑖 )) 𝑇 .  c□ dan  s□  menyatakan  masing-masingnya  kosinus dan sinus suatu sudut □, dengan □ dapat  berupa sudut  tunggal  atau  operasi  aritmetik  dua  buah sudut atau lebih.
Selanjutnya,  sambungan  pasif 𝛽 𝑖 dapat dieliminasi  dari  persamaan  vektor  posisi  yang dinyatakan  oleh  persamaan  (2).  Tentunya, persamaan (2) ini dapat disusun ulang menjadi
𝑂𝑃 ⃗⃗⃗⃗⃗  − 𝑂𝐴 𝑖 ⃗⃗⃗⃗⃗⃗⃗  − 𝐴 𝑖 𝐵 𝑖 ⃗⃗⃗⃗⃗⃗⃗⃗  + 𝑃𝐶 𝑖 ⃗⃗⃗⃗⃗⃗  = 𝐵 𝑖 𝐶 𝑖 ⃗⃗⃗⃗⃗⃗⃗ . (3)
Penerapan perkalian skalar vektor untuk kedua ruas persamaan (3) akan menghasilkan hubungan matematis
(𝑥 𝑖 − 𝑎 ⋅ cθ 𝑖 ) 2 + (𝑦 𝑖 − 𝑎 ⋅ sθ 𝑖 ) 2 = 𝑏 2 , (4)
dengan 𝑥 𝑖 = 𝑥 − 𝑟 𝐵 ⋅ cγ 𝑖 + 𝑟 𝑃 · c(𝜑 + 𝛾 𝑖 ) ,  dan 𝑦 𝑖 = 𝑦 − 𝑟 𝐵 ⋅ s𝛾 𝑖 + 𝑟 𝑃 · s(𝜑 + 𝛾 𝑖 ) . Akhirnya, persamaan  (4)  digunakan  untuk  memperoleh jawab  permasalahan  kinematika  invers  dan permasalahan kinematika langsung.

## 3.2. Kinematika Invers
Jawab  permasalahan  kinematika  invers  dapat diperoleh  dengan  menyelesaikan  persamaan  (4) untuk  nilai actuator  space -nya  berdasarkan  nilai platform  space yang  diketahui.  Untuk  itu, persamaan  (4)  dapat  diekspansikan  dan  ditulis kembali ke dalam suatu hubungan matematis yang diekspresikan oleh
𝑥 𝑖 ⋅ c𝜃 𝑖 + 𝑦 𝑖 ⋅ s𝜃 𝑖 = 𝐾 𝑖 , (5)
dengan 𝐾 𝑖 = (𝑥 𝑖 2 + 𝑦 𝑖 2 + 𝑎 2 − 𝑏 2 ) (2𝑎) ⁄ .  Untuk menyelesaikan  persamaan  (5)  dapat  ditempuh dengan  menerapkan  hubungan  tangen  setengah sudut berikut
c𝜃 𝑖 = 1−𝑡𝑖 2 1+𝑡𝑖 2 ;  s𝜃 𝑖 = 2𝑡𝑖 1+𝑡𝑖 2 ; 𝑡 𝑖 = tan 𝜃𝑖 2 .
Akhirnya,  jawab  kinematika  invers θ i berupa besar  sudut  sambungan  aktif  dapat  diperoleh dengan mensubstitusikan hubungan  tangen setengah  sudut  ke  dalam  persamaan  (5)  dan melakukan  manipulasi  matematis  setelahnya. Jawab ini diberikan oleh
𝜃 𝑖 = 2 ∙ tan −1 ( 𝑦𝑖+𝜅√𝑥𝑖 2+𝑦 𝑖 2−𝐾 𝑖 2 𝐾𝑖+𝑥𝑖 ) , (6)
untuk i =  1;  2;  3,  dengan κ menyatakan  indeks cabang untuk setiap nilai sambungan aktif θ i yang bernilai  ±1.  Indeks  cabang  setiap  sudut sambungan aktif θ i memiliki dua nilai yang akan menentukan  modus  rakitan  ( assembly  modes ) manipulator  ini.  Dengan  demikian,  manipulator ini memiliki delapan buah modus rakitan.

## 3.3. Kinematika Langsung
Penyelesaian permasalahan kinematika langsung dapat ditentukan berdasarkan persamaan (4).  Untuk  awalnya,  persamaan  (4)  dapat  ditulis ulang dan diekspansikan ke dalam bentuk
𝑥 2 + 𝑦 2 + 2𝐸 𝑖𝑥 𝑥 + 2𝐸 𝑖𝑦 𝑦 + 𝐸 𝑖0 = 0 , (7)
dengan 𝐸 𝑖𝑥 = 𝑟 𝑃 · c(𝜑 + 𝛾 𝑖 ) − 𝑟 𝐵 ⋅ cγ 𝑖 − 𝑎 ⋅ cθ 𝑖 , 𝐸 𝑖𝑦 = 𝑟 𝑃 · s(𝜑 + 𝛾 𝑖 ) − 𝑟 𝐵 ⋅ s𝛾 𝑖 − 𝑎 ⋅ sθ 𝑖 , dan 𝐸 𝑖0 = 𝐸 𝑖𝑥 2 + 𝐸 𝑖𝑦 2 − 𝑏 2 , untuk i = 1; 2; 3.
Dengan  mengurangi  persamaan  (7)  untuk i =  1  dengan i =  2  dan  3  masing-masingnya diperoleh
𝐸 12𝑥 𝑥 + 𝐸 12𝑦 𝑦 + 𝐸 120 = 0 , (8)
𝐸 13𝑥 𝑥 + 𝐸 13𝑦 𝑦 + 𝐸 130 = 0 , (9)
dengan 𝐸 120 = 𝐸 10 − 𝐸 20 , 𝐸 130 = 𝐸 10 − 𝐸 30 , 𝐸 12𝑥 = 2(𝐸 1𝑥 − 𝐸 2𝑥 ) , 𝐸 12𝑦 = 2(𝐸 1𝑦 − 𝐸 2𝑦 ) , 𝐸 13𝑥 = 2(𝐸 1𝑥 − 𝐸 3𝑥 ) , dan 𝐸 13𝑦 = 2(𝐸 1𝑦 − 𝐸 3𝑦 ) . Selanjutnya, melalui persamaan (8) dan (9) dapat ditentukan  jawab  untuk x dan y masing- masingnya  yang  dinyatakan  secara  matematis sebagai
𝑥 = 𝐹 𝑥 𝐹 𝑥𝑦 ⁄ , (10)
𝑦 = 𝐹 𝑦 𝐹 𝑥𝑦 ⁄ , (11)
dengan 𝐹 𝑥 = 𝐸 130 𝐸 12𝑦 − 𝐸 120 𝐸 13𝑦 , 𝐹 𝑦 = 𝐸 120 𝐸 13𝑥 − 𝐸 130 𝐸 12𝑥 ,
dan 𝐹 𝑥𝑦 = 𝐸 12𝑥 𝐸 13𝑦 − 𝐸 13𝑥 𝐸 12𝑦 .
Selanjutnya, dengan mensubstitusikan persamaan (10) dan (11) ke dalam persamaan (7) untuk i =  1  dapat  diperoleh  hubungan  secara matematis yaitu
𝐹 𝑥 2 + 𝐹 𝑦 2 + 2(𝐸 1𝑥 𝐹 𝑥 + 𝐸 1𝑦 𝐹 𝑦 )𝐹 𝑥𝑦 + 𝐸 10 𝐹 𝑥𝑦 2 = 0 . (12)
Koefisien E 1 x , E 1 y , E 10 , F x , F y ,  dan F xy pada persamaan  (12)  merupakan  fungsi φ .  Dengan memanfaatkan  hubungan  tangen  setengah  sudut untuk φ
c𝜑 = 1−𝜏2 1+𝜏2 ;  s𝜑 = 2𝜏 1+𝜏2 ;  𝜏 = tan 𝜑 2
dapat  dituliskan  persamaan  (12)  ke  dalam  suatu polinom berderajat 12 dalam variabel bebas τ . Polinom ini dapat dituliskan secara matematis sebagai
∑ 𝐺 𝑘 𝜏 𝑘 12 𝑘=0 = 0 , (13)
dengan G k mengandung koefisien E 1 x , E 1 y , E 10 , F x , F y ,  dan F xy .  Melalui  persamaan  (13)  dapat diketahui  bahwa  polinom  ini  memiliki  12  buah akar,  dengan  hanya  2  akar  saja  yang  ril. Sedangkan  sisanya  berupa  akar  kompleks  dan konyugat. Kemudian, untuk dua akar ril ini dapat
ditentukan  sudut  orientasi platform φ dan  posisi titik P di platform .  Derajat  polinom  pada persamaan  (13)  ini  lebih  tinggi  dibandingkan dengan derajat yang dinyatakan oleh Tsai [4] dan Gosselin [3] masing-masingnya 8 dan 6.
3.4. Implementasi  Jawab  Kinematika  Langsung Melalui Open Source CAS : SymPy
Langkah  penyelesaian  kinematika  langsung yang  dinyatakan  dari  persamaan  (7)  hingga  (13) dapat ditransfer ke dalam kode python. Tentunya, pemanfaatan  pustaka  SymPy  ditujukan  untuk memudahkan  proses  komputasi  simbolik  untuk menyelesaikan  aljabar  dan  akar-akar  polinom. Secara  garis  besar  terdapat  tujuh  langkah  untuk memperoleh jawab kinematika langsung manipulator  paralel  fungsi  yang  diprogram dengan bahasa pemograman python.
Selanjutnya, fungsi ini dibangun dengan nama exact_solution_dkp_3rrr_ppm . Argumen masukan  untuk  fungsi  ini  berupa  nilai  numerik yang terdiri atas nilai sudut input pada sambungan aktif θ i ( i =  1,  2,  3),  konstanta  kinematik manipulator  ( r B , a , b , r P )  yang  diberikan  oleh
Tabel 1,
dan nilai sudut γ i ( i = 1, 2, 3). Tujuh langkah ini dapat dinyatakan ke  dalam pseudocode yang  dinyatakan  oleh Gambar 2.
1 Fungsi exact_solution_dkp_3rrr_ppm( θ 1 , θ 2 , θ 3 , r B , a , b , r P , γ 1 , γ 2 , γ 3 ):
2 Konstruksi persamaan posisi (7) 3 Bentuk persamaan (8) dan (9) 4 Selesaikan untuk x dan y , (10) dan (11)
5
Substitusi  hasil  pada  baris  ke-4  ke  dalam persamaan (7) untuk i = 1 6 Bentuk polinom pada persamaan (13)
7
Selesaikan polinom untuk τ 8 Dapatkan jawab untuk x , y , dan φ
Gambar 2. Tujuh langkah penyelesaian permasalahan kinematika langsung manipulator paralel bidang 3-RRR secara simbolik-numerik.
Dengan demikian, fungsi ini dapat digunakan untuk mengevaluasi berbagai posisi dan orientasi platform . Untuk itu, evaluasi posisi dan orientasi platform akan ditentukan berdasarkan sudut input θ 1 , θ 2 ,  dan θ 3 yang  nilainya  secara  berurut  yaitu 125°,  245°,  dan  50°.  Mengacu  pada  sudut  input sambungan  aktif  ini  diperoleh  sebuah  polinom berderajat 12 yang dinyatakan sebagai berikut
−93071.78 ∙ 𝜏 12 +  253982.12 ∙ 𝜏 11 − 442900.57 ∙ 𝜏 10 +  596768.57 ∙ 𝜏 9 − 572899.97 ∙ 𝜏 8 +  454294.56 ∙ 𝜏 7 − 255408.85 ∙ 𝜏 6 +  116799.86 ∙ 𝜏 5 − 30323.83 ∙ 𝜏 4 +  4412.88 ∙ 𝜏 3 −  2306.54 ∙ 𝜏 2 −  878.86 ∙ 𝜏  +  292.72 = 0 .
Akar-akar polinom berderajat 12 diberikan oleh
𝜏 1 = −0.282073 𝜏 2 = 1.245351 𝜏 3 = 1.710842 × 10 −15 −  𝑖 𝜏 4 = 1.710842 × 10 −15 +  𝑖 𝜏 5 = 0.198933  −  0.457878𝑖 𝜏 6 = 0.198933  +  0.457878𝑖 𝜏 7 = 0.223870  −  0.513461𝑖 𝜏 8 = 0.223870  +  0.513461𝑖 𝜏 9 = 0.223870  −  0.513461𝑖 𝜏 10 = 0.223870  +  0.513461𝑖 𝜏 11 = 0.236130 −  0.556019𝑖 𝜏 12 = 0.236130 −  0.556019𝑖
Di  sini  terdapat  dua  akar-akar  ril  yang  akan digunakan untuk menentukan posisi dan orientasi platform yang diberikan oleh Tabel 2. Dua akar- akar ril ini konsisten dengan hasil yang diperoleh oleh  Dastjerdi,  dkk  [7]  melalui  indeks  geometri DCI.

## Tabel 2.
Jawab kinematika langsung manipulator paralel bidang 3-
RRR berdasarkan nilai numerik Tabel 1 dan nilai sudut input sambungan yang diaktuasi. Posisi dan orientasi Jawab pertama Jawab kedua x (mm) -51.6273 11.7180 y (mm) 119.9897 84.7536 φ (°) -31.5047 102.4720
Akhirnya,  visualisasi  jawab  kinematika langsung  manipulator  paralel  3-RRR  yang diberikan oleh Tabel 2 ditampilkan dalam Gambar 3 dan 4 masing-masingnya untuk jawab pertama dan jawab kedua.
Gambar 3. Posisi dan orientasi manipulator paralel bidang 3-RRR berdasarkan jawab pertama Tabel 2.
Gambar 4. Posisi dan orientasi manipulator paralel bidang 3-RRR berdasarkan jawab pertama Tabel 2.

## 4. Kesimpulan
Penerapan  penentuan  jawab  kinematika langsung  manipulator  paralel  bidang  3-RRR menggunakan pendekatan simbolik-numerik secara  eksak  telah  dilakukan.  Pendekatan simbolik-numerik  ini  dituangkan  dari  prosedur jawab  eksak  secara  ekplisit  matematis  ke  dalam kode  python  dengan  memanfaatkan  pustaka SymPy.  Secara  umum,  algoritma  yang  berbasis penyelesaian simbolik manipulator paralel bidang ini dapat mengindentifikasi dua akar ril. Dua akar ril  ini  berkorelasi  dengan  dua  pasang  jawab kinematika  langsung  manipulator  yang  juga ditampilkan secara langsung visualisasi posisi dan orientasinya.  Untuk  mendatangnya,  penentuan jawab  kinematika  langsung  dengan  pendekatan simbolik-numerik pada manipulator paralel ruang dapat diimplementasikan.

## Daftar Pustaka
[1] Patel YD, George PM. Parallel Manipulators  Applications—A  Survey. Mod Mech Eng 2012; 02: 57–64. [2] Pandilov Z, Vladimir Dukovski. Comparison of the Characteristics Between Serial and Parallel Robots. Acta Teh  Corviniensis  -  Bull  Eng 2014;  VII: 143–160. [3] Gosselin CM, Jaouad Sefrioui. Polynomial solutions for direct
kinematics  problem  of  planar  three- degree-of-freedom  parallel  manipulators. In: Fifth  International  Conference  on Advanced Robotics ’Robots in Unstructured  Environments .  Pisa,  Italy,
1991, pp. 1124–1129. [4] Tsai  L-W. Robot  Analysis  -  The
Mechanics  of  Serial  and  Parallel
Manipulators . New York: John Wiley &
Sons, Inc., 1999.
[5] Merlet  JP.  Direct  kinematics  of  planar parallel  manipulators. Proc  -  IEEE  Int Conf Robot Autom 1996; 4: 3744–3749.
[6] Naderi  D,  Tale-Masouleh  M,  Varshovi- Jaghargh  P.  Gröbner  basis  and  resultant method for the forward displacement of 3- DoF  planar  parallel  manipulators  in seven-dimensional kinematic space. Robotica 2016; 34: 2610–2628. [7] Amir Hashemi Dastjerdi, Maryam Valipour,  Tale  Masouleh  M,  et  al.  A General Geometric Index for Solving the Forward  Kinematics  of  Planar  Parallel Manipulators. In: 2021 9th RSI
International Conference on Robotics and Mechatronics  (ICRoM) .  2021.  Epub ahead of
print
2021. DOI:
10.1109/ICRoM54204.2021.9663489.
[8] Dang  XZ,  Zhou  LS,  Liao  LP,  et  al.
Modelling  and  simulation  of  forward kinematics  for  planar  3-DOF  parallel robot  based  on  simulink. Appl  Mech
Mater 2013; 397–400: 1552–1557. [9] Bidokhti HS, Enferadi J. Direct
kinematics  solution  of  3-RRR  robot  by using  two  different  artificial  neural networks. Int  Conf  Robot  Mechatronics, ICROM 2015 2015; 606–611.
[10] Sayed  AS,  Ahmad  Taher  Azar,  Ibrahim ZF, et al. Deep Learning Based Kinematic Modeling of 3-RRR Parallel Manipulator.
In: Proceedings  of  the  International Conference on Artificial Intelligence and Computer  Vision  (AICV2020) .  2020,  pp. 308–321.
[11] Meurer  A,  Smith  CP,  Paprocki  M,  et  al. SymPy:  Symbolic  computing  in  python. PeerJ Comput Sci 2017; 2017: 1–27.