• 28 декабря (суббота) - 8 января (среда) офис не будет работать. Все оформленные заказы будут обработаны и отгружены 9 января.
  • 0
    КОРЗИНА
    0 ТОВАРА

    Библиотека «iarduino_HC_SR04_int»

    tremaru / iarduino_HC_SR04_int

    ★ Обновлено: 19:43 04.06.2024 ☆ Создан: 18:55 21.05.2019

    Релизы

    Версия 1.0.3
    04.06.2024
    Cкачать
    Версия 1.0.2
    23.04.2024
    Cкачать

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

    Поддерживаемые модели

    Подробности

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

    Посылка и приём импульсов происходит через аппаратные прерывания.

    • Преимущество:
      • Библиотека не ждёт ответа от датчика, который может длиться до 38 мс.
    • Недостатки:
      • Совместимость только с платами Arduino, которые поддерживают прерывания.
      • Контакт ECHO нужно подключать только к тем выводам Arduino, которые поддерживают внешние прерывания. Контакт TRIG можно подключать к любому выводу Arduino.
      • Количество подключаемых датчиков ограничено количеством выводов с прерыванием.
    На каждой плате распиновка и количество прерываний отличается между собой. Для справки читайте официальную документацию от производителя.

    Если ограничения данной библиотеки вас не устраивают, воспользуйтесь другими нашими библиотеками:

    Установка

    Для старта скачайте и установите библиотеку iarduino_HC_SR04_int. Для инсталляции рекомендуем использовать нашу инструкцию по установке библиотек для Arduino.

    Использование в коде

    Подключение

    • Назначение: подключение библиотеки.
    • Синтаксис: #include <iarduino_HC_SR04_int.h>
    • Примечания:
      • Библиотека подключается в самом начале программы.
      • Подключение библиотеки обязательное действие, иначе функции работать не будут.
    • Примеры:
    // Подключаем библиотеку для работы с дальномером HC-SR04
    #include <iarduino_HC_SR04_int.h>
    

    Конструктор

    • Назначение: создание объекта для работы с функциями библиотеки iarduino_HC_SR04_int
    • Синтаксис: iarduino_HC_SR04_int sensor(uint8_t pinTRIG, uint8_t pinECHO)
    • Параметры:
      • pinTRIG: пин отправки сигнала с дальномера на внешний контроллер.
      • pinECHO: пин приёма сигнала с внешнего контроллера на дальномер.
    • Возвращаемое значение: нет
    • Примечания:
      • Конструктор вызывается в самом начале программы.
      • Вызов конструктор обязателен, иначе функции работать не будут.
      • Контакт ECHO нужно подключать только к тем выводам Arduino, которые поддерживают внешние прерывания. Контакт TRIG можно подключать к любому выводу Arduino.
      • Количество подключаемых датчиков ограничено количеством выводов с прерыванием.
    • Пример:
    // Создаём объект sensor для работы с функциями библиотеки iarduino_HC_SR04_int
    // В параметре конструктора передаём пины TRIG и ECHO
    iarduino_HC_SR04_int sensor(3, 2);
    

    Функция distance()

    • Назначение: Возвращает расстояние до препятствия в см.
    • Синтаксис: long distance(int8_t temperature = 23)
    • Параметры:
      • temperature: температура окружающей среды от -128 до 127 °C. Необязательный параметр и по умолчанию равен 23 °C.
    • Возвращаемое значение: измеренное расстояние до препятствия от 3 до 400 см.
    • Примечания: функция ждёт ответа от датчика, что может занять до 38 мс.
    • Примеры:
      // Вычисляем расстояние до объекта
      // Температуру окружающей оставляем по умолчанию 23 °C
      int sensorDistance = sensor.distance();
    
      // Вычисляем расстояние до объекта
      // с указанием температуры окружающей среды 70 °C
      int sensorDistance = sensor.distance(70);
    

    Переменная averaging

    • Назначение: Усредняет выводимые показания.
    • Синтаксис: averaging
    • Значение: уровень коэффициента усреднение от 0 до 1000
      • 0: бех усреднений
      • 10: минимальное усреднение
      • 100: нормальное усреднение
      • 1000: сильное усреднение
    • Возвращаемое значение: нет
    • Примечания: при снятии показаний без усреднений мы можем получать «прыгающие» значения. Например, на дистанции в 200 см до препятствия, показания могут колебаться от 198 до 202. Это может быть причиной следующих факторов: геометрия отражающей поверхности, колебания температуры воздуха, колебания питания датчика, посторонние шумы и многое другое. Для устранения помех можно указать коэффициент усреднения: чем выше значение коэффициента, тем плавнее будут меняться данные возвращаемые функцией distance().
    • Примеры:
      // Указываем коэффициент усреднения 15
      sensor.averaging = 15;
    

    Сопровождающие товары

    Гарантии и возврат Используя сайт Вы соглашаетесь с условями
    Есть вопрос?