Подключение ультразвукового датчика HC-SR04 к Ардуино

датчик Ардуино Программирование

Ультразвуковой датчик HC-SR04 имеет в основе акустическое излучение, именно оно используется для установления параметров расстояния до объекта. Данное бесконтактное устройство позволяет получить максимально точные показатели, а также поддерживает стабильность измерительных операций. И для использования и проведения требуемых манипуляций можно подключить к платформе Arduino. Ниже можно ознакомиться с особенностями подключения, изучить все работающие скетчи и библиотеки.1 7

Особенности дальномера

2 4

Ультразвуковой датчик используется для установления показателей расстояния до объекта. Устройство производит генерирование узконаправленного сигнала на частоте 40 кГц, он выполняет улавливание отраженного сигнала (эхо). Именно в соответствии с показателями времени перемещения звуков до объектов и обратно можно с максимальной точностью выявить параметры расстояния до него.

Данный принцип используется для работы многих аппаратов для изучения пространственных территорий. Данные устройства производят излучение узконаправленного ультразвукового сигнала и обратно получают уже отраженные сигналы.

Однако во время выполнения настраивания ультразвуковых датчиков на платформе Arduino могут появиться сложности с установлением расстояния до объектов со звукопоглощающими свойствами, потому что они могут подавить излучаемые сигналы. Чтобы измерение проводилось точно важно, чтобы основа была идеально ровной.

Как проводится подключение к Arduino

Перед тем как подсоединять ультразвуковой модуль стоит подготовить требуемые компоненты:

  • Arduino Uno / Arduino Nano / Arduino Mega;
  • Плата макетного вида;
  • Ультразвуковой датчик HC-SR04;
  • Один светодиодный элемент;
  • Резисторный элемент на 220 Ом;
  • Провода.

Модель HC-SR04 имеет предел измерительных операций от 2 до 400 см. Устройство можно использовать при температурных показателях от 0 до 60 градусов. Уровень точности измерительных действий составляет ± 1 см, показатель рабочего напряжения датчика доходит до 5,5 В.

Подключение при помощи TinkerCad Circuits

После изучения устройства и принципа работы можно приступать к подсоединению датчика к платформе Arduino. Чтобы в полной мере понять, как устроен датчик, какие функции он выполняет можно выстроить виртуальную схему при помощи программы TinkerCad Circuits.

TinkerCad Circuits является бесплатным симулятором схем, который можно использовать в онлайн режиме. Он позволяет проводить моделирование различных электрических и электронных схем, перед тем как проводить их соединение на макетной плате. В симуляторе также можно провести тестирование проектов Ардуино, включая коды.

Ниже на рисунке можно рассмотреть проект функционального ультразвукового датчика Arduino, который был построен при помощи программы TinkerCad Circuits.fin

 

Подключение дальномера к Ардуино на макетной плате

Подойдет схема, которая была создана при помощи симулятора TinkerCad Circuits. Но также можно воспользоваться электрической схемой, которая показана ниже на рисунке.

mak

При использовании ультразвукового датчика из 4 контактов нормально закрытый штырь (NC) должен быть соединен с землей. После можно разместить датчик на макетной плате, как это показано на рисунке. Проводку к Ардуино можно осуществить при помощи перемычек.

Четырехпроводная перемычка имеет цветовую кодировку. Ниже в таблице можно рассмотреть соединения проводов между платформой Arduino и ультразвуковым дальномером.

Arduino Ультразвуковой датчик
5V Красный
GND Черный
Не подсоединен Белый
D7 Желтый

Скетч для подключения датчика hc-sr04 Arduino

Ниже указан скетч, который можно использовать для подключения ультразвукового дальномера к Ардуино:

int trigPin = 8; // назначаем имя для Pin8

int echoPin = 9; // назначаем имя для Pin9

 

void setup() {

  Serial.begin (9600); // подключаем монитор порта

  pinMode(trigPin, OUTPUT); // назначаем trigPin (Pin8), как выход

  pinMode(echoPin, INPUT); // назначаем echoPin (Pin9), как вход

}

 

void loop() {

  int duration, cm; // назначаем переменную «cm» и «duration» для показаний датчика

  digitalWrite(trigPin, LOW); // изначально датчик не посылает сигнал

  delayMicroseconds(2); // ставим задержку в 2 ммикросекунд

 

  digitalWrite(trigPin, HIGH); // посылаем сигнал

  delayMicroseconds(10); // ставим задержку в 10 микросекунд

  digitalWrite(trigPin, LOW); // выключаем сигнал

 

  duration = pulseIn(echoPin, HIGH); // включаем прием сигнала

 

  cm = duration / 58; // вычисляем расстояние в сантиметрах

 

  Serial.print(cm); // выводим расстояние в сантиметрах

  Serial.println(» cm»);

 

  delay(1000); // ставим паузу в 1 секунду

}

Поясняющая информация:

  • Чтобы было проведено подключение выходов Trig и Echo на датчике дальномера Ардуино могут применяться числовые входы на микроконтроллерах;
  • Для получения значения датчика в миллиметрах можно применять формулу для расчетов cm = duration / 5,8; 

Скетч для библиотеки Ultrasonic.h

Чтобы совместить модуль и Ардуино может использоваться программа Ultrasonic.h. Для нее действует следующий скетч:

#include <Ultrasonic.h> // подключается Ultrasonic

Ultrasonic ultrasonic(8,9); // назначаются выходы для Trig и Echo

 

void setup() {

  Serial.begin(9600);    // подключается монитор порта

  pinMode (11, OUTPUT); // подключается к пину светодиод

  pinMode (12, OUTPUT); // подключается к пину светодиод

}

 

void loop () {

  int dist = ultrasonic.Ranging(CM);

  Serial.print(dist);     // выводятся показатели расстояния в сантиметрах

  Serial.println(» cm»);

 

  // переключаются цвета светодиода

  if (dist < 50) {digitalWrite(12,0); digitalWrite(11,1);}

  if (dist < 50) {digitalWrite(12,1); digitalWrite(11,0);}

 

  delay(100);

}

Специальная команда Ultrasonic ultrasonic(8,9); назначит имя для ультразвукового датчика «ultrasonic». Также требуется назначить выходы на Arduino для Trig и Echo. 

Оцените статью
Информация об Ардуино
Добавить комментарий

Нажимая на кнопку "Отправить комментарий", я принимаю политику конфиденциальности.