Приобретите KY-033 Датчик линии (Line Tracking Sensor)
Обзор
KY-033 — это модуль датчика отслеживания линии (трекинга), который обнаруживает светоотражающие и светопоглощающие поверхности с помощью инфракрасной технологии. Он выдает цифровой выходной сигнал при обнаружении линии, что делает его подходящим для робототехнической навигации и проектов роботов-следопытов.
KY-033 — это датчик для обнаружения контрастных линий на поверхности. Модуль использует ИК-излучатель и фотоприемник (пару TCRT5000), позволяя роботу различать темные и светлые участки пути.
Быстрая навигация
<div class="rounded-2xl border border-slate-200 dark:border-slate-800 bg-white dark:bg-slate-900 p-5">
<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/50 transition-colors group">
<div class="w-8 h-8 rounded-lg bg-blue-100 dark:bg-blue-900/30 flex items-center justify-center shrink-0">
<img src="/img/UacrygeoB1-40.png" alt="Arduino" class="w-5 h-5 !my-0" />
</div>
<div class="min-w-0">
<div class="text-sm font-medium text-slate-700 dark:text-slate-300 group-hover:text-blue-600 dark:group-hover:text-blue-400 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/50 transition-colors group">
<div class="w-8 h-8 rounded-lg bg-orange-100 dark:bg-orange-900/30 flex items-center justify-center shrink-0">
<img src="/img/32WN7tz--V-40.png" alt="ESP-IDF" class="w-5 h-5 !my-0" />
</div>
<div class="min-w-0">
<div class="text-sm font-medium text-slate-700 dark:text-slate-300 group-hover:text-orange-600 dark:group-hover:text-orange-400 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/50 transition-colors group">
<div class="w-8 h-8 rounded-lg bg-yellow-100 dark:bg-yellow-900/30 flex items-center justify-center shrink-0">
<img src="/img/U_FT8ja_jJ-40.png" alt="MicroPython" class="w-5 h-5 !my-0" />
</div>
<div class="min-w-0">
<div class="text-sm font-medium text-slate-700 dark:text-slate-300 group-hover:text-yellow-600 dark:group-hover:text-yellow-400 transition-colors">MicroPython</div>
<div class="text-[10px] text-slate-500 uppercase">Python</div>
</div>
</a>
</div>
</div>
Где купить
Приобрести KY-033
Доступен в большинстве магазинов электроники
Почему этот модуль?
-
Высокая помехоустойчивость к внешнему освещению.
-
Настраиваемая чувствительность с помощью потенциометра.
-
Работает при напряжении от 3.3В до 5В.
Цены указаны ориентировочно. Мы можем получать комиссию от покупок (Amazon Associate).
Характеристики KY-033
Модуль KY-033 предназначен для точного обнаружения линии и контрастных переходов.
Распиновка KY-033
Модуль KY-033 имеет 3 контакта для подключения.
| № | Пин | Назначение |
|---|---|---|
| 1 | GND | Земля |
| 2 | VCC | Питание 3.3В - 5В |
| 3 | S | Сигнал (LOW при обнаружении линии) |
<div class="grid grid-cols-1 sm:grid-cols-2 gap-4">
<div class="p-4 rounded-xl border border-slate-100 dark:border-slate-800 bg-slate-50 dark:bg-slate-800/50">
<div class="flex items-center gap-2 mb-2">
<svg xmlns="http://www.w3.org/2000/svg" width="16" height="16" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" class="text-purple-500"><path d="M12 22s8-4 8-10V5l-8-3-8 3v7c0 6 8 10 8 10z"/></svg>
<span class="text-xs font-bold uppercase text-slate-500">Логика</span>
</div>
<p class="text-xs text-slate-600 dark:text-slate-400 !my-0">Инверсный выход: LOW на черном фоне, HIGH на белом.</p>
</div>
<div class="p-4 rounded-xl border border-slate-100 dark:border-slate-800 bg-slate-50 dark:bg-slate-800/50">
<div class="flex items-center gap-2 mb-2">
<svg xmlns="http://www.w3.org/2000/svg" width="16" height="16" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" class="text-purple-500"><circle cx="12" cy="12" r="10"/><path d="M12 16v-4"/><path d="M12 8h.01"/></svg>
<span class="text-xs font-bold uppercase text-slate-500">Высота</span>
</div>
<p class="text-xs text-slate-600 dark:text-slate-400 !my-0">Оптимальная высота установки: 2-10 мм над поверхностью.</p>
</div>
</div>
Подключение KY-033 к ESP32
Ниже представлена типичная схема подключения модуля к контроллеру ESP32.
| Пин KY-033 | Пин ESP32 | Описание |
|---|---|---|
| GND | GND | Общий провод |
| VCC | 3.3V / 5V | Питание модуля |
| S | GPIO 16 | Вход датчика (Digital Read) |
<div class="bg-amber-50 dark:bg-amber-900/10 rounded-xl p-4 border border-amber-100 dark:border-amber-900/20">
<div class="flex items-center gap-2 mb-2">
<svg xmlns="http://www.w3.org/2000/svg" width="18" height="18" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" class="text-amber-600 dark:text-amber-400"><path d="M10.29 3.86L1.82 18a2 2 0 0 0 1.71 3h16.94a2 2 0 0 0 1.71-3L13.71 3.86a2 2 0 0 0-3.42 0z"/><line x1="12" y1="9" x2="12" y2="13"/><line x1="12" y1="17" x2="12.01" y2="17"/></svg>
<span class="text-sm font-bold text-amber-700 dark:text-amber-400 uppercase tracking-wider">Калибровка</span>
</div>
<p class="text-xs text-amber-800/80 dark:text-amber-400/80 !my-0 leading-relaxed">
Используйте встроенный потенциометр для настройки порога срабатывания под конкретную высоту и тип поверхности. Светодиоды на модуле помогут визуально определить момент обнаружения.
</p>
</div>
Устранение неполадок KY-033
Датчик не реагирует на линию
Решение: Проверьте правильность подключения и питания. Отрегулируйте потенциометр: индикатор обнаружения должен гаснуть на темной поверхности и загораться на светлой (или наоборот, в зависимости от логики модуля). Убедитесь, что датчик находится на высоте 2-10 мм.
Ложные срабатывания от солнца
Решение: Инфракрасные датчики чувствительны к солнечному свету. Для стабильной работы используйте козырьки или экраны, закрывающие сенсор TCRT5000 от прямых лучей, или настраивайте чувствительность в условиях реального освещения.
Примеры кода KY-033
Ниже приведены проверенные примеры кода для различных платформ.
Arduino IDE / ESP32
C++ / Wiring
Простой пример
Arduino IDE / ESP32
C++ / Wiring
Скетч для базового обнаружения линии (обработка сигнала LOW).
```cpp const int sensorPin = 16; // GPIO 16 на ESP32void setup() { pinMode(sensorPin, INPUT_PULLUP); Serial.begin(115200); Serial.println(“KY-033 Датчик линии готов…”); }
void loop() { int sensorValue = digitalRead(sensorPin);
// Датчик KY-033 выдает LOW при отражении от светлого // (но часто настраивается на выдачу сигнала при обнаружении черной линии) if (sensorValue == LOW) { Serial.println(“ЛИНИЯ ОБНАРУЖЕНА!”); } else { Serial.println(“Пусто”); } delay(100); }
</div>
</details>
<!-- ESPHome -->
<details class="group rounded-2xl border border-slate-200 dark:border-slate-800 bg-white dark:bg-slate-900 overflow-hidden">
<summary class="flex items-center justify-between p-5 cursor-pointer list-none hover:bg-slate-50 dark:hover:bg-slate-800/50 transition-colors">
<div class="flex items-center gap-4">
<div class="w-10 h-10 rounded-xl bg-purple-100 dark:bg-purple-900/40 flex items-center justify-center shrink-0">
<img src="/img/CvS9ia05Te-40.png" alt="ESPHome" class="w-6 h-6 !my-0" />
</div>
<div>
<h3 class="font-bold text-slate-900 dark:text-white">ESPHome</h3>
<p class="text-xs text-slate-50 uppercase tracking-wide">YAML Configuration</p>
</div>
</div>
<div class="flex items-center gap-3">
<svg xmlns="http://www.w3.org/2000/svg" width="18" height="18" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" class="text-slate-400 group-open:rotate-180 transition-transform"><polyline points="6 9 12 15 18 9"/></svg>
</div>
</summary>
<div class="p-5 border-t border-slate-100 dark:border-slate-800 bg-slate-50/50 dark:bg-slate-900/50">
```yaml
binary_sensor:
- platform: gpio
pin:
number: GPIO16
mode: INPUT_PULLUP
inverted: true
name: "KY-033 Line Sensor"
device_class: motion
</div>
MicroPython
Python (ESP32/RP2040)
MicroPython
Python (ESP32/RP2040)
sensor = Pin(16, Pin.IN, Pin.PULL_UP)
while True: if sensor.value() == 0: print(“Линия!”) time.sleep(0.1)
</div>
</details>
</div>
## Итоги
Датчик **KY-033 Line Tracking Sensor Module** — это эффективное решение для создания мобильных роботов и систем автоматизации, требующих детекции меток на поверхности. Благодаря паре TCRT5000 и возможности точной настройки, он обеспечивает стабильную работу в различных условиях.
<div class="not-prose grid grid-cols-1 sm:grid-cols-2 gap-4 mb-20">
<div class="p-6 rounded-2xl border border-blue-100 dark:border-blue-900/30 bg-blue-50/50 dark:bg-blue-900/10">
<div class="font-bold text-blue-900 dark:text-blue-300 mb-2 flex items-center gap-2">
<svg xmlns="http://www.w3.org/2000/svg" width="18" height="18" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" class="text-blue-500"><circle cx="12" cy="12" r="10"/><path d="M12 16v-4"/><path d="M12 8h.01"/></svg>
Совет по установке
</div>
<p class="text-sm text-blue-800/80 dark:text-blue-300/80 !my-0">Используйте массив из 3-5 таких датчиков для плавного и точного следования по сложным траекториям.</p>
</div>
<div class="p-6 rounded-2xl border border-amber-100 dark:border-amber-900/30 bg-amber-50/50 dark:bg-amber-900/10">
<div class="font-bold text-amber-900 dark:text-amber-300 mb-2 flex items-center gap-2">
<svg xmlns="http://www.w3.org/2000/svg" width="18" height="18" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" class="text-amber-500"><path d="M10.29 3.86L1.82 18a2 2 0 0 0 1.71 3h16.94a2 2 0 0 0 1.71-3L13.71 3.86a2 2 0 0 0-3.42 0z"/><line x1="12" y1="9" x2="12" y2="13"/><line x1="12" y1="17" x2="12.01" y2="17"/></svg>
Особенности логики
</div>
<p class="text-sm text-amber-800/80 dark:text-amber-400/80 !my-0">Помните, что выход «S» обычно инвертирован (LOW при отражении ИК-луча).</p>
</div>
</div>
<div class="mt-20 pt-10 border-t border-slate-200 dark:border-slate-800">
<h2 class="text-2xl font-bold mb-8">Похожие датчики</h2>
<div class="grid grid-cols-1 sm:grid-cols-2 lg:grid-cols-3 gap-6 not-prose">
<a href="/sensors/ky-032/" class="group rounded-2xl border border-slate-200 dark:border-slate-800 bg-white dark:bg-slate-900 overflow-hidden hover:border-indigo-500 transition-all">
<div class="p-4 bg-slate-50 dark:bg-slate-800/50 flex items-center justify-center">
<img src="/img/V6129l5u1Y-433.png" class="h-32 object-contain group-hover:scale-105 transition-transform" />
</div>
<div class="p-4">
<h4 class="font-bold text-slate-900 dark:text-white mb-1">KY-032 Обнаружитель препятствий</h4>
<p class="text-xs text-slate-500">ИК-датчик для обнаружения объектов</p>
</div>
</a>
<a href="/sensors/ky-026/" class="group rounded-2xl border border-slate-200 dark:border-slate-800 bg-white dark:bg-slate-900 overflow-hidden hover:border-indigo-500 transition-all">
<div class="p-4 bg-slate-50 dark:bg-slate-800/50 flex items-center justify-center">
<img src="/img/6ZdYnEmJxO-308.png" class="h-32 object-contain group-hover:scale-105 transition-transform" />
</div>
<div class="p-4">
<h4 class="font-bold text-slate-900 dark:text-white mb-1">KY-026 Датчик пламени</h4>
<p class="text-xs text-slate-500">ИК-модуль для обнаружения огня</p>
</div>
</a>
</div>
</div>