0

Merhabalar, servo motorlar 0 ile 180 derece arasında bir açıda döndürebildiğimiz elektronik bileşenlerdir. İhtiyacımız olan güce göre çeşitli büyüklükte ve plastik ve metal dişlilere sahip modelleri bulunmaktadır. Bu yazıda Servo motorları Arduino ile nasıl bağlantı sağlayacağımızı ve istediğimiz açı değerinde servo motoru nasıl çevireceğimizi göreceğiz.

Arduino servo motor kontrolü için PWM pinlerinden yararlanıyoruz. Bu pinlerin yanında dalga (~) işaret bulunmaktadır. Servo motoru bu pinlerle kullanabilirsiniz. Servo motorun 3 adet bağlantı kablosu bulunmaktadır. Projelerde ve prototiplerde kullanılan hem yaygın hem de ekonomik olan SG-90 servo motorunda renkleri kahverengi, kırmızı ve turuncu olmaktadır. Bu kabloların özellikleri kahverengi (GND), kırmızı (5v), Turuncu (Dijital PWM Pin) sinyal pini olarak belirlenmiştir.

Nasıl Bağlantı Sağlarız?

Genelde kullanılan SG-90 servo motorun kablo renkleriyle devremizdeki servo motor temsili ile karşılaştırdığımızda sarı renkli kablo sg-90 da Turuncu, kırmızı renk yine kırmızı, siyah renk ise kahverengi kablo ile eşlenmiştir. Bağlantımızı yukarıdaki devreye göre sağladıktan sonra kodumuzu yazmadan Servo kütüphanesini Arduino IDE’ye eklememiz gerekiyor.

Arduino IDE’ye Kütüphane Ekleme

Arduino IDE’ye kütüphane ekleme işlemini 3 farklı yöntem ile gerçekleştirebiliriz. bu yöntemler;

  1. Arduino IDE kütüphane yükleme yöneticisi ile eklemek
  2. Arduino IDE içerisinden Zip dosyası olarak eklemek
  3. Doğrudan kütüphane klasörüne ekleme

Biz Arduino IDe kütüphane yükleme yöneticisi üzerinden servo kütüphanesini ekleyeceğiz. Diğer yöntemleri de Arduino ile uğraştıkça farklı sensör ve modüllerle çalışırken ihtiyaç duyduğunuzda deneyimleme şansını bulacaksınız.

Arduino IDE menüsünden TASLAKLAR / Library Ekle / Libraryleri Düzenle seçeneğini seçiyoruz.

Açılan penceyenin arama kısmına Servo yazarak servo kütüphanemizi kurabiliyoruz.

Arduino İle Servo Motor Kontrolü Uygulaması

#include <Servo.h>  // Servo kütüphanesini projemize ekledik.

Servo servoM;  // Servo nesnemizi oluşturduk, ismini servoM yaptık.
int pos = 0;    // pos değişkenini oluşturup 0’a eşitledik.

void setup() {
  servoM.attach(9);  // Servoyu 9nolu pin’e bağladığımızı belirttik.
}

void loop() {
  for (pos = 0; pos <= 180; pos += 1) { // For döngüsü ile 0 ile 180 derece arası gitmesini sağladık.
                                        // her bir adımda 1 derece artacak şekilde ayarladık.
    servoM.write(pos);              // Servo açı değeri olarak belirlediğimiz pos değişkenini servoya yazdırdık.
    delay(15);                       // servonun hedeflenen açıya gidebilmesi için 15 ms bekleme ekledik.
  }
  for (pos = 180; pos >= 0; pos -= 1) { // for döngüsü ile 180 ile 0 derece arası gitmesini sağladık.
    servoM.write(pos);              // Servo açı değeri olan pos değişkenini servo’ya yazdırdık.
    delay(15);                       // Servonun açı değerine gidebilmesi için 15 ms. bekleme ekledik.
  }
}
Ahmet Kemal YILDIZ
Eskişehir Osmangazi Üniversitesi Bilgisayar ve Öğretim Teknolojileri Öğretmenliği mezunu bir Bilişim Teknolojileri ve Yazılım Dersi Öğretmeniyim. Bilişim Teknolojileri ve Yazılım dersi ile ilgili ders etkinlikleri, kaynak materyaller, örnek etkinlikler ve Bilişim Teknolojileri hakkında ilgi duyduğum birçok konu hakkında vakit buldukça buradan blogluyorum. :)

    #6 Potansiyometre ile LED Parlaklığını Ayarlamak

    önceki yazı

    #8 Potansiyometre İle Servo Motor Kontrolü

    Sonraki Yazı

    Bu Yazılar da İlgini Çekebilir!

    Yorumlar

    Yorum yap

    E-posta hesabınız yayımlanmayacak. Gerekli alanlar * ile işaretlenmişlerdir

    Daha Arduino