프로젝트 대표사진

[로봇팔 제어 프로젝트 3] 조이스틱 입력값 확인 테스트

조이스틱의 입력값을 시리얼 모니터로 출력해보는 실습입니다. 이 실습의 목적은 조이스틱의 컨트롤에 따라 아날로그 입력값이 어느정도 올라가고, 내려가는지를 확인하기 위함입니다.
[로봇팔 제어 프로젝트 3] 조이스틱 입력값 확인 테스트 작성자 : dmsrn13**

본 실습을 통해 아날로그 입력과 조이스틱 센서에 대해 이해한다.

 

준비물 : Arduino, 조이스틱 1개

내용 : 조이스틱을 아두이노에 연결하여 조이스틱의 조종에 따라 아날로그 입력값이 어떤 식으로 입력되는지 시리얼 모니터를 통해 확인한다. 이 실습을 통해 조이스틱을 움직였을 때 아날로그 값이 어떻게 변하는지 확인하고 이를 토대로 서보모터가 움직일 수 있게 하는 아날로그 값의 범위를 결정한다.

 

회로 연결은 다음과 같다.

 

실제 실습은 조이스틱 9핀을 사용하였지만 fritzing에는 없으므로 일반적으로 사용하는 5핀짜리 조이스틱을 fritzing에서 사용하였다.

조이스틱은 x, y 축으로 아날로그 입력이 가능하고, z 축으로 버튼을 누르면 디지털 입력이 가능하다. x축을 담당하는 VER핀을 A0번에 연결하였고, y축을 담당하는 HOR핀을 A1핀에 연결하였다. 또한 z축 디지털 입력을 담당하는 SEL핀을 4번핀에 연결하였다.

 

코드는 다음과 같다.

#include <Servo.h> //헤더파일 포함
const int X_AXIS = A0; //x축 아날로그 입력핀 0번 지정
const int Y_AXIS = A1; //y축 아날로그 입력핀 1번 지정

void setup() {
  // put your setup code here, to run once:
  Serial.begin(9600); //시리얼 모니터 사용
}

void loop() {
  // put your main code here, to run repeatedly:
  int xVal = analogRead(X_AXIS); //X축값 읽음
  int yVal = analogRead(Y_AXIS); //Y축값 읽음
  int pushBtn = digitalRead(4);
  Serial.print("Btn : ");
  Serial.print(pushBtn);
  Serial.print("   ");
  Serial.print("X:  ");
  Serial.print(xVal);
  Serial.print("   ");
  Serial.print("Y : ");
  Serial.println(yVal);
  delay(500);
}

 

동작영상

 

 

※ e4ds make에 등록된 자료는 e4ds와 지식 제공자(기업포함) 이외에는 상업화 용도로 사용할 수 없습니다. 영리 목적 이외의 사용 시 출처를 밝혀야 합니다.

Comments

관련 Make

관련 상품