KY-024 Линейный датчик Холла

Полное руководство по модулю линейного датчика Холла KY-024: характеристики, распиновка, схемы подключения, даташит и примеры кода для ESP32, Arduino, ESPHome и MicroPython.

KY-0xx module Analog Digital

Где купить

Приобретите KY-024 Линейный датчик Холла

Обзор

KY-024 — это модуль линейного датчика Холла, который обеспечивает как аналоговый, так и цифровой выходы. Он оснащен потенциометром для регулировки чувствительности и подходит для обнаружения магнитных полей в различных приложениях.

KY-024 — это линейный датчик магнитного поля на основе элемента Холла. В отличие от простых переключателей, он может измерять относительную силу поля. Модуль имеет два выхода: аналоговый (A0) передает уровень напряжения, пропорциональный силе поля, а цифровой (D0) срабатывает при превышении порога, заданного потенциометром. Часто используется для измерения скорости вращения, обнаружения положения и в бесконтактных переключателях.

KY-024 Linear Hall Effect Module
<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>

Где купить

KY-024 module

Ориентировочная цена

от $2

Технические параметры

Характеристики KY-024

Подробные спецификации линейного датчика Холла KY-024.

Напряжение питания
3.0В — 5.5В
Выходы
Аналоговый + Цифровой
Чувствительность
1.0 - 1.75 мВ/Гс
Размеры
45 x 15 x 14 мм
Скачать полный даташит (PDF)
Пины и контакты

Распиновка KY-024

KY-024 имеет 4 контакта для подключения питания и снятия данных.

KY-024 Pinout
🔌
4
Всего пинов
3.3-5V
Напряжение
<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В для питания и аналогового входа (ADC).
    </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-024 к ESP32

Схема соединения модуля с контроллером ESP32 для измерения магнитных полей.

KY-024 Wiring with ESP32

Статус подключения

Питание: Обязательно
Данные: D0 или A0

Детали интерфейса

ADC Pin A0 → GPIO36 (VP)
DI Pin D0 → GPIO17
KY-024 Пин Тип ESP32 Пин Описание
GND Required GND Общий минус
+V Required 3.3V Питание модуля
D0 Digital GPIO17 Цифровой выход
A0 Analog GPIO36 Аналоговые данные (ADC)
Устранение проблем

Устранение неполадок KY-024

Типичные проблемы и их решения для модуля линейного датчика Холла.

!
Датчик не реагирует на магнитное поле

Решения:

  • Проверьте питание (3.3В / 5В).
  • Покрутите потенциометр: цифровой порог (D0) может быть установлен слишком высоко или низко.
  • Убедитесь, что магнит поднесен достаточно близко к чувствительному элементу.
  • Попробуйте перевернуть магнит (изменить полярность).
?
Шум на аналоговом выходе

Используйте программное усреднение показаний АЦП или добавьте небольшой конденсатор (0.1 мкФ) между пином A0 и GND для фильтрации высокочастотного шума.

Библиотеки и код

Примеры программирования KY-024

Примеры кода для разных платформ для работы с датчиком Холла.

Arduino Logo

Arduino IDE / Framework

C++ • Стандартный пример

INO
// Инициализация входных пинов
int analog_input = A0; // Аналоговый выход датчика
int digital_input = 3; // Цифровой выход датчика

void setup() {
  pinMode(analog_input, INPUT);
  pinMode(digital_input, INPUT);
  Serial.begin(9600); // Скорость последовательного порта 9600 бит/с
  Serial.println("KY-024 Обнаружение магнитного поля");
}

void loop() {
  // Считываем текущие значения, преобразуем в напряжение...
  float analog_value = analogRead(analog_input) * (5.0 / 1023.0); 
  int digital_value = digitalRead(digital_input);

  // ...и выводим в монитор порта
  Serial.print("Аналоговое напряжение: "); 
  Serial.print(analog_value, 4);
  Serial.print(" V, Threshold (порог): ");
  if (digital_value == HIGH) {
    Serial.println("ДОСТИГНУТ");
  } else {
    Serial.println("не достигнут");
  }
  delay(1000);
}
<p class="mt-4 text-sm text-slate-600 dark:text-slate-400">Этот код считывает аналоговое напряжение и проверяет цифровой сигнал для определения достижения порога.</p>
</div>
ESP-IDF Logo

ESP-IDF

C • Native SDK

SDK
#include <stdio.h>
#include "freertos/FreeRTOS.h"
#include "freertos/task.h"
#include "driver/adc.h"
#include "driver/gpio.h"

#define HALL_SENSOR_ANALOG_PIN ADC1_CHANNEL_0 // GPIO36
#define HALL_SENSOR_DIGITAL_PIN GPIO_NUM_17

void app_main(void) {
    adc1_config_width(ADC_WIDTH_BIT_12);
    adc1_config_channel_atten(HALL_SENSOR_ANALOG_PIN, ADC_ATTEN_DB_11);
    gpio_set_direction(HALL_SENSOR_DIGITAL_PIN, GPIO_MODE_INPUT);
    
    while (1) {
        int analog_value = adc1_get_raw(HALL_SENSOR_ANALOG_PIN);
        int digital_value = gpio_get_level(HALL_SENSOR_DIGITAL_PIN);
        printf("ADC: %d, Порог: %s\n", analog_value, digital_value ? "ДА" : "НЕТ");
        vTaskDelay(pdMS_TO_TICKS(1000));
    }
}
</div>
ESPHome Logo

ESPHome

YAML • Конфигурация

YAML
sensor:
  - platform: adc
    pin: GPIO36
    name: "KY-024 Сила поля"
    update_interval: 1s

binary_sensor:
  - platform: gpio
    pin: GPIO17
    name: "KY-024 Магнитный триггер"
</div>
MicroPython Logo

MicroPython

Python • Скрипт

PY
import machine
import time

# Настройка
adc = machine.ADC(machine.Pin(36))
adc.atten(machine.ADC.ATTN_11DB)
digital_pin = machine.Pin(17, machine.Pin.IN)

while True:
    val = adc.read()
    status = digital_pin.value()
    print(f"Analog: {val}, Threshold: {status}")
    time.sleep(1)
</div>

Итог по KY-024

Модуль KY-024 — это гибкий инструмент для измерения магнитных полей и детекции приближения. Его линейный выход позволяет получать более детальную информацию о силе поля, чем простые цифровые датчики Холла.

Лучшие практики

  • Линейность: Учитывайте, что аналоговое значение меняется пропорционально силе поля, что полезно для измерения дистанции.
  • Стабильность: Для точных измерений используйте стабильный источник питания 3.3В.
  • Калибровка: Используйте потенциометр для точной настройки порога переключения цифрового выхода в вашей среде.

Примеры кода Характеристики

Похожие варианты