Приобретите KY-038 Датчик звука с микрофоном
Обзор
KY-038 — это модуль датчика звука, оснащенный электретным конденсаторным микрофоном и компаратором LM393. Он имеет как аналоговый, так и цифровой выходы, что делает его подходящим для различных задач обнаружения звука, включая системы с голосовым управлением и мониторинг уровня шума.
KY-038 предназначен для определения уровня громкости звука в окружающей среде. Модуль выдает аналоговое напряжение, пропорциональное интенсивности звука, и цифровой сигнал при превышении заданного порога.
Быстрая навигация
Где купить KY-038
Цены могут меняться. Мы получаем комиссию за покупки по партнерским ссылкам.
Характеристики KY-038
Полные технические данные модуля микрофона KY-038.
Распиновка KY-038
KY-038 имеет 4 контакта для подключения.
+V / VCC
Питание модуля (3.3В или 5В).
GND
Общий контакт (Земля).
D0
Цифровой выход. Переходит в HIGH, когда уровень звука превышает порог.
A0
Аналоговый выход. Напряжение меняется пропорционально интенсивности звука.
| Pin | Тип | Описание |
|---|---|---|
| +V | Питание | 3.3В или 5В |
| GND | Земля | Общий минус |
| D0 | Цифровой | Пороговый выход (LM393) |
| A0 | Аналоговый | Уровень звука |
Подключение KY-038 к ESP32
Схема подключения датчика звука к контроллеру ESP32.
💡 Советы по подключению
- • Используйте ESP32 контакты 32–39 для аналогового входа (ADC1).
- • Для цифрового выхода подойдет любой свободный GPIO.
- • Настройте порог чувствительности, вращая подстроечный резистор на модуле.
| Pin KY-038 | Pin ESP32 | Описание |
|---|---|---|
| +V | 3.3V | Питание |
| GND | GND | Общая схема |
| D0 | GPIO15 | Цифровой сигнал (опционально) |
| A0 | GPIO34 | Аналоговый уровень (ADC1) |
Устранение неполадок KY-038
Решение типичных проблем при работе с датчиком.
Датчик не реагирует на звук
• Проверьте правильность подключения питания (горит ли индикатор на модуле).
• Настройте чувствительность потенциометром — возможно, порог слишком высок.
• Убедитесь, что микрофон не закрыт и направлен в сторону источника звука.
Ложные срабатывания (постоянный сигнал)
• Уменьшите чувствительность потенциометром.
• Обеспечьте стабильное питание — шум на линии питания может спровоцировать компаратор.
• Используйте фильтрацию (конденсатор 0.1мкФ между VCC и GND).
Примеры кода KY-038
Готовые фрагменты кода для различных платформ и фреймворков.
Arduino IDE
C++ Framework
C++
Простой пример чтения аналогового напряжения и состояния цифрового выхода.
int analogPin = A0; // Аналоговый выход датчика
int digitalPin = 3; // Цифровой выход датчика
void setup() {
pinMode(analogPin, INPUT);
pinMode(digitalPin, INPUT);
Serial.begin(9600);
Serial.println("KY-038 Sound Detection Module Test");
}
void loop() {
// Чтение аналогового значения и перевод в напряжение
float analogValue = analogRead(analogPin) * (5.0 / 1023.0);
int digitalValue = digitalRead(digitalPin);
Serial.print("Analog Voltage: ");
Serial.print(analogValue, 4);
Serial.print(" V, Threshold: ");
Serial.println(digitalValue == HIGH ? "Reached" : "Not Reached");
Serial.println("------------------------------------");
delay(1000);
}
ESP-IDF
Native Framework
C
Конфигурация ADC и GPIO на ESP32 с использованием ESP-IDF API.
#include <stdio.h>
#include "freertos/FreeRTOS.h"
#include "freertos/task.h"
#include "driver/adc.h"
#include "driver/gpio.h"
#define ANALOG_PIN ADC1_CHANNEL_6 // GPIO34
#define DIGITAL_PIN GPIO_NUM_15
void app_main(void) {
adc1_config_width(ADC_WIDTH_BIT_12);
adc1_config_channel_atten(ANALOG_PIN, ADC_ATTEN_DB_11);
gpio_set_direction(DIGITAL_PIN, GPIO_MODE_INPUT);
printf("KY-038 Sound Detection Module Test\n");
while (1) {
int raw = adc1_get_raw(ANALOG_PIN);
float voltage = raw * (3.3 / 4095.0);
int digital_state = gpio_get_level(DIGITAL_PIN);
printf("Analog Voltage: %.2f V, Sound Detected: %s\n",
voltage, digital_state ? "Yes" : "No");
vTaskDelay(pdMS_TO_TICKS(1000));
}
}
ESPHome
YAML Config / Home Assistant
YAML
Настройка бинарного датчика и АЦП для интеграции в Home Assistant.
sensor:
- platform: adc
pin: GPIO34
name: "KY-038 Sound Sensor Analog"
update_interval: 1s
filters:
- multiply: 3.3
- lambda: return x * 1000; // В милливольты
binary_sensor:
- platform: gpio
pin:
number: GPIO15
mode: INPUT_PULLUP
name: "KY-038 Sound Sensor Digital"
Итоги и рекомендации
Модуль KY-038 является отличным бюджетным решением для проектов, где необходимо реагировать на звуковые сигналы (хлопки, громкие шумы, голос).
- • Хлопковые выключатели света
- • Мониторинг шума в комнате
- • Интерактивные арт-объекты
Не превышайте напряжение питания 5В. При использовании с ESP32 (логика 3.3В) будьте осторожны с уровнем сигнала на аналоговом выходе при питании 5В.
Готовы к разработке?
Интегрируйте KY-038 в свой проект умного дома или робототехники уже сегодня.