Arduino Uno + MPU6050: Membaca Data Gyroscope dan Akselerometer

Arduino Uno + MPU6050: Membaca Data Gyroscope dan Akselerometer

Baca data gyro dan akselerometer dari sensor MPU6050 dengan Arduino Uno. Panduan wiring, kode, dan langkah praktis.

Pendahuluan

Sensor MPU6050 adalah modul gabungan gyroscope dan accelerometer yang sering digunakan dalam proyek robotika dan sistem navigasi. Dengan Arduino Uno, kita bisa membaca nilai rotasi dan percepatan dari sensor ini untuk mendeteksi gerakan atau orientasi benda. Artikel ini membahas cara menyambungkan MPU6050 ke Arduino dan membaca datanya melalui program sederhana.

Alat dan Bahan

Siapkan komponen berikut:

  • 1x Arduino Uno
  • 1x Modul MPU6050 (gyroscope + accelerometer)
  • Kabel jumper secukupnya

Wiring Diagram

Berikut wiring koneksi antara Arduino Uno dan MPU6050:

MPU6050Arduino Uno
VCC5V
GNDGND
SDAA4
SCLA5

Sensor MPU6050 menggunakan komunikasi I2C, jadi pin SDA dan SCL harus disambungkan ke A4 dan A5 pada board Arduino Uno.

Langkah-langkah Pemrograman

1. Library yang Dibutuhkan

Gunakan library mpu6050.h (pastikan sudah diinstal). Jika belum ada, kamu bisa mengunduh dari GitHub atau menggunakan versi standar seperti MPU6050 by Electronic Cats di Library Manager.

Selanjutnya masukkan kode lengkapnya.

2. Kode Lengkap Arduino

#include <Arduino.h>
#include <Wire.h>
#include <mpu6050.h>

mpu6050 sensor_garis;

void baca_sensor_garis(float &x, float &y, float &z) {
  int16_t gyroX = sensor_garis.getRotationX();
  int16_t gyroY = sensor_garis.getRotationY();
  int16_t gyroZ = sensor_garis.getRotationZ();
  float skalaFaktor = 131.0;
  x = gyroX / skalaFaktor;
  y = gyroY / skalaFaktor;
  z = gyroZ / skalaFaktor;
}

void setup() {
  Serial.begin(9600);
  Wire.begin();
  sensor_garis.initialize();
  Serial.println(sensor_garis.testConnection() ? "Koneksi berhasil" : "Koneksi gagal");
}

void loop() {
  float gyroX, gyroY, gyroZ;
  baca_sensor_garis(gyroX, gyroY, gyroZ);
  Serial.print("Gyro X: "); Serial.print(gyroX);
  Serial.print(", Y: "); Serial.print(gyroY);
  Serial.print(", Z: "); Serial.println(gyroZ);
}

Penjelasan Kode

  • Wire.begin();: Mengaktifkan komunikasi I2C.
  • sensor_garis.initialize();: Mengaktifkan sensor MPU6050.
  • getRotationX()getRotationY()getRotationZ(): Mengambil data rotasi dari sumbu X, Y, dan Z.
  • Skala faktor 131.0 digunakan untuk mengubah nilai raw ke derajat per detik (°/s).

Pengujian

  1. Upload program ke Arduino Uno.
  2. Buka Serial Monitor dengan baud rate 9600.
  3. Gerakkan sensor MPU6050.
  4. Lihat perubahan data gyro X, Y, dan Z di Serial Monitor.

Kesimpulan

Dengan menggabungkan Arduino Uno dan sensor MPU6050, kamu bisa membaca gerakan rotasi dan orientasi objek. Sensor ini sangat cocok digunakan untuk robot self-balancingdeteksi gerakan kepala, atau bahkan sebagai input kontrol permainan.

Diskusi lebih lanjut kontak di bawah :

Media sosial lainnya :

Baca juga :

Monitoring Kelembaban Tanah dengan Arduino UNO + Sensor Hygrometer

Cara Menggunakan Sensor Suara Dengan ESP32