안녕하세요? 오늘은 조이스틱의 원리를 알아보고 아두이노와 함께 활용해보도록 하겠습니다.

조이스틱은 아두이노 프로젝트에서 유용하게 입력기기로써 쓰입니다.

특히 아두이노로 게임을 만들거나 로봇을 움직일 때 자주 쓰입니다.

그러면 조이스틱의 원리가 어떻게 되고 이것을 어떻게 데이터로 받아들이는지 간단하게 알아보겠습니다.

그 후 간단한 예제를 아두이노와 함께 활용해보도록 하겠습니다.


차례

1. 조이스틱의 원리

2. 아두이노와 조이스틱

1. 조이스틱의 원리

조이스틱의 원리는 가변저항을 알고 계신다면 아주 간단해집니다.

가변저항 원리 알아보기 ( 링크입니다. )

변저항은 축을 회전 시키면 내부의 저항물체의 길이가 조절되어 저항이 변하는 방식이였습니다.

조이스틱도 이와 같은 원리를 그대로 가져옵니다.

조이스틱은 x축과 y축에 두개의 회전나사가 있습니다.

여기서 이 두개의 회전나사가 가변저항과 같은 역할을 하게 됩니다.

그래서 움직인 만큼 x축, y축의 저항이 변하게되고 전압이 변하게되어 읽어들이는 데이터 값도 변하게 됩니다.

아날로그 입력 데이터는 외부의 전압 변화를 읽어들이는 방식입니다.

조이스틱을 누르면 버튼처럼 사용할 수도 있습니다.

-

2. 아두이노와 조이스틱

회로는 다음과 같이 연결해주시면 됩니다.

Vcc와 GND는 각각 5V, GND 연결하고 VER은 x축, HOR y축을 뜻합니다.

이 두가지는 아날로그 데이터이므로 A0,A1에 각각 연결합니다. 그리고 스위치는 디지털핀에 연결해주시면 됩니다.

그러면 조이스틱을 움직이면 값이 어떻게 변하는지 출력하는 간단한 예제를 해보겠습니다.

코드는 다음과 같습니다.

값을 입력받기 위해서 3개의 정수형 변수를 선언합니다.

그리고 xpos, ypos에 아날로그 데이터를 입력받을 핀을 초기화 해줍니다.

select는 디지털 값이므로 디지털핀에 초기화합니다.

그리고 각각의 변수를 출력해주는 코드를 적으면 됩니다.

조이스틱을 움직이면 다음과 같이 데이터값이 변하는 출력됩니다.

조이스틱은 훌륭한 입력기기로 사용하실 수 있습니다.

서보모터를 제어하는데도 사용할 수 있고, 게임을 만드는데도 이용가능합니다.

기본예제를 잘 숙지하시면 다양한 곳에 활용하기 수월하실 것 입니다.

감사합니다.

+ Recent posts