Sende Kodlama Yap

Bir Potansiyometre İle Bir Servo Motor Kontrolü

Servo motorlarla ilgili daha önce bilgilendirme yapmıştık ve servo motorlara belli kodlarla dönüş vermiştik.  Bu projede ayarlı direnç olan potansiyometre ile tek servo motor kontrolü sağlayacağız.

Bizim kullanacağımız klasik Servo motorlar data pininden verdiğimiz değerle dönme açısını ayarlıyoruz. 3 kablo var ortadaki kablo +5v’a, sarı kabloyu bizim belirlediğimiz dijital pinlerin birine diğer kabloyu da GND (-) bağlıyoruz. Burada motora 180 derecelik açı ile dönüş sağlıyoruz. (90 ile -90 arasında)

Not: Şayet Servo Motorun + ve – yanlış bağlarsanız Arduino karttaki tüm ışıklar söner. Bu da kısa devre olduğunu gösterir. + veya – den birinin bağlantısını çıkardığımızda Arduino kart normal haline döner.  

Gerekli Malzemeler

1-Arduino Uno(1 adet)

2-BreadBoard 

3-Servo Motor

4-Potansiyometre

5-Jumper Kablolar

Devremizin taslağını FritZing programıyla oluşturalım. Programda Breadboard kullanımına göre yapmış olsamda uygulamada direk kabloları arduino üzerineki pinlere taktım.

Devreyi çizdikten sonra sıra mBlock ile kodlamaya geldi. Kodlamada dikkat etmemiz gereken bir nokta var. Potansiyometreden gelen değerler 0-1023 arasında. Ancak ihtiyacımız olan değerler servo motorun dönüş açısı 0-180 derece arasındadır. Bunun için potansiyometreden gelen değerin servo motorun değerine dönüştürmemiz gerekiyor.Bunun için potansiyometre 1023 değerindeyken servo motor 180 derecede olacaktır. 1023den 180 değerini elde etmek için 1023/180=5,63 oran var arada. Yani biz potansiyometreden gelen değeri 5,63 böldüğümüzde servo motorun açı değerini oluşturabiliriz. Virgüllü sayılarla uğraşmamak için de direk 6 sayısına bölmeyi tercih ederiz.

Kodlamada iki yöntemi kullanabiliriz.

Birinci yöntem  12 nolu pine bağlı servo motorun açısını (A) 1 Analog pininden okunan değeri direk 6 ya bölmek. Bölme işleminin bloğunu işlemlerden ekleyebilirsiniz.

ikinci yöntem biraz karışık gibi görünebilir. Ancak programlamada tercih edilen yöntemdir.Derece diye bir veri oluşturup program başladığında bu değeri 0 yaparız. Sürekli tekrarla bloğunda (A) 1 Analog pininden okunan değeri direk 6 ya bölerek derece değişkenine aktarıyoruz. Sonra 12 nolu dijital pine bağlı servo pini açısını da derece yapıyoruz. Yani bir üst satırda yaptığımız işlem sonucunu Derece değişkenine aktardıktan sonra artık potansiyometreden gelen değer derece değişkenin de olduğu için 12 nolu pindeki servo motorun açısıda o değerde dönecektir.

Sıra da bağlantı yapılmış devre şeması ve çalışma videosu da.

Devreyi adım adım yapalım. İlk olarak BreadBoarda + ve – bağlayayım.

Sıra Potansiyometrenin bağlanmasına potansiyometrenin + ve – sini breadboard üzerindeki + ve – ye bağlayalım. Orta ucuda (A)1 analog pinine bağlayayım.

Servo motorun bağlantısı Yapalım. Servo motorumuzu 12 nolu pine bağlayayım turuncu data pinini. + ve – pinleride breadboard üzerindeki + ve – Pinlere bağlayalım.

 

ZİYARETÇİ YORUMLARI - 2 YORUM
  1. osman belder dedi ki:

    tebrikler çok düzenli bir site.

  2. Onur AŞIK dedi ki:

    Bende servo çalışmadı Yardım eder misiniz

BİR YORUM YAZ