МЫ СОЗДАЕМ И ПРОИЗВОДИМ
ЭЛЕКТРОННЫЕ НАБОРЫ И МОДУЛИ
Библиотека для получения расстояния до объекта с помощью ультразвуковых датчиков семейства HC-SR04.
Библиотека отправляет стартовый импульс датчику, ждёт сигнал ответа и преобразует время ответа в расстояние. Выполнение кода скетча приостанавливается на время ожидания сигнала ответа от датчика, которое может достигать 38 мс.
Если ваш код критичен к задержкам, воспользуйтесь другими нашими библиотеками:
iarduino_HC_SR04_tmr
: использует аппаратный таймер и не будет ждать ответа от датчика.
iarduino_HC_SR04_int
: использует внешнее прерывание и не будет ждать ответа от датчика.
Для старта скачайте и установите библиотеку iarduino_HC_SR04
. Для инсталляции рекомендуем использовать нашу инструкцию по установке библиотек для Arduino.
#include <iarduino_HC_SR04.h>
// Подключаем библиотеку для работы с дальномером HC-SR04 #include <iarduino_HC_SR04.h>
iarduino_HC_SR04
iarduino_HC_SR04 sensor(uint8_t pinTRIG, uint8_t pinECHO)
pinTRIG
: пин отправки сигнала с дальномера на внешний контроллер.pinECHO
: пин приёма сигнала с внешнего контроллера на дальномер.// Создаём объект sensor для работы с функциями библиотеки iarduino_HC_SR04 // В параметре конструктора передаём пины TRIG и ECHO iarduino_HC_SR04 sensor(12, 11);
long distance(int8_t temperature = 23)
temperature
: температура окружающей среды от -128
до 127
°C. Необязательный параметр и по умолчанию равен 23
°C.3
до 400
см.// Вычисляем расстояние до объекта // Температуру окружающей оставляем по умолчанию 23 °C int sensorDistance = sensor.distance();
// Вычисляем расстояние до объекта // с указанием температуры окружающей среды 70 °C int sensorDistance = sensor.distance(70);
averaging
0
до 1000
0
: бех усреднений10
: минимальное усреднение100
: нормальное усреднение1000
: сильное усреднение200
см до препятствия, показания могут колебаться от 198
до 202
. Это может быть причиной следующих факторов: геометрия отражающей поверхности, колебания температуры воздуха, колебания питания датчика, посторонние шумы и многое другое. Для устранения помех можно указать коэффициент усреднения: чем выше значение коэффициента, тем плавнее будут меняться данные возвращаемые функцией distance()
.// Указываем коэффициент усреднения 15 sensor.averaging = 15;