중급⏱ 예상 시간: 45분📝 4단계

초음파 거리 알림기

초음파 센서로 거리를 측정하고, 가까워지면 부저로 경고음을 울리는 장치를 만들어봅니다.

🧩 필요한 모듈

Arduino Uno
브레드보드
피에조 부저
점퍼 와이어
LED
저항 (220Ω / 10kΩ)
초음파 센서 (HC-SR04)

📖 단계별 설명서

📝

1단계준비물 확인

다음 부품들을 준비해주세요:

  • Arduino Uno 1개
  • 브레드보드 1개
  • 점퍼 와이어 8개
  • 초음파 센서 (HC-SR04) 1개
  • 피에조 부저 1개
  • LED 3개 (초록, 노랑, 빨강)
  • 220Ω 저항 3개
📝

2단계회로 연결하기

  1. 초음파 ��서: VCC→5V, GND→GND, Trig→D7, Echo→D6
  2. 부저: (+)→D8, (-)→GND
  3. 초록 LED: D11 → 220Ω → LED → GND
  4. 노랑 LED: D10 → 220Ω → LED → GND
  5. 빨강 LED: D9 → 220Ω → LED → GND

📐 회로도

회로도 이미지

/images/projects/distance-alarm-circuit.png

📝

3단계코드 작성하기

거리에 따라 LED 색상과 부저 소리가 달라지는 코드입니다.

code.ino
// 초음파 거리 알림기 - ModuKit
// 거리에 따라 LED와 부저로 알림을 줍니다.

const int TRIG = 7;
const int ECHO = 6;
const int BUZZER = 8;
const int LED_GREEN = 11;
const int LED_YELLOW = 10;
const int LED_RED = 9;

long getDistance() {
  digitalWrite(TRIG, LOW);
  delayMicroseconds(2);
  digitalWrite(TRIG, HIGH);
  delayMicroseconds(10);
  digitalWrite(TRIG, LOW);
  
  long duration = pulseIn(ECHO, HIGH);
  return duration * 0.034 / 2;  // cm 변환
}

void setup() {
  pinMode(TRIG, OUTPUT);
  pinMode(ECHO, INPUT);
  pinMode(BUZZER, OUTPUT);
  pinMode(LED_GREEN, OUTPUT);
  pinMode(LED_YELLOW, OUTPUT);
  pinMode(LED_RED, OUTPUT);
  Serial.begin(9600);
  Serial.println("거리 알림기 시작!");
}

void loop() {
  long distance = getDistance();
  Serial.print("거리: ");
  Serial.print(distance);
  Serial.println(" cm");

  // 모든 LED 끄기
  digitalWrite(LED_GREEN, LOW);
  digitalWrite(LED_YELLOW, LOW);
  digitalWrite(LED_RED, LOW);
  noTone(BUZZER);

  if (distance < 10) {
    // 매우 가까움 - 빨간 LED + 빠른 경고음
    digitalWrite(LED_RED, HIGH);
    tone(BUZZER, 1000);
    Serial.println("⚠️ 매우 가까움!");
  } else if (distance < 20) {
    // 가까움 - 노란 LED + 느린 경고음
    digitalWrite(LED_YELLOW, HIGH);
    tone(BUZZER, 500);
    Serial.println("⚡ 가까움");
  } else if (distance < 50) {
    // 보통 - 초록 LED
    digitalWrite(LED_GREEN, HIGH);
    Serial.println("✅ 안전");
  }

  delay(200);
}
+44 줄 더 보기

💡 팁: 거리 기준값을 변경하여 감지 범위를 조절할 수 있어요.

📝

4단계업로드 및 테스트

  1. 코드를 업로드합니다.
  2. 초음파 센서 앞에 손을 가까이/멀리 이동해보세요.
  3. 거리에 따라 LED 색상과 부저 소리가 달라집니다!
  • 50cm 이상: LED 모두 꺼짐
  • 20~50cm: 초록 LED
  • 10~20cm: 노란 LED + 경고음
  • 10cm 미만: 빨간 LED + 빠른 경고음

💡 팁: 시리얼 모니터로 실시간 거리값을 확인하세요!

🎉

축하합니다!

"초음파 거리 알림기" 프로젝트를 완성했습니다!