Merhaba arkadaşlar ! Arduino dersleri serimizin her bir adımında daha eğlenceli projeler yapıyoruz. Bugünkü yazımızda sizlere Arduino Joystick ile servo motor kullanımından bahsedeceğiz. Bu sayede hem joystick kullanmayı hem de servo motor kontrol etmeyi öğreneceğiz.

Bir önceki yazımızda ses sensörü modülü ve DC motor kullanmıştık >>> Arduino ve Ses Sensörü Modülü ile Motor Kontrolü

Gerekli Malzemeler:

Arduino ile Joystick Kullanımı

Joystick, iki eksende hareket etmeyi sağlayan iki potansiyometre bulunduran ve dikey hareketinde ise buton görevi gören bir modüldür. Joystick’leri genellikle oyun konsollarında ve uzaktan kumandalı araçlarda görürüz. Arduino ile uyumlu joystick modülleri ile birçok farklı proje yapılma imkanı vardır. Motor kontrolü, LED kontrolü, robotik kontroller gibi birçok farklı uygulama görmeniz mümkündür.

Arduino Joystick shield butonu, diğer butonların tersine çalışan bir karakteristiğe sahiptir. Yani bir pullup butondur. Butona basmadığımızda 1, bastığımızda ise 0 değerini okuruz. Aşağıda Joystick modülünün pinout yapısı bulunmaktadır. Dikey, yatay ve buton hareketlerinin hepsi için ayrı birer data pini bulunmaktadır. Modülün çalışabilmesi için ise 5V ve GND beslemesinin yapılması gerekmektedir.

Arduino ile Servo Motor Kullanımı

Servo motorlar sayesinde çok hassas pozisyon kontrolü yapmak mümkündür. Çoğunlukla çalışma açıları 0-180 derece arasındadır. Arduino’da servo motor kontrol kodları bulunmaktadır. Bunlar için Arduino’da Dosya>Örnekler>Servo>Sweep ve Dosya>Örnekler>Servo>Knob komutlarını takip etmeniz gerekecektir.

Servo Motor İçin Neden PWM Pinleri Kullanmalıyım?

Arduino’da Servo Motorlar PWM sinyali ile çalışırlar. PWM’in Türkçe açılımı Sinyal Genişlik Modülasyonudur ve bu sinyaller mikrokontrolcülerden veya uzaktan kumandalardan sağlanırlar. PWM pinleri ile servonun tam dönüş açısı ve dönüş süresi kontrol edilebilmektedir.

Arduino PWM Pinleri: 3, 5, 6, 9, 10, 11

Servo motorlar, çalışma prensipleri ve PWM pinleri hakkında detaylı bilgiye buradan ulaşabilirsiniz.

Hadi devremizi kuralım !

Arduino Joystick ile Servo Motor Kontrolü

Gerekli Joystick kodlarını yazalım !

#include 

Servo motor;

int deger;
int derece;

void setup() {
  motor.attach(3);

}

void loop() {

  deger = analogRead(A0);
  derece = map(deger, 0,1023,0,180);
  motor.write(derece);

}

CEVAP VER

Please enter your comment!
Please enter your name here