ESP32 고감도 음향 사운드 센서 소리감지 모듈 | ESP32 - Sound Sensor
음향 센서는 주변에서 소리의 존재를 감지할 수 있는 능력이 있습니다. 박수로 활성화되는 라이트나 소리에 반응하는 애완동물 급식기와 같은 유행하는 소리 반응 프로젝트를 만드는 데 활용할 수 있습니다.
이 튜토리얼에서는 ESP32와 사운드 센서를 사용하여 사운드를 감지하는 방법을 배우게 됩니다. 우리는 다음 사항을 자세히 다룰 것입니다:
- 사운드 센서를 ESP32에 연결하기
- 사운드 센서를 사용하여 소리를 감지하도록 ESP32 프로그래밍하기
그 다음으로, 소리 감지 시 LED나 (릴레이를 사용하여) 불빛을 켜거나, 심지어 서보 모터가 회전하도록 코드를 수정할 수 있는 유연성이 있습니다.
준비물
1 | × | ESP-WROOM-32 Dev Module | 쿠팡 | Amazon | |
1 | × | USB Cable Type-C | 쿠팡 | Amazon | |
1 | × | Digital Sound Sensor | 쿠팡 | Amazon | |
1 | × | Analog Sound Sensor | Amazon | |
1 | × | Breadboard | 쿠팡 | Amazon | |
1 | × | Jumper Wires | Amazon | |
1 | × | (Optional) 5V Power Adapter for ESP8266 | Amazon | |
1 | × | (Recommended) Screw Terminal Expansion Board for ESP32 | 쿠팡 | Amazon |
사운드 센서에 관하여
소리 센서는 주변 환경에서 소리를 감지하는 데 사용될 수 있습니다. 소리 감지 모듈에는 두 가지 유형이 있습니다:
- 디지털 사운드 센서 모듈: 디지털 신호 값(ON/OFF)을 출력합니다.
- 아날로그 사운드 센서 모듈: 아날로그와 디지털 신호 값을 모두 출력합니다.
디지털 출력의 민감도는 내장된 포텐쇼미터를 사용하여 조절할 수 있습니다.
디지털 사운드 센서 핀배열
디지털 사운드 센서는 세 개의 핀을 포함합니다:
- VCC 핀: VCC에 연결해야 합니다 (3.3V에서 5V까지)
- GND 핀: GND에 연결해야 합니다 (0V)
- OUT 핀: 출력 핀입니다: 조용할 때 HIGH이고 소리가 감지되면 LOW입니다. 이 핀은 ESP32의 입력 핀에 연결해야 합니다.
소리 센서에는 감도를 쉽게 조절할 수 있는 편리한 내장형 포텐쇼미터가 있습니다. 또한, 이 센서는 두 개의 LED 표시등을 포함하고 있습니다:
- 하나의 LED 표시등이 전원 상태를 보여줍니다.
- 다른 LED 표시등은 소리 상태를 나타내며, 소리가 감지되면 켜지고 조용할 때는 꺼집니다.
아날로그 사운드 센서 핀 배치
아날로그 사운드 센서에는 네 개의 핀이 포함되어 있습니다:
- + pin: 5V에 연결해야 합니다.
- G pin: GND (0V)에 연결해야 합니다.
- DO pin: 디지털 출력 핀입니다. 조용할 때는 HIGH이며, 소리가 감지되면 LOW입니다. 이 핀은 ESP32의 디지털 입력 핀에 연결해야 합니다.
- AO pin: 아날로그 출력 핀입니다. 소리 수준을 나타내는 아날로그 값을 출력합니다. 이 핀은 ESP32의 아날로그 입력 핀에 연결해야 합니다.
아날로그 사운드 센서는 디지털 출력을 위한 감도를 쉽게 조절할 수 있게 해주는 편리한 내장형 포텐쇼미터를 가지고 있습니다. 또한, 이에는 두 개의 LED 지시등이 함께 제공됩니다:
- 하나의 LED 표시등이 전원 상태를 보여줍니다.
- 다른 LED 표시등은 소리 상태를 표시하며, 소리가 감지되면 켜지고 조용할 때는 꺼집니다.
작동 방식
모듈에는 소리 민감도를 조절할 수 있는 편리한 내장형 포텐쇼미터가 포함되어 있습니다. 센서의 출력 핀이 어떻게 동작하는지는 다음과 같습니다:
- 소리가 감지되면 출력 핀은 LOW로 설정됩니다.
- 소리가 감지되지 않으면 출력 핀은 HIGH로 설정됩니다.
선연결
이 이미지는 Fritzing을 사용하여 만들어졌습니다. 이미지를 확대하려면 클릭하세요.
ESP32 및 다른 구성 요소에 전원을 공급하는 방법에 대해 잘 알지 못하는 경우, 다음 튜토리얼에서 안내를 찾을 수 있습니다: ESP32 전원 공급 방법.
사운드 센서 프로그래밍 방법
ESP32 핀을 디지털 입력 모드로 초기화하려면 pinMode() 함수를 사용하십시오. 예를 들어, 핀 GPIO18
ESP32 핀의 상태를 digitalRead() 함수를 사용해 읽습니다.
ESP32 코드 - 소리 감지
사용 방법
- ESP32를 처음 사용하는 경우, Arduino IDE에서 ESP32 환경 설정하는 방법을 참조하세요.
- 위의 코드를 복사하고 Arduino IDE로 열기
- Arduino IDE에서 Upload 버튼을 클릭하여 코드를 ESP32에 업로드
- 사운드 센서 앞에서 손뼉을 치세요
- 시리얼 모니터에서 결과를 확인하세요.
사운드가 존재하는데도 LED 상태가 계속 켜져 있거나 꺼져 있는 것을 발검시, 센서의 사운드 감도를 미세 조정하기 위해 저항을 조정해야 할 수도 있습니다.
이제 우리는 코드를 개인화하여 소리가 감지되었을 때 LED 또는 빛이 켜지도록 만들 수 있는 자유를 갖게 되었습니다. 소리 입력에 따라 서보 모터가 회전하도록 만들 수도 있습니다. 더 자세한 안내와 단계별 지침은 이 튜토리얼 끝에 제공된 튜토리얼을 참조하십시오.
문제 해결
소리 센서의 기능에 문제가 발생하는 경우, 다음의 문제 해결 단계를 고려해 주십시오:
- **진동 줄이기:** 기계적 진동과 바람 소리는 소리 센서의 성능에 영향을 줄 수 있습니다. 이러한 방해를 최소화하려면 소리 센서를 안정적인 표면에 설치해 보세요.
- **감지 범위 고려하기:** 이 특정 소리 센서는 대략 10인치의 제한된 감지 범위를 가지고 있음을 명심하세요. 정확한 측정을 위해 센서에 가까운 곳에서 소리를 내보세요.
- **전원 공급 확인:** 소리 센서가 아날로그 특성으로 인해 전원 공급의 간섭에 민감하기 때문에 전원 공급이 깨끗하고 노이즈가 없는지 확인하세요.
동영상
비디오 제작은 시간이 많이 걸리는 작업입니다. 비디오 튜토리얼이 학습에 도움이 되었다면, YouTube 채널 을 구독하여 알려 주시기 바랍니다. 비디오에 대한 높은 수요가 있다면, 비디오를 만들기 위해 노력하겠습니다.