본문 바로가기

아두이노

IR 센서와 초음파 센서로 물체 감지 및 경보 시스템

반응형

물체 감지 및 경보 시스템을 위한 아두이노 코딩 가이드를 제공하겠습니다. 아래는 각 파트별로 순차적으로 설명한 내용입니다.

1. 이론 소개:

  • IR 센서: 적외선(IR) 센서는 빛의 반사를 통해 물체의 존재를 감지하는 역할을 합니다.
  • 초음파 센서: 초음파 센서는 초음파 신호를 생성하고 이를 이용하여 물체와의 거리를 측정합니다.

2. 준비물:

  • Arduino 보드 (예: Arduino Uno)
  • IR 센서 모듈
  • 초음파 센서 (예: HC-SR04)
  • 부저(Buzzer) 모듈
  • 점퍼 와이어
  • 브레드보드
  • 전원 공급 장치 (9V 배터리 또는 USB 케이블)

3. 비슷한 센서 모델명:

  • IR 센서 모델: TCRT5000
  • 초음파 센서 모델: HC-SR04

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

  • Arduino Uno: 초보자 및 중급자에게 적합한 아두이노 보드로 입문용으로 추천됩니다.

5. 회로 구성:

  1. IR 센서의 VCC 핀을 Arduino의 5V에 연결하십시오.
  2. IR 센서의 GND 핀을 Arduino의 GND에 연결하십시오.
  3. IR 센서의 OUT 핀을 Arduino의 2번 핀에 연결하십시오.
  4. 초음파 센서의 VCC 핀을 Arduino의 5V에 연결하십시오.
  5. 초음파 센서의 GND 핀을 Arduino의 GND에 연결하십시오.
  6. 초음파 센서의 TRIG 핀을 Arduino의 9번 핀에 연결하십시오.
  7. 초음파 센서의 ECHO 핀을 Arduino의 10번 핀에 연결하십시오.
  8. 부저 모듈의 VCC 핀을 Arduino의 8번 핀에 연결하십시오.
  9. 부저 모듈의 GND 핀을 Arduino의 GND에 연결하십시오.
  10. 부저 모듈의 S 핀을 Arduino의 7번 핀에 연결하십시오.

6. 코딩 내용:

 

#define TRIGGER_PIN 9
#define ECHO_PIN 10
#define BUZZER_PIN 7
#define IR_PIN 2

void setup() {
  pinMode(BUZZER_PIN, OUTPUT);
  pinMode(IR_PIN, INPUT);
  Serial.begin(9600);
}

void loop() {
  int distance = getDistance();
  int irValue = digitalRead(IR_PIN);

  if (distance < 10 && irValue == LOW) {
    soundAlarm();
  }

  Serial.print("거리: ");
  Serial.print(distance);
  Serial.print("cm, IR 값: ");
  Serial.println(irValue);
  delay(100);
}

int getDistance() {
  long duration;
  digitalWrite(TRIGGER_PIN, LOW);
  delayMicroseconds(2);
  digitalWrite(TRIGGER_PIN, HIGH);
  delayMicroseconds(10);
  digitalWrite(TRIGGER_PIN, LOW);
  duration = pulseIn(ECHO_PIN, HIGH);
  return duration * 0.0343 / 2;
}

void soundAlarm() {
  tone(BUZZER_PIN, 1000); // 1kHz 사운드 출력
  delay(1000);
  noTone(BUZZER_PIN);
}

 

7. 코딩 내용 설명:

  • getDistance() 함수: 초음파 센서를 사용하여 물체와의 거리를 측정합니다.
  • soundAlarm() 함수: 부저를 사용하여 경보를 울립니다.
  • loop() 함수에서 IR 센서 값과 거리 값을 읽어 물체 감지 및 거리 측정을 수행합니다.

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

  • Arduino IDE를 사용하여 코드를 업로드하고, 물체를 감지하면 부저가 울리는지 확인합니다.

9. 응용 업그레이드:

  • 경보 시스템을 개선하고, 감지된 이벤트에 대한 추가 동작을 프로그래밍할 수 있습니다.

10. 전문용어 및 설명:

  • IR 센서: 적외선(IR)을 감지하여 물체의 도착을 감지하는 센서입니다.
  • 초음파 센서: 초음파 신호를 사용하여 물체와의 거리를 측정할 수 있는 센서입니다.
  • 부저(Buzzer): 소리를 발생시키는 전자 부품입니다.

11. 기타:

  • 이 프로젝트를 확장하여 보다 복잡한 경보 시스템을 만들 수 있습니다.
반응형