Ультразвуковой датчик HC-SR04 использует сонар, с помощью которого определяет расстояние до объекта, как это делают летучие мыши. Кроме того, этот датчик отличается высокой точностью и простотой использования. Диапазон измеряемого расстояния – от 2 до 400 см.
В отличие от дальномеров Sharp, датчику HC-SR04 не мешает ни солнечный свет, ни черные материалы, но ему трудно определять акустически мягкие материалы вроде тканей. В комплекте с HC-SR04 также идет ультразвуковой приемопередатчик.
#include
#define PIN_PING 12
//Пин с Arduino соединен с пинами trigger и echo на датчике расстояния
#define MAX_DISTANCE 200
//Максимальное расстояние, которое мы способны контролировать (400-500см).
NewPing sonar(PIN_PING, PIN_PING, MAX_DISTANCE);
//Регулировка пинов и максимального расстояния
void setup() {
Serial.begin(9600);
//Открывается протокол с данными и частотой передачи 115200 бит/сек.
}
void loop() {
delay(50);
//Задержка в 50 мс между генерируемыми волнами. 29 мс–минимально допустимое значение
unsigned int distanceSm = sonar.ping();
//Создание сигнала, получение параметра его продолжительности в мкс (uS).
Serial.print("Ping: ");
Serial.print(distanceSm / US_ROUNDTRIP_CM);
//Пересчет параметра времени в величину расстояния и вывод результата
Serial.println("cm");
}
© Copyrighted by Aleksander Shanchuk, 2021