RANCANG SISTEM
KESEIMBANGAN BALL AND BEAM BERBASIS
PID
Nisrina Dyan Oktavianaa, Viviean Anneesab , Andrizal,S.T.,M.T.c , Dedi
Kurniadi,S.ST.,M.Sc.d
D4 Elektronika Industri, Teknik
Elektro, Politeknik Negeri Padang
Abstrak
Sistem ball and beam merupakan salah satu contoh klasik mengenai
keseimbangan, dimana sebuah bola diletakkan pada sebuah balok, bola akan sulit
menuju keadaan seimbang apabila tanpa kontroler. Penelitian ini digunakan untuk
mendesain sistem kendali yang dapat menyeimbangkan ball and beam. Sistem ini menggunakan input dari sensor ultrasonic. Output
dari sensor tersebut berupa jarak atau posisi yang dikirim ke Arduino UNO.
Jarak atau posisi yang didapat dibandingkan dengan nilai setpoin yang diberikan
sebesar 16 dengan eror bernilai 0. Nilai selisih dari setpoint dan jarak keluaran sistem
dikontrol menggunakan kendali PID. Proses kendali ini diprogram pada software Arduino IDE yang hasilnya
dikirim ke motor servo untuk mengatur kecepatan dan arah putaran
motor servo untuk
menyeimbangkan sistem ball and beam. Dari hasil
pengujian diperoleh nilai parameter kontroler PID yang akan digunakan dari tunning nilai Kcr dengan metode Ziegler-Nichols adalah Kp = 0.15, Ki = 0.1 dan Kd = 0.01 dapat mengatasi
keseimbangan pada sistem ball and beam mendekati nilai setpoint.
Kata Kunci: Ball And Beam, PID
Abstract
Ball
and beam system
is one of the classic
excamples of balance,
in which a ball is placed on a beam, the ball will be difficult to balance
if without controller. This research
is used to design control
system that can keep balancing of ball and beam system.
This system uses input ultrasonic sensor. The output
is distance or position
then sent to Arduino Uno. Distance or position comparison is given by set point has value 16
and value of erorr 0. Difference between setpoint
and output distance
of control system
use PID controller. The controller run in software of Arduino IDE and the result is sent to servo
motor to control speed and direction of servo motor for balancing ball and beam system.
Testing is given paramater values of PID controller will be used tunning Kcr value with Ziegler-Nichols method is Kp = 0.15, Ki = 0.1 and Kd = 0.01 can keep balancing of ball and beam system approach
setpoint.
Keywords: Ball
And Beam, PID
1.
PENDAHULUAN
Menjaga keseimbangan suatu obyek
terhadap obyek lainnya seringkali menjadi salah satu acuan untuk menerapkan system kendali pada aspek
keseimbangan. Dalam sistem kendali, pengendalian keseimbangan suatu sistem
merupakan salah satu hal yang sangat penting khususnya dalam aplikasi yang
berkaitan dengan gerakan seperti yang dijumpai pada aplikasi robotika (Rosalia
H. Subrata, 2015). Kontrol sistem yang tidak stabil sangat penting bagi banyak
masalah kontrol. System kendali keseimbangan ball and beam
dapat dijadikan salah satu media sederhana dalam mempelajari
system kendali.
Ball
and Beam merupakan salah satu contoh klasik mengenai
keseimbangan, dimana sebuah bola diletakkan pada sebuah batang dan nantinya
akan diberikan berbagai macam gangguan (Michael Setiawan, 2012). Pengendali PID
dalam hal ini bertindak untuk menjaga posisi bola agar tetap pada posisi yang setimbang atau yang diinginkan walau diberi berbagai
gangguan. Posisi atau lokasi bola akan selalu diukur dengan menggunakan sensor
ultrasonik yang kemudian akan menggerakkan motor servo agar bola
berada pada titik setimbang yang diinginkan. Maka dari itu
penulis memilih kontrol Proportional
Integral Derivative (PID) sebagai kontroler yang dapat menciptakan kontrol
sesuai dengan yang diharapkan penulis. Penentuan pada metode kontrol PID ini
karena dengan menggunakan PID tersebut keluaran dari sistem dapat menentukan
besarnya kecepatan dan arah putar motor servo yang dapat menjaga kestabilan
sistem yang dibuat dalam menjaga
posisi atau jarak bola yang diinginkan atau
ditentukan.
Pada penelitian ini menggunakan Arduino
uno dan sensor ultrasonic sebagai
inputan yang akan mengendalikan putaran motor servo. Masalah yang didapatkan
pada penelitian ini antara lain ialah merealisasikan kontrol PID pada sistem ball and beam, sehingga sistem ini dapat
tetap mempertahankan posisi atau jarak untuk berada pada titik set point yang ditentukan (diinginkan)
atau dengan kata lain seimbang terhadap permukaan pada bidang datar.
2.
KAJIAN PUSTAKA
Ball and Beam
Ball
and Beam merupakan salah satu contoh klasik mengenai
keseimbangan, dimana sebuah bola diletakkan pada sebuah batang dan nantinya
akan diberikan berbagai macam gangguan. Pengendali PID dalam hal ini bertindak
sebagai pengendali gangguan sehingga posisi bola yang dari awal sudah
ditentukan tidak terganggu oleh berbagai gangguan. Salah satu pengembangan yang dapat kita lihat secara
nyata adalah pada bidang
robotika dimana sistem ball and beam ini
menjadi dasar kesetimbangan dari setiap mekanisme pergerakan robot. Selain
robot tentu masih banyak hal yang dapat kita kembangkan dari sistem ball and beam ini.
Prinsip
kerja ball and beam adalah dengan
menjaga keseimbangan sistem. Untuk menjaga ball and beam ini
seimbang atau mencapai set point, kontroler perlu mengetahui posisi setimbang
bola atau nilai set point yang diinginkan, sehingga kontroler dapat
memerintahkan motor servo bergerak dengan sudut tertentu yang dibutuhkan agar beam menuju keadaan setimbang dan posisi
bola pada nilai set point yang
diinginkan seperti yang terlihat pada Gambar
1.
Gambar 1. Asumsi Ball
And Beam dalam Keadaan Seimbang
Pengukuran posisi atau jarak bola akan
sangat mempengaruhi arah putar motor servo dalam kecepatan tertentu. Nilai inilah yang harus dipertimbangkan sistem kontrol untuk diberikan kepada motor servo agar mengatur
arah putar dan kecepatan motor servo supaya kesetimbangan (mencapai nilai set point) dapat terjadi.
Apabila pengukuran jarak atau posisi bola lebih dari nilai set point yang ditentukan maka motor servo akan berputar searah
jarum jam dengan sudut tertentu agar posisi atau jarak bola menuju pada posisi
setimbangnya atau nilai set point.
Demikian sebaliknya bila kurang dari jarak atau posisi set point yang ditentukan, maka motor servo akan berputar
berlawanan arah jarum jam secara proposional.
Sistem Pengendali PID
Pengendali PID adalah sistem pengendali gabungan dari tiga macam kontroler, yaitu
Kp (Propotional Controller), Ki (Integrall Controller) dan Kd (Derivative Controller) seperti pada
Gambar 2. Dalam pengaplikasianya,
masing-masing pengendali dapat berdiri sendiri atau dapat melakukan
pengkombinasian. Dalam perancangan sistem kontrol PID yang perlu dilakukan
adalah mengatur parameter P, I dan D agar respon sinyal keluaran sistem
terhadap masukan tertentu sebagaimana yang diinginkan
(Royyan, 2015).
Gambar 2.
Kontroller PID
Berikut ini merupakan penjelasan
singkat dari parameter-parameter yang ada pada kontrol PID :
a) Kontrol Proporsional
Kontrol proporsional umumnya dinyatakan dengan sebuah gain tanpa
memberikan efek dinamik kepada kinerja kontroler. Adanya kontroler proporsional ini mengakibatkan sinyal error akan semakin besar sehingga memperbesar kemungkinan
terjadinya overshoot. Namun kontrol
proporsional dapat mengakibatkan keluaran sistem lebih cepat mencapai setpoint. Kontrol proporsional
memperbaiki rise time dan settling time dari sebuah sistem.
b) Kontrol Integral
Kontrol integral digunakan untuk
menghilangkan nilai offset yang
biasanya dihasilkan oleh kontrol proporsional. Namun pemilihan nilai Ki yang
tidak tepat dapat menyebabkan ketidakstabilan sistem. Jika pemilihan nilai Ki
terlalu tinggi maka akan meyebabkan nilai keluaran akan berosilasi. Penambahan
kontrol integral ini juga akan membuat respon dari sistem menjadi lambat. Oleh
sebab itu maka dalam implementasinya kontrol integral dikombinasikan dengan kontrol proporsional.
c) Kontrol Derivative
Keuntungan menggunakan kontrol derivative yaitu dapat merespon
perubahan error aktuator dan dapat
menghasilkan koreksi yang signifikan sebelum magnitude dari error aktuatornya menjadi sangat besar.
Seakan-akan kontrol derivative ini mampu memprediksi error yang akan terjadi sebagai efek dari perhitungan error yang sebelumnya. Karena kontrol
derivative ini bekerja berdasarkan laju perubahan error aktuatornya dan bukan pada error aktuator itu sendiri maka kontrol derivative ini tidak dapat
berdiri sendiri.
Aturan
Ziegler-Nichols Untuk Tuning PID Controllers
Metode tuning Ziegler Nichols dilakukan
secara eksperimen (asumsi model belum diketahui). Berikut Aturan
Ziegler-Nichols dibagi menjadi dua metode yaitu:
a)
Metode Pertama Ziegler-Nichols
Pada metode ini, percobaan dilakukan
dengan menggunakan eksperimen respon plant
dari input unit step. Metode ini berlaku jika respon terhadap inputan step
kurva berbentuk S melengkung seperti yang ditunjukkan dalam Gambar 3.
Gambar 3. Kurva Respon Bentuk S
(Katsuhiko Ogata, 2010)
b)
Metode Kedua Ziegler-Nichols
Pada metode ini, percobaan dilakukan
dengan menggunakan kontroler proporsional saja. Dengan cara memberikan (tunning) nilai Critical gain (Kcr) yang menghasilkan grafik osilasi konsisten.
Kemudian dari nilai Kcr ini didapatkan nilai Critical Period (Pcr) berdasarkan osilasi seperti pada Gambar 4.
Gambar 4. Osilasi Konsisten Dengan Periode Pcr (Katsuhiko
Ogata, 2010)
Tabel 1. Metode Tunning Ziegle Niclhols
Arduino UNO
Arduino UNO merupakan sebuah perangkat
mikrokontroler berbasis ATMega328. Seperti halnya mikrokontroler lain, Arduino
UNO juga memiliki fasilitas dasar dari mikrokontroler.
Gambar 5. Arduino UNO
Seperti yang ditunjukkan pada Gambar 5 Arduino UNO
memiliki 14 pin input/output digital,
dengan 6 diantaranya bisa digunakan sebagai PWM (Pulse With Modulation), 6 pin input
analog, ICSP header, 16 MHz
kristal osilator, port USB dan tombol
reset.
Sensor Ultrasonic
Pada penelitian ini digunakan sensor
ultrasonic jenis PING Parallax yang menggunakan 3 pin yaitu, transmitter
gelombang ultrasonic, receiver gelombang ultrasonic, dan rangkaian control
seperti pada Gambar
6.
Teknik Analisis Data
Analisis data yang diperoleh dalam
penelitian ini bertujuan untuk menjawab permasalahan dalam rangka merumuskan
kesimpulan, seperti dijelaskan pada diagram alir Gambar 8. sebagai berikut:
Gambar 6. Sensor
Ultrasonik PING Parallax
Motor
Servo
Gambar 7. Motor Servo
Motor servo adalah sebuah perangkat atau aktuator putar (motor) yang
dirancang dengan sistem kontrol umpan balik loop tertutup (servo), sehingga
dapat di set-up atau di atur untuk menentukan dan memastikan posisi sudut dari
poros output motor. motor servo merupakan perangkat yang terdiri dari motor DC,
serangkaian gear, rangkaian kontrol dan potensiometer. Serangkaian gear yang
melekat pada poros motor DC akan memperlambat putaran poros dan meningkatkan
torsi motor servo, sedangkan potensiometer dengan perubahan resistansinya saat
motor berputar berfungsi sebagai penentu batas posisi putaran poros motor servo.
Sebagai contoh, lebar pulsa dengan waktu 1,5 ms (mili detik) akan
memutar poros motor servo ke posisi sudut 90⁰. Bila pulsa lebih pendek dari 1,5
ms maka akan berputar ke arah posisi 0⁰ atau ke kiri (berlawanan dengan arah
jarum jam), sedangkan bila pulsa yang diberikan lebih lama dari 1,5 ms maka
poros motor servo akan berputar ke arah posisi 180⁰ atau ke kanan (searah jarum
jam).
1.
METODE PENELITIAN
Pendekatan Penelitian
Penelitian ini untuk mengimplementasikan
kontroler PID pada perancangan sistem keseimbangan ball and beam berbasis Arduino UNO. Pada penelitian ini, akan
dilakukan uji coba kontroler PID dengan nilai parameter berbeda untuk mencari
kontroler PID dengan respon paling mendekati setpoint dari sistem keseimbangan ball and beam menggunakan software
Arduino IDE versi 1.8.5.
Tempat dan Waktu Penelitian
Penelitian dilaksanakan di Laboratorium
Teknik Kendali Jurusan Teknik Elektro Universitas Negeri Surabaya dan waktu
pelaksanaannya dilakukan pada semester ganjil 2017/2018.
Gambar 8. Diagram Alir Langkah-Langkah Penelitian
Data
yang terbaca oleh sensor ultrasonic HCSR04, dibandingkan dengan jarak set point yang diinginkan. Error yang didapat pada perbandingan ini
diolah pada Arduino Uno, untuk melakukan aksi kendali PID pada motor servo
dalam penentuan sudut yang sesuai agar posisi dari jungkat jungkit lurus dan
bola tepat berada di tengah, sesuai set
point.
Gambar 9. Blok Diagram proses Sistem
4.
HASIL DAN PEMBAHASAN
Gambar 10. Bentuk Perancangan Alat
Dalam melakukan perancangan kontroler
PID menggunakan metode Ziegler-Nichols tunning
trial and error untuk mendapatkan sebuah kontroler PID yang sesuai dalam
melakukan kendali keseimbangan pada ball
and beam agar sesuai dengan nilai setpoint.
Kemudian dari nilai kontroler PID yang didapat akan di implementasikan pada ball and beam. Dan melakukan pengambilan
data keluaran respon dari ball and beam melalui
serial monitor pada software Arduino IDE versi 1.6.12.
Data
yang dihasilkan oleh sensor HCSR04,
berupa data durasi waktu penerima menangkap
kembali sinyal gelombang yang telah dipantulkan oleh pemancar. Kemudian data
tersebut diubah menjadi data pengukuran jarak.
duration=
pulseIn (echo,HIGH);
distance
= (duration/2)/29.1;
Tunning Ziegler-Nichols
Untuk menentukan nilai Kp,Ki dan Kd dengan melakukan Tunning.
Gambar
11. Blok diagram dan grafik tunning
L = 0.1
T = 3.5 - 0.1 = 3.4
Kp = 1.2
= 1.2
= 40.8
Td = 0.5L = 0.5 (0.1) = 0.05
Kd = Kp (Td) = 40.8 (0.05) = 2.04
Ti = 2L = 2 (0.1) = 0.2
Ki = Kp/Ti = 40.8/0.2 = 8.16
Hasil Tunning
Gambar 12. Blok diagram dan
Grafik hasil Tunning
Pengujian Nilai PID
Pengujian
dilakukan untuk menentukan nilai konstanta PID mana yang cocok untuk diterapkan
pada sistem ini. Pengujian dilakukan dengan menerapkan algoritma PID sebagai berikut:
Penentuan
nilai error
Nilai error merupakan selisih
dari jarak Set point dengan jarak saat ini.
error
= setPoint - distance;
Penentuan jumlah error
Jumlah error
merupakan penjumlahan nilai error dengan
nilai error sebelumnya, sementara
beda error merupakan selisih nilai error yang didapat dengan nilai error sebelumya.
jumError = error + errorSeb;
bedaError = error - errorSeb;
Penentuan nilai total output PID
Penentuan output PID merupakan hasil penjumlahan dari
perhitungan konstanta P,I dan D
Nilai
output PID di batasi sesuai dengan nilai sudut servo yang diberikan, dengan
posisi horizontal papan keseimbangan berada pada sudut 140 .
if(pid<0){
sudut=140+(-pid);
}
else{
sudut=140-pid;
Pengujian nilai PID dilakukan dengan cara mencari nilai
selisih terkecil antara jarak yang diinginkan dengan jarak sebenarnya. Sistem
diuji dengan menetapkan set point sebesar
16cm.
Kp
|
Ki
|
Kd
|
Error sensor
|
Errot sudut
|
0.2
|
0.1
|
0.1
|
-16°
|
-11 cm
|
0.18
|
0.1
|
0.08
|
-10°
|
4 cm
|
0.15
|
0.1
|
0.02
|
-2°
|
-1 cm
|
Tabel 1. Pengujian nilai
PID
Tampilan pembacaan Serial
monitor dan grafik pada Arduino
Gambar 13. Hasil serial Monitor pembacaan data
Gambar 14. Grafik pembacaan data dengan SP yang tidak sesuai
Gambar 15. Grafik pembacaan data yang hampir menuju SP
Pada Gambar 15 di atas menunjukkan
respon dari sistem ball and beam yang
dilakukan ketika dalam keadaan seimbang pada rentan waktu 200 second tanpa adanya penambahan gangguan, dimana dari hasil respon yang didapat sudah sesuai dengan
yang diharapkan untuk mampu mempertahankan kondisi jarak atau posisi
bola untuk tetap berada dalam keadaan seimbang atau mendekati nilai set point yang diinginkan.
Dimana pada hasil uji diatas akan didapatkan nilai erorr
mendekati hasil yang diinginkan dengan nilai sp = 16, kp = 0.15, ki = 0.1, kd =
0.02. Dimana perhitungan sebagai berikut :
error = sp – distance
= 16 – 15 = 1
p = error x kp
= 1 x 0.15 = 0.15
sumerr = error + errorx
= 1 + 0 = 1
i = ki x sumerr
= 0.1 x 1 = 0.1
d = error – errorx
= 1 – 0 = 1
pid = p + i + d
= 0.15 + 0.1 + 1 = 1.25
Untuk menghitung sudut maka digunakan perhitungan :
Sudut = 140 – pid
= 140 – 1.25 = 138.75 derajat
Sudut 140 derajat merupakan sudut yang presisi pada motor
servo untuk mendapatkan nilai yang sesuai dengan sp = 16.
PENUTUP
Simpulan
Dari hasil pengujian yang dilakukan
untuk perancangan sistem keseimbangan ball
and beam dengan menggunakan pengendali PID berbasis Arduino UNO menggunakan
tunning trial and error nilai Kcr
metode Ziegler-Nichols dengan nilai konstanta Kp = 2.50002, Ki = 1.3889 dan Kd
= 1.125 bola dapat berada pada posisi atau jarak seimbang
yang diinginkan dengan nilai error yang dihasilkan kecil yaitu 2.242 cm dari tunning nilai Kcr = 4.1667 sedangkan
untuk time response menuju steady state juga baik yaitu kurang
dari 30 second untuk itu
sistem dengan metode ini dapat dikatakan berhasil.
Untuk hasil tunning , didapatkan nilai Kp = 40.8 . Kd = 2.04 dan Ki = 8.16
Saran
Dapat dikembangkan dengan mengubah
jenis metode pengontrolan yang lain, seperti adaptif, fuzzy logic, jaringan
saraf tiruan (JST), dll agar dapat menggurangi nilai error steady state.
Penambahan sensor atau dengan
penggantian sensor jenis lain yang lebih akurat agar pembacaan posisi bola
lebih presisi.
DAFTAR PUSTAKA
[1]. Ogata, Katsuhito. (2010). Modern Control Engineering RD 5 Edition.
New Jersey. Prentice Hall.
[2]. Setiawan, Michael. 2012. Perancangan
Pengendali PID untuk Sistem Ball And Beam. Jakarta: Universitas Trisakti.
[3]. Royyan, M., dkk. 2015.
“Implementation of Kalman Filter and PID Controller for Inverted Pendulum
Robot”.
https://openlibrary.telkomuniversity.ac.id/pustaka
/files/100391/jurnal_eproc/implementasi-kalman-
filter-dan-pid-kontroler-pada-robot-pendulum- terbalik.pdf. Bandung: Telkom
University.
[4].
Subrata, Rosalia H dan Richard R. Ligianto. 2015. Pengendalian
Keseimbangan Ball and Plate Menggunakan Pengendali PID Dan Pengolahan Citra
Digital. Jakarta: Universitas Kristen Maranatha.
[5]. Muslimin,
M. W. . 2015. Perancangan dan Pembuatan Plant Ball and Beam. Semarang: Prodi S1
Teknik Elektro, Fakultas Teknik Elektro, Universitas Diponogoro.
[6]. J. Hauser, S. Sastry and P. Kokotovic, “Nonlinear
control via approximate input-output linearization: ball and beam example”,
IEEE Transaction on Automatic Control, Vol.37, 2016.
[7]. Zaleeits, Fahmi. 2017. Metode Tunning Ziegler
Nichols Dalam Desain Kontroler PID. Surabaya: Institut Teknologi Surabaya.
[8]. Muhammad, Hindami. 2017. Desan dan
Implementasi Kendali PID Pada Beam and Ball System. Bandung: Universitas
Telkom.
[9].
Andrizal, Dodon Yendri, Pengendali Pompa pengisi Galon Air
Berbasis Sensor Waterflow dan Mini PC, Jurnal Resti,Vol 1,No 2, Tahun 2017.
[10]. Ali, A. Taifour dkk,. 2017. Design and
Implementation of Ball and Beam System Using PID Controller. Sudan: Sudan
University of Science and Technology.
[11]. Virseda, Marta. 2017. Modeling and Control of the
Ball and Beam Process. Master Thesis, Sweden: Department of Automatic Control
Lund Institute of Technology.
[12]. Alabib, Luqman. 2018. Project Mandiri
Ball On Beam With Stand Alone PID Controller. Banding: Politeknik Negeri
Bandung.
[13]. Muhammad, Abiyyu. 2018. Implementation
Of Balance Ball And Beam System Using Fuzzy Logic Control . Lampung:
Universitas Negeri Lampung.
http://digilib.unila.ac.id/54874/3/jurnal%20Full%20Teks%20Tanpa%20Bab%20Pembahasan
[14]. Merti, Orlanda Wijaya. 2018.
Perancangan Sistem Keseimbangan Beam and Ball dengan Menggunakan Pengendali PID
Berbasis Arduino Uno. Surabaya: Universitas Negeri Surabaya.
[15]. Fitraturrahman, M. 2018. Desain PID Beam and Ball.
Bandung: Politeknik Negeri Bandung
LAMPIRAN