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, который позволяет измерять расстояние до объектов. Вы можете дополнить эту программу, добавив дополнительные функции, такие как фильтрация данных или обработка результатов измерений в соответствии с требованиями вашего проекта.