bab iv simulasi stabilisasi inverted pendulum · inverted pendulum menggunakan perangkat lunak...
Post on 08-May-2018
220 Views
Preview:
TRANSCRIPT
BAB IV
SIMULASI STABILISASI INVERTED PENDULUM
DENGAN MENGGUNAKAN PENGONTROL FUZZY
Pada bab ini, pertama-tama akan dijelaskan mengenai pemodelan stabilisasi sistem
inverted pendulum menggunakan perangkat lunak Fuzzy Logic Toolbox dari MATLAB.
Hasil simulasi dengan menggunakan berbagai variasi dari jumlah parameter masukan,
fungsi keanggotaan fuzzy, dan aturan-aturan fuzzy pun akan disampaikan pada bab ini.
4.1 Pemodelan Stabilisasi Inverted Pendulum Menggunakan Fuzzy Logic Toolbox
dan SIMULINK
Pada eksperimen kali ini sistem yang akan dibuat adalah sistem fuzzy bertipe MISO
(Multiple Input Single Output). Jumlah masukan yang akan dieksperimenkan adalah: 2
masukan (theta dan theta_dot) dan 4 masukan (theta, theta_dot, x, dan x_dot). Keluaran
dari fuzzy adalah force (gaya) yang akan membuat pedati bergerak maju atau mundur di
bidang horizontal. Semua model dibangun dengan menggunakan perangkat lunak
SIMULINK dari MATLAB. Berikut ini akan dibahas masing-masing model dari 2
masukan dan 4 masukan.
1. Model 2 Masukan (theta dan theta_dot)
Pada model ini, pengontrol fuzzy hanya akan melakukan proses kontrol terhadap 2
buah parameter yaitu theta (sudut bandul dihitung pada posisi terbalik vertikalnya)
dan theta_dot (kecepatan sudut bandul). Diagram blok dari model ini dapat dilihat
pada Gambar 4.1.
Pada Gambar 4.1, satuan parameter fuzzy theta adalah dalam derajat dan parameter
theta_dot dalam derajat/detik. Gain theta, gain theta_dot, dan gain force adalah
penguatan yang harus diatur (di-tuning) untuk mendapatkan perfomansi terbaik dari
4-1
4-2
sistem. Blok Inverted Pendulum berisi model dinamika dari sistem inverted pendulum
dan dapat dilihat pada Gambar 2-2. Blok scope theta, scope x dan scope force
masing-masing adalah grafik antara theta, x, dan force terhadap t (waktu), yang dapat
dilihat setelah simulasi berjalan. Blok rad_to_deg berfungsi untuk mengubah satuan
dari radian ke derajat, hal ini disebabkan fungsi keanggotaan fuzzy yang didesain telah
menggunakan satuan derajat. Blok Fuzzy Logic Controller diimplementasikan
menggunakan Fuzzy Logic Toolbox dari MATLAB.
Gambar 4-1 Diagram blok sistem 2 masukan
Dalam Fuzzy Logic Toolbox telah disediakan GUI (Graphical User Interface) yang
akan memudahkan pengguna untuk mendesain sistem fuzzy seperti yang
diinginkannya. Gambar 4-2 menunjukkan salah satu antarmuka untuk melakukan
penyesuaian fungsi keanggotaan pada perangkat lunak Fuzzy Logic Toolbox.
4-3
Gambar 4-2 Antar muka untuk menyesuaikan fungsi keanggotaan pada Fuzzy Logic Toolbox
Gambar 4-3 menunjukkan contoh antarmuka untuk memasukkan atau mengganti
aturan-aturan pada perangkat lunak Fuzzy Logic Toolbox.
Gambar 4-3 Antar muka untuk rule editor pada Fuzzy Logic Toolbox
4-4
Semua hasil simulasi pada eksperimen kali ini menggunakan metode numerik Runge-
Kutta orde 4, dengan step-size sebesar 0.01.
2. Model 4 Masukan (theta, theta_dot, x, dan x_dot)
Pada model ini, pengontrol fuzzy melakukan proses kontrol terhadap 4 buah
parameter yaitu theta (sudut bandul dihitung pada posisi vertikal terbaliknya),
theta_dot (kecepatan sudut bandul), x (posisi pedati), dan x_dot (kecepatan pedati).
Diagram blok dari model ini dapat dilihat pada Gambar 4.4.
Pada Gambar 4.4, satuan parameter fuzzy theta adalah dalam radian dan parameter
theta_dot dalam radian/detik. Gain theta, gain theta_dot, gain x, gain x_dot, dan gain
force adalah penguatan yang harus diatur (di-tuning) untuk mendapatkan perfomansi
terbaik dari sistem. Blok Inverted Pendulum berisi model dinamika dari sistem
inverted pendulum dan dapat dilihat pada Gambar 2-2. Blok scope theta, scope x dan
scope force masing-masing adalah grafik antara theta, x, dan force terhadap t (waktu),
yang dapat dilihat setelah simulasi berjalan. Blok Fuzzy Logic Controller
diimplementasikan menggunakan Fuzzy Logic Toolbox dari MATLAB.
Gambar 4-4 Diagram blok sistem 4 masukan
4-5
4.2 Simulasi dengan Parameter yang Berbeda-beda
Eksperimen simulasi untuk menguji kestabilan sistem inverted pendulum dilakukan
dengan cara memvariasikan jumlah parameter fuzzy, jumlah fungsi keanggotaan di tiap-
tiap parameternya, bentuk dan pengaturan (tuning) fungsi keanggotaan, dan pengaturan
gain di masing-masing komponen yang akan diatur.
1. Parameter masukan theta dan theta_dot
Pada simulasi ini masukan yang akan dikontrol oleh pengontrol fuzzy hanyalah parameter
theta dan theta_dot. Posisi dan kecepatan pedati tidak di kontrol, sehingga lintasan pedati
dianggap tidak berhingga. Aturan fuzzy yang diterapkan di sini adalah aturan yang
berbentuk seperti ”jika theta adalah x dan theta_dot adalah y maka force adalah z”.
Beberapa contoh aturan itu adalah sebagai berikut: jika theta adalah neglarge dan
theta_dot adalah neglarge maka force adalah neglarge, jika theta adalah negsmall dan
theta_dot adalah neglarge maka force adalah neglarge, jika theta adalah nol dan
theta_dot adalah neglarge maka force adalah neglarge, jika theta adalah nol dan
theta_dot adalah nol maka force adalah nol, dan sebagainya. Theta dan theta_dot bernilai
positif ketika berada di sebelah kanan posisi vertikal terbalik. Theta dan theta_dot
bernilai negatif ketika berada di sebelah kiri posisi vertikal terbalik. Pada laporan kali ini
tidak semua variasi parameter dibahas tetapi hanya beberapa saja yang dianggap cukup
menjanjikan.
• Model 1-1
Pada model ini fungsi keanggotaan untuk masing-masing parameter theta, theta_dot,
dan force berjumlah 5 buah, yaitu: neglarge, negsmall, zero, possmall, dan poslarge.
Satuan theta dan theta_dot adalah dalam derajat. Bentuk fungsi keanggotaan untuk
parameter theta, theta_dot, dan force dapat dilihat pada Gambar 4-5 (a), (b), dan (c)
secara berurutan.
4-6
(a)
(b)
(c)
Gambar 4-5 Fungsi keanggotaan untuk Model 1-1 (a) theta, (b) theta_dot, dan (c) force
Pemilihan besar parameter-parameter yang terlibat dalam model kali ini dapat dilihat
pada Tabel 4-1.
Tabel 4-1 Parameter simulasi Model 1-1 Parameter Besar M (masa pedati) 1 kg m (masa bandul) 0,5 kg l (panjang bandul) 0,5 m
9,8 m/s2g (gravitasi) Gain theta 2 Gain theta_dot 0,8 Gain force 1,5
17,18 derajat θ0 (initial theta)
4-7
Jumlah aturan fuzzy yang digunakan adalah sebanyak 25 buah, dan hasil simulasi
menunjukkan bahwa bandul dapat distabilkan pada posisi vertikal terbaliknya dengan
baik. Grafik hasil simulasi dapat dilihat pada Gambar 4-6 (a), (b), dan (c).
(a)
(b)
(c)
Gambar 4-6 Grafik hasil simulasi Model 1-1 (a) grafik theta vs t, (b) grafik x vs t, (c) grafik force vs t
Pada Gambar 4-6, terlihat bahwa bandul dapat distabilkan dari posisi sudut awal
17,18 derajat ke posisi vertikal terbaliknya (0 derajat). Waktu yang diperlukan untuk
menyeimbangkan posisi bandul adalah sekitar 1,5 detik. Walaupun bandul dapat
stabil pada posisi terbaliknya tetapi tidak demikian dengan posisi pedati. Posisi pedati
bergerak dari titik diam mula-mula menuju tak hingga (pedati terus bergerak ke arah
kanan). Hal ini disebabkan karena pengontrol berbasis fuzzy hanya mengontrol
4-8
parameter theta dan theta_dot, sehingga mengabaikan parameter posisi pedati (posisi
pedati tidak terkontrol).
• Model 1-2
Pada model ini fungsi keanggotaan parameter theta berjumlah 7 buah (NB, NM, NS,
Z, PS, PM, dan PB), theta_dot berjumlah 9 buah (NB, NM, NS, NZ, Z, PZ, PS, PM,
dan PB), dan force berjumlah 9 buah (NB, NM, NS, NZ, Z, PZ, PS, PM, dan PB).
Satuan theta dan theta_dot adalah dalam radian. Bentuk fungsi keanggotaan untuk
parameter theta, theta_dot, dan force dapat dilihat pada Gambar 4-7 (a), (b), dan (c)
secara berurutan.
(a)
(b)
(c)
Gambar 4-7 Fungsi keanggotaan untuk Model 1-2 (a) theta, (b) theta_dot, dan (c) force
4-9
Pemilihan besar parameter yang terlibat dalam model kali ini dapat dilihat pada Tabel
4-2.
Tabel 4-2 Parameter simulasi Model 1-2 Parameter Besar M (masa pedati) 1 kg m (masa bandul) 0,5 kg l (panjang bandul) 0,5 m
9,8 m/s2g (gravitasi) Gain theta 2 Gain theta_dot 1 Gain force 20
0,3 rad θ0 (initial theta)
Jumlah aturan fuzzy yang digunakan adalah sebanyak 63 buah, dan hasil simulasi
menunjukkan bahwa bandul dapat distabilkan pada posisi vertikal terbaliknya, tetapi
masih terjadi osilasi yang relatif kecil di sekitar posisi kestabilannya. Grafik hasil
simulasi dapat dilihat pada Gambar 4-8 (a), (b), dan (c).
(a) (b)
4-10
(c)
Gambar 4-8 Grafik hasil simulasi Model 1-2 (a) grafik theta vs t, (b) grafik x vs t, (c) grafik force vs t
Pada Gambar 4-8, terlihat bahwa bandul dapat distabilkan dari posisi sudut awal 0,3
radian ke posisi vertikal terbaliknya (0 derajat) dan osilasi sebesar ±0,05 radian masih
terjadi di sekitar titik kestabilan bandul di posisi tersebut. Walaupun bandul dapat
stabil pada posisi terbaliknya tetapi tidak demikian dengan posisi pedati. Posisi pedati
bergerak dari titik diam mula-mula menuju tak hingga (pedati terus bergerak ke arah
kanan). Jumlah aturan fuzzy dan fungsi keanggotaan pada model ini jauh lebih banyak
dibandingkan pada Model 1-1, tetapi penambahan ini tidak menghasilkan perubahan
secara signifikan pada perfomansi sistem secara keseluruhan.
• Model 1-3
Pada model ini fungsi keanggotaan untuk parameter theta, theta_dot, dan force
berjumlah 7 buah yaitu : NL, NM, NS, ZE, PS, PM, dan PL. Satuan theta dan
theta_dot adalah dalam radian. Bentuk fungsi keanggotaan untuk parameter theta,
theta_dot, dan force dapat dilihat pada Gambar 4-9 (a), (b), dan (c) secara berurutan.
4-11
(a)
(b)
(c)
Gambar 4-9 Fungsi keanggotaan untuk Model 1-3 (a) theta, (b) theta_dot, dan (c) force
Pemilihan besar parameter yang terlibat dalam model kali ini dapat dilihat pada Tabel
4-3.
Tabel 4-3 Parameter simulasi Model 1-3 Parameter Besar M (masa pedati) 1 kg m (masa bandul) 0,5 kg l (panjang bandul) 0,5 m
9,8 m/s2g (gravitasi) Gain theta 2 Gain theta_dot 0,5 Gain force 2 θ0 (initial theta) 1,04 rad
4-12
Jumlah aturan fuzzy yang digunakan adalah sebanyak 49 buah, dan hasil simulasi
menunjukkan bahwa bandul dapat distabilkan pada posisi vertikal terbaliknya dengan
sangat baik. Grafik hasil simulasi dapat dilihat pada Gambar 4-10 (a), (b), dan (c).
(a) (b)
(c)
Gambar 4-10 Grafik hasil simulasi Model 1-3 (a) grafik theta vs t, (b) grafik x vs t, (c) grafik force vs t
Pada Gambar 4-10, terlihat bahwa bandul masih dapat distabilkan dari posisi sudut
awal yang cukup besar yaitu 1,04 radian (60 derajat) ke posisi vertikal terbaliknya (0
derajat). Waktu yang diperlukan untuk menyeimbangkan posisi bandul adalah sekitar
3 detik. Walaupun bandul dapat stabil pada posisi terbaliknya tetapi tidak demikian
dengan posisi pedati. Posisi pedati bergerak dari titik diam mula-mula menuju tak
4-13
hingga (pedati terus bergerak ke arah kanan). Perfomansi model ini jauh melampaui
kedua model sebelumnya (Model 1-1 dan Model 1-2).
• Model 1-4
Pada model ini fungsi keanggotaan untuk parameter theta dan theta_dot berjumlah 5
buah yaitu : NL, NS, ZE, PS, dan PL. Satuan theta dan theta_dot adalah dalam radian.
Fungsi keanggotaan untuk parameter force berjumlah 9 buah, yaitu NBL, NL, NM,
NS, ZE, PS, PM, PL, dan PBL. Bentuk fungsi keanggotaan untuk parameter theta,
theta_dot, dan force dapat dilihat pada Gambar 4-11 (a), (b), dan (c) secara berurutan.
(a)
(b)
(c)
Gambar 4-11 Fungsi keanggotaan untuk Model 1-4 (a) theta, (b) theta_dot, dan (c) force
4-14
Pemilihan besar parameter yang terlibat dalam model kali ini dapat dilihat pada Tabel
4-4.
Tabel 4-4 Parameter simulasi Model 1-4 Parameter Besar M (masa pedati) 1 kg m (masa bandul) 0,5 kg l (panjang bandul) 0,5 m
9,8 m/s2g (gravitasi) Gain theta 2 Gain theta_dot 1 Gain force 20
0.1 rad θ0 (initial theta)
Jumlah aturan fuzzy yang digunakan adalah sebanyak 25 buah, dan hasil simulasi
menunjukkan bahwa bandul tidak dapat distabilkan pada posisi vertikal terbaliknya.
Grafik hasil simulasi dapat dilihat pada Gambar 4-12 (a), (b), dan (c).
(a) (b)
4-15
(c)
Gambar 4-12 Grafik hasil simulasi Model 1-4 (a) grafik theta vs t, (b) grafik x vs t, (c) grafik force vs t
2. Parameter masukan theta, theta_dot, x, dan x_dot
Pada simulasi ini masukan yang akan dikontrol oleh pengontrol fuzzy adalah parameter
theta, theta_dot, x, dan x_dot. Sudut bandul dan posisi pedati dikontrol agar tetap berada
pada posisi seimbang/semulanya. Aturan fuzzy yang diterapkan di sini adalah aturan yang
berbentuk seperti ”jika theta adalah a dan theta_dot adalah b dan x adalah c dan x_dot
adalah d maka force adalah e”. Beberapa contoh aturan itu adalah sebagai berikut: jika
theta adalah negsmall dan theta_dot adalah possmall dan x adalah negatif dan x_dot
adalah zero maka force adalah possmall, jika theta adalah poslarge dan theta_dot adalah
poslarge dan x adalah negatif dan x_dot adalah negatif maka force adalah posmedium,
dan sebagainya. Pada laporan kali ini tidak semua variasi parameter dibahas tetapi hanya
beberapa saja yang dianggap cukup menjanjikan.
• Model 2-1
Pada model ini fungsi keanggotaan untuk parameter theta, theta_dot, x, dan x_dot
berjumlah 3 buah yaitu: NE, ZE, dan PO, sedangkan untuk parameter force berjumlah
9 buah yaitu: NBL, NL, NM, NS, ZE, PS, PM, PL, dan PBL. Satuan theta dan
theta_dot adalah dalam radian. Bentuk fungsi keanggotaan untuk parameter theta,
4-16
theta_dot, x, x_dot, dan force dapat dilihat pada Gambar 4-13 (a), (b), (c), (d), dan (e)
secara berurutan.
(a)
(b)
(c)
(d)
4-17
(e)
Gambar 4-13 Fungsi keanggotaan untuk Model 2-1 (a) theta, (b) theta_dot, (c) x, (d) x_dot, dan (e) force
Pemilihan besar parameter-parameter yang terlibat dalam model kali ini dapat dilihat
pada Tabel 4-5.
Tabel 4-5 Parameter simulasi Model 2-1 Parameter Besar M (masa pedati) 0,5 kg m (masa bandul) 0,25 kg l (panjang bandul) 0,25 m
9,8 m/s2g (gravitasi) Gain theta 2 Gain theta_dot 2,5 Gain x 1 Gain x_dot 0,5 Gain force 150
0,05 rad θ0 (initial theta)
Jumlah aturan fuzzy yang digunakan adalah sebanyak 81 buah, dan hasil simulasi
menunjukkan bahwa baik bandul maupun posisi pedati masih berosilasi pada rentang
yang cukup besar di sekitar posisi mula-mulanya. Grafik hasil simulasi dapat dilihat
pada Gambar 4-14 (a), (b), dan (c).
4-18
(a) (b)
(c)
Gambar 4-14 Grafik hasil simulasi Model 2-1 (a) grafik theta vs t, (b) grafik x vs t, (c) grafik force vs t
Pada Gambar 4-14, terlihat bahwa bandul masih berosilasi di sekitar ±0,05 radian
selama 20 detik. Seperti pula pada bandul, posisi pedati pun masih mengalami osilasi
di sekitar ±0,2m. Pada simulasi ini posisi pedati dan sudut bandul tidak benar-benar
stabil, tetapi masih mengalami osilasi yang cukup besar. Hal ini dapat disebabkan
karena beberapa hal, yaitu: jumlah fungsi keanggotaan dan aturan fuzzy yang relatif
sedikit serta proses tuning parameter-parameter dan fungsi keanggotaan yang belum
sempurna. Untuk diterapkan pada implementasi perangkat keras, model ini masih
membutuhkan beberapa perbaikan yang signifikan.
4-19
• Model 2-2
Pada model ini fungsi keanggotaan parameter theta berjumlah 5 buah (NL, NS, ZE,
PS, dan PL), theta_dot berjumlah 5 buah (NL, NS, ZE, PS, dan PL), x berjumlah 3
buah (NE, ZE, dan PO), x_dot berjumlah 3 buah (NE, ZE, dan PO), dan force
berjumlah 13 buah (N6, N5, N4, N3, N2, N1, ZE, P1, P2, P3, P4, P5, dan P6). Satuan
theta dan theta_dot adalah dalam radian. Bentuk fungsi keanggotaan untuk parameter
theta, theta_dot, x, x_dot, dan force dapat dilihat pada Gambar 4-15 (a), (b), (c), (d),
dan (e) secara berurutan.
(a)
(b)
(c)
4-20
(d)
(e)
Gambar 4-15 Fungsi keanggotaan untuk Model 2-2 (a) theta, (b) theta_dot, (c) x, (d) x_dot, dan (e) force
Pemilihan besar parameter-parameter yang terlibat dalam model kali ini dapat dilihat
pada Tabel 4-6.
Tabel 4-6 Parameter simulasi Model 2-2 Parameter Besar M (masa pedati) 1 kg m (masa bandul) 0,5 kg l (panjang bandul) 0,5 m
9,8 m/s2g (gravitasi) Gain theta 1 Gain theta_dot 0,5 Gain x 0,25 Gain x_dot 0,5 Gain force 140
0,15 rad θ0 (initial theta)
Jumlah aturan fuzzy yang digunakan adalah sebanyak 225 buah, dan hasil simulasi
menunjukkan bahwa baik bandul maupun posisi pedati dapat distabilkan pada posisi
4-21
mula-mulanya (rest position) dengan baik. Grafik hasil simulasi dapat dilihat pada
Gambar 4-16 (a), (b), dan (c).
(a)
(b)
(c)
Gambar 4-16 Grafik hasil simulasi Model 2-2 (a) grafik theta vs t, (b) grafik x vs t, (c) grafik force vs t
Pada Gambar 4-16, terlihat bahwa bandul dapat distabilkan ke posisi vertikal
terbaliknya (0 derajat) dari posisi awal sekitar 0,15 radian. Selain letak bandul yang
stabil di posisi vertikalnya, dapat dilihat pula posisi pedati yang stabil di titik tengah
lintasan. Waktu yang diperlukan untuk menyeimbangkan posisi bandul adalah cukup
lama sekitar 5 detik. Pada grafik x vs t, dapat dilihat nilai overshoot yang cukup besar.
Model ini sangat mencerminkan keadaan nyata dari sistem karena pengontrol dapat
mengontrol posisi pedati dan sudut bandul dengan baik.
top related