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

소리 감지 8-LED 라이트 디스플레이 - 아두이노 초보자 프로젝트

부품 및 소모품

부품 수량
아두이노 우노 (Arduino UNO) 1
납땜 없는 브레드보드 (풀 사이즈) 1
5mm 적색 LED 3
5mm 황색 LED 2
청록색 LED (Blue Green) 2
220옴 저항 8
SparkFun 사운드 디텍터 (헤더 포함) 1

앱 및 온라인 서비스

프로젝트 소개

초보자로서 사운드 센서와 LED로 연습한 후, 사운드 디텍터를 이용한 8개 LED 시스템을 만들기로 했습니다. 저와 같은 초보자에게 흥미로운 프로젝트가 될 것입니다.

소리 감지 8-LED 라이트 디스플레이 - 아두이노 초보자 프로젝트
브레드보드 연결 예시
소리 감지 8-LED 라이트 디스플레이 - 아두이노 초보자 프로젝트
완성된 회로 모습

각 LED의 작동 임계값은 코드에서 개별적으로 설정할 수 있습니다. 또한 사운드 센서의 민감도 조정을 잊지 마세요. 아래에 사운드 센서 민감도 설정 방법이 나와 있습니다. 세 번째 이미지는 사운드 센서 값 모니터링 화면으로, 이 값들을 기준으로 코드에서 소리 반응 시점을 결정합니다.

소리 감지 8-LED 라이트 디스플레이 - 아두이노 초보자 프로젝트
시리얼 모니터로 센서 값 확인
소리 감지 8-LED 라이트 디스플레이 - 아두이노 초보자 프로젝트
사운드 센서 민감도 조정용 트리머
소리 감지 8-LED 라이트 디스플레이 - 아두이노 초보자 프로젝트
작동 중인 LED 디스플레이

코드

8개 LED 시스템과 사운드 디텍터용 코드입니다.

/* Mantas Utka */
int ledPin1 = 13; // LED 핀 및 센서 핀 정의
int ledPin2 = 12;
int ledPin3 = 11;
int ledPin4 = 10;
int ledPin5 = 9;
int ledPin6 = 8;
int ledPin7 = 7;
int ledPin8 = 6;
int sensorPin = A0; // 아날로그 핀 사용 (이러한 프로젝트에 적합)
int val = 0;

void setup() {
  pinMode(ledPin1, OUTPUT);
  pinMode(ledPin2, OUTPUT);
  pinMode(ledPin3, OUTPUT);
  pinMode(ledPin4, OUTPUT);
  pinMode(ledPin5, OUTPUT);
  pinMode(ledPin6, OUTPUT);
  pinMode(ledPin7, OUTPUT);
  pinMode(ledPin8, OUTPUT);
  pinMode(sensorPin, INPUT); // 센서를 입력으로 설정
  Serial.begin(9600);
}

void loop() {
  val = analogRead(sensorPin);
  Serial.println(val); // 센서 값 출력

  // 센서 감지 시 LED 점등 (임계값별)
  // 1번 LED
  if (val >= 127) digitalWrite(ledPin1, HIGH);
  else digitalWrite(ledPin1, LOW);

  // 2번 LED
  if (val >= 378) digitalWrite(ledPin2, HIGH);
  else digitalWrite(ledPin2, LOW);

  // 3번 LED
  if (val >= 505) digitalWrite(ledPin3, HIGH);
  else digitalWrite(ledPin3, LOW);

  // 4번 LED
  if (val >= 632) digitalWrite(ledPin4, HIGH);
  else digitalWrite(ledPin4, LOW);

  // 5번 LED
  if (val >= 759) digitalWrite(ledPin5, HIGH);
  else digitalWrite(ledPin5, LOW);

  // 6번 LED
  if (val >= 886) digitalWrite(ledPin6, HIGH);
  else digitalWrite(ledPin6, LOW);

  // 7번 LED
  if (val >= 980) digitalWrite(ledPin7, HIGH);
  else digitalWrite(ledPin7, LOW);

  // 8번 LED
  if (val >= 1000) digitalWrite(ledPin8, HIGH);
  else digitalWrite(ledPin8, LOW);
}

작동 원리

사운드 디텍터의 아날로그 출력값(0~1023)을 읽어 8단계 임계값(127, 378, 505, 632, 759, 886, 980, 1000)과 비교합니다. 소리가 커질수록 더 많은 LED가 점등되어 시각적인 레벨 미터 역할을 합니다. 시리얼 모니터로 실시간 센서 값을 확인하며 임계값을 조정할 수 있습니다.

팁

제조공정

  1. LED vs 백열등 산업 조명: 효율성과 ROI 결정 가이드
  2. 스피커 위상 반전으로 소리 소멸 현상 시연
  3. 실로폰: 고대 아프리카 기원에서 현대 관현악의 완성까지
  4. LP 레코드 제작의 예술과 공정
  5. 발광 다이오드(LED): 탄생부터 100년 수명까지
  6. Infineon NLM0011 & NLM0010: NFC 지원 비접촉 LED 드라이버 프로그래밍
  7. 아두이노 '관짝 댄스' 멜로디 프로젝트 – 바이럴 곡 직접 연주해보기
  8. 아두이노 메가로 멋진 5x5x5 LED 큐브 만들기
  9. 아두이노 블루투스로 LED 제어하기 - HC-05 & MIT App Inventor 입문 가이드
  10. 연구진, LED 실내 조명과 스마트폰으로 3D 이미지 촬영