JTERA (Jurnal Teknologi Rekayasa), Vol. 7, No. 2, Desember 2022, Hal. 295-300 Terakreditasi “ Peringkat 3” oleh Kemenristek/BRIN, Nomor SK: 85/M/KPT/2020 DOI: 10.31544/jtera.v7.i2.2022.295-300
p-ISSN 2548-737X e-ISSN 2548-8678
Diterima: 21 September 2022; Direvisi: 22 November 2022; Disetujui: 12 Desember 2022 JTERA, Vol. 7, No. 2, Desember 2022

## Visual Servoing pada Ball-on-Plate dengan Kendali PID dan Filter Kalman
Martin # , Deni Ramdani, Yana Sudarsa, Feni Isdaryani Jurusan Teknik Elektro, Politeknik Negeri Bandung Jl. Gegerkalong Hilir, Ciwaruga, Kec. Parongpong, Kabupaten Bandung Barat, Jawa Barat 40559, Indonesia
# martin@polban.ac.id

## Abstrak
Ball-on-plate merupakan  sebuah  sistem  yang  dapat  menyeimbangkan  sebuah  bola  di  atas  papan  datar  pada  titik tertentu. Sistem ini merupakan bagian dari ilmu visual servo control yang menggunakan sensor kamera sebagai umpan balik sistem. Penelitian ini bertujuan menggunakan kendali PID untuk menyeimbangkan bola di atas papan dan sensor kamera  dengan  filter  Kalman  untuk  mendeteksi  objek.  Proses  membaca  gerakan  bola  menggunakan  algoritma pendeteksi objek berdasarkan filter Kalman, kemudian pendeteksian objek menghasilkan koordinat kartesian X dan Y. Koordinat  tersebut  merupakan  umpan  balik  sistem  pada  kendali ball-on-plate .  Sistem  ini  memiliki  masukan  berupa koordinat X dan Y, masukan tersebut akan dibandingkan dengan umpan balik sehingga  didapatkan error posisi bola. Kendali  PID  mendapatkan  masukan  berupa  nilai error posisi,  kemudian  akan  menghasilkan  nilai  PWM  untuk menggerakan servo sumbu X dan sumbu Y. Seluruh proses pendeteksian dan pengendalian dilakukan dengan embedded system menggunakan minicomputer .  Hasil  penelitian  menunjukkan  filter  Kalman  dapat  bekerja  dengan  baik  dengan parameter Q_frame sebesar  0,001, Q_rate  sebesar 0,003,  dan  R  sebesar  0,001.  Sistem  kendali  PID  dapat mengendalikan posisi bola dengan membutuhkan waktu 21,31 detik untuk mencapai setpoint.
Kata kunci: ball on plate , filter Kalman, kendali PID

## Abstract
Ball-on-plate is a system that can balance a ball on a flat board at a certain point. This system is part of the visual science  of  servo  control  which  uses  the  camera  sensor  as  system  feedback.  This  study  aims  to  use  PID  control  to balance a ball on a board and a camera sensor with a Kalman filter to detect objects. The process of reading the ball's movement  uses  an  object  detection  algorithm  based  on  the  Kalman  filter,  then  object  detection  produces  X  and  Y cartesian coordinates. These coordinates are system feedback to the ball-on-plate control. This system has input in the form of X and Y coordinates, this input will be compared with the feedback so that the ball position error is obtained. The PID control gets input in the form of a position error value, then generates a PWM value to drive the X-axis and Y- axis servos. The entire detection and control process is carried out with an embedded system using a minicomputer. The results show that the  Kalman filter can work  well with the  parameters Q_frame  of 0.001, Q_rate  of 0.003, and R of 0.001. The PID control system can control the position of the ball in 21.31 seconds to reach the setpoint.
Keywords: ball on plate, Kalman filter, PID control

## I. P ENDAHULUAN
Sistem kendali posisi bola merupakan salah satu persoalan  paling  menantang  dalam  sistem  kendali. Ball-on-plate merupakan  sebuah  sistem  yang bertujuan memposisikan bola di atas papan, dimana bola  tersebut  dapat  memiliki  lintasan  tertentu  atau sebagainya  sesuai  dengan  nilai  acuan  yang  telah diberikan.  Adapun  Knuplez,  et  al  [1]  menjelaskan bahwa sistem ball-on-plate adalah sistem elektromekanis  dua  dimensi  yang  ditujukan  untuk
mempelajari  sistem  dinamik  dan  eksperimen laboratorium  dengan  proses  kontrol  yang  berbeda berdasarkan  teori  kontrol  klasik  dan  modern. Masalah  dari  sistem  ini  yaitu  papan  yang pergerakannya  diatur  menggunakan  2  buah  motor servo  yang  masing-masing  memiliki  1  derajat kebebasan  sendiri  (DoF). Ball-on-plate merupakan sistem  yang  memiliki  2  DoF  yang  dapat  diberikan kendali  klasik  ataupun  modern.  Tujuan ball-on- plate adalah  untuk  menempatkan  bola  di  posisi koordinat  x  dan  y  yang  diinginkan.  Sistem  ini
mengontrol  kestabilan  papan  agar  bola  selalu diposisi  yang  telah  ditentukan.    Horowitz  [2] menjelaskan  bahwa  pengendalian  beberapa  DoF merupakan  sistem  kendali  lingkar  tertutup  yang dapat diatur secara terpisah.
Kendali PID merupakan salah satu kendali yang paling  banyak  digunakan  dalam  pengaturan  di industri.  Kendali  PID  membutuhkan  umpan  balik dari sensor untuk mendapatkan kondisi terbaru dari sistem  yang  sedang  dikendalikan.  Pengendali  PID disusun oleh pengendali tipe proporsional, integral, dan  derivatif.  Kendali  PID  dapat  diterapkan  pada berbagai  jenis  plant  yang  ingin  dikendalikan  tanpa membutuhkan  pemodelan  dari  sistem  yang  ingin dikendalikan.  Pemodelan  sistem  dapat  dilakukan dengan metode „black box‟. Proportional gain (Kp), integral  time (Ti),  dan derivative  time (Td)  dari kendali  PID  didapatkan  dengan  menggunakan metode  penalaan  Ziegler-Nichols  [3].  Salah  satu penerapan kendali PID dengan Ziegler-Nichols oleh [4], penerapan yang dilakukan yaitu mengendalikan kecepatan  motor  DC  menggunakan  kendali  PID dengan metode penalaan Ziegler-Nichols. Penerapan  kendali  PID  lainnya  dilakukan  oleh Mituhiko Araki, et al [5] yang melakukan penerapan pada  pengendalian  2  DOF  menggunakan  kendali PID dengan membandingkan respon PID dan I-PD.
Sensor  merupakan  alat  yang  dapat  mengubah besaran  fisik  ke  besaran  listrik,  sensor  dapat difungsikan sebagai umpan balik suatu sistem yang dikendalikan.  Sensor  juga  merupakan  salah  satu komponen yang sangat dibutuhkan dalam sistem ini, karena arah gerakan papan sangat dipengaruhi oleh pembacaan  sensor.  Salah  satu  sensor  yang  dapat digunakan  untuk  mendeteksi  posisi  bola  di  atas papan secara tepat yaitu sensor visual menggunakan kamera. Pendeteksian objek dapat dilakukan dengan menggunakan berbagai macam algoritma pendeteksi objek. Namun, salah satu algoritma pendeteksi yang paling  sederhana  yaitu  pendeteksian  berdasarkan warna  Red,  Green,  dan  Blue  (RGB).  Liu  et  al.  [6] melakukan  penelitian  untuk  mendeteksi  pergeran objek berdasarkan model warna RGB. Penelitian ini menjelaskan  bahwa  setiap  objek  memiliki  kriteria warna  RGB  yang  berbeda,  sehingga  hal  tersebut memudahkan  untuk  mendeteksi  pergerakan  sebuah objek  pada  bentu  dengan  jenis  atau  model  warna RGB tertentu.
M. Ho, et al melakukan penelitian tentang visual servoing  tracking pada  ball-on-plate  menggunakan FPGA  [7].  Penelitian  yang  dilakukan  oleh  [8] menjelaskan  sistem  ball-on-plate  untuk  modul pembelajaran  kampus,  tentang modelling ,  dan sistem kendali yang digunakan.
Penelitian  ini  bertujuan  merancang  sistem  yang tertanam  dengan  mini  komputer  Raspberry  Pi.
Sistem ball-on-plate dapat melakukan pengendalian posisi  bola  secara  otomatis.  Sensor  kamera digunakan  dengan  menggunakan  filter  Kalman untuk  mendeteksi  bola  dan  kendali  PID  untuk mengatur posisi bola dengan menggerakan aktuator motor servo sumbu x dan y.

## II. M ETODE P ENELITIAN
Penelitian  ini  memiliki  2  landasan  teori  utama yang  dijadikan  acuan  dalam  pelaksanaan, perancangan,  pengujian  dan  analisis  akhir.  Teori pertama  yaitu  deteksi  objek  dengan  filter  Kalman dan teori kedua yaitu kendali PID.

## A. Filter Kalman
Filter merupakan metode yang digunakan untuk menghilangkan atau mengurangi sinyal white noise atau noise yang  dapat  mempengaruhi  kesalahan pada pengukuran [9]. Filter Kalman bekerja dengan memprediksi  pengukuran  berdasarkan  pengukuran. Filter  Kalman  dalam  prosesya  akan  mengetahui measurement noise dan process noise [10]. Gambar 1  menampilkan  proses  filter  Kalman  secara keseluruhan.
Proses  perancangan  filter  Kalman  dibagi menjadi dua tahap utama yaitu prediksi dan koreksi. Tahap  prediksi  berperan  sebagai  prediksi  atau estimasi  dari current  state dan covariance  error untuk  waktu  berikutnya.  Persamaan  estimasi  dapat dilihat pada persamaan (1) dan (2) berikut.
1 1 . 1 . k k k X k F X k B u      (1)
1 1 . 1. T
k k k P k F P k F Q      (2)
Persamaan  (1)  merupakan  persamaan  untuk memprediksi state berikutnya, sedangkan persamaan  (2)  merupakan  persamaan  untuk memprediksi error  covariance berikutnya.  X k |k-1 adalah sinyal prediksi pada waktu k yang dihasilkan oleh  filter  Kalman.  Variabel  P k |k-1  merupakan matriks  hasil  proses  kovarians.  Persamaan  pada
keadaan prediksi digunakan untuk mengetahui atau memprediksi  keadaan  saat  ini  dengan  kovarian waktu  k.  filter  Kalman  akan  memperkirakan  status saat  ini  berdasarkan  hasil  data-data  pengukuran sebelumnya.  P  menurut  persamaan  (2)  merupakan estimation state yang berfungsi untuk memprediksi berapa data yang dapat merupakan hasil tanpa noise . Tahap  koreksi  atau update pada  filter  Kalman memiliki  tujuan  untuk  umpan  balik  untuk system . Tahap ini memiliki persamaan sebagai berikut.
  1 1. . . 1. T T k k k
K P k H H P k H R      (3)   1 1 . 1 k k k k P k
I K H P k      (4)
Persamaan  (3)  memiliki  variabel  K k yang merupakan penguat Kalman yang digunakan dalam kalibrasi filter Kalman. Variabel tersebut digunakan sebagai  penentu  dari  performa  filter  Kalman. Variabel  R  adalah  standar  deviasi  pada  persamaan dari state X k . Persamaan  (4) merupakan persamaan untuk  memperbaharui  nilai error  covariance . Variabel  Q  dan  R  merupakan  variabel  utama  yang dapat  mempengaruhi  hasil  dari  filter  Kalman  pada persamaan  (1)  sampai  (4).  Kedua  variabel  tersebut dapat diatur sehingga mendapatkan keadaan optimal yang dapat memfilter noise dari pengukuran.

## B. Kendali PID
Kendali  PID  merupakan  sebuah  kendali  untuk menentukan  presisi  suatu  sistem  instrumentasi dengan  karakteristik  dengan  adanya feedback pada sistem  tersebut.  Komponen  kendali  PID  ini  terdiri dari  tiga  jenis  yaitu  proposional,  integral  dan derivative .  Ketiganya  dapat  dipakai  bersamaan maupun sendiri-sendiri tergantung dari respon yang kita  inginkan  terhadap  suatu plant ,  hal  tersebut dapat dilihat pada Gambar 2.
Berdasarkan karakteristik pengendali ini, pengendali PID umumnya dipakai untuk mempercepat respon awal suatu sistem, tetapi tidak
Gambar 2. Diagram blok sistem kendali PID
memperkecil  kesalahan  pada  keadaan  tunaknya. Kerja  pengendali  diferensial  hanyalah  efektif  pada lingkup yang sempit, yaitu pada periode peralihan. Oleh  sebab  itu  pengontrol  diferensial  tidak  pernah digunakan tanpa ada kontroler lainnya.
0 ( ) ( ) ( ) ( ) t p i d t u t K e t K e t dt K e t     (5)
Persamaan  (5)  merupakan  persamaan  sinyal kendali dari pengendali PID. Pengendali PID dapat memperbaiki  sekaligus  menghilangkan error steady-state serta  memiliki  sifat  yang  dapat digunakan  untuk  memperbaiki  respon  transien dengan memprediksi error yang akan terjadi.

## C. Ziegler Nichols Tipe 2 (ZN2)
Proses penentuan nilai parameter Kp, Ki dan Kd dapat  dilakukan  dengan  menggunakan  tuning manual  ataupun  menggunakan  metode  tertentu dengan  cara  melakukan  pendekatan  matematis sehingga  didapatkan  nilai  parameter  yang  terbaik. Proses  tuning  parameter  PID  yang  terbaik  dapat dilakukan  oleh  operator  atau  peneliti  dengan berbagai  macam  cara  untuk  menghasilkan  nilai parameter  terbaik  [11].  Dalam  [12]  mengusulkan desain  untuk  pengontrol  PID  dengan  menetapkan nilai  parameter  yang  sesuai  dengan  hasil eksperimen  dari  sistem  yang  dilakukan  oleh operator.  Proses  penentuan  nilai  parameter  PID dapat  dilakukan  dengan  menggunakan  metode Ziegler-Nichols  [13],  bentuk  S  dari  kurva merupakan  karakteristik  dari  sistem  dan  dapat didekati dengan respon step dari suatu plant dengan fungsi transfer. Penelitian ini menggunakan ZN tipe 2  untuk  mendapatkan  parameter  pengendali  PID. metode  ZN  ke-2  hanya  menggunakan  pengendali proporsional  dengan  menaikkan  nilai  Kp  dari  0 hingga  nilai  kritis,  sehingga  diperoleh  keluaran yang  terus-menerus  berosilasi  dengan  amplitudo yang  sama.  Nilai  kritis  Kp  ini  disebut  sebagai ultimated gain (Ku). Tanggapan keluaran untuk Kp sebesar 1, Kp antara 1 dan Ku, dan Kp lebih besar dari Ku yang dihasilkan dapat dilihat pada Gambar 3.
Gambar 3. Karakteristik respon menggunakan kendali P
Gambar  3  poin  (c)  menampilkan  keluaran  yang berosilasi  secara  kontinyu  sehingga  nilai  Kp merupakan nilai Kcr atau nilai penguatan pada saat keadaan  kritikal.  Nilai  Kcr,  Pcr,  diperoleh  setelah keluaran  sistem  mencapai  kondisi  yang  terus menerus  berosilasi.  Nilai  Kcr  dan  Pcr  digunakan untuk  menentukan  konstanta-konstanta  pengendali sesuai dengan tetapan empiris Ziegler-Nichols pada Tabel 1.

## D. Perancangan Visual Servoing Control
Perancangan  pada  penelitian visual  servoing control ini akan menentukan nilai matriks Q dan R untuk  filter  Kalman,  dan  menentukan  nilai parameter  PID.  Parameter  filter  Kalman  dan  PID yang  telah  didapat  akan  digunakan  dan  diuji  pada penelitian  ini.  Data  hasil  pengujian  akan  dianalisa dari  respon  transien  keluaran  system  yang didapatkan. Perancangan penelitian ini dapat dilihat pada Gambar 4 dan Gambar 5.
Gambar  5  merupakan  proses visual  servoing control ,  input  dan  image  processing  menggunakan filter  Kalman  untuk  mendapatkan  koordinat  X  dan Y akan dilakukan pada mini komputer Raspberry Pi, dan  hasil  koordinat  X  dan  Y  akan  dikirimkan  ke Arduino melalui komunikasi serial dan pengendalian  kemiringan  papan  menggunakan motor  servo  menggunakan  2  motor  servo. Pengendalian  dilakukan  menggunakan  pengendali PID dengan diagram blok seperti Gambar 6.
Tabel 1. Parameter ZN2 Kendali Kp Ti Td P 0,5Kcr ∞ 0 PI 0,45Kcr (1/1,2)*Pcr 0 PID 0,6Kcr 0,5Pcr 0,125Pcr
Gambar 4. Diagram alir proses perancangan penelitian

## III. H ASIL DAN P EMBAHASAN

## A. Tunning  Parameter  Matriks  Q  dan  R  Filter Kalman
Matriks  variabel  Q  dan  R  merupakan  variabel yang sangat berpengaruh terhadap kehandalan filter Kalman  dalam  menghilangkan  noise  selama pengukuran.  Matriks  Q  dan  R  di tunning menggunakan  Teknik  penalaan  dengan  secara kontinu mengukur data sensor posisi bola 2 sumbu sampai  dengan  didapatkan  nilai  paling  mendekati pembacaan sensor sesungguhnya. Penalaan dilakukan dengan 3 nilai yang berbeda, antara lain pertama  nilai  Qf  =  5,  Qr  =  3,  dan  R  =  0,5,  kedua nilai Qf = 0,03, Qr = 0,05, dan R = 0,03, dan ketiga nilai Qf = 0,001, Qr = 0,003, dan R = 0,001. hasil pengukuran  ketiga  nilai  penalaan  matriks  dapat dilihat Gambar 7, Gambar 8 dan Gambar 9.
Gambar 5. Diagram alir visual servoing control
Gambar 6. Diagram blok kendali visual servoing control
Gambar 7. Qf = 5, Qr = 3, dan R = 0,5
Gambar 8. Qf = 0,03, Qr = 0,05, dan R = 0,03
Gambar 9. Qf = 0,001, Qr = 0,003, dan R = 0,001
Pada hasil penalaan variabel Q dan R didapatkan nilai  variabel  yang  optimal  sehingga  dapat menghilangkan noise selama pengukuran yaitu pada nilai  parameter  Qf  =  0,001,  Qr  =  0,003,  dan  R  = 0,001.
B. Pengujian dan Analisa Sistem Keseluruhan
Parameter PID yang telah dirancang pada bagian metode  penelitian  bagian  C  sebelumnya  memiliki nilai Kp, Ti dan Td sebesar 0,8, 0,87, dan 0,5 untuk sumbu X dan 0,735, 0,95, dan 0,6 untuk sumbu Y. Pengujian  keseluruhan  system  dilakukan  dengan menggabungkan  hasil  filter  Kalman  sebagai feedback system kemudian  akan  dilakukan pengendalian  menggunakan  PID  dengan  parameter yang  telah  ditentukan  dan  menghasilkan  respon keluaran Gambar 10 dan Gambar 11.
Gambar 10. Respon sumbu X

## Gambar 11. Respon sumbu Y
Analisa  pada  respon  transien  dilakukan  dengan menghitung  parameter rise  time , settling  time , overshoot ,  dan error  steady  state .  Respon  keluaran pada  sumbu  X  sesuai  Gambar  10  didapatkan  nilai rise  time sebesar  0,65  detik, %overshoot sebesar 16,13%, settling  time 20,05  detik  dan error  steady state sebesar  0%,  sedangkan  respon  keluaran  pada sumbu Y sesuai gambar 11 didapatkan nilai rise time sebesar  3,1  detik, %overshoot sebesar  13,4%, settling time 12 detik dan error steady state sebesar 0%. Sistem dapat membuat bola pada posisi SV yang diinginkan  dalam  waktu  rata-rata  21,30  detik  untuk pengambilan 5 data.

## IV. K ESIMPULAN
Kesimpulan  pada  penelitian  ini  yaitu visual servoing  control dapat  mengendalikan  posisi  bola pada  posisi  yang  diinginkan  dalam  waktu  rata-rata 21,30 detik. Respon transien pada keluaran memiliki nilai parameter analisa seperti rise time sebesar 0,65 detik  untuk  sumbu  X  dan  3,1  untuk  sumbu  Y, overshoot sebesar  16,13%  untuk  sumbu  X dan overshoot sebesar  13,4%  untuk  sumbu  Y, settling time 20,05 detik untuk sumbu X dan settling time 12 detik untuk sumbu Y, dan error steady state sebesar 0%  untuk  sumbu  X  dan  Y.  Penelitian  ini  dapat berkembang  lebih  jauh  dengan  menerapkan perbandingan metode yang berbeda untuk menghasilkan  kecepatan  dalam  pengendalian  posisi bola.

## U CAPAN T ERIMA K ASIH
Terima  kasih  pada  Politeknik  Negeri  Bandung yang  telah  memberikan  sumber  dana  Penelitian Mandiri.

## R EFERENSI
[1]  A.  Knuplež,  A.  Chowdhury,  and  R.  Svečko, “Modeling and control design for the  ball and plate system,” Proc. IEEE Int. Conf. Ind. Technol. , vol. 2, pp. 1064–1067, 2003.
[2]  I.  M.  Horowitz, Synthesis  of  Feedback  Systems .
Academic Press, 1963.
[3]  K.  Ogata, Modern  Control  Engineering ,  Fifth.  New Jersey:  Prentice  Hall,  2010.  [Online].  Available: www.pearsonhighered.com
[4]  P. M. Meshram and R. G. Kanojiya, “Tuning of PID controller  using  Ziegler-Nichols  method  for  speed control  of  DC  motor,”  in IEEE-International Conference  On  Advances  In  Engineering,  Science And  Management  (ICAESM  -2012) ,  2012, pp.  117– 122.
[5]  M.  Araki  and  H.  Taguchi,  “Two-degree-of-freedom PID controllers,” Int. J. Control. Autom. Syst. , vol. 1, no. 4, pp. 401–411, 2003.
[6]  C. Y. Liu, D. Z. Hou, and L. Chang-An, “Study on moving  object  detection  based  on  RGB  color model,” Adv.  Mater.  Res. ,  vol.  710,  pp.  700–703, 2013.
[7]  M. T. Ho, Y. Rizal, and L. M. Chu, “Visual servoing tracking  control  of  a  ball  and  plate  system:  Design, implementation and experimental validation,” Int. J. Adv. Robot. Syst. , vol. 10, 2013.
[8]  C.  Parga,  W.  Yu,  and  X.  Li,  “A  low-cost  ball  and plate system for advanced control education,” Int. J. Electr.  Eng.  Educ. ,  vol.  52,  no.  4,  pp.  370–384, 2015.
[9]  Martin,  D.  I.  H.  Putri,  Riyanto,  and  C.  Machbub, “Gait  Controllers  on  Humanoid  Robot  Using Kalman  Filter  and  PD  Controller,”  in 2018  15th International  Conference  on  Control,  Automation, Robotics and Vision (ICARCV) , Nov. 2018, pp. 36– 41.
[10]  Aripin,  Riyanto,  Martin,  D.  I.  Hadi  Putri,  and  C. Machbub,  “Maintaining  Trajectory  of  CoM  for Stable  Locomotion  of  Humanoid  Robot  Using Kalman Filter and Fuzzy Logic Controller,” in 2019 IEEE  International  Conference  on  Signals  and Systems (ICSigSys) , Jul. 2019, pp. 97–102.
[11]  G. F. Franklin, J. D. Powell, and A. Emami-Naeini, Feedback  Control  of  Dynamic  Systems ,  Eight.  New York: Pearson, 2018. [Online]. Available: www.pearsonhighered.com
[12]  A.  Callender,  D.  R.  Hartree,  and  A.  Porter,  “Time- lag in a control system,” Philosohical Trans. R. Soc. A Math. Phys. Eng. Sci. , vol. 235, no. 756, pp. 415– 444, 1936.
[13]  J.  G.  Ziegler  and  N.  B.  Nichols,  “Process  Lags  in Automatic Control Circuits,” Trans. ASME , vol. 65, no. 6, pp. 433–444, 1943.