Bahasa Pemograman Arduino Konfigurasi Sistem IMU Pengujian Sistem Komunikasi Serial Pengujian Kalibrasi Sensor

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