Sende Kodlama Yap

İki Potansiyometre ile İki 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 iki potansiyometre ile  iki 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(2)

4-Potansiyometre(2)

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.

 

Derece1 ve Derece2 diye iki tane veri değişkeni oluşturup program başladığında değerlerini 0 yaparız. Sürekli tekrarla bloğunda (A) 0 Analog pininden ve (A) 1 Analog pininden okunan değeri direk 6 ya bölerek derece1 ve derece2 değişkenlerine aktarıyoruz. Sonra 12 dijital pine bağlı servo pini açısını da derece1 13 dijital pine bağlı servo pini açısını derece2  yapıyoruz. Yani bir üst satırda yaptığımız işlem sonucunu Derece1 ve Derece2 değişkenlerine  aktardıktan sonra artık potansiyometrelerden gelen değerler derece1 ve derece2 değişkenin de olduğu için 12 dijital pindeki ve 13 dijital pindeki servo motorların açısı Derece değişkelerindeki o değerde dönecektir.

Bunun daha farklı bir yöntemide var. Daha önce bunu anlatmıştık. Buradan bakabilirsiniz. Değişken kullanmadan direk pin açılarında bölme işlemlerini yaparak.

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

Daha önce sırayla bağlantı şekillerini göstermiştik. Buradan bakabilirsiniz. Burada farklı olarak iki tane servo motor ve iki tane potansiyometre bağlıyoruz. Servo motorların birinin data pini 13 nolu pine birini de 12 nolu pine bağlayacağız . + ve – lerini de diğer servo motorda olduğu gibi breadBoard üzerindeki + ve – lere bağlayacağız. Potansiyometreleriden data pinlerini de (A)0 ve (A)1 analog pinlerine bağlıyoruz.

 

ZİYARETÇİ YORUMLARI

Henüz yorum yapılmamış. İlk yorumu aşağıdaki form aracılığıyla siz yapabilirsiniz.

BİR YORUM YAZ