Коротко про HC-SR04
HC-SR04 — ультразвуковий модуль для безконтактного вимірювання відстані в діапазоні від 2 см до 4 м. Він підходить для робототехніки, сигналізації про наближення, навчальних далекомірів та автоматизації, де достатньо оцінювати відстань до об’єкта в повітрі.
Ключові характеристики
- Тип
- ультразвуковий датчик відстані
- Живлення
- 5 В DC [1]
- Робочий струм
- до 15 мА
- Діапазон вимірювання
- від 2 см до 4 м
- Заявлена точність
- до 3 мм за сприятливих умов
- Частота ультразвуку
- 40 кГц
- Кут вимірювання
- до 15°
- Сигнали керування
- Trig і Echo, TTL-імпульси
- Розміри модуля
- 45,3 × 20,4 × 15 мм
Детальний опис та особливості
Принцип вимірювання
HC-SR04 запускає серію ультразвукових імпульсів частотою 40 кГц і формує на виході Echo імпульс, тривалість якого відповідає часу проходження звуку до об’єкта та назад. Мікроконтролер вимірює цей час і ділить пройдений шлях навпіл, щоб визначити відстань.
Для запуску вимірювання на Trig подають імпульс високого рівня тривалістю щонайменше 10 мкс. Між послідовними запусками варто витримувати понад 60 мс, щоб попереднє відбиття не впливало на наступний результат.[1]
Що впливає на результат
Найкраще ультразвук відбивають достатньо великі тверді поверхні, розташовані приблизно перпендикулярно до осі датчика. Малий, похилий, нерівний або звукопоглинальний об’єкт може дати слабке чи нестабільне відбиття, особливо біля максимальної дальності.
Значення до 3 мм слід сприймати як заявлену точність модуля за сприятливих умов, а не як гарантовану похибку готового пристрою в усьому діапазоні. На результат впливають геометрія цілі, температура повітря, монтаж і алгоритм обробки.
Підійде / не підійде
Підійде
- для виявлення перешкод у навчальних роботах і рухомих платформах;
- для далекомірів та індикаторів наближення на мікроконтролері;
- для безконтактного керування за порогом відстані;
- для проєктів із 5-вольтовими Arduino-сумісними контролерами.
Не підійде
- для вимірювання відстані менш як 2 см;
- для прямого підключення Echo до входу, який не допускає 5-вольтових логічних сигналів;
- для точного промислового позиціонування без калібрування та перевірки в реальних умовах;
- для стабільного виявлення дуже малих, м’яких, похилих або звукопоглинальних об’єктів;
- для роботи під водою або без захисту від вологи.
Приклади застосування
Робот із виявленням перешкод
Контролер періодично вимірює відстань попереду та зупиняє платформу або змінює напрямок, коли об’єкт наближається до заданого порога.
Настільний далекомір
Результат можна виводити в монітор послідовного порту або на дисплей. Для стабільного показу корисно відкидати помилкові значення та усереднювати кілька вимірювань.
Сигналізація про наближення
HC-SR04 може передавати контролеру відстань до руки або іншого об’єкта, а контролер — вмикати світловий чи звуковий сигнал через відповідний драйвер.
Підключення
Вимкніть живлення
Звірте підписи VCC, Trig, Echo та GND безпосередньо на модулі. Не переставляйте контакти за схемою схожого датчика.
Під’єднайте живлення
З’єднайте VCC із 5 В, а GND — зі спільною землею контролера. Не живіть модуль від GPIO.
Під’єднайте сигнали
Trig підключіть до цифрового виходу, Echo — до цифрового входу. Для 3,3-вольтового контролера перед підключенням Echo використайте належне узгодження логічного рівня.
Перевірте програму
Сформуйте на Trig імпульс щонайменше 10 мкс, виміряйте тривалість Echo та обробляйте відсутність відбиття як окремий стан. Не опитуйте модуль частіше ніж один раз приблизно на 60 мс.
Для прототипу з 5-вольтовою логікою можна використати Nano V3.0 на ATmega328P. Допоміжні з’єднання зручно зібрати на безпаяльній макетній платі на 170 отворів.
Обмеження та безпека
Живлення лише 5 В
Подавайте на VCC стабілізовані 5 В із правильною полярністю. Не подавайте на модуль більшу напругу та не міняйте місцями VCC і GND.
Захистіть 3,3-вольтовий GPIO
Перед підключенням Echo до ESP32, ESP8266, Raspberry Pi Pico або іншого 3,3-вольтового контролера перевірте допустимий рівень його входу та застосуйте узгодження рівнів. Пряме підключення без такої перевірки може пошкодити GPIO.
Не розраховуйте на результат поза діапазоном
Відстань менш як 2 см або слабке відбиття може дати некоректне значення чи відсутність Echo. Програма повинна мати тайм-аут і не трактувати помилку як достовірну нульову відстань.
Перевіряйте роботу в реальних умовах
Монтаж біля стінок корпусу, кілька ультразвукових датчиків поруч, похила ціль або зміна температури можуть впливати на покази. Перед постійним використанням перевірте систему з реальними об’єктами та відстанями.
FAQ
Чи працює HC-SR04 від 3,3 В?
Для цього модуля використовуйте живлення 5 В. Живлення від 3,3 В не заявляється.
Чи можна підключити HC-SR04 до ESP32?
Так, якщо модуль живиться від 5 В, землі об’єднані, а сигнал Echo узгоджений із допустимим рівнем входу ESP32. Не підключайте Echo безпосередньо без перевірки.
Чому датчик не бачить об’єкт?
Перевірте живлення, спільну землю, порядок контактів і програмний тайм-аут. Малий, м’який, похилий або розташований поза робочим діапазоном об’єкт може не дати достатнього відбиття.
Чи гарантує модуль точність 3 мм на відстані 4 м?
Ні. Значення до 3 мм є заявленим параметром за сприятливих умов; фактичний результат залежить від цілі, температури, монтажу та обробки сигналу.
Документи та джерела
- ELECFREAKS, Ultrasonic Ranging Module HC-SR04 Datasheet — живлення 5 В, принцип роботи, діапазон, часові сигнали та рекомендований інтервал між вимірюваннями.