Обзор
KY-032 — это модуль инфракрасного датчика обхода препятствий, который обнаруживает объекты путем излучения и приема инфракрасного света. Он выдает цифровой сигнал при обнаружении объекта, что делает его идеальным для робототехники, систем навигации и автоматизации.
KY-032 — это универсальный датчик препятствий, работающий в инфракрасном диапазоне. Он обнаруживает препятствия на расстоянии до 20-30 см и выдает сигнал низкого уровня (LOW) при срабатывании. Модуль оснащен двумя потенциометрами для точной настройки дистанции и чувствительности.
О ИК-датчике обхода препятствий KY-032
Модуль ИК-датчика KY-032 предназначен для обнаружения препятствий с помощью инфракрасного излучения. Он состоит из инфракрасного светодиода-излучателя и фотодиода-приемника. Излучатель посылает ИК-импульсы определенной частоты, которые при встрече с объектом отражаются и улавливаются приемником. Затем модуль обрабатывает сигнал и выдает цифровое значение на выходной пин.
⚡ Ключевые особенности
- Регулируемая дистанция — С помощью потенциометров можно настроить расстояние обнаружения от 2 до 30 см.
- Цифровой выход — Выдает сигнал LOW при обнаружении объекта, что упрощает работу с микроконтроллерами.
- Защита от помех — Модуль работает на определенной частоте (38 кГц), что делает его устойчивым к фоновому свету.
- Наличие пина EN — Позволяет программно включать или отключать датчик.
Приобретите KY-032
Характеристики KY-032
Полные технические характеристики ИК-модуля датчика обхода препятствий KY-032.
Распиновка KY-032
Модуль KY-032 имеет 4 вывода для подключения. Важно правильно соблюдать полярность питания, чтобы не повредить микросхему NE555, расположенную на плате.
- S (OUT) — переходит в LOW при обнаружении.
- EN (Enable) — для работы должен быть замкнут на VCC (перемычкой) или управляться через GPIO (HIGH — вкл).
- Регулировка — левый подстроечник настраивает яркость ИК (дальность), правый — частоту (чувствительность).
| № | Название | Тип | Описание |
|---|---|---|---|
| 1 | GND | Земля | Подключение к отрицательному полюсу источника питания. |
| 2 | VCC | Питание | Напряжение 3.3В — 5В. |
| 3 | S (OUT) | Выход | Цифровой выход. LOW при обнаружении объекта, HIGH — в остальное время. |
| 4 | EN | Управление | Разрешение работы. По умолчанию должен быть HIGH (или оставить перемычку). |
Подключение KY-032 к ESP32
Для работы датчика с ESP32 необходимо подключить пин S (OUT) к любому цифровому входу GPIO. Питание можно брать напрямую от 3.3В ESP32.
| Пин KY-032 | На ESP32 | Описание |
|---|---|---|
| 1 GND | GND | Земля |
| 2 VCC | 3.3V или 5V | Питание |
| 3 S (OUT) | GPIO16 | Сигнальный пин (Digital Input) |
| 4 EN | GPIO17 / NC | Разрешение работы (опционально) |
Устранение неполадок KY-032
Распространенные проблемы
Датчик всегда выдает HIGH / Не видит препятствия
Решение:
- Медленно поворачивайте потенциометры. Один отвечает за дальность обнаружения, другой — за балансировку частоты. Попробуйте найти положение, при котором светодиод срабатывания загорается при поднесении руки.
- Убедитесь, что перемычка на ножках EN установлена, или на пин EN подано 3.3В.
- Проверьте, не загрязнены ли линзы ИК-диодов.
Ложные срабатывания (попеременное HIGH/LOW)
Решение:
- Уменьшите чувствительность потенциометром.
- Избегайте попадания прямых солнечных лучей на датчик. Солнце является мощным источником ИК-излучения и может «ослеплять» приемник.
- Убедитесь, что питание стабильно. Рекомендуется установить керамический конденсатор 0.1 мкФ между VCC и GND модуля для фильтрации помех.
Программирование датчика KY-032
Примеры кода для считывания состояния датчика на различных платформах.
Arduino Core
Скетч для Arduino IDE или ESP32 Arduino Core
C++
Arduino Core
Скетч для Arduino IDE или ESP32 Arduino Core
const int sensorPin = 16; // Вывод S (OUT) датчика
void setup() {
pinMode(sensorPin, INPUT);
Serial.begin(115200);
Serial.println("Тест датчика KY-032");
}
void loop() {
int val = digitalRead(sensorPin);
if (val == LOW) {
Serial.println("Препятствие обнаружено!");
} else {
Serial.println("Путь свободен");
}
delay(200);
}
Этот код просто считывает цифровой сигнал с пина датчика. Логика основана на том, что датчик активен при низком уровне (LOW).
ESPHome
YAML конфигурация для Home Assistant
YAML
ESPHome
YAML конфигурация для Home Assistant
binary_sensor:
- platform: gpio
pin:
number: GPIO16
mode: INPUT_PULLUP
name: "Датчик препятствий KY-032"
device_class: motion
filters:
- invert:
Фильтр invert необходим, так как датчик выдает LOW при обнаружении движения (препятствия).
MicroPython
Скрипт для MicroPython
Python
MicroPython
Скрипт для MicroPython
from machine import Pin
import time
sensor = Pin(16, Pin.IN, Pin.PULL_UP)
while True:
if sensor.value() == 0:
print("Обнаружено препятствие!")
else:
print("Чисто")
time.sleep_ms(200)
Итоги по KY-032
Инфракрасный датчик **KY-032** — это надежное и бюджетное решение для мобильной робототехники. Его легко настраивать и подключать к любым современным контроллерам, таким как ESP32 или Arduino.
Рекомендации
Для предотвращения влияния солнечного света используйте козырьки или устанавливайте датчики внутри корпуса робота. Помните, что черные поверхности плохо отражают ИК-свет и могут не обнаруживаться датчиком.
Безопасность
Никогда не направляйте ИК-излучатели прямо в глаза с близкого расстояния. Хотя мощность невелика, длительное воздействие нежелательно.