Приобретите KY-025 Модуль геркона (магнитный датчик)
Обзор
KY-025 — это модуль магнитного датчика на основе геркона, который предоставляет как аналоговый, так и цифровой выходы. Он оснащен потенциометром для настройки чувствительности и идеально подходит для обнаружения магнитных полей в различных проектах.
KY-025 — это датчик магнитного поля, срабатывающий при поднесении магнита. Модуль имеет два выхода: аналоговый (A0) передает уровень напряжения, зависящий от силы поля, а цифровой (D0) срабатывает при превышении порога, заданного потенциометром. Часто используется в системах безопасности (датчики открытия дверей) и бесконтактных переключателях.
Быстрая навигация
<div class="rounded-2xl border border-slate-200 dark:border-slate-800 bg-white dark:bg-slate-900 p-6">
<h3 class="text-sm font-semibold text-slate-900 dark:text-white uppercase tracking-wider mb-4">Примеры кода</h3>
<div class="space-y-2">
<a href="#arduino" class="flex items-center gap-3 p-2 rounded-xl hover:bg-slate-50 dark:hover:bg-slate-800 transition-colors !no-underline group">
<img src="/img/UacrygeoB1-40.png" class="w-8 h-8 rounded-lg" alt="Arduino" />
<div>
<div class="text-sm font-medium text-slate-900 dark:text-white group-hover:text-indigo-600 transition-colors">Arduino</div>
<div class="text-[10px] text-slate-500 uppercase">C++ Framework</div>
</div>
</a>
<a href="#esp-idf" class="flex items-center gap-3 p-2 rounded-xl hover:bg-slate-50 dark:hover:bg-slate-800 transition-colors !no-underline group">
<img src="/img/32WN7tz--V-40.png" class="w-8 h-8 rounded-lg" alt="ESP-IDF" />
<div>
<div class="text-sm font-medium text-slate-900 dark:text-white group-hover:text-indigo-600 transition-colors">ESP-IDF</div>
<div class="text-[10px] text-slate-500 uppercase">Native SDK</div>
</div>
</a>
<a href="#micropython" class="flex items-center gap-3 p-2 rounded-xl hover:bg-slate-50 dark:hover:bg-slate-800 transition-colors !no-underline group">
<img src="/img/U_FT8ja_jJ-40.png" class="w-8 h-8 rounded-lg" alt="MicroPython" />
<div>
<div class="text-sm font-medium text-slate-900 dark:text-white group-hover:text-indigo-600 transition-colors">MicroPython</div>
<div class="text-[10px] text-slate-500 uppercase">Python</div>
</div>
</a>
</div>
</div>
Где купить
Ориентировочная цена
от $2
Характеристики KY-025
Подробные спецификации модуля геркона KY-025.
Распиновка KY-025
KY-025 имеет 4 контакта для подключения питания и снятия данных.
<div class="p-6 rounded-2xl border border-slate-200 dark:border-slate-800 bg-white dark:bg-slate-900">
<h4 class="text-sm font-bold text-slate-900 dark:text-white mb-4">Советы по подключению</h4>
<ul class="space-y-3 text-sm text-slate-600 dark:text-slate-400">
<li class="flex gap-3">
<span class="text-indigo-500 font-bold shrink-0">1.</span>
Для ESP32 лучше использовать 3.3В, чтобы аналоговые значения были корректными.
</li>
<li class="flex gap-3">
<span class="text-indigo-500 font-bold shrink-0">2.</span>
Выход D0 выдает HIGH, когда магнитное поле достигает порога.
</li>
</ul>
</div>
| Пин | Тип | Описание | Примечание |
|---|---|---|---|
| GND | Power | Земля | — |
| +V | Power | Питание | 3.3В — 5В |
| D0 | Digital | Цифровой выход | Настраивается потенциометром |
| A0 | Analog | Аналоговый выход | Уровень напряжения поля |
Подключение KY-025 к ESP32
Схема соединения модуля с контроллером ESP32 для детекции магнитов.
Статус подключения
Детали интерфейса
| KY-025 Пин | Тип | ESP32 Пин | Описание |
|---|---|---|---|
| GND | Required | GND | Общий минус |
| +V | Required | 3.3V / 5V | Питание модуля |
| D0 | Digital | GPIO17 | Цифровой триггер |
| A0 | Analog | GPIO36 | Аналоговые данные (ADC) |
Устранение неполадок KY-025
Типичные ошибки при работе с датчиком и способы их решения.
!
Датчик не реагирует на магнит
▼
Решения:
- Проверьте соединение GND и VCC.
- Покрутите потенциометр: порог срабатывания может быть установлен слишком высоко или низко.
- Убедитесь, что магнит достаточно мощный для срабатывания геркона (дистанция обычно не более 2-3 см).
?
Нестабильные аналоговые показания
▼
Аналоговый шум — частое явление. Попробуйте использовать питание 3.3В от контроллера вместо 5В, чтобы избежать скачков напряжения при чтении АЦП.
Примеры программирования KY-025
Примеры кода для разных платформ для работы с цифровым и аналоговым выходами.
Arduino IDE / Framework
C++ • Стандартный пример
INO
▼
Arduino IDE / Framework
C++ • Стандартный пример
// Объявление пинов
const int analog_input = A0; // Аналоговый выход датчика
const int digital_input = 3; // Цифровой выход датчика
void setup() {
pinMode(analog_input, INPUT);
pinMode(digital_input, INPUT);
Serial.begin(9600);
Serial.println("KY-025: Детекция магнитного поля запущена");
}
void loop() {
// Чтение аналогового значения и перевод в напряжение
float analog_raw = analogRead(analog_input);
float voltage = analog_raw * (5.0 / 1023.0);
int digital_val = digitalRead(digital_input);
Serial.print("Напряжение: ");
Serial.print(voltage, 2);
Serial.print(" В | Порог: ");
if (digital_val == HIGH) {
Serial.println("ДОСТИГНУТ");
} else {
Serial.println("не достигнут");
}
delay(1000);
}
<p class="mt-4 text-sm text-slate-600 dark:text-slate-400">Этот код выводит в Serial монитор текущее напряжение с аналогового пина и состояние цифрового триггера.</p>
</div>
ESPHome
YAML • Конфигурация
YAML
▼
ESPHome
YAML • Конфигурация
sensor:
- platform: adc
pin: GPIO36
name: "KY-025 Уровень поля"
update_interval: 1s
binary_sensor:
- platform: gpio
pin:
number: GPIO17
mode: INPUT
name: "KY-025 Магнитный триггер"
</div>
MicroPython
Python • Скрипт
PY
▼
MicroPython
Python • Скрипт
import machine
import time
# Настройка АЦП и цифрового пина
adc = machine.ADC(machine.Pin(36))
adc.atten(machine.ADC.ATTN_11DB) # Для диапазона 3.3В
digital_pin = machine.Pin(17, machine.Pin.IN)
while True:
analog_val = adc.read()
digital_val = digital_pin.value()
print(f"Analog: {analog_val}, Digital: {'DETECTED' if digital_val else 'None'}")
time.sleep(1)
</div>
Итоги
Модуль KY-025 — это надежное и дешевое решение для обнаружения магнитов в DIY-проектах. Наличие двух типов выходов позволяет использовать его как для простого срабатывания в системах охраны, так и для измерения приближения магнита через аналоговый сигнал.
Ключевые советы:
- Чувствительность: Всегда настраивайте потенциометр под свои задачи.
- Питание: Для ESP32 используйте 3.3В для стабильной работы АЦП.
- Геркон: Будьте осторожны с колбой геркона, она сделана из тонкого стекла.