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

HC-SR04 – это недорогой ультразвуковой датчик расстояния, который позволяет измерять расстояние до объектов с помощью ультразвуковых волн. Он широко используется в различных проектах, таких как робототехника, автоматизация и измерения.

Основные характеристики модуля HC-SR04:

  • Рабочее напряжение: 5 В;
  • Рабочая частота: 40 кГц;
  • Дальность измерения: от 2 см до 400 см;
  • Точность измерения: до 3 мм;
  • Угол обзора: примерно 15 градусов.

Модуль HC-SR04 состоит из двух основных компонентов: передающего модуля и приемного модуля. Передающий модуль излучает ультразвуковые волны, а приемный модуль принимает отраженный сигнал от объекта и на основе задержки между передачей и приемом сигнала рассчитывает расстояние до объекта.

Для использования датчика HC-SR04 с микроконтроллером, таким как Arduino или ESP8266, необходимо подключить его к соответствующим пинам и написать программу для измерения расстояния.

Вот пример простой программы на Arduino, которая использует датчик HC-SR04 для измерения расстояния и вывода результатов на последовательный порт:

const int trigPin = 2; // Пин для управления передающим модулем
const int echoPin = 3; // Пин для получения сигнала от приемного модуля

void setup() {
  Serial.begin(9600); // Инициализация серийного порта
  pinMode(trigPin, OUTPUT); // Настраиваем пин для передающего модуля как выход
  pinMode(echoPin, INPUT); // Настраиваем пин для приемного модуля как вход
}

void loop() {
  // Генерируем ультразвуковой сигнал
  digitalWrite(trigPin, LOW);
  delayMicroseconds(2);
  digitalWrite(trigPin, HIGH);
  delayMicroseconds(10);
  digitalWrite(trigPin, LOW);

  // Измеряем время задержки между передачей и приемом сигнала
  long duration = pulseIn(echoPin, HIGH);

  // Рассчитываем расстояние на основе времени задержки
  float distance = duration * 0.034 / 2;

  // Выводим результаты на серийный порт
  Serial.print("Distance: ");
  Serial.print(distance);
  Serial.println(" cm");

  delay(500); // Задержка между измерениями
}

В этой программе мы используем пины trigPin и echoPin для подключения датчика HC-SR04 к Arduino. В функции setup() мы настраиваем пины как входы и выходы, а также инициализируем серийный порт для вывода результатов.

В функции loop() мы генерируем ультразвуковой сигнал, отправляя короткий импульс на пин trigPin. Затем мы используем функцию pulseIn() для измерения времени задержки между отправкой сигнала и приемом отраженного сигнала на пин echoPin.

По измеренному времени задержки, мы рассчитываем расстояние до объекта, используя формулу, которая основана на скорости звука. Затем результат выводится на серийный порт с помощью функции Serial.print().

Программа повторяется в бесконечном цикле с задержкой между измерениями. Вы можете изменить эту задержку, чтобы получить измерения с нужной частотой.

Обратите внимание, что для работы с датчиком HC-SR04 необходимо подключить его к правильным пинам вашего микроконтроллера. Проверьте документацию вашего микроконтроллера или платы Arduino для определения правильных пинов для подключения датчика.

Это простой пример использования датчика HC-SR04, который позволяет измерять расстояние до объектов. Вы можете дополнить эту программу, добавив дополнительные функции, такие как фильтрация данных или обработка результатов измерений в соответствии с требованиями вашего проекта.

Оставьте комментарий