Обзор
KY-027 Magic Light Cup — это модуль детектора наклона, объединяющий ртутный выключатель и светодиод. Модуль реагирует на изменение ориентации в пространстве и часто используется парами для создания эффекта «переливания» света из одной чашки в другую, а также в интерактивных игрушках и простых системах сигнализации.
KY-027 состоит из ртутного датчика наклона и светодиода. При наклоне модуля ртутный контакт замыкается, что позволяет контроллеру зажечь LED. Это идеальный выбор для проектов, реагирующих на изменение положения.
О модуле KY-027 Magic Light Cup
Модуль KY-027 Magic Light Cup объединяет в себе ртутный датчик наклона и светодиод. Когда модуль наклоняется, капля ртути замыкает контакты внутри стеклянной колбы, подавая сигнал на контроллер. На плате также расположен светодиод, яркость которого можно плавно изменять (через ШИМ) или просто включать/выключать.
⚡ Ключевые особенности
- Детектор наклона – Стеклянная колба с каплей ртути обеспечивает надежное срабатывание при изменении угла.
- Встроенный светодиод – Позволяет визуализировать срабатывание прямо на модуле.
- Универсальность – Подходит для создания «умных» светильников, игрушек и систем контроля положения.
Приобретите KY-027
Характеристики KY-027
Основные технические параметры модуля Magic Light Cup.
Распиновка KY-027
Модуль KY-027 имеет 4 вывода для подключения к контроллеру:
- S (Signal) — LOW при наклоне (активный низкий).
- L (LED) — подайте HIGH для включения LED.
- Угол активации — обычно 15-30°.
| № | Название | Тип | Описание | Примечания |
|---|---|---|---|---|
| 1 | GND | Земля | Общий минус | Минус источника питания |
| 2 | +V | Питание | Напряжение (3.3В - 5В) | Плюс источника питания |
| 3 | S | Сигнал | Выход датчика наклона | LOW при срабатывании |
| 4 | L | Управление | Вход управления LED | HIGH включает светодиод |
Подключение KY-027 к ESP32
Для работы с ESP32 подключите выход сигнала датчика и вход управления светодиодом к свободным GPIO.
| Вывод KY-027 | Подключение | Вывод ESP32 | Описание |
|---|---|---|---|
| GND обязательно | → | GND | Земля |
| +V обязательно | → | 3.3V | Питание модуля |
| S обязательно | → | GPIO17 | Вход от датчика наклона |
| L опционально | → | GPIO16 | Управление светодиодом |
Устранение неполадок KY-027
Распространённые проблемы и их решения.
LED не горит при наклоне
Проверка управления и питания
Проблема: Светодиод на модуле не включается.
Решение: Убедитесь, что пин L подключен к цифровому выходу контроллера и на него подается HIGH. Проверьте полярность питания.
Ложные срабатывания
Дребезг контактов или вибрация
Причина: Ртутная капля может колебаться от вибрации. Также возможен дребезг контактов.
Решение: Добавьте программную фильтрацию (debounce) в ваш код. Убедитесь в надежности крепления модуля.
Советы по отладке
Serial монитор
Проверка состояния S-пина
Дополнительные ресурсы
Примеры программирования KY-027
Готовые примеры кода для различных платформ.
Пример для Arduino
Использование встроенного LED и датчика наклона
C++
Пример для Arduino
Использование встроенного LED и датчика наклона
int ledPin = 13; // Пин встроенного LED Arduino
int lPin = 11; // Пин L модуля (управление LED)
int sPin = 10; // Пин S модуля (датчик наклона)
int val; // Переменная для хранения состояния
void setup() {
pinMode(ledPin, OUTPUT);
pinMode(lPin, OUTPUT);
pinMode(sPin, INPUT_PULLUP); // Используем внутреннюю подтяжку
}
void loop() {
val = digitalRead(sPin); // Читаем состояние датчика
if (val == LOW) { // Если модуль наклонен
digitalWrite(ledPin, HIGH); // Включаем LED на плате
digitalWrite(lPin, HIGH); // Включаем LED на модуле
} else {
digitalWrite(ledPin, LOW);
digitalWrite(lPin, LOW);
}
}
Этот скетч считывает состояние ртутного выключателя. При наклоне (сигнал LOW) зажигается как встроенный светодиод модуля, так и светодиод на самой плате Arduino.
Пример для ESP-IDF
Нативная разработка для ESP32
C++
Пример для ESP-IDF
Нативная разработка для ESP32
#include <stdio.h>
#include "freertos/FreeRTOS.h"
#include "freertos/task.h"
#include "driver/gpio.h"
#define TILT_SENSOR_PIN GPIO_NUM_17
#define LED_PIN GPIO_NUM_16
void app_main(void) {
gpio_set_direction(TILT_SENSOR_PIN, GPIO_MODE_INPUT);
gpio_set_pull_mode(TILT_SENSOR_PIN, GPIO_PULLUP_ONLY); // Включаем подтяжку
gpio_set_direction(LED_PIN, GPIO_MODE_OUTPUT);
while (1) {
int sensor_value = gpio_get_level(TILT_SENSOR_PIN);
if (sensor_value == 0) { // Активный низкий
gpio_set_level(LED_PIN, 1);
} else {
gpio_set_level(LED_PIN, 0);
}
vTaskDelay(pdMS_TO_TICKS(100));
}
}
Код для ESP-IDF настраивает пины и в бесконечном цикле опрашивает состояние датчика наклона. При срабатывании зажигается светодиод.
Пример для ESPHome
Интеграция в Home Assistant
YAML
Пример для ESPHome
Интеграция в Home Assistant
binary_sensor:
- platform: gpio
pin:
number: GPIO17
mode: INPUT_PULLUP
inverted: true
name: "KY-027 Tilt Sensor"
on_press:
then:
- light.turn_on: ky027_led
on_release:
then:
- light.turn_off: ky027_led
light:
- platform: binary
name: "KY-027 LED"
output: led_output
id: ky027_led
output:
- platform: gpio
pin: GPIO16
id: led_output
Конфигурация для ESPHome создает бинарный сенсор наклона. Параметр inverted: true позволяет получить активное состояние (ON) при наклоне модуля.
Пример для MicroPython
Скрипт на Python
Python
Пример для MicroPython
Скрипт на Python
from machine import Pin
import time
s_pin = Pin(17, Pin.IN, Pin.PULL_UP)
l_pin = Pin(16, Pin.OUT)
while True:
if s_pin.value() == 0:
l_pin.on()
print("Наклон обнаружен!")
else:
l_pin.off()
time.sleep(0.1)
MicroPython скрипт опрашивает GPIO17 и включает GPIO16 при низком уровне сигнала на входе.
Итоги KY-027
Модуль **KY-027 Magic Light Cup** — это простое и эффективное решение для создания интерактивных проектов, реагирующих на наклон. Благодаря наличию светодиода на той же плате, он отлично подходит для обучения и быстрой сборки прототипов.
Рекомендации
Используйте два таких модуля для создания полноценного эффекта «волшебных чашек». Для плавной регулировки яркости LED используйте ШИМ (PWM) на пине управления LED модуля.
Безопасность
**Внимание!** Модуль содержит ртуть в герметичной колбе. Не разбивайте колбу, не нагревайте её и не утилизируйте модуль с бытовым мусором. При повреждении колбы немедленно проветрите помещение.
Готовы создать магию?
Используйте примеры кода выше, чтобы быстро запустить проект с KY-027!

