Обзор
KY-006 — это модуль пассивного пьезо-электрического бузера, который производит звук при подаче PWM сигнала. Идеально подходит для генерации различных тонов и мелодий в электронных проектах. В отличие от активных бузеров, требует внешнего сигнала, что позволяет создавать произвольные звуковые последовательности.
KY-006 — модуль пассивного пьезо-бузера, который генерирует звуковые тоны в диапазоне 1.5 кГц – 2.5 кГц при управлении через PWM. Требует внешний сигнал, что позволяет создавать мелодии и различные частоты.
О пассивном пьезо-бузере KY-006
Модуль KY-006 представляет собой пассивный пьезо-электрический бузер, который издает звук при получении PWM сигнала. В отличие от активных бузеров, этот модуль не содержит встроенного генератора и требует внешнего управления частотой и длительностью сигнала, что открывает возможности для создания простых мелодий и тонов варьируемых по частоте.
⚡ Ключевые особенности
- Гибкость звука – Позволяет генерировать разные тоны и мелодии за счёт управления PWM сигналом.
- Диапазон частот – Работает в диапазоне 1.5 кГц – 2.5 кГц.
- Широкое питание – Совместим с 3.3В и 5В, отлично подходит для ESP32, Arduino и других микроконтроллеров.
- Компактность – Габариты 18.5 мм × 15 мм, удобен для звуковых оповещений в嵌入-проектах.
Благодаря простоте интеграции и универсальности, KY-006 идеален для звуковых сигналов, alarms,melodii и интерактивных проектов. 🚀
Приобретите KY-006 Passive Buzzer
Характеристики KY-006
Полные технические характеристики пассивного пьезо-бузера KY-006.
Распиновка KY-006
Модуль KY-006 имеет три вывода: S (PWM сигнал), + (питание) и – (земля). Это пассивный бузер, требующий внешнего PWM сигнала для генерации звука.
- Интерфейс — PWM (Pulse Width Modulation).
- Тип — Пассивный пьезо-бузер (требует внешний сигнал).
- Частота — 1.5 кГц – 2.5 кГц для оптимального звука.
| № | Название | Тип | Описание | Примечания |
|---|---|---|---|---|
| 1 | S | PWM | Вход PWM сигнала | Требуется PWM для генерации тонов |
| 2 | + | Питание | Питание (VCC) | 3.3В или 5В |
| 3 | - | Земля | Подключение земли | Общая земля |
Подключение KY-006 к ESP32
Для управления пассивным пьезо-бузером KY-006 через ESP32 используйте PWM выход. Подключите сигнальный пин бузера к любому PWM‑совместимому GPIO ESP32. Не забудьте задать правильную частоту PWM в диапазоне 1.5–2.5 кГц.
| Вывод KY-006 | Подключение | Вывод ESP32 | Описание |
|---|---|---|---|
| S обязательно | → | GPIO18 (любой PWM) | PWM сигнал (любой PWM‑пин) |
| + обязательно | → | 3.3В или 5В | Питание (3.3В или 5В) |
| - обязательно | → | GND | Общая земля |
Устранение неполадок KY-006
Распространённые проблемы и решения, которые помогут запустить бузер.
Бузер молчит
Нет звука при вызове tone()
Проблема: бузер не издает звук, хотя код вызывает tone() или analogWrite().
Возможные причины: сигнальный пин не является PWM‑совместимым, отсутствует питание или земля, частота PWM вне диапазона.
Решение: убедитесь, что пин подключен к GPIO с поддержкой PWM (на ESP32 почти все пины), проверьте напряжение 3.3В/5В и общую землю. Установите частоту 2000 Гц в диапазоне 1.5–2.5 кГц.
Тон тихий или искажён
Звук низкой громкости или хриплый
Причины: низкий duty‑cycle (меньше 50%), неоптимальная частота, слабое питание 3.3В вместо 5В.
Решение: увеличьте duty‑cycle до 50% (128 из 255), проверьте частоту в районе 2 кГц. Для большей громкости используйте питание 5В, если позволяет модуль.
Конфликт пинов
Другие периферийные устройства
Проблема: звук появляется только при отключенных других устройствах.
Решение: проверьте, не используются ли GPIO‑пин для других задач (SPI, I2C). Выделите отдельный PWM‑канал, используйте ledcSetup/ledcAttachPin в ESP-IDF или убедитесь, что tone() не конфликтует с другими библиотеками.
Советы по отладке
Serial монитор
Проверка логов и ошибок
Проверка контактов
Мультиметр и целостность
Дополнительные ресурсы
Примеры программирования KY-006
Готовые к использованию примеры кода для различных платформ и фреймворков
Пример для Arduino
Совместим с Arduino IDE и платами ESP32
C++
Пример для Arduino
Совместим с Arduino IDE и платами ESP32
#define BUZZER_PIN 8
void setup() {
pinMode(BUZZER_PIN, OUTPUT);
}
void loop() {
tone(BUZZER_PIN, 1000); // Играть тон 1000 Гц
delay(500);
noTone(BUZZER_PIN); // Остановить тон
delay(500);
Этот Arduino‑скетч использует функцию tone() для генерации звука частотой 1000 Гц на пине 8. Бузер звучит 500 мс, затем тишина 500 мс – простой пример bip‑сигнала.
Пример для ESP‑IDF
Официальный фреймворк Espressif
C/C++
Пример для ESP‑IDF
Официальный фреймворк Espressif
#include "driver/ledc.h"
#define BUZZER_PIN 18
#define LEDC_CHANNEL LEDC_CHANNEL_0
#define LEDC_TIMER LEDC_TIMER_0
#define LEDC_FREQ 2000 // 2 кГц
#define LEDC_RESOLUTION LEDC_TIMER_13_BIT // 13 бит (0–8191)
void setup_buzzer() {
ledc_timer_config_t timer_conf = {
.speed_mode = LEDC_LOW_SPEED_MODE,
.duty_resolution = LEDC_RESOLUTION,
.timer_num = LEDC_TIMER,
.freq_hz = LEDC_FREQ,
.clk_cfg = LEDC_AUTO_CLK
};
ledc_timer_config(&timer_conf);
ledc_channel_config_t ch_conf = {
.gpio = BUZZER_PIN,
.speed_mode = LEDC_LOW_SPEED_MODE,
.channel = LEDC_CHANNEL,
.timer_sel = LEDC_TIMER,
.duty = 0,
.hpoint = 0
};
ledc_channel_config(&ch_conf);
}
void loop_buzzer() {
// Включить звук (50% fill factor)
ledc_set_duty(LEDC_LOW_SPEED_MODE, LEDC_CHANNEL, 4096); // 50% от 8192
ledc_update_duty(LEDC_LOW_SPEED_MODE, LEDC_CHANNEL);
vTaskDelay(pdMS_TO_TICKS(500));
// Выключить
ledc_set_duty(LEDC_LOW_SPEED_MODE, LEDC_CHANNEL, 0);
ledc_update_duty(LEDC_LOW_SPEED_MODE, LEDC_CHANNEL);
vTaskDelay(pdMS_TO_TICKS(500));
}
В этом примере используется LEDC‑модуль ESP‑IDF дляgeneration PWM на GPIO18. Таймер настроен на 2 кГц и 13‑битное разрешение. Функция ledc_set_duty() управляет fill factor (4096 из 8192 = 50%). Переменные setup_buzzer() и loop_buzzer() объединены для наглядности; в реальном приложении вызовите их из app_main().
Пример для ESPHome
Конфигурация для Home Assistant
YAML
Пример для ESPHome
Конфигурация для Home Assistant
output:
- platform: ledc
pin: GPIO18
id: buzzer_pwm
switch:
- platform: template
name: "KY-006 Buzzer"
turn_on_action:
- output.set_frequency:
id: buzzer_pwm
frequency: 2000Hz
- output.set_level:
id: buzzer_pwm
level: 50%
turn_off_action:
- output.set_level:
id: buzzer_pwm
level: 0%
В ESPHome создаётся PWM‑выход на GPIO18, а затем шаблонный переключатель, который при включении устанавливает частоту 2 кГц и duty‑cycle 50%. Выключение обнуляет уровень, останавливая звук. Интегрируется в Home Assistant как обьект switch.ky_006_buzzer.
Пример для PlatformIO
Профессиональная среда разработки
C++
Пример для PlatformIO
Профессиональная среда разработки
platformio.ini
[env:esp32]
platform = espressif32
board = esp32dev
framework = arduino
monitor_speed = 115200
main.cpp
#define BUZZER_PIN 18
void setup() {
pinMode(BUZZER_PIN, OUTPUT);
}
void loop() {
tone(BUZZER_PIN, 2000); // Генерация 2 кГц
delay(500);
noTone(BUZZER_PIN);
delay(500);
}
PlatformIO использует фреймворк Arduino, поэтому код аналогичен Arduino‑примеру. Бузер подключён к GPIO18, генерируется 2 кГц в течение 500 мс, затем пауза 500 мс.
Пример для MicroPython
Python для микроконтроллеров
Python
Пример для MicroPython
Python для микроконтроллеров
from machine import Pin, PWM
BUZZER_PIN = Pin(18, Pin.OUT)
pwm = PWM(BUZZER_PIN)
pwm.freq(2000) # Установка частоты 2 кГц
while True:
pwm.duty(512) # 50% fill factor (0–1023)
time.sleep(0.5)
pwm.duty(0)
time.sleep(0.5)
MicroPython использует класс PWM для управления сигналом. Частота устанавливается 2 кГц, duty‑cycle 50% (значение 512 из 1023). Цикл включает звук на 500 мс, затем выключает на 500 мс.
Итоги KY-006
Пассивный пьезо‑бузер KY‑006 для ESP32 — это простой и гибкий модуль для создания звуковых сигналов, мелодий и оповещений. С поддержкой PWM и широкими возможностями управления частотой, он отлично подходит для множества embedded‑проектов.
Рекомендации
Чтобы бузер звучал громко и чётко, используйте питание 5 В (если модуль поддерживает) и duty‑cycle около 50%. Выбирайте частоту в диапазоне 1.5–2.5 кГц (оптимально 2 кГц). Для мелодий меняйте частоту по времени.
Безопасность прежде всего
Перед подачей питания проверьте правильность подключения пинов (S → PWM, + → 3.3/5 В, – → GND). Не превышайте рекомендованное напряжение, чтобы не повредить пьезо‑элемент.
Готовы начать создавать?
Теперь, когда у вас есть вся необходимая информация, пора интегрировать KY-006 в проект на ESP32 и воплотить идеи в жизнь!
Изучите альтернативные модули KY-0xx
Интересуетесь другими датчиками из серии KY-0xx? Посмотрите эти похожие модули — возможно, они лучше подойдут для вашего проекта.

KY-032 Infrared Obstacle Avoidance
Инфракрасный модуль обнаружения препятствий, который обнаруживает объекты, излучая и принимая ИК‑свет. Выдаёт цифровой сигнал...

KY-013 Analog Temperature Sensor
Аналоговый температурный сенсор с NTC‑термистором. Измеряет температуру в диапазоне -55°C до +125°C с параллельным...

KY-004 Key Switch Module
Клавишный модуль с тактильной кнопкой. Выдаёт цифровой сигнал при нажатии, удобен для ввода команд и простого управления...