e
sv

Arduino ile Servo Motor Kontrolü

212 Okunma — 29 Aralık 2018 23:05
avatar

Mehmet Ural

  • e 0

    Mutlu

  • e 0

    Eğlenmiş

  • e 0

    Şaşırmış

  • e 0

    Kızgın

  • e 0

    Üzgün

Gerekli malzemeler:

Servo motorlar, RC (radio controlled, uzaktan kumandalı) araba, helikopter ve uçak gibi araçlarda kullanılır. Bu motorlar, DC motorlardan farklı olmak üzere istediğimiz pozisyonda sabit kalacak şekilde tasarlanmıştır. Çoğunlukla 0-180 derece arası açılarda çalışırlar. RC arabamızın direksiyonunda, helikopterlerin pervanelerine açı vermede ve uçakların kontrol yüzeylerini hareket ettirmede kullanılırlar. PWM sinyal ile çalışırlar.

İlk uygulama örneklerimizde PWM’i analog voltaj çıkışı elde etmek için kullanmıştık. Fakat servo motorlarda PWM biraz daha farklı şekilde çalışmakta. Hatırlayacak olursak, Arduino’da analogWrite() komutu ile aldığımız PWM sinyalinin sadece 5V seviyesinde kaldığı süreyi (duty cycle) değiştirerek farklı analog sinyaller elde etmiştik. Servo motorlarda ise yine benzer şekilde 20 ms’lik sinyalin açık kaldığı periyodu 1 ms ile 2 ms arasında değiştirerek, servomuzu 0 dereceden 180 derece arasında istediğimiz konuma ayarlayabiliriz.

Bağlantılarımızı şekildeki gibi yapıyoruz:

Uygun koda Arduino programından

Dosya > Örnekler > Servo > Sweep

adımlarını takip ederek ulaşabilirsiniz. Bu kod, servomuzu önce 0 dereceden 180 dereceye adım adım ilerletecek; 180 dereceye ulaşınca da tekrardan 0 dereceye adım adım geri döndürecektir.

Farklı bir uygulama olarak servomuzun pozisyonunu Arduino’muza bağlayacağımız bir potansiyometre ile de kontrol etmemiz mümkün:

 

Bu devreye uygun koda da

Dosya > Örnekler > Servo > Knob

adımlarını takip ederek ulaşabilirsiniz.

 

Kaynak: Bu yazı Kerem İZGÖL’ün  https://maker.robotistan.com/arduino-dersleri-13-servo-motor-kontrolu/ adresindeki yazısından alınmıştır. Kendisine teşekkür ederiz.

etiketlerETİKETLER

Sıradaki içerik:

Arduino ile Servo Motor Kontrolü