Найти тему
DIY Robots

Ультразвуковой датчик расстояния HC-SR04

Оглавление

Измерение расстояния до объектов является одной из ключевых задач в робототехнике, которую было бы трудно осуществить без нашего "гостя".

Сегодня в статье рассмотрим УЗ датчик расстояния HC-SR04, способ его подключения к платформе Arduino Uno, библиотеки для работы с ним.

Для настоящей работы нам понадобятся:

  • Датчик УЗ HC-SR04,
  • Arduino Uno,
  • Провода,
  • Макетная плата.
Необходимые компоненты
Необходимые компоненты

Принцип работы:

У датчика есть Приемник и Передатчик. Они помечены на лицевой стороне буквами T и R.

На пин Trig необходимо подать импульс длительностью 10 мкс. Внутри датчика он преобразуется в серию импульсов с частотой 40 кГц.

Эти импульсы через передатчик будут направлены в сторону объекта, до которого необходимо измерить расстояние.

По достижении объекта, импульсы отразятся от него и будут приняты приемником HC-SR04. И на пине Echo можно будет увидеть результат приема.

Далее, при помощи математики, в скетче Arduino, вычислим расстояние до измеряемого предмета.

Схема подключения:

Итак, опробуем описанное выше на практике:

1) Собираем схему.

HC-SR04 -->> Arduino Uno:

  • VCC --> 5V
  • Trig -->
  • Echo -->
  • GND --> GND
Схема подключения HC-SR04
Схема подключения HC-SR04

А вот так это выглядит вживую:

Подключение HC-SR04 и Arduino
Подключение HC-SR04 и Arduino

2) Открываем среду разработки Arduino. И пишем вот такой небольшой скетч, никаких дополнительных библиотек не нужно в данном примере, все делается базовыми инструментами.

Скетч Arduino
Скетч Arduino

Измерим расстояние до препятствия:

Измерение расстояния до объекта
Измерение расстояния до объекта

В мониторе порта увидим следующее:

Вывод в мониторе порта
Вывод в мониторе порта

Дополнительные библиотеки для облегчения работы

Для упрощения скетча можно воспользоваться сторонней библиотекой. Одной из таких является библиотека NewPing. Скачать ее можно отсюда:

https://github.com/eliteio/Arduino_New_Ping

Добавляем ее в нашу среду разработки и пишем вот такой код:

Работа с HC-SR04 при помощи библиотеки NewPing
Работа с HC-SR04 при помощи библиотеки NewPing

Результат такой же, как и в примере выше, но код становится проще.

Второй библиотекой является iarduino_HC_SR04. Качаем и добавляем ее себе.

Пишем такой скетч:

iarduino_HC_SR04
iarduino_HC_SR04

Получается тоже самое, но насколько удобнее.

Вместо заключения

В ходе нашей работы, познакомились с ультразвуковым датчиком и научились с ним взаимодействовать, посредством базовых средств Arduino и 2 сторонних библиотек, которые показывают большее удобство в использовании.

Спасибо за внимание. всего хорошего)