ESTIMASI POSISI DAN KECEPATAN KAPAL SELAM MENGGUNAKAN METODE EXTENDED KALMAN FILTER Oleh : Achmad Ichwan 1205 100 040 Dosen Pembimbing : Dr. Erna Apriliani, M.Si. Jurusan Matematika Fakultas Matematika dan Ilmu Pengetahuan Alam Institut Teknologi Sepuluh Nopember Surabaya 2010 Abstrak : Kapal selam sebagai alutsista yang sangat penting dalam pertahanan laut karena memiliki kelebihan-kelebihan khusus bila dibandingkan dengan jenis-jenis kapal yang ada, yaitu daerah operasi yang berada di bawah permukaan air, sehingga dituntut bisa bermanuver dalam 6 derajat kebebasan gerak secara tetap stabil dan memenuhi persyaratan kesetimbangan agar dapat mempertahankan kedalaman dan arah yang dikehendaki. Untuk menjamin agar kapal selam dapat melaksanakan kegiatan manuver di bawah air dengan benar, diperlukan estimasi posisi yang tepat dalam melaksanakan fungsi-fungsi yang diinginkan. Pada penelitian ini akan dilakukan pengestimasian posisi kapal selam dengan menggunakan metode Extended Kalman Filter (EKF). Metode EKF dipilih karena dianggap tepat untuk digunakan pada model yang berbentuk nonlinear. Hasil yang diharapkan adalah didapatkan estimasi posisi dan kecepatan kapal selam dengan tingkat akurasi yang lebih baik.
Kata kunci : Extended Kalman Filter, gerakan kapal selam. menggunakan sistem keadaan dan model pengukuran yang diperkenalkan pertama kali oleh Rudolph E. Kalman (1960). Algoritma pada filter kalman hanya dapat diimplementasikan pada model dinamik linier saja, akan tetapi banyak permasalahan tidak hanya berupa sistem yang linier melainkan juga sistem yang nonlinier, sehingga perlu dikembangkan algoritma yang dapat diimplementasikan pada model sistem dinamik nonlinier. Salah satu algoritma yang telah dikembangkan adalah Extended Kalman Filter (EKF) yang berasal dari modifikasi algoritma filter Kalman (Greg Welch, 2006). Extended Kalman Filter dapat digunakan untuk sistem yang tak linier dan juga kontinu. Dalam Extended Kalman Filter sistem semacam ini perlu dilinierisasi (apabila sistem tidak linier), pendiskritan sistem (apabila sistem kontinu), dan beberapa tahapan lain. Pada tugas akhir ini akan digunakan
1. Pendahuluan Pelayaran dan pengendalian kapal selam merupakan topik yang kompleks. Terdapat banyak kesulitan yang perlu diatasi sebelum kapal selam digerakkan sesuai keinginan, yaitu gangguan berupa internal dan eksternal. Gangguan internal misalnya berasal dari interaksi kompas dengan medan magnet yang dihasilkan oleh motor. Sementara gangguan eksternal dihasilkan dari arus laut yang mengganggu keberadaan kapal selam (Walchko, 2003). Permasalahan umum yang sering dihadapi sistem pengendali kapal selam adalah munculnya gangguan tak pasti yang berasal dari dalam maupun luar sistem. Sehingga diperlukan pengestimasian posisi yang tepat agar kapal selam tersebut dapat melaksanakan fungsi-fungsi yang diinginkan. Filter Kalman merupakan salah satu metode untuk mengestimasi suatu masalah
1
metode Extended Kalman Filter dalam mengestimasi posisi kapal selam dengan tingkat akurasi yang lebih baik.
yang meminimumkan kovariansi kesalahan estimasi dengan pengukuran zk memenuhi zk = Hk xk + vk x0 ~ N x0 , Px0 ;
2.Tinjauan Pustaka Di dalam pengendalian kapal selam di bawah permukaan air, guna menghindarkan pemberian beban yang berlebihan pada awak kapal yang jumlahnya amat terbatas, maka ada beberapa kegiatan yang dilaksanakan secara otomatis antara lain : pengendalian haluan dengan menggunakan course control automatic (ANSCHUTZ) dan pengendalian kedalaman dan trimm dengan menggunakan depth control automatic [2]. Kapal selam dalam operasinya di medan bawah air mempunyai enam derjat kebebasan gerak dalam ruang tiga dimensi tersebut, yaitu: a. Heaving (gerakan naik turun) b. Swaying (gerakan menggeser ke kiri kanan) c. Surging (gerakan maju-mundur) d. Yawing (gerakan menghadap ke kanan – kiri) e. Pitching (gerakan menghadap ke atas – bawah) f. Rolling (gerakan menghadap ke kanan - ke kiri) Dengan titik asal O sebagai posisi kapal selam mengapung di atas permukaan air laut yang digambarkan sebagai berikut :
p
yang (2)
wk ~ N(0, Q); vk ~ N(0, R) dengan: xk adalah variabel keadaan. zk adalah vektor pengukuran. uk adalah vektor masukan. wk adalah noise model sistem yang mempunyai mean wk 0 dan kovarian Q. vk adalah noise pengukuran dengan mean v k 0 dan kovarian R. Ak, Bk, Gk dan Hk adalah matriks koefisien dengan ukuran bersesuaian. wk ~ N(0, Q) dan vk ~ N(0, R) diasumsikan white, tidak berkorelasi satu sama lain maupun dengan nilai estimasi awal x0 Untuk proses estimasinya diberikan dua tahapan, yaitu tahap prediksi yang dikenal dengan time update, dan tahap koreksi yang dikenal dengan measurement update. Tahap prediksi dipengaruhi oleh dinamika sistem, sedangkan tahap koreksi dipengaruhi oleh informasi dari pengukuran. Kedua tahap ini akan berulang terus-menerus sampai pada waktu k yang ditentukan. 2.2 Metode Extended Kalman Filter Algoritma Kalman Filter dikembangkan untuk nilai estimasi dalam bentuk rekursif dari model linear. Namun demikian, dalam kenyataannya banyak model yang berbentuk nonlinear. Metode Extended Kalman Filter (EKF) adalah salah satu metode estimasi yang dikembangkan untuk menyelesaikan model nonlinear. Misal diberikan model sistem dinamik stokastik nonlinear: xk + 1 = f(xk, uk) + wk (3) p yang dengan pengukuran nonlinear zk memenuhi zk = h(xk)+ vk. (4) Estimasi dari kedua model nonlinear di atas dilakukan melalui linearisasi dengan mendefinisikan sebagai berikut:
Gambar 2. Enam derajat kebebasan gerak kapal selam
2.1 Metode Kalman Filter
* xk 1
Metode Kalman filter digunakan untuk mengestimasi variabel state
* zk 1
n xk dari sistem dinamik stokastik linear diskrit xk + 1 = Ak xk + Bk uk + Gk wk (1)
A
2
Ai, j
ˆk , uk f x * h xk 1
fi xˆ k , u k xj
(5) (6) (7)
H
hi * xk 1 xj
H i, j
merupakan koordinat bumi kapal selam yang menggambarkan 6 derajat kebebasan gerak kapal selam. Dengan hubungan antara vektor q dan vektor x adalah sebagai berikut (Walchko, 2003):
(8)
Algoritma Extended Kalman Filter adalah sebagai berikut: Model sistem dan model pengukuran: xk + 1 = f(xk, uk) + wk zk = Hxk+ vk x0 ~ N( x 0 , Px0 ); wk ~ N(0, Q); vk ~ N(0, R)
x
T1
T2
s c
xˆ 0
Px 0 ,
q
c c
s s s c s
T
APk A
Q
T2
fi xˆ k , u k xj
A
xˆ k 1
Estimasi:
sin tan
cos tan
0
cos sin cos
sin cos cos
f ( xˆ k , u k )
Pk 1H T HPk 1H T
dengan H
H i, j
R
I
1
Fd
K k 1H Pk 1
K k 1 zk 1
Hxˆ k 1
2.3 Persamaan Dinamika Kapal Selam Hukum kedua Newton pada umumnya digunakan dalam suatu persamaan gerak. Oleh karena itu persamaan dinamika gerak kapal selam juga menggunakan hukum tersebut : mq Fd (9) Diberikan 2 vektor, T dan q u v w p q r
y z
T
0
0
T2
akan
(10) Vektor q merupakan body fixed koordinat dari kapal selam yang menggambarkan komponen tentang kecepatan translasi (u,v,w) dan komponen kecepatan angular (p,q,r) dari koordinat bumi. Sementara vektor x
Cd
1 2
w
D q q Cm
w
Aq
(14)
dengan w adalah densitas air laut, Cd adalah drag koefisien, D adalah panjang benda, Cm adalah koefisien inersia hidrodinamis, A adalah luas penampang, q dan q adalah kecepatan dan percepatan relatif antara kapal selam dan air. Dari sini, persamaan (8) dapat ditulis kembali menjadi
hi * xk 1 xj
Estimasi:
xˆ k 1
T1
disebut matriks T. Gaya Hidrodinamis yang digunakan pada kapal selam adalah berupa Persamaan Morrison (Walchko, 2003),
Kovariansi error:
Pk 1
(13)
Untuk selanjutnya, matriks
Tahap koreksi: Kalman Gain:
Kk 1
c c (12)
1 0
dengan
s s c c s s s c c s
dan T2 berupa matriks :
Pk 1
Kovariansi error:
(11)
x0
Tahap prediksi:
x
0
s
P0
x
0
Dengan T1 berupa matriks : c c c s s s c
Insialisasi:
xˆ k 1
T1
(m C m
w
A)q C d
1 2
w
Dqq
(15) kemudian persamaan (15) dapat diubah ke dalam bentuk matriks menjadi :
Mq C(q)q
(16)
Dengan mariks M berupa,
M
diag(mx , m y , mz , l x , l y , l z )
(17)
dan matriks C(q) berupa,
C (q) Cd
1 2
diag(Cd w
Dx q 4 , C d
w
1 2
Dx q1 , Cd w
1 2
Dy q5 , Cd
w
1 2
D y q2 , C d w
1 2
w
Dz q6 )
Dz q3 ,
(18) dengan τ merupakan vektor yang disusun dari gaya dan torsi pada sistem kapal selam tersebut dimana
Fx 3
1 2
Fy
Fz
Tx Ty Tz
T
(19)
Fx , Fy , Fz , merupakan gaya yang diberikan pada komponen translasi. Sementara Tx , Ty , Tz merupakan gaya (torsi) yang diberikan pada komponen rotasi.
.
q1 .
3. Metode Penelitian Metode yang digunakan pada Tugas Akhir dalam menyelesaikan permasalahan adalah 1. Studi Literatur 2. Pemodelan Sistem Gerak Kapal Selam 3. Simulasi Hasil Implementasi Metode EKF 4. Analisis Hasil Simulasi 5. Penyimpulan Hasil Simulasi dan Pemberian Saran
q2 .
q3 .
q4 .
q5 .
q6
4. Pemodelan dan Pembahasan Dari persamaan (15) dengan τ merupakan vektor yang disusun dari gaya dan torsi pada sistem kapal selam tersebut dimana (20) Bu
B
Fy
Tx Ty Tz
T
1
0
0
0
0
q k
0
0
1
1
0
0
zk
0
0
0
0
0 w 2
0 w 2
0
0
0
L 2
0
0
0
0
w 2 f xL
w 2 f xR
f yT
f yB
1
f zF
0
C(q)q
q M
1
Aq
q2
0 0
Ak q k
H k qk
Bk u k
f xR
w w 0 0 2 lx 2 lx
f yB
0 0 0 0
Gk wk
vk
0
0
Q
Dan
E {v k } 0
T
Cov {vk , v k } E v k v k
T
R
Sehingga dapat ditulis, wk ~ N(0, Q); vk ~ N(0, R) dimana Q dan R adalah varian dari noise. Insialisasi: P0 Pq 0 ,
(21)
Cqq
Bu
qˆ 0
q0
Tahap prediksi: Kovariansi error:
dengan
4
A
Pk 1
APk AT
fi qˆ k , u k qj
Q
f yT f zF
L L f zB 2 ly 2 ly
w w 0 0 0 0 2 lz 2 lz
T
f xL
1 1 mz mz
0 0 0 0
q3 q4 q5 q6
Cov {wk , wk } E wk wk
sehingga didapat,
q
1
E {wk }
L 2
Jika persamaan (16) ditulis dalam bentuk umum sistem dinamis, maka diperoleh :
Mq
q1
1 1 0 0 my my
Diasumsikan wk, vk adalah noise yang white noise, tidak berkorelasi dan berdistribusi normal, dengan
1
f zB
0 0
4.2 Implementasi Algoritma EKF untuk Dinamika Kapal Selam Algoritma Extended Kalman Filter adalah sebagai berikut: Model sistem dan model pengukuran:
1
0
u
Fz
1 1 0 0 0 0 mx mx
(22)
4.1 Model Dinamika Gerak Kapal Selam
Fx
1 Cd w Dx q1 0 0 0 0 0 2 1 0 C d w D y q2 0 0 0 0 2 1 0 0 Cd w Dz q3 0 0 0 2 1 0 0 0 Cd w Dx q4 0 0 2 1 0 0 0 0 Cd w Dx q5 0 2 1 0 0 0 0 0 Cd w Dx q6 2
Tahap koreksi: Kalman Gain:
Pk 1H T HPk 1H T
Kk 1 dengan H
hi * qk qj
H i, j
R
1
1
Kovariansi error:
Pk 1
I
K k 1H Pk 1
Estimasi:
qˆ k
1
qˆ k
1
Kk
1
zk
1
Hxˆ k
1
4.3 Simulasi dan Analisis Hasil Estimasi Dari hasil rancangan pada subbab 4.1, pada subbab ini akan dilakukan dua macam simulasi, yaitu simulasi tanpa gangguan, simulasi dengan gangguan internal dan gangguan eksternal. Gangguan internalnya diberikan dengan melakukan perubahan pada parameter – parameter plant, yaitu momen inersia. Sedangkan untuk gangguan eksternal yang diberikan pada simulasi ini berupa sinyal impulse, dan sinyal square. Dengan memasukkan noise Q = 0. 1 , R = 0. 1, covarian awalnya 0.1, gaya pada motor belakang Fx = 10 N, Fy = 10 N, Fz = 10 N, Tx = 10 N, Ty = 10 N, Tz = 10 N.
Gambar 4.1 Grafik estimasi posisi untuk surging tanpa gangguan
4.3.1 Simulasi tanpa gangguan Pada simulasi ini diberikan nilai awal yaitu : q1(0)=5.14 m/s, q2(0)=5.14 m/s, q3(0)=5.14 m/s, yang menunjukkan kecepatan awal kapal selam. Parameter yang digunakan adalah mx=5, my=3.5, mz=3, Cd = 1, rho=1025.9kg/m3, Dx=150 m, Dy=15 m, Dz=20 m. Dari data tersebut diperoleh respon sistem sebegai berikut :
Gambar 4.2 Grafik estimasi posisi untuk swaying tanpa gangguan
5
(50 N). Hasil yang diperoleh adalah sebagai berikut: Gangguan eksternal berupa sinyal square sangat berpengaruh pada pencapaian posisi surging. Terlihat bahwa pada detik ke 19 saat diberi gangguan terjadi lonjakan dibandingkan pada saat tidak terdapat gangguan. Dengan error hasil estimasinya 0.3 meter. Pada posisi swaying juga terlihat terjadi lonjakan saat diberi gangguan berupa sinyal square, dengan error hasil estimasi mencapai 0.4 meter. Sedangkan pada posisi heaving tidak mengalami perubahan besar, terlihat dari tidak adanya lonjakan saat kapal selam diberi gangguan dibandingkan pada saat tidak terdapat gangguan
Gambar 4.3 Grafik estimasi posisi untuk heaving tanpa gangguan Dari hasil simulasi didapat bahwa sistem gerak kapal selam telah mencapai posisi surging (maju) sebesar 10 meter dalam waktu hampir 6 detik, dengan error hasil estimasi hampir 0.2 meter. Sedangkan untuk posisi swaying, diperoleh posisi yang stabil setelah mencapai posisi 40 meter, dengan error hasil estimasi hampir mencapai 0.5 meter, hal ini dikarenakan terjadi rolling. Sementara posisi heaving (kedalaman) mencapai posisi yang stabil pada sekitar 40 meter dibawah permukaan laut, dengan error hasil estimasi mencapai 0.3 meter. 4.3.2 Simulasi dengan gangguan eksternal Simulasi ini dilakukan dengan menambahkan suatu sinyal yang dianggap sebagai gangguan yang berasal dari luar sistem. Dalam simulasi ini akan digunakan sinyal square. Nilai awal yang digunakan adalah q1(0)=5.14 m/s, q2(0)=5.14 m/s, q3(0)=5.14 m/s, yang menunjukkan kecepatan awal kapal selam. Parameter yang digunakan adalah mx=5, my=3.5, mz=3, Cd = 1, rho=1025.9kg/m3, Dx=150 m, Dy=15 m, Dz=20 m.. Sinyal square adalah sinyal bernilai tetap untuk selang waktu tertentu, sehingga dapat mewakili gangguan yang bersifat kontinyu pada selang tertentu. Pada simulasi ini diberikan sinyal square, yaitu bernilai kecil
Gambar 4.4 Grafik respon posisi untuk surging dengan gangguan sinyal square.
6
Simulasi ini dilakukan dengan mengubah nilai parameter pada sistem dinamika kapal selam untuk menguji sensitifitas sistem terhadap ketidakpastian dari dalam sistem. Parameter yang akan diubah adalah momen inersia. Pengujian estimasi terhadap gangguan internal ini dilakukan dengan memperbesar atau memperkecil parameter sesuai batasan yang diberikan. 1. mx=4.5, my=2, mz=1.5. Simulasi ini dilakukan dengan memperkecil nilai parameter dari nilai semula, sehingga diperoleh hasil pengujian seperti ditunjukkan pada gambar berikut:
Gambar 4.5 Grafik respon posisi untuk swaying dengan gangguan sinyal square.
Gambar 4.7 Grafik estimasi posisi untuk surging dengan parameter diperkecil.
Gambar 4.6 Grafik respon posisi untuk heaving dengan gangguan sinyal square. 4.3.3 Simulasi dengan gangguan internal
7
terlihat dari berapa besar error hasil estimasi untuk mencapai posisi yang diinginkan. Dari grafik diatas, terlihat bahwa untuk surging memiliki error hasil estimasi hampir 0.3 meter, untuk swaying memiliki error hasil estimasi hampir 0.4 meter. Sedangkan untuk heaving memilki error hasil estimasi juga mencapai 0.4 meter. 2. mx=5, my=4, mz=3.5. Simulasi ini dilakukan dengan memperbesar nilai parameter dari nilai semula, sehingga diperoleh hasil pengujian seperti ditunjukkan pada gambar :
Gambar 4.8 Grafik estimasi posisi untuk sway dengan parameter diperkecil.
Gambar 4.10 Grafik estimasi posisi untuk surging dengan parameter diperbesar
Gambar 4.9 Grafik estimasi posisi untuk heave dengan parameter diperkecil. Perubahan nilai parameter yang diperkecil, dapat mempengaruhi pergerakan kapal selam tersebut
8
dibandingkan dengan pada saat memperkecil parameter. Untuk posisi surging memiliki error hasil estimasi hampir 0.15 meter, untuk posisi swaying memiliki error hasil estimasi hampir 0.4 meter. Sedangkan untuk posisi heaving memiliki error hasil estimasi hampir 0.4 meter. Kedua hal tersebut di atas dapat menunjukkan bahwa metode EKF yang diterapkan pada sistem kapal selam dapat mengatasi gangguan internal berupa perubahan parameter yakni terlihat dari kecilnya error hasil estimasi. 5
Kesimpulan dan Saran Pada bab ini diberikan kesimpulan dari analisis dan pembahasan yang telah dilakukan terhadap estimasi posisi menggunakan metode EKF yang digunakan pada kapal selam. Selain itu, diberikan pula saran yang dapat dilakukan sebagai kelanjutan dari Tugas Akhir ini. 5.1 Kesimpulan Dari analisis dan pembahasan yang telah dilakukan pada bab sebelumnya diperoleh kesimpulan bahwa: 1. Metode Extended Kalman Filter yang digunakan pada kapal selam telah dapat diterapkan pada tiga derajat kebebasan translasi yaitu surging, swaying, dan heaving dengan menganggap tiga derajat kebebasan rotasi (pitching, yawing dan rolling) sebagai konstanta. 2. Hasil dari Extended Kalman Filter yang diterapkan pada kapal selam menghasilkan waktu respon yang cepat dan memiliki nilai error hasil estimasi yang relatif kecil, sehingga sangat membantu dalam mengoptimalkan kinerja dari kapal selam. Selain itu EKF memiliki kekurangan yaitu : a. Diperlukan ketelitian dalam merancangnya. b. Untuk sistem dinamis kapal selam, masih memerlukan penyesuaian parameter dalam pelaksanaan pada kondisi sesungguhnya.
. Gambar 4.11 Grafik estimasi posisi untuk sway dengan parameter diperbesar
5.2. Saran Adapun saran dari Tugas Akhir ini untuk penelitian selanjutnya adalah: 1. Metode EKF dapat diterapkan pada derajat kebebasan pitching, yawing dan rolling. 2. Penggunaan EnKF untuk penelitian berikutnya agar diperoleh hasil yang lebih baik, begitu pula dengan
Gambar 4.12 Grafik estimasi posisi untuk heave dengan parameter diperbesar Gangguan internal dengan memperbesar parameter yang terjadi pada sistem gerak kapal selam tidak terlalu menimbulkan efek cukup besar bila
9
penggunaan metode lain yaitu Fuzzy Logic Control (FLC) maupun kombinasi keduanya, Fuzzy Sliding Mode Control (FSMC). DAFTAR PUSTAKA [1] A. H. Techet. 2004. Morrison’s Equation.
[2] Budiyanto,D. 2001. Sistem Permesinan Kapal Selam. [3] Clancy, T., and Gresham, J. 2003. Submarine : A Guided Tour Inside A Nuclear Warship. Berkley Publishing Group. [4] Kristiawan, B. 2003. Studi Sistem Pengendalian Kedalaman Kapal Selam tipe 209/1300. Tugas Akhir, Sistem Perkapalan, ITS, Surabaya. [5] Nahon, M. 1996. A Simplified Dynamics Model for Autonomous Underwater Vehicles.http://ieeexplore.ieee.org/xpls/ abs_all.jsp?tp=&arnumber=532437&isn umber=11039 [6] Nisa, FP. 2009. Sistem Pengendali Gerak pada Kapal Selam Menggunakan Metode Sliding Mode Control. Tugas Akhir, Institut Teknologi Sepuluh Nopember, Surabaya. [7] Sodik, M. 2008. Perancangan kapal selam mini dengan performance hidrodinamika yang baik untuk memonitor limbah dan polusi di daerah pesisir pantai. Tugas Akhir, Teknik Perkapalan, ITS Surabaya. [8] Walchko, K. J., Novick, David, and Nechyba, M. C. 2003. Development of a Sliding Mode Control Sistem with Extended Kalman Filter Estimation for Subjugator, University of Florida Gainesville, FL, 32611-6200.
10