kecepatan sudut tersebut dapat diketahui sudut kemiringan suatu benda.
Gambar 2. 9 Konfigurasi Pin Sensor ITG-3200
2.10 Sensor Magnetometer
Sensor IMU umumnya terdiri dari kombinasi sensor percepatan accelerometer,
sensor angular gyroscope dan sebagian ada yang dilengkapi dengan sensor penentuan medan
magnet magnetometer
untuk menjejaki
keberadaan dan pergerakan suatu benda. Magnetometer adalah instrumen ilmiah yang
digunakan untuk mengukur kekuatan atau arah medan magnet di sekitar alat tersebut. Salah satu
contoh sensor magnetometer
yang dapat digunakan adalah sensor HMC58883L triple-
axis magnetometer. untuk konfigurasi pin sensor ini dapat dilihat di Gambar 2. 12,
sedangkan beberapa fitur dari sensor ini diantaranya adalah sebagai berikut.
Gambar 2.10 Konfigurasi Pin Sensor HMC5883L
2.11 Bahasa Pemograman Arduino
Arduino Uno adalah salah satu jenis dari versi keluarga lainnya, board ini
berbasis mikrokontroler pada ATmega328 , memiliki 14 digital inputoutput pin dimana
6 pin dapat digunakan sebagai output PWM, 6 input analog, 16 MHz osilator kristal,
konektor USB, konektor catu daya dan tombol reset. Pin-pin ini berisi semua yang
diperlukan untuk mendukung mikrokontroler untuk terhubung ke komputer dengan kabel
USB atau sumber tegangan bisa didapat dari adaptor
AC-DC atau
baterai untuk
menggunakannya. Arduino menggunakan pemograman dengan bahasa C. Berikut
tampilan dari board Arduino Uno.
Gambar 2. 11 Tampilan Framework Arduino IDE
2.12 Bahsa Pemograman Processing
Processing adalah
bahasa pemrograman dan lingkungan pemrograman
development environment open source untuk memprogram gambar, animasi dan
interaksi. Digunakan oleh pelajar, seniman, desainer, peneliti, dan hobbyist untuk
belajar, membuat prototype dan produksi. Processing digunakan untuk mengajarkan
dasar-dasar pemrograman komputer dalam konteks rupa dan berfungsi sebagai buku
sketsa
perangkat lunak
software dan tool produksi
profesional. Processing bebas untuk di download dan tersedia untuk
GNULinux, Mac OS dan Windows.
Gambar 2. 12 Tampilan Perangkat Lunak Processing
3. PERANCANGAN ALAT
Pada bab ini akan membahas sistem IMU yang dapat diamati pada Gambar 3. 1,
dimana pengiriman data dari accelerometer untuk pengukuran percepatan, gyroscope
untuk pengukuran kecepatan sudut dan magnetometer
untuk pengukuran medan magnet akan diolah dalam mikrokontroler
menggunakan metode algoritma Direct Cosine Matrix dengan keluaran berupa sudut
roll, pitch dan yaw. Setelah mendapatkan sudut orientasi sistem IMU akan mengirim
data melalui USB to Serial ke personal komputer.
Gambar 3. 1 Diagram Blok Sistem IMU
3.1 Konfigurasi Sistem IMU
Dalam tugas akhir ini akan digunakan sensor IMU jenis Razor IMU 9DoF, sensor
IMU jenis ini menggabungkan tiga sensor yaitu
ITG-3200 triple-axis
gyro, ADXL345 triple-axis accelerometer dan
HMC5883L triple-axis magnetometer yang sudah terintegrasi dan berfungsi
memberikan sembilan derajat pengukuran inersia. Output dari semua sensor diproses
oleh on-board ATmega328 dan di outputkan kembali melalui port USB ke personal
komputer. konfigurasi sistem dapat diamati pada Gambar 3. 2.
Gambar 3. 2 Konfigurasi Sistem IMU
3.2 Perangkat Lunak Razor IMU
Pada bagian ini akan dijelaskan program firmware Razor AHRS yang terdiri
dari dua bagian yaitu dari aplikasi software Arduino dan Processing. Pada bagian
aplikasi
software Arduino
akan menampilkan data melalui serial monitor
dan pada
bagian aplikasi
software Processing akan menampilkan simulasi
pergerakan obyek yaitu modul Razor itu sendiri dengan visualisasi grafis.
3.2.1 Program Arduino
Pada bagian
aplikasi software
Arduino data keluarannya ditampilkan di dalam serial monitor. Didalam program
tersebut 5 subprogram yaitu program Compass, DCM, Mathematic, Output dan
Sensors.
Fungsi dari
masing-masing subprogram adalah sebagai berikut.
1. Sensors : Mendeklarasikan variabel untuk inisialisasi I2C dari setiap sensor.
2. Output : Mendeklarasikan mode output seperti ouput angles, output calibration
dan output sensors. 3. Mathematic : Mendeklarasikan varibel
yang berfungsi sebagai komputasi dot dan cross product serta inisialisasi rotasi
matrik.
4. DCM : Mendeklarasikan varibel yang berfungsi
sebagai algoritma
Direct Cosine
Matrix yang
terdiri dari
Personal Komputer
Normalize, Drift correction, Matrix update dan Euler_Angles.
5. Compass : Mendeklarasikan variabel Compass Heading
untuk kompensasi kemiringan medan magnet di sumbu X
dan Y dan sebagai penunjuk arah medan magnet.
3.2.2 Program Processing
Processing adalah
bahasa pemrograman dan lingkungan pemrograman
development environment open source untuk memprogram gambar, animasi dan
interaksi. Digunakan oleh pelajar, seniman, desainer, peneliti, dan hobbyist untuk
belajar, membuat prototype dan produksi. Oleh karena itu, aplikasi software Processing
akan digunakan untuk menampilkan visualisasi grafis pergerakan dari modul
Razor IMU. Tampilan pada program Processing dan flowchartnya dapat dilihat di
Gambar 3. 3.
Gambar 3. 3 Tampilan Aplikasi Software Processing
4. PENGUJIAN DAN ANALISA
Pada bab
ini akan
membahas pengujian dan analisa dari sistem yang
digunakan. Pengujian ini terbagi menjadi beberapa bagian seperti : pengujian sistem
komunikasi serial, pengujian kalibrasi sensor accelerometer,
gyroscope dan
magnetometer, pengujian kirim command dan pengujian program Processing.
4.1 Pengujian Sistem Komunikasi Serial
Untuk pengujian sistem komunikasi antara modul Razor IMU dengan port serial
komputer dapat
dilakukan dengan
memanfaatkan aplikasi software Arduino dengan cara memilih menu “Tools” lalu
“Serial Monitor” dengan men-set baudrate 57600.
Pada pengujian ini diberikan
command ot untuk menampilkan sudut output dalam format teks. Berikut tampilan
dari pengujian serial monitor.
Gambar 4. 1 Pengujian Sistem Komunikasi
4.2 Pengujian Kalibrasi Sensor
Untuk mendapatkan nilai minimum dan maksimum agar bisa menggunakan
modul sensor ini maka dilakukan proses kalibrasi dengan cara mengirim command
on untuk kalibrasi setiap sensor. Berikut ini salah satu langkah kalibrasi sensor pada
accelerometer.
Gambar 4. 2 Pengujian Kalibrasi Sensor Accelerometer
Roll
: Pitch:
Yaw :
4.3 Pengujian Kirim Command