Yazılar Eğitimler Snap4Arduino Eğitimi

Joystick ile Karakter Kontrolü

Bu uygulamada bir önceki yazımızın sonunda yaptığımız uygulamayı farklı bloklar kullanarak yapacağız.

Ne yapacağız?

  • Arduino uno üzerine joystick’ten oluşan bir devre kuracağız
  • Kullanacağımız farklı blokları tanıyacağız.
  • Joystick’in çalışması için gerekli algoritmayı kuracağız.
  • Karakterin hareketini gözlemleyeceğiz.

Gerekli Malzemeler:

  • 1 Adet Arduino Uno
  • 1 Adet Joystick
  • 4 Adet iki ucu erkek kablo

Joystick modülümüzü Arduino’ya bağlayalım

  • Gnd pinini arduinonun Gnd pinine,
  • Vcc (5V) pinini arduinonun 5V pinine,
  • VRx pinini arduinonun A1 numaralı pinine,
  • VRy pinini arduinonun A2 pinine,

Şimdi programı oluşturabiliriz.

Bu programın diğerinden farkı karakterin hızı joystickin X ve Y değerine göre değişecek bunu oranla komutunu kullanarak yapacağız.

Joystick 0-1023 arasında değerler ürettiği için referans değer olarak bunları kullanacağız.

Karakterin +X yönündeki ilerlemesi en fazla 3 birim olacak, daha yüksek yaparsanız + yönündeki max. Hızı artacaktır

Aynı şekilde karakterin –X yönündeki ilerlemesi en fazla -3 olacaktır, daha düşük yaparsanız – yöndeki max. Hızı artacaktır.

Şimdi Y yörüngesine geçebiliriz.

Y yörüngesinde de eğer komutunu kulanarak yapalım.

Y 530’dan büyük olduğu zaman 520 den çıkaracak ve 100’e bölecek böylece Y değeri ne kadar büyük olursa Karakterin –Y yönündeki ilerlediği birim o kadar artacak.

Örneğin Y 700 olduğu zaman 700-520=180 olacak bu değeride 100’e bölüp 0’dan çıkaracağız. 180/100=1,8  0-1,8= -1,8 olacak.

Yani Y değeri 700 olduğu zaman karakterin Y yörüngesindeki ilerlemesi  -1,8 birim olacak.

Y 510’dan küçük olduğu zaman, 520’den Y çıkacak ve 100’e bölünecek. Burada ise Y değeri ne kadar küçük olursa Karakterin +Y yörüngesindeki ilerlediği birim o kadar artacak.

Örneğin Y 100 olduğu zaman 520-100=420 olacak bu değeride 100’e böleceğiz. 420/100=4,2 olacak.

Yani Y değeri 100 olduğu zaman karakterin Y yörüngesindeki ilerlemesi 4,2 birim olacak.

Şimdi programa geçebiliriz.

Programı çalıştırıp Joysticki hareket ettirdiğimizde Karakterin hareketini gözlemleyeceğiz.

İyi Eğlenceler.

 

Mert Dursun
subscriber