Panduan Dasar Kode Program Joystick dan Arduino

Posted on

Joystick & Arduino

A. Latar Belakang

Cara Menggunakan Joystick Dengan Arduino – Joystick adalah salah satu komponen elektronik yang memiliki tuas dapat digerakkan beberapa arah. Tuas digunakan untuk mengontrol posisi pada arah tertentu atau koordinat.

Joystick memiliki dua sumbu, yaitu sumbu X dan Y. Beberapa jenis joystick juga memiliki sebuah tombol. Pada tutorial kali akan digunakan joystick analog seperti pada gambar berikut.

Cara Menggunakan Joystick Dengan Arduino

B. Cara kerja Joystick

Joystick akan mengeluarkan tegangan pada pin VRX dan VRY. Tegangan akan berayun dari 0V hingga 5V ketika tuas digerakkan. Untuk mendapatkan nilai yang presisi, tegangan akan di konversi menggunakan Analog Digital Converter (ADC) yang ada pada Arduino. 

Tegangan berasal dari dua potensiometer (sumbu X dan Y)  yang merupakan komponen utama dari Joystick . Karena joystick memiliki dua sumbu, maka pada tutorial , ADC yang digunakan pada Arduino adalah A0 dan A1.

C. Rangkaian Joystick Arduino

Untuk rangkaiannya bisa teman-teman lihat dibawah :
Cara Menggunakan Joystick Dengan Arduino

D. Progam Joystick Arduino

Untuk dapat membaca nilai ADC yang dihasilkan dari tegangan yang dikeluarkan Joystick, teman-teman silahkan gunakan program berikut:

int adc_x = 0;  //nilai awal pembacaan ADC A0
int adc_y = 0; //nilai awal pembacaan ADC A1
int tombol = 0; //nilai awal pembacaan pin tombol


void setup()
{
Serial.begin(9600);
pinMode(2, INPUT); //pin 2 sebagai input tombol
}

void loop()
{
adc_x = analogRead(A0); //baca ADC A0
adc_y = analogRead(A1); //baca ADC A1
tombol = digitalRead(2);//baca pin tombol

Serial.print(adc_x); //tampilkan nilai ADC A0
Serial.print(", ");
Serial.print(adc_y); //tampilkan nilai ADC A1
Serial.print(", ");
Serial.print(!tombol);//tampilkan nilai tombol
Serial.println(", ");
}

Pada percobaan , joystick arduino tidak digerakkan. Artinya kita hanya melihat hasil dari program diatas melalui serial monitor. Silahkan teman-teman membuka serial monitor dan akan mendapatkan nilai seperti yang ditampilkan pada gambar berikut:

Cara Menggunakan Joystick Dengan Arduino

Nilai akan berubah ketika tuas digerakkan. Ada 3 nilai yang didapatkan yaitu 525, 515, dan 0. Nilai awal 525 merupakan nilai dari ADC A0. Nilai 515 dari ADC A dan 0 adalah kondisi dari tombol. Nilai 525 dan 515 merupakan nilai tengah dari ADC. 

Karena joystick tidak digerakkan, maka posisi potensiometer berada ditengah. Nilai ADC pada tegangan 0V adalah 0, sedangkan nilai ADC pada tegangan 5V adalah 1023.  

Karena posisi potensiometer berada ditengah maka hasilnya juga setengah dari nilai ADC total, 1023/2 adalah 511,5. Perlu diketahui bahwa setiap komponen itu punya toleransi, artinya nilai yang didapatkan bisa berubah 5% lebih tinggi atau lebih rendah. 

Maka dari itu, nilai ADC yang didapatkan dari joystick pada percobaan kali adalah 525 dan 515. Pembacaan tombol menunjukkan nilai 0, artinya tombol belum ditekan.

Jika tombol di tekan akan menghasilkan nilai 1. Coba teman-teman gerakkan knop atau tombol joystick ke sembarang arah, maka nilai ADC akan berayun dari 0-1023. 

Pada percobaan diatas, didapatkan nilai ADC berayun tidak stabil, cenderung berubah-ubah, meskipun perubahan hanya terjadi pada digit terakhir seperti contoh 525 berubah menjadi 522, 524, 525, 524 dan seterusnya. 

Kondisi tidak baik jika kita gunakan untuk mengontrol peralatan. Jadi dibutuhkan satu teknik untuk membuat joystick arduino lebih stabil yang disebut dengan smooting. 

Bagaimana programnya? 

silahkan teman-teman mengunjungi artikel saya Tutorial ADC Pada Arduino di website . 

Semoga bermanfaat.

Leave a Reply

Your email address will not be published.