УЛЬТРАЗВУКОВОЙ ДАЛЬНОМЕР

Содержание

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

УЛЬТРАЗВУКОВОЙ ДАЛЬНОМЕР

Ультразвуковые датчики расстояния Ардуино очень востребованы в робототехнических проектах из-за своей относительной простоты, достаточной точности и доступности.

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

В этой статье мы познакомимся с принципом действия датчика расстояния, рассмотрим несколько вариантов подключения к платам Arduino, схему взаимодействия и примеры скетчей.

Датчик расстояния в проектах Arduino

Способность ультразвукового датчика определять расстояние до объекта основано на принципе сонара – посылая пучок ультразвука, и получая его отражение с задержкой, устройство определяет наличие объектов и расстояние до них.

Ультразвуковые сигналы, генерируемые приемником, отражаясь от препятствия, возвращаются к нему через определенный промежуток времени.

Именно этот временной интервал становится характеристикой помогающей определить расстояние до объекта.

Внимание! Так как в основу принципа действия положен ультразвук, то такой датчик не подходит для определения расстояния до звукопоглощающих объектов. Оптимальными для измерения являются предметы с ровной гладкой поверхностью.

Описание датчика HC SR04

Датчик расстояния Ардуино является прибором бесконтактного типа, и обеспечивает высокоточное измерение и стабильность. Диапазон дальности его измерения составляет от 2 до 400 см. На его работу не оказывает существенного воздействия электромагнитные излучения и солнечная энергия. В комплект модуля с HC SR04 arduino также входят ресивер и трансмиттер.

Ультразвуковой дальномер HC SR04 имеет такие технические параметры:

  • Питающее напряжение 5В;
  • Рабочий параметр силы т ока – 15 мА;
  • Сила тока в пассивном состоянии < 2 мА;
  • Обзорный угол – 15°;
  • Сенсорное разрешение – 0,3 см;
  • Измерительный угол – 30°;
  • Ширина импульса – 10-6 с.

Датчик оснащен четырьмя выводами (стандарт 2, 54 мм):

  • Контакт питания положительного типа – +5В;
  • Trig (Т) – выход сигнала входа;
  • Echo (R) – вывод сигнала выхода;
  • GND – вывод «Земля».

Где купить модуль SR04 для Ардуино

Датчик расстояния – достаточно распространенный компонент и его без труда можно найти в интернет-магазинах. Самые дешевые варианты (от 40-60 рублей за штуку), традиционно на всем известном сайте.

Схема взаимодействия с Arduino

Для получения данных, необходимо выполнить такую последовательность действий:

  • Подать на выход Trig импульс длительностью 10 микросек;
  • В ультразвуковом дальномере hc sr04 подключенном к arduino произойдет преобразование сигнала в 8 импульсов с частотой 40 кГц, которые через излучатель будут посланы вперед;
  • Когда импульсы дойдут до препятствия, они отразятся от него и будут приняты приемником R, что обеспечит наличие входного сигнала на выходе Echo;
  • На стороне контроллера полученный сигнал при помощи формул следует перевести в расстояние.

При делении ширины импульса на 58.2, получим данные в сантиметрах, при делении на 148 – в дюймах.

Подключение HC SR04 к Arduino

Выполнить подключение ультразвукового датчика расстояния к плате Arduino достаточно просто. Схема подключения показана на рисунке.

Контакт земли подключаем к выводу GND на плате Arduino, выход питания соединяем с 5V. Выходы Trig и Echo подсоединяем к arduino на цифровые пины. Вариант подключения с помощью макетной платы:

Библиотека для работы с HC SR04

Для облегчения работы с датчиком расстояния HC SR04 на arduino можно использовать библиотеку NewPing. Она не имеет проблем с пинговыми доступами и добавляет некоторые новые функции.

К особенностям библиотеки можно отнести:

  • Возможность работы с различными ультразвуковыми датчиками;
  • Может работать с датчиком расстояния всего через один пин;
  • Отсутствие отставания на 1 секунду при отсутствии пинга эха;
  • Для простой коррекции ошибок есть встроенный цифровой фильтр;
  • Максимально точный расчет расстояния.

Скачать бибилотеку NewPing можно здесь

Точность измерения расстояния датчиком HC SR04

Точность датчика зависит от нескольких факторов:

  • температуры и влажности воздуха;
  • расстояния до объекта;
  • расположения относительно датчика (согласно диаграммы излучения);
  • качества исполнения элементов модуля датчика.

В основу принципа действия любого ультразвукового датчика заложено явление отражения акустических волн, распространяющихся в воздухе.

Но как известно из курса физики, скорость распространения звука в воздухе зависит от свойств этого самого воздуха (в первую очередь от температуры).

Датчик же, испуская волны и замеряя время до их возврата, не догадывается, в какой именно среде они будут распространяться и берет для расчетов некоторую среднюю величину. В реальных условиях из-за фактора температуры воздуха HC-SR04 может ошибаться от 1 до 3-5 см.

Фактор расстояния до объекта важен, т.к. растет вероятность отражения от соседних предметов, к тому же и сам сигнал затухает с расстоянием.

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

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

  • усредняются значения (несколько раз замеряем, убираем всплески, потом находим среднее);
  • с помощью датчиков (например, DHT11 или DHT22) определяется температура и вносятся поправочные коэффициенты;
  • датчик устанавливается на серводвигатель, с помощью которого мы “поворачиваем голову”, перемещая диаграмму направленности влево или вправо.

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

Давайте рассмотрим пример простого проекта с платой Arduino Uno и датчиком расстояния HC SR04. В скетче мы будем получать значение расстояния до предметов и выводить их в монитор порта в среде Arduino IDE. Вы сможете легко изменить скетч и схему подключения, чтобы датчик сигнализировал о приближении или отдалении предмета.

Подключение датчика к ардуино

При написании скетча использовалась следующий вариант распиновки подключения датчика:

  • VCC: +5V
  • Trig – 12 пин
  • Echo – 11 пин
  • Земля (GND) – Земля (GND)

Пример скетча

Начнем работу с датчиком сразу с относительного сложного варианта – без использования внешних библиотек.

В данном скетче мы выполняем такую последовательность действий:

  • Коротким импульсом (2-5 микросекунды) переводим датчик расстояния в режим эхолокации, при котором в окружающее пространство высылаются ультразвуковые волны с частотой 40 КГц.
  • Ждем, пока датчик проанализирует отраженные сигналы и по задержке определит расстояние.
  • Получаем значение расстояния. Для этого ждем, пока HC SR04 выдаст на входе ECHO импульс, пропорциональный расстоянию. Мы определяем длительность импульса с помощью функции pulseIn, которая вернет нам время, прошедшее до изменения уровня сигнала (в нашем случае, до появления обратного фронта импульса).
  • Получив время, мы переводим его в расстояние в сантиметрах путем деления значения на константу (для датчика SR04 это 29.1 для сигнала «туда», столько же для сигнала «обратно», что в сумме даст 58.2).

Если датчик расстояния не выполняет считывание сигнала, то преобразование выходного сигнала никогда не примет значения короткого импульса – LOW. Так как у некоторых датчиков время задержки варьируется в зависимости от производителя, рекомендуется при использовании указанных скетчей выставлять его значение вручную (мы это делаем в начале цикла).

Если расстояние составляет более 3 метров, при котором HC SR04 начинает плохо работать, время задержки лучше выставлять более 20 мс, т.е. 25 или 30 мс.

#define PIN_TRIG 12 #define PIN_ECHO 11 long duration, cm; void setup() { // Инициализируем взаимодействие по последовательному порту Serial.begin (9600); //Определяем вводы и выводы pinMode(PIN_TRIG, OUTPUT); pinMode(PIN_ECHO, INPUT); } void loop() { // Сначала генерируем короткий импульс длительностью 2-5 микросекунд. digitalWrite(PIN_TRIG, LOW); delayMicroseconds(5); digitalWrite(PIN_TRIG, HIGH); // Выставив высокий уровень сигнала, ждем около 10 микросекунд. В этот момент датчик будет посылать сигналы с частотой 40 КГц. delayMicroseconds(10); digitalWrite(PIN_TRIG, LOW); // Время задержки акустического сигнала на эхолокаторе. duration = pulseIn(PIN_ECHO, HIGH); // Теперь осталось преобразовать время в расстояние cm = (duration / 2) / 29.1; Serial.print(“Расстояние до объекта: “); Serial.print(cm); Serial.println(” см.”); // Задержка между измерениями для корректной работы скеча delay(250); }

Скетч с использованием библиотеки NewPing

Теперь давайте рассмотрим вариант скетча с использованием библиотеки NewPing. Код существенно упростится, т.к. все описанные ранее действия спрятаны внутри библиотеки.

Все, что нам нужно сделать –  создать объект класса NewPing, указав пины, с помощью которых мы подключаем датчик расстояния и использовать методы объекта.

В нашем примере для получения расстояния в сантиметрах нужно использовать ping_cm().

#include #define PIN_TRIG 12 #define PIN_ECHO 11 #define MAX_DISTANCE 200 // Константа для определения максимального расстояния, которое мы будем считать корректным. // Создаем объект, методами которого будем затем пользоваться для получения расстояния. // В качестве параметров передаем номера пинов, к которым подключены выходы ECHO и TRIG датчика NewPing sonar(PIN_TRIG, PIN_ECHO, MAX_DISTANCE); void setup() { // Инициализируем взаимодействие по последовательному порту на скорости 9600 Serial.begin(9600); } void loop() { // Стартовая задержка, необходимая для корректной работы. delay(50); // Получаем значение от датчика расстояния и сохраняем его в переменную unsigned int distance = sonar.ping_cm(); // Печатаем расстояние в мониторе порта Serial.print(distance); Serial.println(“см”); }

Пример подключения ультразвукового дальномера HC SR04 с одним пином

Подключение HC-SR04  к Arduino может быть выполнено посредством использования одного пина. Такой вариант пригодится, если вы работаете с большим проектом и вам не хватает свободных пинов. Для подключения вам нужно просто установить между контактами TRIGи ECHO резистор номиналом 2.2K и подключить к ардуино контакт TRIG.

#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); // Пересчет параметра времени в величину расстояния и вывод результата (0 соответствует выходу за допустимый предел) Serial.println(“cm”); }

Краткие выводы

Ультразвуковые датчики расстояния достаточно универсальны и точны, что позволяет их использовать для большинства любительских проектов.

В статье рассмотрен крайне популярный датчик HC SR04, который легко подключается к плате ардуино (для этого следует сразу предусмотреть два свободных пина, но есть вариант подключения и с одним пином).

Для работы с датчиком существуют несколько бесплатных библиотек (в статье рассмотрена лишь одна из них, NewPing), но можно обойтись и без них – алгоритм взаимодействия с внутренним контроллером датчика достаточно прост, мы показали его в этой статье.

Исходя из собственного опыта, можно утверждать, что датчик HC-SR04 показывает точность в пределах одного сантиметра на расстояниях от 10 см до 2 м. На более коротких и дальних дистанциях возможно появление сильных помех, что сильно зависит от окружающих предметов и способа использования. Но в большинстве случаев HC-SR04 отлично справлялся со своей работой.

Источник: https://ArduinoMaster.ru/datchiki-arduino/ultrazvukovoj-dalnomer-hc-sr04/

Как выбрать лазерный дальномер (2019) | Блог | Клуб DNS

УЛЬТРАЗВУКОВОЙ ДАЛЬНОМЕР

Лазерный дальномер способен значительно облегчить жизнь строителя или мастера-отделочника.

Если отдельную деталь пока еще проще померить обычной рулеткой, то, как только дело доходит до размеров комнат, высоты потолков или расстояний между конструкциями, лазерный дальномер становится вне конкуренции.

А многие модели еще и умеют запоминать измерения и вычислять по ним площадь или кубатуру помещения. Поэтому лазерные дальномеры стали незаменимыми помощниками многих специалистов, оперирующих в своей деятельности площадями и объемами комнат. Так что область применения этих приборов очень широка:

  • строительство и отделка;
  • монтаж конструкций и коммуникаций;
  • дизайн помещений и ландшафтный дизайн;
  • земляные работы;
  • проектирование вентиляции и кондиционирования;
  • инспекционные работы;
  • охота;
  • и т.д.

Ну и понятно, что дальномер, используемый землемером и дальномер, используемый дизайнером квартир – это совершенно разные дальномеры с разными характеристиками.

Характеристики лазерных дальномеров

Тип.

Лазерный дальномер улавливает отраженный от препятствия лазерный луч и вычисляет расстояние по сдвигу фазы сигнала, которым этот луч модулируется. Лазерные дальномеры отличаются высокой точностью измерений – до десятых долей миллиметра.

Удобно то, что дальномер измеряет расстояние именно до той точки, которая подсвечена лазером.

Из недостатков можно отметить частую для лазерных инструментов «нелюбовь» к яркому солнечному свету и невозможность определения расстояния до прозрачных объектов (окон, стеллажей и пр.

) Впрочем, если вдруг возникает необходимость измерить расстояние именно до поверхности стекла, на него всегда можно прилепить кусочек бумаги.

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

С лазерными дальномерами его роднит только использование лазерного светодиода для создания световой отметки, облегчающего «прицеливание» на объект, до которого измеряется расстояние. Однако, следует понимать, что испускаемый дальномером звуковой пучок расходится довольно широко и может отражаться от различных поверхностей, внося искажения в результат.

К примеру, если измерять расстояние до балки, расположенной на некотором расстоянии от стены, дальномер покажет расстояние до стены (хотя лазерный «зайчик» будет на балке), поскольку отраженный от неё сигнал будет сильнее.

Кроме того, по дальности и точности ультразвуковой дальномер сильно уступает лазерному – звук затухает намного быстрее лазерного луча, и скорость его зависит от погодных условий.

Несколько лет назад ультразвуковые дальномеры были заметно дешевле лазерных, но сегодня это уже не так.

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

Максимальное расстояние измерений определяет область применения прибора.

Специалистам, работающим в квартирах и помещениях частных домов, будет вполне достаточно 20 м.

При работе в больших помещениях уже нужна возможность измерения на расстояниях до 40 м.

Максимум в 100 метров и более потребуется при работе на открытом воздухе или в очень больших помещениях (ангарах, складах, стадионах и т.п.)

Но имейте в виду, что на открытом воздухе световую отметку невооруженным глазом не видно уже метров с 15-20 (зависит от освещения), да и точность на таком удалении при измерении с рук будет невысока. Поэтому для работы на расстояниях от 40 метров желательно наличие видоискателя с зумом и крепления на штатив.

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

Погрешность определяет точность прибора. Для ультразвуковых дальномеров погрешность составляет 3-5 мм, для лазерных меньше, в среднем – 1-2 мм. Впрочем, бывают и специализированные охотничьи модели, которым высокая точность не требуется – они могут иметь погрешность до 1 метра.

Обычно дальномер считает расстояние до объекта от заднего торца прибора. Это удобно при работе внутри помещения.

Но иногда бывает удобнее использовать другую точку начала отсчета – передний торец прибора при работе с внешними углами снаружи здания или точку крепления штатива – при работе со штатива.

Количество точек для начала отсчета как раз и определяет возможность измерения от различных точек относительно самого прибора.

Длина волны лазера определяет цвет его луча. В лазерной технике обычно используются два вида лазеров – зеленые, с длиной волны 535-550 нм и красные – с длиной 635-650 нм.

Это обусловлено тем, что человеческий глаз лучше всего видит именно красный и зеленый цвета.

Причем зеленый чуть лучше, но этот цвет часто встречается в окружающем пространстве, а на нем зеленая точка хуже различима, чем красная, поэтому красный лазер используется чаще.

Следует отметить, что измерение расстояния происходит не мгновенно, – в зависимости от быстродействия устройства и измеряемого расстояния, прибор может потратить на это несколько секунд. Если такая задержка для вас неприемлема, обратите внимание на максимальное время измерения при подборе дальномера.

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

Основное, что отличает дорогие профессиональные модели от простых бытовых – это расширенный набор функций. Самые простые дальномеры способны измерять только расстояние до подсвеченной точки.

Модели подороже способны на основе проведенных измерений автоматически подсчитать площадь или объем помещения.

Модели среднего ценового сегмента могут иметь следующие возможности:

  • Функция Пифагора: возможность косвенного измерения различных величин по двум или более точкам. Например, для измерения высоты здания с некоторого расстояния производится измерение сначала расстояния до точки у основания, а затем – у верхушки здания. После чего электроника дальномера вычисляет искомую высоту. Более точный расчет высоты доступен для моделей с жидкостным уровнем или датчиком угла наклона – это позволяет определить точку пересечения горизонтальной линии от дальномера с измеряемой высотой.
  • Функция маляра: автоматический подсчет суммарной площади нескольких стен. Функция бывает полезна при подсчете количества требуемых стеновых покрытий, например, обоев или плитки.
  • Определение минимума и максимума. Любой дальномер показывает расстояние до подсвеченной точки. Но иногда бывает нужно не узнать расстояние до определенной точки, а найти максимум или минимум каких-либо размеров. В этом случае поможет данная функция – она показывает не измеренное расстояние, а максимальное или минимальное из нескольких измерений. Определение минимума позволяет быстро найти длину перпендикуляра до стены, а определение максимума – так же быстро определить длину диагонали комнаты.
  • Измерение трапеции позволяет вычислить длину одной из сторон трапеции по трем другим сторонам. С помощью этой функции можно посчитать, например, длину стропил, проходящих на большой высоте от пола.
  • Разметка равных отрезков позволяет разделить заданную длину на некоторое количество одинаковых отрезков. Эта функция может помочь при установке балясин, столбиков, посадке деревьев и кустов на одинаковых расстояниях и пр.

Профессиональные модели способны и на более сложные вычисления:

  • Подсчет площади по нескольким точкам позволяет подсчитать площадь сложных фигур, находясь на расстоянии десятков метров от них.
  • Подсчет углов наклона линий и плоскостей по нескольким измеренным точкам. Функция приближает прибор по возможностям к лазерным нивелирам и может быть полезна многим специалистам: от отделочников и строителей до геодезистов и ландшафтных дизайнеров.
  • Создание фотографий объектов с наложенными результатами измерений.

Отдельным набором функции снабжаются охотничьи дальномеры: например, баллистический калькулятор, определяющий снижение траектории полета пули на измеренной дальности; функция «игнорирования листвы», отсеивающая отражения от листьев и травы на близких расстояниях и т.д.

Если вы приобретаете прибор для профессиональной деятельности, и результаты измерений будут вноситься в официальные документы, будет нелишним, если дальномер внесен в Госреестр средств измерений (в некоторых областях деятельности это даже оговорено нормативными документами). В любом случае, наличие прибора в Госреестре СИ позволяет проводить его поверку в метрологических центрах, что обеспечит юридическое подтверждение достоверности измерений.

Как и всякий строительный инструмент, дальномер подвержен воздействию различных неблагоприятных факторов, в том числе – пыли и влаги.

Поэтому при его выборе нелишним будет обратить внимание на степень защиты.

Она определяется маркировкой IPXY, IP (Internal Protection – внутренняя защита), X – уровень защиты от твердых предметов и частиц, Y – уровень защиты от влаги. Чем больше число, тем выше уровень защиты:

Варианты выбора лазерных дальномеров

Если вы ищете инструмент, который бы с успехом заменил строительную рулетку, но при этом стоил ненамного дороже, выбирайте среди простых лазерных дальномеров с минимумом функций.

Если вам важна точность измерений, обратите внимание на [url=”https://www.dns-shop.ru/catalog/17a9cb5b16404e77/dalnomery/?f=aewu-2g2v]модели с низкой погрешностью измерений.

Для работы в квартирах и частных домах будет достаточно дальномера с [url=”https://www.dns-shop.ru/catalog/17a9cb5b16404e77/dalnomery/?order=1&groupBy=none&stock=2&f=2fjs&fr=12-20]максимальным измеряемым расстоянием до 20 м.

Все лазерные дальномеры имеют собственный источник питания. Если вам проще сменить комплект батареек, чем таскать с собой зарядное устройство, выбирайте [url=”https://www.dns-shop.

ru/catalog/17a9cb5b16404e77/dalnomery/?order=1&groupBy=none&stock=2&f=2fwh]модель с питанием от батарей. В обратном же случае делайте выбор среди [url=”https://www.dns-shop.

ru/catalog/17a9cb5b16404e77/dalnomery/?order=1&groupBy=none&stock=2&f=2fwg]аккумуляторных моделей.

Лазерный дальномер с максимальным измеряемым расстоянием от 100 метров наиболее универсален: он будет одинаково полезен и в помещениях любого размера, и на улице.

Если вы увлекаетесь охотой, то лазерный дальномер с максимальным расстоянием в 500-1500 метров поможет вам совершить удачный выстрел.

Источник: https://club.dns-shop.ru/post/19466

Дальномер с помощью датчика HC SR04 и Arduino

УЛЬТРАЗВУКОВОЙ ДАЛЬНОМЕР

Ардуино – уникальная система, представляющая собой пластилин в руках инженера, из которого он может слепить, что пожелает. Возможно это благодаря большому разнообразию датчиков и модулей разных направленностей. От простых чипов, измеряющих силу тока, до вещей вроде Arduino hc hc sr04.

Это специальный датчик, позволяющий, при помощи ультразвуковых волн, измерить расстояние до объекта, на который его направили. Несложно догадаться, что проще всего его применить для создания простого дальномера. Рассмотрим Arduino hc sr04 и какие нюансы в работе с ним стоит учитывать, прежде чем начать собирать проект.

1. Основы сборки  дальномера на Ардуино с помощью датчика HC SR04

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

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

Однако сегодня мы рассмотрим именно вариант с дальномером на Аrduino, так как он идеально подойдёт для новичков в сфере, которые ещё не слишком хорошо разбираются в основах.

Если же вы захотите затем модифицировать своё изобретение, то можно научить его моделировать полноценную трехмерную карту помещения, что будет удобно для тех, кто занимается дизайном и конструированием мебели или зданий.

Но сначала стоит рассмотреть, как вообще работает данный прибор и какие основы сборки стоит усвоить, прежде чем создать лазерный дальномер на Ардуино своими руками.

Наш дальномер на Arduino будет основан на сонаре, применяемом в природе дельфинами, для измерения расстояния до объектов и спокойного обхождения препятствий. Делается это с помощью физических свойств ультразвуковых волн, которые способны отражаться, сталкиваясь с твердыми объектами, и возвращаться обратно к датчикам.

Далее в ход вступает программный код, который высчитывает, сколько времени прошло между посланием и возвратом волны, делит его на два и с помощью формул и скорости звука высчитывает усреднённое расстояние до объекта.

Почему усреднённое?

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

Можно постараться учесть все эти факторы, но каждую переменную вы все равно не запрограммируете, поэтому наша задача – получить данные, максимально приближённые к показаниям профессиональных приборов, ведь дальномер Ардуино всё ещё далёк от них по точности.

Есть и ещё один нюанс, который вам стоит заранее учесть, собирая ультразвуковой дальномер Arduino – не все поверхности подходят для измерения. Дело в том, что некоторые материалы способны поглощать звук или слишком сильно искажать его движение, подобно тому, как черная рубашка поглощает электромагнитную световую волну.

Соответственно, лучше всего применять прибор к гладким и плоским поверхностям, которые не будут нарушать движения УВ, что также ограничивает его функционал. Но благодаря низкому ценнику и удобству работы датчик всё ещё остается достаточно популярным.

Мы соберем дальномер, который будет работать по следующему принципу: при приближении объекта на расстояние менее 4 сантиметров – загорается красный светодиод, иначе горит зеленый.

Достаточно простой пример, в котором мы проверим точность измерения расстояния дальномером hc-sr04. Основа проверки точности станет простая линейка

Источник: https://ArduinoPlus.ru/arduino-hc-sr04-dalnomer/

Лазерный дальномер. Какой лучше выбрать для работы

УЛЬТРАЗВУКОВОЙ ДАЛЬНОМЕР

Прежде чем решать, какой лазерный дальномер лучше, надо понять, для чего он нужен, как его можно использовать. Лазерный дальномер нужен тому, кто в силу своей профессиональной деятельности, связан с определением расстояний. Строительство, ремонт, геодезические работы.

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

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

Возможны измерения в горизонтальной и в вертикальной плоскости.

Основные характеристики лазерного дальномера, которые нужны, чтобы определиться с выбором

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

  • Основная характеристика дальномера это максимальная дальность измерения. Определяет, какой предельный размер помещений или расстояний между зданиями (или другими поверхностями) может замерить прибор. Дальность зависит от мощности лазерного излучения – чем большее расстояние должен пройти лазерный луч и, отразившись от преграды, вернуться обратно на приемник, тем мощнее требуется лазерное излучение. В различных моделях варьируется в пределах от 15 до 1500 метров. Лазерные дальномеры с максимальной дальностью измерения от 1000 метров имеют высокую цену, и для измерения расстояний с их помощью требуется специальный штатив. В большинстве случаев для работы достаточны показатели максимальной дальности от 15 до 60 метров.
  • Погрешность измерения. Составляет у различных моделей от 1.5 до 3 мм.
  • Количество точек отсчета. Лазерные дальномеры могут иметь от одной до четырех точек отсчета. Расстояние обычно измеряется от передней стенки прибора, где расположен источник и приемник лазерного луча. Кроме этого, расстояние может измеряться от задней стенки прибора или от места крепления штатива.
  • Встроенный прицел. Определенные модели дальномеров оснащены встроенным оптическим прицелом. Такая функция обеспечивает видимость лазерной точки на значительном расстоянии. Это облегчает работу и помогает избежать «промахов».

Обзор популярных моделей лазерных дальномеров

  1. Наиболее популярен в России немецкий бренд Bosch. Выпускает две линейки:
    • Bosch Professional. Цвет корпуса прибора синий. Предназначен для усиленной работы в профессиональной сфере в силу того, что отличается лучшей производительностью и надежностью
    • Bosch DIY. Цвет корпуса зеленый. Преимущественное применение – ремонтные работы в быту и частное домостроение. Может использоваться в профессиональной как вспомогательный инструмент.
  2. Второй по популярности бренд ADA. Родина Гонконг.

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

  3. Condtrol – российская торговая марка измерительного инструмента. Преимуществом большинства моделей компактность, функциональность, невысокая цена.

  4. Leica Disto – большинство моделей этого швейцарского бренда имеют высокую пыле– и влагозащищенность, что немаловажно в работе на открытых стройплощадках.
  5. Stabila – немецкий бренд, делающий ставку на производство моделей с ударопрочным корпусом.

    Инженеры этого концерна разработали бесплатное приложение STABILA Measures для передачи измеряемых значений прямо на фотографии стройплощадки или чертежи.

Лазерные дальномеры заслужившие хорошие отзывы пользователей

[affegg id=71]

Какие еще знания пригодятся при выборе лазерного дальномера

Нелишним будет поинтересоваться о наличии резьбы, с помощью которой можно закрепить дальномер на штативе. Использование штатива снижает воздействие «человеческого фактора». Особенно важно использование штатива во время проведения измерительных работ на больших расстояниях, когда даже небольшое отклонение прибора может дать сильную погрешность.

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

Определенные модели дальномеров укомплектованы специальной отражающей пластиной, одна сторона которой светлая, а другая темная или красная.

Используется в том случае, если поверхность, до которой надо измерить расстояние неровная или темная и поглощает излучение, тогда как гладкая, наоборот, имеет высокую степень отражения.

При измерении расстояния до 30-40 м нужно пользоваться светлой стороной, от 40 см — красной.

Современные лазерные дальномеры это не просто приборы для измерения расстояний. Инженеры научили их измерять площадь стены или объем комнаты, и при этом расчеты прибор делает сам.

Вы выбираете нужную программу – измерение площади или объема, делаете замеры длины, ширины и высоты, фиксируете их в памяти устройства.

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

Чтобы измерить высоту строящегося здания с определенной точки на местности, но сделать это не удается, потому что есть помехи, можно воспользоваться функцией «Пифагор». Эта функция есть у всех современных дальномеров. Измеряется высота здания и расстояние до него. Зная эти данные, прибор вычисляет гипотенузу получившегося треугольника.

С помощью дальномера можно вычесть или сложить несколько отрезков.

Какой дальномер лучше лазерный или ультразвуковой

Помимо лазерных дальномеров интернет – магазины предлагают ультразвуковые дальномеры. Принцип работы аналогичен, только вместо лазера используется ультразвук.
Устройство направляет звуковой сигнал в сторону нужного объекта, а затем принимает отраженный сигнал. Расстояние вычисляется исходя из времени, которое ушло на прохождение дистанции.

Сказать, какой дальномер лучше, лазерный или ультразвуковой можно только в условиях конкретной работы. Особенностью ультразвуковых дальномеров является ограниченный рабочий диапазон – до 30 метров.

А также большие, по сравнению с лазерным, колебания точности. Погрешность ультразвукового дальномера может составлять 0.5 – 1%. В условиях дождя, снега, сильного ветра эта погрешность увеличивается.

Главный плюс ультразвукового дальномера, это его цена. Она в разы меньше, чем у лазерного дальномера. Главное, не ошибиться и не приобрести ультразвуковой дальномер с лазерной указкой под видом полноценного лазерного дальномера.

Работать с ультразвуковым прибором можно, когда не требуется точных замеров и предполагаемая длина замеряемых отрезков будет до 30 метров (в отдельных моделях до 60 метров). Или лучше приобрести лазерный дальномер, который, хотя и дороже, но имеет лучшие технические характеристики.

Источник: https://harthaus.ru/stroitelstvo/oborudovanie-instrument-tehnika/lazernyj-dalnomer-kakoj-luchshe/

Подключение ультразвукового датчика к Ардуино

УЛЬТРАЗВУКОВОЙ ДАЛЬНОМЕР

Рассмотрим на занятии ультразвуковой датчик для Ардуино HC-SR04. Расскажем, как подключить ультразвуковой дальномер HC-SR04 с библиотекой Ultrasonic.

Ультразвуковой датчик расстояния Ардуино HC-SR04 рассмотрим на этом занятии. Расскажем, как подключить ультразвуковой дальномер HC-SR04. Разберем скетч для датчика, который может прекрасно служить для робота при определении расстояния до объектов или обнаружения препятствия. Также рассмотрим самую популярную библиотеку для ультразвуковых дальномеров на Arduino — Ultrasonic.h.

Ультразвуковой дальномер HC-SR04 Arduino

Ультразвуковой датчик определяет расстояние до объекта так же, как это делают летучие мыши или дельфины. Датчик HC-SR04 генерирует узконаправленный сигнал на частоте 40 кГц и ловит отраженный сигнал (эхо). По времени распространения звука до объекта и обратно можно достаточно точно определить расстояние до него.

По этому же принципу работает множество приборов для исследования пространства — эхолот, сонар, радиолокатор и даже полицейский радар для определения скорости автомобиля. Все эти приборы излучают узконаправленный ультразвуковой сигнал и получают обратно отраженный сигнал. В отличии от инфракрасных дальномеров (IR), на показания ультразвукового датчика не влияет цвет объекта.

Принцип работы ультразвукового дальномера HC-SR04

Но при настройке ультразвукового датчика на Ардуино могут возникнуть трудности с определением расстояния до звукопоглощающих объектов, поскольку они способны полностью погасить излучаемый сигнал. Для идеальной точности измерения расстояния, поверхность изучаемого объекта должна быть ровной и гладкой. Принцип работы ультразвукового датчика hc-sr04 показан на рисунке выше.

Как подключить ультразвуковой датчик к Ардуино

Для занятия нам понадобятся следующие детали:

  • плата Arduino Uno / Arduino Nano / Arduino Mega;
  • макетная плата;
  • УЗ дальномер HC-SR04;
  • 1 светодиод и резистор 220 Ом;
  • провода «папа-папа» и «папа-мама».

Схема подключения ультразвукового датчика к Arduino Uno

Схема подключения указана на рисунке выше. Отметим, что ультразвуковой дальномер HC-SR04 имеет диапазон измерения от 2 см до 400 см, работает при температурах от 0° до 60° С.

Точность измерения составляет ± 1 см, рабочее напряжение датчика до 5,5 В. Для начала мы используем простой скетч, без использования библиотеки Ultrasonic.

После подключения к Arduino дальномера HC-SR04 загрузите следующий скетч:

Скетч для подключения датчика hc-sr04 к Arduino

int trigPin = 8; // назначаем имя для Pin8 int echoPin = 9; // назначаем имя для Pin9 void setup() { Serial.

begin (9600); // подключаем монитор порта pinMode(trigPin, OUTPUT); // назначаем trigPin (Pin8), как выход pinMode(echoPin, INPUT); // назначаем echoPin (Pin9), как вход } void loop() { int duration, cm; // назначаем переменную “cm” и “duration” для показаний датчика digitalWrite(trigPin, LOW); // изначально датчик не посылает сигнал delayMicroseconds(2); // ставим задержку в 2 ммикросекунд digitalWrite(trigPin, HIGH); // посылаем сигнал delayMicroseconds(10); // ставим задержку в 10 микросекунд digitalWrite(trigPin, LOW); // выключаем сигнал duration = pulseIn(echoPin, HIGH); // включаем прием сигнала cm = duration / 58; // вычисляем расстояние в сантиметрах Serial.print(cm); // выводим расстояние в сантиметрах Serial.println(” cm”); delay(1000); // ставим паузу в 1 секунду }

Пояснения к коду:

  1. для подключения выходов Trig и Echo на датчике можно использовать любые цифровые входы на Ардуино;
  2. чтобы получить значение датчика в миллиметрах следует использовать следующую формулу для расчета: cm = duration / 5,8;.

Ультразвуковой датчик и светодиод Ардуино

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

Для начала установите библиотеку Ultrasonic (инструкция по установке библиотек в Arduino IDE) и загрузите следующую программу в Ардуино. Ссылка на скачивание архива со скетчами и библиотекой Ultrasonic.

h — здесь.

Подключите дополнительно к плате RGB светодиод или несколько светодиодов, для создания мини проекта. Цвета светодиода будут переключаться, в зависимости от расстояния от датчика расстояния до предмета. Для управления светодиодами от УЗ датчика в программе используется условные операторы if. После сборки схемы, как на картинке выше, загрузите в микроконтроллер следующую программу.

Скетч с использованием библиотеки Ultrasonic.h

#include // подключаем библиотеку Ultrasonic Ultrasonic ultrasonic(8,9); // назначаем выходы для Trig и Echo void setup() { Serial.

begin(9600); // подключаем монитор порта pinMode (11, OUTPUT); // подключаем к пину светодиод pinMode (12, OUTPUT); // подключаем к пину светодиод } void loop () { int dist = ultrasonic.Ranging(CM); Serial.print(dist); // выводим расстояние в сантиметрах Serial.

println(” cm”); // переключаем цвета светодиода if (dist < 50) {digitalWrite(12,0); digitalWrite(11,1);} if (dist < 50) {digitalWrite(12,1); digitalWrite(11,0);} delay(100); }

Поделиться:
Нет комментариев

    Добавить комментарий

    Ваш e-mail не будет опубликован. Все поля обязательны для заполнения.