Arduino XY Joystick Modül
XY Joystick modülü, X ve Y eksenlerinde hareketi algılayan ve bir butona sahip olan bir giriş cihazıdır. Genellikle robot kontrolü, oyun konsolları, drone kumandaları gibi projelerde kullanılır. Modül, iki adet potansiyometre içerir; bunlar X ve Y eksenlerindeki hareketleri algılar ve analog sinyaller üretir. Ek olarak, joystick üzerine basıldığında bir buton tetiklenebilir.
1. XY Joystick Modülü Özellikleri
- Çalışma Voltajı: 3.3V veya 5V
- Çıkış Voltajı: 0V - 5V (Bağlı olduğu sistemin besleme gerilimine göre değişir)
- X Ekseni (VRX): Analog çıkış (0V - 5V arası)
- Y Ekseni (VRY): Analog çıkış (0V - 5V arası)
- Buton (SW): Dijital çıkış (0 veya 1)
- Boyut: Küçük ve breadboard ile uyumlu
2. XY Joystick Modülü Pinleri ve Bağlantıları
Joystick modülünün 5 pini vardır:
Pin Adı |
Açıklama |
GND |
Toprak (Arduino GND’ye bağlanır) |
VCC |
Güç girişi (Arduino 5V veya 3.3V) |
VRX |
X ekseni için analog çıkış (Arduino A0) |
VRY |
Y ekseni için analog çıkış (Arduino A1) |
SW |
Buton çıkışı (Dijital, Arduino D2) |
Bağlantılar şu şekilde yapılır:
Joystick Modülü |
Arduino |
GND |
GND |
VCC |
5V |
VRX |
A0 |
VRY |
A1 |
SW |
D2 |
3. Arduino ile XY Joystick Kullanımı
Aşağıdaki kod, joystick’in X ve Y eksenindeki hareketlerini ve buton durumunu okuyarak seri port üzerinden görüntüler.
Arduino Kod Örneği
const int VRX_PIN = A0; // X ekseni çıkışı
const int VRY_PIN = A1; // Y ekseni çıkışı
const int SW_PIN = 2; // Buton çıkışı
void setup() {
Serial.begin(9600); // Seri haberleşmeyi başlat
pinMode(SW_PIN, INPUT_PULLUP); // Buton için pull-up direnci etkinleştir
}
void loop() {
int xValue = analogRead(VRX_PIN); // X ekseni değerini oku
int yValue = analogRead(VRY_PIN); // Y ekseni değerini oku
int buttonState = digitalRead(SW_PIN); // Buton durumunu oku
Serial.print("X: ");
Serial.print(xValue);
Serial.print(" | Y: ");
Serial.print(yValue);
Serial.print(" | Buton: ");
Serial.println(buttonState);
delay(200); // Okuma frekansını ayarla
}}
4. Kod Açıklaması
- analogRead(VRX_PIN): X ekseninin pozisyonunu okur (0-1023 arası değer).
- analogRead(VRY_PIN): Y ekseninin pozisyonunu okur (0-1023 arası değer).
- digitalRead(SW_PIN): Joystick’in üzerindeki butona basıldığında 0, basılmadığında 1 döndürür.
- Seri monitörde joystick hareketlerine göre X ve Y ekseni değerleri görüntülenir.
5. Joystick Modülü ile Yapılabilecek Projeler
- Robot Kontrolü: X ve Y ekseni, motor sürücülerle birleştirilerek robotun yönlendirilmesini sağlar.
- RC Araçlar: Joystick, bir radyo frekans modülü (NRF24L01) ile kablosuz araç kontrolü için kullanılabilir.
- Oyun Kumandası: Bilgisayara bağlanarak joystick ile oyun oynanabilir.
- Servo Motor Kontrolü: X ve Y ekseni hareketleri servo motorlarla entegre edilerek kamera yönlendirme yapılabilir.