본문 바로가기

아두이노

IR 센서와 가변 저항기를 활용한 물체 위치 감지

반응형

IR 센서와 가변 저항기를 활용하여 물체의 위치를 감지하는 아두이노 프로젝트를 만들어 보겠습니다.

1. 이론 소개:

  • 이 프로젝트에서는 IR (적외선) 센서와 가변 저항기를 사용하여 물체의 위치를 감지합니다. IR 센서가 적외선을 방출하고 물체에 반사되어 다시 수신되는 시간을 측정하여 물체와의 거리를 계산합니다.

2. 준비물:

  • Arduino 보드 (예: Arduino Uno)
  • IR 센서 (적외선 센서)
  • 가변 저항기 (10k옴)
  • LED
  • 저항 (220옴 또는 330옴)
  • 점퍼 와이어
  • 빵판 또는 프로토타이핑 보드

3. 비슷한 센서 모델명:

  • IR 센서: KY-022, TCRT5000
  • 가변 저항기: 10k 옴 가변 저항기

4. 추천 보드 및 간단한 설명:

  • Arduino Uno: 이 프로젝트에 적합한 시작 보드입니다.

5. 회로 구성:

  • IR 센서와 가변 저항기를 아두이노에 연결합니다.
  • IR 센서의 VCC 핀을 아두이노의 5V 핀에 연결하고 GND 핀을 GND에 연결합니다.
  • IR 센서의 OUT 핀을 아두이노의 아날로그 핀 (예: A0)에 연결합니다.
  • 가변 저항기의 한 쪽 단자를 아두이노의 5V 핀에 연결하고 다른 쪽 단자를 GND에 연결합니다.
  • 가변 저항기의 중간 단자를 아두이노의 아날로그 핀 (예: A1)에 연결합니다.
  • LED의 긴 다리를 아두이노의 디지털 핀 (예: D9)에 연결하고, 짧은 다리를 저항과 함께 아두이노의 GND 핀에 연결합니다.

 

6. 코딩 내용:

 

const int irSensorPin = A0;
const int potentiometerPin = A1;
const int ledPin = 9;

void setup() {
  pinMode(ledPin, OUTPUT);
  Serial.begin(9600);
}

void loop() {
  int irValue = analogRead(irSensorPin);
  int potValue = analogRead(potentiometerPin);
  
  // 물체와의 거리 측정 (적외선 센서와 가변 저항기 값 활용)
  int distance = map(irValue, 0, 1023, 0, 100); // 최소 거리: 0, 최대 거리: 100 cm
  
  // LED 제어 (거리에 따라 밝기 제어)
  int brightness = map(distance, 0, 100, 0, 255);
  analogWrite(ledPin, brightness);
  
  Serial.print("Distance: ");
  Serial.print(distance);
  Serial.print(" cm | Brightness: ");
  Serial.println(brightness);
  delay(500);
}

 

7. 코딩 내용 설명:

  • irSensorPin 및 potentiometerPin에 각각 IR 센서와 가변 저항기의 핀 번호를 할당합니다.
  • setup 함수에서 LED 핀의 출력 방향을 설정하고 시리얼 통신을 초기화합니다.
  • loop 함수에서 IR 센서와 가변 저항기의 값을 읽어와 거리와 밝기를 계산합니다.
  • map 함수를 사용하여 거리 값을 0부터 100으로 변환하고, 밝기 값을 0부터 255로 변환하여 LED의 밝기를 제어합니다.
  • 거리와 밝기 값을 시리얼 모니터에 표시하고 0.5초마다 업데이트합니다.

8. 코드 업로드 및 테스트:

  • 위의 코드를 아두이노 IDE에 복사하여 업로드합니다.
  • 시리얼 모니터를 열어 물체와의 거리와 LED 밝기를 확인합니다.

9. 응용 업그레이드:

  • 이 프로젝트를 응용하여 물체의 거리에 따라 다양한 작업을 수행하도록 아두이노 코드를 수정할 수 있습니다. 예를 들어, 특정 거리 이하에서 LED를 켜거나 다른 장치를 제어할 수 있습니다.

10. 전문용어 및 설명:

  • IR 센서: 적외선을 감지하는 센서로, 물체와의 거리 측정에 사용됩니다.
  • 가변 저항기: 저항값을 조절할 수 있는 컴포넌트로, 아날로그 신호를 다룰 때 사용됩니다.

11. 기타:

  • 이 프로젝트를 통해 아두이노를 사용하여 물체의 위치를 측정하고 제어하는 기본적인 개념을 익힐 수 있습니다.

 

 

반응형