산업 제조
산업용 사물 인터넷 | 산업자재 | 장비 유지 보수 및 수리 | 산업 프로그래밍 |
home  MfgRobots >> 산업 제조 >  >> Manufacturing Technology >> 제조공정

초음파 거리 센서로 만드는 인터랙티브 아두이노 MP3 플레이어

프로젝트 개요

아두이노 우노, Catalex 시리얼 MP3 플레이어 모듈, HC-SR04 초음파 센서를 조합해 거리 기반 인터랙티브 MP3 플레이어를 제작합니다. 세 가지 버전으로 발전시키며 단순 거리 트리거부터 움직임 방향 감지까지 구현합니다.

필요 부품

핵심 라이브러리 및 함수

Catalex MP3 플레이어 제어

SoftwareSerial 라이브러리만 필요합니다. 주요 명령어:

명령 전송 함수 sendCommand()는 8바이트 프로토콜(시작 0x7E, 버전 0xFF, 길이 0x06, 명령, 피드백 플래그, 데이터 상위/하위 바이트, 종료 0xEF)을 사용합니다.

HC-SR04 거리 측정

라이브러리 불필요. 트리거 핀에 10µs 펄스 전송 후 에코 핀의 HIGH 지속 시간 측정하여 거리 계산:

distance = (duration / 2) / 29.1; // cm 단위

구현 버전별 상세

버전 1: 단순 거리 트리거

거리가 50cm 미만이면 지정된 곡(2번 폴더 3번 트랙) 재생. 룸메이트 놀래키기용으로 활용 예시.

void loop() {
  if (measureDistance() < 50) {
    sendCommand(CMD_PLAY_WITHFOLDER, 0x0203);
    delay(1000);
  }
  delay(300);
}

버전 2: 변화량 기반 트리거 (Disturbance Detection)

절대 거리가 아닌 연속 측정값의 차이(gap)가 20cm 이상일 때 트리거. 잘못된 트리거 방지를 위해 첫 측정값 안정화 로직 포함.

long Distance, auxDistance, gap = 0;
int firstTime = 0;

void loop() {
  Distance = measureDistance(trigPin, echoPin);
  gap = abs(Distance - auxDistance);
  
  if (firstTime == 0) {
    auxDistance = Distance; gap = 0; firstTime++; delay(1000);
  }
  
  if (gap > 20) {
    sendCommand(CMD_PLAY_WITHFOLDER, 0x0201);
    firstTime = 0; delay(2000);
  }
  auxDistance = Distance; delay(300);
}

버전 3: 듀얼 센서로 방향 감지

두 개의 HC-SR04를 좌우에 배치해 움직임 방향 판별. 첫 번째 센서만 변화하면 '오른쪽 이동(Hello)', 두 번째 센서만 변화하면 '왼쪽 이동(Bye)'로 다른 곡 재생.

회로도

완성 코드

각 버전별 완전한 .ino 코드가 제공되며, SoftwareSerial 기반 MP3 제어와 초음파 측정 로직이 통합되어 있습니다. 시리얼 모니터로 디버깅 출력 포함.

응용 아이디어

제조공정

  1. 가정용 저렴한 무선 센서 네트워크 구축하기
  2. K30 CO2 센서: 실시간 실내 공기질 모니터링
  3. 디지털 신장계 제작: 아두이노 & 레이저 센서로 키 측정하기
  4. DFRobot 정전식 지문 인식 센서 아두이노/ESP8266 연동 가이드
  5. 아두이노 우노와 DFPlayer Mini로 오디오 재생하기 - 단계별 가이드
  6. 아두이노 웹 제어 MP3 플레이어 - 브라우저로 오디오 재생하기
  7. 아두이노 클라우드 센서 타워 만들기: 온도, 모션, 가스 모니터링
  8. 아두이노 나노로 만든 스마트 모션 감지 물총
  9. 아두이노 우노 & WiFi 실드로 웹에서 실시간 온도 모니터링 - 시리얼 통신 활용
  10. 컴팩트 아두이노 레이더 시스템: HC-SR04 초음파 센서 & 1.8인치 디스플레이