Servo Motor

Servo motoru belirli bir açıya döndürerek bir mekanizmayı kontrol etmeyi öğren.

DERS PUSULASI

Bu sayfayı ne için kullanacaksın?

Ana fikir

Servo motor, ona söylediğimiz belirli bir açıya (çoğunlukla 0–180 derece arası) dönen ve orada duran bir motordur; bu yüzden bir kolu, kapağı veya direksiyonu hassas biçimde hareket ettirmek için kullanılır.

Üretilecek kanıt

Bu uygulama için bir servo motor, bir micro:bit ya da Arduino, birkaç bağlantı kablosu ve karton bir kol yeterli. Bir yetişkinle birlikte yap. Servonun sinyal kablosunu kartın bir pinine, artı ve eksi kablolarını uygun güç ucuna bağla. Servonun ucuna küçük bir karton parçasını bant ile tuttur; bu senin “kolun” olacak. Servoyu önce 0 dereceye, sonra 90…

Kontrol tuzağı

Servoyu sürekli dönen motor sanmak Servo tam tur atmaz; sadece belirli bir açı aralığında (çoğunlukla 0–180 derece) hareket eder. Tekerleği sürekli döndürmek istiyorsan servo değil, bir sonraki derste göreceğimiz DC motor gerekir. 180 dereceden fazlasını zorlamak Servoya write(200) gibi aralık dışı bir değer vermek…

Sonraki bağlantı

DC Motor ve Motor Sürücü: Sürekli dönen motorları tanıyacak ve onları güvenle çalıştırmak için neden bir motor sürücüye ihtiyaç duyduğumuzu göreceğiz.

Modül kaynakları: Python Tutorial · Arduino Learn

SeviyeBaşlangıç
Yaş10–16
Süre30–45 dk
Ön koşulNem Sensörü
İçerikStandart ders · 1.503 kelime
Son güncelleme

Bir cümlelik özet

Servo motor, ona söylediğimiz belirli bir açıya (çoğunlukla 0–180 derece arası) dönen ve orada duran bir motordur; bu yüzden bir kolu, kapağı veya direksiyonu hassas biçimde hareket ettirmek için kullanılır.

Neden önemli?

Şimdiye kadar sensörlerle çevreyi *ölçmeyi* öğrendik. Nem sensörü toprağın kuru mu ıslak mı olduğunu söyleyebiliyordu. Ama ölçmek tek başına yeterli değil. Robotun ölçtüğü bilgiye göre bir şey *yapması* gerekir. İşte bu noktada aktüatör kelimesi devreye girer: aktüatör, elektrik sinyalini harekete çeviren parçadır. Servo motor da bir aktüatördür.

Günlük hayatta servo motorları fark etmeden çok kullanırız. Bir uzaktan kumandalı arabanın direksiyonunu çeviren, bir robot kolun bileğini büken veya bir oyuncak dinozorun ağzını açıp kapatan çoğu zaman küçük bir servo motordur. Sensör “neyin olduğunu” anlatır; servo motor ise robota “ne yapacağını” gösterme yollarından biridir.

Bu ders, ölçmekten hareket etmeye geçtiğimiz ilk adımdır.

Servo motor ne yapar?

Belirli bir açıya döner

Sıradan bir motoru düşün: açtığında sürekli döner, döner, döner. Bir vantilatör ya da tekerlek gibi. Servo motor ise farklıdır. Servoya “90 dereceye git” dersen, tam 90 dereceye döner ve orada durur. “0 dereceye git” dersen başlangıç konumuna geri döner.

Çoğu eğitim servosu 0 ile 180 derece arasında hareket eder. Yani yarım bir daire çizecek kadar dönebilir, tam tur atamaz.

Bunu bir kapı kolu gibi düşünebilirsin:

Sen hangi açıyı istersen, servo o açıya gider ve senden yeni bir komut gelene kadar orada kalmaya çalışır.

İçinde neler var? (basit fikir)

Servo motorun kutusunu açsaydık şunları görürdük:

Bu devre sürekli şunu kontrol eder: “Benden istenen açı ne? Şu an hangi açıdayım?” İkisi farklıysa motoru doğru yöne biraz döndürür. İkisi aynı olunca durur. Bu yüzden servo, istenen açıyı bulup orada kalabilir. Buna kapalı çevrim, yani kendini sürekli kontrol eden bir sistem denir.

Servoyu nasıl kontrol ederiz?

Sinyal ile konuşuruz (kavramsal)

Servonun üç kablosu vardır:

Servoya açıyı sinyal kablosundan gönderdiğimiz kısa elektrik darbeleriyle söyleriz. Kart, saniyede yaklaşık 50 kez küçük bir darbe gönderir. Bu darbenin uzunluğu açıyı belirler. Uzunluğu değiştirerek açıyı ayarlama yöntemine PWM (Türkçesi darbe genişliği ayarı) denir.

Kabaca:

İyi haber şu: bu darbeleri elle hesaplamamıza gerek yok. micro:bit veya Arduino gibi kartlarda hazır komutlar bu işi bizim yerimize yapar. Biz sadece istediğimiz açıyı yazarız.

Örnek kod: bir kolu hareket ettir

Diyelim ki servoya bir karton kol taktık ve onu iki konum arasında sallamak istiyoruz. Önce fikri sözde kod ile yazalım:

Başla
Sürekli tekrarla:
  Servoyu 0 dereceye gönder
  1 saniye bekle
  Servoyu 180 dereceye gönder
  1 saniye bekle

Aynı fikir Arduino tarzında şöyle görünür:

#include <Servo.h>
Servo kol;              // servomuza "kol" adını verdik

void setup() {
  kol.attach(9);        // servo sinyali 9 numaralı pine bağlı
}

void loop() {
  kol.write(0);         // 0 dereceye git
  delay(1000);          // 1 saniye bekle
  kol.write(180);       // 180 dereceye git
  delay(1000);          // 1 saniye bekle
}

Kodun mantığı sözde kodla birebir aynı: bir açıya git, bekle, öteki açıya git, bekle, tekrarla.

Örnek: bir kapağı sensöre göre aç

Servoyu tek başına değil, önceki derslerdeki sensörlerle birleştirince robotik başlar. Örneğin bir kutu kapağını, biri yaklaştığında açan basit bir mantık:

Başla
Sürekli tekrarla:
  Mesafeyi oku
  Eğer mesafe 15 santimetreden küçükse
    Servoyu 90 dereceye gönder   (kapak açık)
  Değilse
    Servoyu 0 dereceye gönder    (kapak kapalı)

Burada sensör *ölçüyor*, servo ise ölçüme göre *hareket ediyor*. Modülün tamamı aslında bu iki fikri birleştirmekle ilgili.

Mini uygulama

Bu uygulama için bir servo motor, bir micro:bit ya da Arduino, birkaç bağlantı kablosu ve karton bir kol yeterli. Bir yetişkinle birlikte yap.

  1. Servonun sinyal kablosunu kartın bir pinine, artı ve eksi kablolarını uygun güç ucuna bağla.
  2. Servonun ucuna küçük bir karton parçasını bant ile tuttur; bu senin “kolun” olacak.
  3. Servoyu önce 0 dereceye, sonra 90 dereceye, sonra 180 dereceye gönderen bir program yaz. Her açı arasında 1 saniye beklet.
  4. Kolun her seferinde tam olarak aynı üç konuma gidip gitmediğini gözle.
  5. Şimdi açıları değiştir: 0, 45, 90, 135, 180. Kolun hareketi nasıl değişti?

Not defterine şunu yaz: Kola bir açı verdiğinde tahmin ettiğin yere gitti mi? Gitmediyse bunun bir sonraki derste tartışacağımız bir “hata ayıklama” sorusu olduğunu unutma.

Uygulama laboratuvarı: Servo Motor

Servo Motor konusunu kalıcı hâle getirmenin en iyi yolu, kavramı küçük ve ölçülebilir bir göreve dönüştürmektir. Bu çalışmada Servo motor ne yapar? ile İçinde neler var? (basit fikir) arasındaki ilişkiyi kullanarak ölçüm tablosu, kalibrasyon kararı ve güvenli çıktı davranışı hazırlayacaksın. Amaç yalnız sonucun çalışması değil; hangi kararı neden verdiğini, neyi test ettiğini ve hangi durumda tasarımı değiştireceğini açıklayabilmektir.

Görev senaryosu

Şu senaryoyu ele al: sıcaklık değişimini ölçüp eşik aşımını bildiren düzenek. Dersin ana hedefi “Servo motoru belirli bir açıya döndürerek bir mekanizmayı kontrol etmeyi öğren” olduğuna göre önce problemi tek cümleyle tanımla. Ardından sistemin alacağı girdiyi, uygulayacağı işlemi ve üreteceği çıktıyı ayrı ayrı yaz. Bilmediğin bir ayrıntı varsa onu varsayım olarak işaretle; varsayımı gerçek bilgi gibi kullanma.

  1. Planla: Başlangıç durumunu, beklenen sonucu ve kullanacağın kavramları yaz.
  2. En küçük sürümü kur: Yalnız temel davranışı çalıştır; süsleme ve ek özellikleri sonraya bırak.
  3. Üç test hazırla: Normal bir durum, sınırda bir durum ve hatalı ya da beklenmeyen bir durum seç.
  4. Sonucu kaydet: Beklenen ile gerçekleşeni yan yana yaz; fark varsa olası nedeni belirt.
  5. Tek değişiklik yap: Aynı anda birçok şeyi değiştirmek yerine bir kararı düzeltip testi yeniden çalıştır.

Başarı ölçütleri

“Servo Motor” çalışmasını bitirdiğinde ürünü bir arkadaşına yalnız bölüm başlıklarıyla anlat. Arkadaşın sıcaklık değişimini ölçüp eşik aşımını bildiren düzenek senaryosundaki adımları ve karar nedenlerini takip edebiliyorsa anlatım yeterince açıktır. Anlaşılmayan noktayı daha fazla terim ekleyerek değil, Servo motor ne yapar? ve İçinde neler var? (basit fikir) ilişkisini daha küçük adımlara bölerek düzelt.

Sık yapılan hatalar

Servoyu sürekli dönen motor sanmak

Servo tam tur atmaz; sadece belirli bir açı aralığında (çoğunlukla 0–180 derece) hareket eder. Tekerleği sürekli döndürmek istiyorsan servo değil, bir sonraki derste göreceğimiz DC motor gerekir.

180 dereceden fazlasını zorlamak

Servoya write(200) gibi aralık dışı bir değer vermek işe yaramaz ve motoru zorlayabilir. Değerleri 0 ile 180 arasında tut.

Servoyu doğrudan kartın pininden beslemek

Küçük bir servo bile hareket ederken kartın verebileceğinden fazla akım çekebilir. Bu, kartın kilitlenmesine veya yeniden başlamasına yol açar. Güç için kartın uygun güç ucunu ya da ayrı bir düşük gerilimli pil paketini kullan.

Kolu takarken servoya güç vermek

Servoyu elle çevirirken enerji verirsen hem parmağın sıkışabilir hem de dişliler zarar görebilir. Kolu tak, sonra gücü ver.

Güvenlik notu

Servo motor hareketli bir parçadır. Küçük olsa da güvenlik kurallarına uyulmalıdır:

Ders özeti

Kontrol soruları

  1. Servo motorla sürekli dönen sıradan bir motor arasındaki temel fark nedir?
  2. Çoğu eğitim servosu hangi açı aralığında hareket eder?
  3. Servoya istediğimiz açıyı hangi kabloyla ve nasıl (kavramsal olarak) söyleriz?
  4. Servoyu neden doğrudan kartın pininden beslememeliyiz?
  5. Bir sensörle bir servoyu birleştirdiğimizde her biri hangi görevi üstlenir?

Cevaplar

  1. Sıradan motor açıldığında sürekli döner; servo ise belirli bir açıya gidip orada durur.
  2. Çoğunlukla 0 ile 180 derece arasında; yani yaklaşık yarım daire.
  3. Turuncu/sarı sinyal kablosundan gönderilen kısa elektrik darbeleriyle. Darbenin uzunluğu açıyı belirler; buna PWM denir. Kart bu darbeleri bizim için üretir.
  4. Servo hareket ederken kartın verebileceğinden fazla akım çekebilir; bu da kartı yeniden başlatabilir veya zarar verebilir. Bu yüzden uygun güç ucu ya da ayrı düşük gerilimli kaynak kullanılır.
  5. Sensör çevreyi ölçer (örneğin mesafe), servo ise bu ölçüme göre hareket eder (örneğin kapağı açar).

Kaynak ve doğrulama notu

“Servo Motor” dersi için doğrulama odağı Servo motor ne yapar? ile İçinde neler var? (basit fikir) arasındaki ilişkinin örnekler üzerinde tutarlı çalışmasıdır. Sensör değerleri modele, besleme gerilimine ve ortama göre değişebilir. Bu nedenle derslerdeki eşikler örnek kabul edilmeli; gerçek projede ölçüm tablosu oluşturularak kalibrasyon yapılmalıdır.

Sonraki ders

DC Motor ve Motor Sürücü: Sürekli dönen motorları tanıyacak ve onları güvenle çalıştırmak için neden bir motor sürücüye ihtiyaç duyduğumuzu göreceğiz.

Quiz’i BaşlatSensörler ve Aktüatörler bölümüne dön
SORU HAVUZU

Bu dersi 10 soruyla pekiştir

Bu ders için 20 soruluk bir havuz hazırlandı. Her başlangıçta 10 soru ve seçenekler yeniden karıştırılır.