opamp_resmi
Opamp nedir? Nasıl çalışır? (2)
28 Mart 2013
Cep telefonu dedektörü
29 Mart 2013
mg995servo1

Servo motorlar yüksek torklara sahip olması ile bilinirler genellikle 180 derece bir dönüş yaparlar. Fakat içerisinde ki dişlilerde değişiklik yaparak 360 derece döndürmek de mümkündür.

Bu proje ile servo motora 180 derece dönüş vermeyi göreceğiz.

Malzemeler 

  • 1 adet Servo motor
  • 1 adet arduino bordu

Öncelikle servo motoru biraz tanımak gerek.

mg995servo1

Burada towerpro firmasının bir servo motorunu görüyorsunuz. Bu motor genellikle helikopterlerde uzaktan kumandalı araçlarda kullanılıyor. 3 adet girişi var bunlar

Siyah= Toprak

Kırmızı= Besleme

Beyaz-Sarı-Turuncu= Sinyal

Bunlar genel olarak kabloların dağılımı fakat kimi zaman bu değişebilir.

Kablo renkleri farklı olsada amaç aynı beslemeler bağlanır. Yalnız burada dikkat edilmesi gereken servonun toprağı ile kullanacağınız mikroişlemcinin toprağının aynı olması gerekir. Olmadığında çalışmıyor.

Servoların içerisinde bir adet potansiyometre bulunur. Bu potansiyometre üzerinde bulunan çarkın konumunu anlamasını sağlar yani servo motorun hangi açılık dönüş yaptığını sürekli takip eder. Bu bir anlamda geri beslemedir. Geri besleme gerilim ile anlık olarak durumu kabul eder.

Servo motorların belli bir sinyal aralığı bulunur. Bir örnek vermek gerekirse 900usn ile 5400usn bu kadar uzunlukta bir sinyal gönderildiğinde 180 derecelik bir dönüşü tamamlar.

arduino ve servo

Servo motor ile bağlantısı bu şekilde hangi porttan sinyal gönderecekseniz o port sarı diğerleri ise besleme ve toprağa bağlanır.

 

 

 

 

 

arduino servo motor şematik

 

 

 

Eğer board üzerinde kurmayacaksanız. Devre şeması bu şekilde

 

 

 

 

 

 

"]#include <Servo.h> Servo myservo;  // Servo fonksiyonu tanımlandı.int pos = 0;    // pozisyonu için değişkenvoid setup() {   myservo.attach(9);  //pin 9 a baglanti} void loop() {   for(pos = 0; pos < 180; pos += 1)  // 0dan 180 dereceye gidiyor   {                                  // adımlar 1 derece    myservo.write(pos);              // pos değişkeni ile pozisyonu bildiriyor.    delay(15);                       // yeni pozisyon için 15ms bekleme  }   for(pos = 180; pos>=1; pos&minus;=1)     // 180 dereceden sıfır dereceye gidiyor.  {                                    myservo.write(pos);              // Pozisyonu yazdırıyoruz    delay(15);                       // 15ms gecikme  } }

Kodumuz

Bir önceki yazımız olan Otomatik pencere açıp kapama projesi başlıklı makalemizde Otomatik pencere açıp kapama projesi hakkında bilgiler verilmektedir.

[sociallocker id="10094"][printfriendly][/sociallocker]
SelimErkan
SelimErkan
Karadeniz Teknik Üniversitesi Elektrik Elektronik Mühendisliği

1 Comment

  1. […] Arduino ile servo motor kontrolü konusunda biraz servo motorlardan bahsetmiştim. […]

Bir Cevap Yazın