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.