L3G4200 (GY-50) modülü dijital veri gönderimine sahip 3 eksenli bir jiroskoptur ve temel görevi 3 eksendeki dönüş hareketlerini ölçmektir.
L3G4200 modülü I2C veri iletişim arayüzünü destekliyor ve bu sayede Arduino’ya kolaylıkla bağlanabiliyor. Çip aslında 3,3 Volt ile çalışıyor ancak modül üzerinde bulunan gerilim regülatörü sayesinde Arduino’da 5 Volt ile kullanılabiliyor.
Lafı uzatmadan devre kurulumuna geçelim;
Devremiz alışık olduğumuz standart bir I2C bağlantısı. A4 ve A5 pinleri yerine üst headerlardaki SCL ve SDA pinleri de kullanılabilir.
Sketch’de Pololu‘nun hazırladığı L3G kütüphanesini kullanıyoruz. Bu kütüphane Arduino’nun kendi kütüphane kataloğunda yer alıyor ve Araçlar > Kütüphaneleri Yönet… menüsünden adıyla aratılıp kurulabilir.
Aşağıdaki sketch L3G4200 (GY-50) modülüne bağlanıyor ve modülden gelen ham verileri Seri Port Ekranı’nda görüntülüyor. Seri Port Ekranı üzerinde görüntülenen ham veriler bize biraz karmaşık gelebilir, Seri Çizici’yi açarak daha eğlenceli bir grafik elde edebiliriz. Gyro verilerini Seri Çizici’de görüntülerken modülü 3 eksende de çevirmeliyiz.
Arduino’da iyi olmak için öncelikle elektronikte iyi olmak gerekir. Türkiye’nin en iyi temel elektronik eğitim seti ARDUINO ÖNCESİ TEMEL ELEKTRONİK EĞİTİM VE DENEY SETİ‘ni keşfedin. Gereksiz bilgilerden arındırılmış basit ve eğlenceli anlatımla ELEKTRONİK öğrenin ve Arduino’ya METE HOCA farkıyla güçlü başlayın!
Sketch kodunu kopyalamak için pencerenin sağ üst köşesindeki butona tıklayabilir veya buraya tıklayarak ZIP dosyası olarak indirebilirsiniz.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 |
/* L3G4200 (GY-50) Gyro Modülü Arduino ile Nasıl Kullanılır? L3G4200 (GY-50) Gyro modülünün detaylı açıklaması ve örnek projelerini web sitemizde bulabilirsiniz. Mete Hoca https://www.metehoca.com/ */ #include <Wire.h> // Dahili I2C kütüphanesi #include <L3G.h> // Pololu'nun L3G kütüphanesi L3G gyro; // Kütüphane tanımlanıyor void setup() { Serial.begin(9600); // Seri Port Ekranı başlatılıyor Wire.begin(); // I2C kütüphanesi başlatılıyor gyro.init(); // Gyro kütüphanesi başlatılıyor gyro.enableDefault(); // Gyro okumayı başlatıyoruz } void loop() { gyro.read(); // Gyro verileri okunuyor Serial.print("X:"); // Seri Çizici için etiket Serial.print(gyro.g.x); // X ekseni yazılıyor Serial.print("\t"); // Seri Çizici için bitirme işareti Serial.print("Y:"); Serial.print(gyro.g.y); // Y ekseni yazılıyor Serial.print("\t"); Serial.print("Z:"); Serial.println(gyro.g.z); // Z ekseni yazılıyor delay(100); // Okumalar arasında biraz bekleyelim } |