Здравствуйте, уважаемые читатели! Сегодня поговорим о весьма распространенном ультразвуковом датчике HC-SR04, который позволяет измерять расстояния до объекта в диапазоне от 3 см до 4 метров. В данной статье, разберем схему подключения датчика HC-SR04 к Ардуино и установим необходимую для работы с датчиком библиотеку.
Принцип действия датчика HC-SR04
Принцип действия датчика HC-SR04 заключается в том, что он генерирует ультразвуковой импульсы на частоте около 40кГц и отправляет их через излучатель, на плате обозначенный буквой T ( transmitter, с англ. передатчик). А далее, принимает отраженный от препятствия сигнал с помощью приемника, который на плате обозначен буквой R ( receiver, с англ. приемник). Зная скорость распространения звуковой волны заданной частоты и по задержке между отправкой сигнала и его получением, можно достаточно точно определить расстояние до объекта. Т.е. в своей работе, датчик использует принцип эхолокации.
Заявленная погрешность при определении расстояния у датчика HC-SR04 составляет 3 мм. Далее мы на практике проверим эту величину.
Характеристики датчика HC-SR04
- Измеряемый диапазон : от 3 до 500 см (проверим на практике в следующей статье, ссылки внизу страницы).
- Точность измерения : 0,3 см.
- Угол измерения : 15 градусов.
- Напряжение питания : 5 В.
- Потребление при работе : 15 мА.
- Сила тока покоя : < 2 мА.
- Частота ультразвука : 40кГц.
- Размеры : 45 мм x 20 мм x 15 мм.
Схема подключения датчика HC-SR04 к Ардуино
Для подключения датчика нам потребуется задействовать 2 цифровых пина Ардуино. Цифровой вход датчика (Trig ) мы подключим ко 2 пину Ардуино и цифровой выход датчика ( Echo ) к 3 пину. Выводы питания VCC и GND подключим к пинам 5 V и GND Arduino UNO , соответственно.
Библиотеки для работы с датчиком HC-SR04
Для работы с ультразвуковым датчиком HC-SR04 существует множество библиотек. Расскажу о двух самых популярных.
Библиотека Ultrasonic
Скачать библиотеку можно по ссылке https:// github. com/ ErickSimoes/ Ultrasonic.
После скачивания библиотеки добавляем ее в среду Arduino IDE.
И открываем пример UltrasonicSimple .
Единственное, что изменим в скетче, это номера пинов, к которым у нас подключены цифровой вход (Trig) и цифровой выход датчика (Echo) с 12 и 13, на 2 и 3 , соответственно.
После загрузки скетча в Ардуино, открываем Монитор порта и видим выводимое раз в секунду значение расстояния, измеренное датчиком.
Минимальное измеряемое расстояние составляет 3 см . Тест на максимальное измеряемое расстояние, будет в следующей статье.
Библиотека NewPing
Теперь загрузим и установим другую библиотеку, которая называется NewPing . Загружаем самую последнюю версию библиотеки NewPing_v1.9.1.zip по ссылке со страницы https:// playground. arduino. cc/ Code/ NewPing/.
Добавляем библиотеку в Arduino IDE, открываем скетч NewPingExample из примеров библиотеки и вносим небольшие корректировки в соответствие с нашим подключением.
Загружаем скетч в Ардуино и открываем Монитор порта.
Выводится расстояние до ближайшего препятствия в см. Кстати, хочу отметить, что скетч занимает в памяти 2458 байт, что на 262 байта меньше, чем в случае с библиотекой Ultrasonic . Минимальная дистанция определения препятствия составляет те же 3 см, а вот тест на максимальную дальность работы датчика и точность измерения с использованием обеих библиотек, я проведу в следующей статье . И мы на практике выясним, зависят ли получаемые результаты, от того, какую библиотеку использовать.
Продолжение >>> Вывод информации с датчика HC-SR04 на дисплей TM1637.
_________________________________________________________
Спасибо, что дочитали до конца! Если статья понравилась, нажмите, пожалуйста, соответствующую кнопку. Если интересна тематика электроники и различных электронных самоделок, подписывайтесь на канал. До встречи в новых статьях!