Projelerinizde nesnelerin eğimini ölçmek, kendi kendine dengede duran bir robot yapmak veya uzaktan kumandalı araçlarınızda hassas yön takibi sağlamak istiyorsanız, MPU6050 tam size göre bir sensördür. İçerisinde 3 eksenli bir ivmeölçer ve 3 eksenli bir jiroskop bulunduran bu modül, I2C protokolü üzerinden Arduino ile haberleşir.

Görsel: MPU6050 sensör modülü ve bağlantı yapısı
Sensörden gelen veriler ham değerlerdir; ivmeölçer yerçekimi ivmesini, jiroskop ise açısal hızı ölçer. Bu verileri daha okunabilir hale getirmek için genellikle kütüphaneler kullanılır. MPU6050 kullanırken şu 4 pin bağlantısı kritiktir:
Bu uygulamada Adafruit MPU6050 kütüphanesini kullanarak sensörden gelen İvme (Acceleration), Jiroskop (Gyro) ve Sıcaklık verilerini seri monitöre yazdıracağız.
#include <Adafruit_MPU6050.h>
#include <Adafruit_Sensor.h>
#include <Wire.h>
Adafruit_MPU6050 mpu;
void setup(void) {
Serial.begin(115200);
if (!mpu.begin()) {
Serial.println("MPU6050 bulunamadı!");
while (1) { delay(10); }
}
Serial.println("MPU6050 Başlatıldı!");
}
void loop() {
sensors_event_t a, g, temp;
mpu.getEvent(&a, &g, &temp);
// İvmeölçer Verileri
Serial.print("Ivme X:"); Serial.print(a.acceleration.x);
Serial.print(" Y:"); Serial.print(a.acceleration.y);
Serial.print(" Z:"); Serial.print(a.acceleration.z);
Serial.println(" m/s^2");
// Jiroskop Verileri
Serial.print("Jiro X:"); Serial.print(g.gyro.x);
Serial.print(" Y:"); Serial.print(g.gyro.y);
Serial.print(" Z:"); Serial.print(g.gyro.z);
Serial.println(" rad/s");
Serial.println("------------------------------------");
delay(500);
}
Not: Bu kodu çalıştırmadan önce Arduino IDE'nizin "Kütüphaneleri Yönet" kısmından Adafruit MPU6050 ve Adafruit Unified Sensor kütüphanelerini kurduğunuzdan emin olun.
Henüz yorum yapılmamış. İlk yorumu siz yapın!