Implementasi Sensor Inertia untuk Membangun Sistem Orientation Tracking dengan Menggunakan Algoritma TRIAD Arifian Prahata Hazairin. Sekolah Teknik Elektro dan Informatika, Institut Teknologi Bandung
[email protected] Abstraksi Perkembangan teknologi MEMS (Micro Electro Mechanical System) dan sensor magnetometer yang sangat pesat menyebabkan sensor tersebut mempunyai ukuran kecil dan mempunyai kehandalan tinggi sehingga mampu membawa teknologi navigasi kepada kehidupan sehari-hari.Attitude Determination adalah salah bidang ilmu navigasi yang digunakan untuk menetukan orientasi benda. Suatu sistem untuk menentukan transformasi 3 DOF (roll,pitch,yaw) atau orientation tracking akan dicoba diimplementasikan dengan menggunakan teknologi dan metode yang biasa digunakan untuk mengimplementasikan attitude determination Sistem penentuan orientasi benda atau orientation tracking pada tugas akhir kali ini diimplementasikan dengan menggunakan algoritma TRIAD serta dua buah sensor inersia.Sensor inersia pertama yang dipakai adalah sensor dari jenis sensor MEMS yaitu sensor accelerometer dan sensor inersia yang kedua adalah sensor magnetometer. Hasil pengukuran kedua sensor tersebut tersebut kemudian di visualisasikan pada suatu program animasi 3D dengan menggunakan library openGL sehingga akan terlihat orientasi 3 DOF hasil tracking nya Kata kunci: TRIAD,attitude determination,accelerometer,magnetometer
1. Pendahuluan Orientation tracking menjadi bidang applied technologies yang luas penggunaannya.Banyak industri yang secara intensif menerapkan orientation tracking untuk berbagai keperluan.Di industri hiburan salah satu aplikasi orientation tracking adalah motion capture atau motion tracking [1] aplikasi ini salah satunya berguna untuk menciptakan film animasi yang lebih realistik dan menghibur ,karena didasari oleh gerakan manusia yang sebenarnya. Karena orientation tracking merupakan bidang applied technologies,maka penerapan orientation tracking banyak mengandalkan teknologi yang telah ada sebelumnya.Attitude Determination yang biasa diguakan pada kontrol navigasi merupakan salah satu metode untuk menerapkan sistem orientation tracking.Untuk menerapkan orientation tracking diperlukan pengetahuan yang mendalam mengenai teknologi serta metdhologi matematis yang biasa digunakan pada Attitude Determination.Salah satu methode yang lazim digunakan adalah penggunaan sensor inertia magnetometer,accelerometer ditambah dengan penggunaan suatu algoritma sehingga dihasilkan suatu matriks attitude atatu matriks rotasi Perkembangan teknologi sensor MEMS(accelerometer,gyroscope) dan magnetometer telah mempermudah
pengembangan perangkat orientation tracking ini ,karena ukuran sensor tersebut menjadi kecil sehingga perangkat orientation tracking menjadi kecil sehingga lebih mudah dibawa. Dalam tugas akhir ini orientation tracking diimplementasikan dengan menggunakan algoritma TRIAD serta sensor inersia.Hasil perhitungan tersebut kemudian di visualisasikan pada suatu program animasi 3D dengan menggunakan library openGL. 2. Dasar Teori 2.1 Sensor Magnetometer Magnetometer adalah sensor untuk mengukur besar dan arah medan magnet.Dalam permasalahan AD (Attitude Determination) magnetometer dipergunakan untuk menentukan besar dan arah vektor magnet bumi.Bersama accelerometer sensor ini selain bisa dipergunakan untuk mendapatkan nilai matriks attitude juga dipergunakan sebagai factor koreksi dari penggunaan sensor gyroscope[1][2] 2.2 Sensor Accelerometer Accelerometer adalah sensor untuk mengukur percepatan dan percepatan gravitasi.Dengan perkembangan teknologi MEMS(Micro Electronics Mechanical Senso) sekarang telah ada accelerometer dalam ukuran kecil yang memiliki satu sumbu (single axis) atau banyak axis (multi axis) yang bisa untuk
1
mendeteksi besar dan arah percepatan sebagai besaran vektor. Accelerometers dapat juga dipergunakan untuk mendeteksi inklinasi,vibrasi dan goncangan. 2.3 Algoritma TRIAD Algoritma ini dinamakan TRIAD karena algoritma ini merekonstruksi matriks attitude dengan menggunakan dua buah triad(tiga sumbu) vector-vektor unit yang telah diketahui nilainya.Kedua buah triad tersebut berasal dari kerangka referensi yang sama,baik kerangka tubuh (body frame B) ataupun kerangka inersia (inertia frame I).Pada TRIAD diasumsikan bahwa salah satu pasang vector pengukuran pada kerangka referensi ,baik vector yang terdapat pada kerangka tubuh (B) dan vector pada kerangka inersia (I) mempunyai nilai yang valid.{attde.pdf) Sebagai contoh terdapat dua buah pasang triad vector unit hasil pengukuran yaitu ab , ai , mb , mi . ab adalah vector triad
r r r mi xai t 2i = r r mi xai
(2.4)
r r r t3b = t1b xt2b
(2.5)
r r r t3i = t1i xt2i
(2.6)
Setelah didapat komponen vektor t ,maka disusun vector-vektor tersebut menjadi sebagai berikut r r r (2.7) t1 b t 2 b t 3 b
[
]
[tr
1i
r r t 2 it3 i
]
(2.8)
Setelah itu dibentuk matriks rotasi 3x3 melalui perkalian matriks sebagai berikut
r r r R bi = R bt R ti = [t 1 b t 2 b t 3 b [tr1 i tr2 i tr3 i ] T
] (2.9)
pengukuran accelerometer pada kerangka tubuh, adalah vector triad pengukuran ai
Persamaan 2.9 adalah bentuk akhir dari algoritma TRIAD.
accelerometer pada kerangka inersia , mb adalah
Berikut adalah matriks rotasi dalam bentuk matriks DCM (Direction Cosine Matrix),kita sebut matriks Cbn
vector triad pengukuran magnetometer pada kerangka tubuh dan mi adalah vector triad pengukuran magnetometer pada kerangka inersia.Jika dianggap vektor pengukuran magnet bumi oleh magnetometer mempunyai nilai yang lebih valid ,maka vektor ini bisa ditetapkan r t untuk perhitungan sebagai vector basis TRIAD.Adapun pemaparan algoritma TRIAD selengkapnya adalah sebagai berikut :
r
r
Mengkonstruksi vektor magnetometer mb , mi sebagai vektor basis pertama pada algoritma TRIAD.
r r t1b = mb
(2.1)
r r t1i = mi
(2.2)
Kemudian mengkonstruksi vektor basis kedua TRIAD.
r r r mb xab t2b = r r mb xab
(2.10)
Matriks DCM adalah matriks orthogonal yang mempunyai sembilan elemen yang masing-masing anggotanya mempunyai urutan-urutan koefisien.Urut-urutan matriks DCM bisa direpresentasikan sebagai berikut
⎡ c11 c12 c13 ⎤ R = ⎢⎢c 21 c 22 c 23⎥⎥ ⎢⎣c31 c32 c33⎥⎦ bi
(2.3)
2
Dari sini bisa diketahui dengan jelas berapa nilai masing-masing sudut φ , θ ,ψ yaitu
PC Software ini diimplementasikan dengan menggunakan bahasa pemrograman Visual Basic 6
⎛ sinφ cosθ ⎞ ⎛ c32⎞ ⎟⎟ (2.11) ⎟ = arctan⎜⎜ ⎝ c33⎠ ⎝ cosφ cosθ ⎠
φ = arctan⎜
θ = arcsin(− c31) = arcsin(− sinθ )
(2.12)
⎛ cosθ sinψ ⎞ ⎛ c21⎞ ⎟⎟ (2.13) ⎟ = arctan⎜⎜ ⎝ c11⎠ ⎝ cosθ cosψ ⎠
ψ = arctan⎜
φ θ ψ
adalah besar sudut rotasi roll adalah besar sudut rotasi pitch adalah besar sudut rotasi yaw
Gambar 3.1 : PC software beserta system 4. Pengujian
3. Implementasi
4.1 Rotasi Roll, φ
3. 1 Diagram Sistem
a. Sudut
Berikut
adalah
diagram
penentuan dan visualisasi nilai attitude
φ =340.9501o
sistem yang
akan dibangun pada tugas akhir kali ini.
Gambar 3.1 : Diagram sistem keseluruhan
3.2 Hardware -
Mikrokontroler AT Mega 32 L Magnetometer 3-Axis Micromag 3 Accelerometer 3-Axis MMAQ7260Q
3.3 PC Software
3
b. Sudut
φ =-75.9138o
4.3 Rotasi Yaw, ψ
a. Sudut
ψ = 91,303 o
4.2 Rotasi Pitch, θ a. Sudut
θ =340.9501o
b Sudut ψ = 272.3838 o
b .Sudut
θ =-155.0655o
c. Sudut ψ = 179.027 0
b .Sudut
θ =-274.1288o
4
5. Kesimpulan •
•
•
Algoritma TRIAD ,sensor magnetometer serta sensor accelerometer dapat dipergunakan untuk traking orientasi pada sebuah objek. Pada orientasi rotasi pitch,yaw θ , ψ rentang sudut yang diperoleh adalah 0 s/d 360 derajat. Pada orientasi rotasi roll φ rentang sudut yang diperoleh adalah -90 s/d 90 derajat.
6. Referensi 1.
Setiawan, Nurul Arif, “Studi Simulasi Sistem
Motion
Tracking
Berbasis
Sensor Inersia,” Tugas Akhir Sarjana ,Departemen
Fisika
FMIPA
ITB,Bandung,2005. 2.
Adiprawita,Widyawardana,”Developme nt of Attitude and Heading Reference System
based
on
Inertial
Rate
Integration and TRIAD Algorithm” Lecture Task El 8003, School of Electric Engineering and Informatics ITB,2006. 3.
Hall, C., “Attitude Determination,” Course’s Note, Cornell University, CA.
5