Оглавление:

Эхо-локатор с двумя датчиками: 7 шагов (с изображениями)
Эхо-локатор с двумя датчиками: 7 шагов (с изображениями)

Видео: Эхо-локатор с двумя датчиками: 7 шагов (с изображениями)

Видео: Эхо-локатор с двумя датчиками: 7 шагов (с изображениями)
Видео: Купе № 7. Автор - Андрей Фролов. Мистическая История. ИсторииТО 2024, Ноябрь
Anonim
Image
Image
Эхо-локатор с двумя датчиками
Эхо-локатор с двумя датчиками
Эхо-локатор с двумя датчиками
Эхо-локатор с двумя датчиками

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

Формула Герона позволяет вычислить площадь любого треугольника, у которого известны все стороны. Как только вы узнаете площадь треугольника, вы сможете рассчитать положение отдельного объекта (относительно известной базовой линии) с помощью тригонометрии и Пифагора.

Точность отличная. Большие области обнаружения возможны при использовании широко доступных ультразвуковых датчиков HC-SR04 или HY-SRF05.

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

Изображений

  • Видеоклип показывает установку в действии.
  • На фото 1 представлен собранный «эхолокатор».
  • На фото 2 показан типичный дисплей. Объект - красная (мигающая) точка.
  • На фото 3 показана установка для видеотестирования. Было необходимо расположить два ультразвуковых датчика HY-SRF05 на 50 см ниже базовой линии, чтобы полностью «осветить» зону обнаружения звуком.

Шаг 1: Схема подключения

Схема подключения
Схема подключения

На фото 1 показана электрическая схема «двойного датчика эхолокации».

Датчик B становится «пассивным» путем наложения нескольких слоев малярной ленты на передающий (Т) преобразователь. Эта лента блокирует ультразвуковой звук, который в противном случае мог бы издаваться.

Шаг 2: Список деталей

Список деталей
Список деталей

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

Следующие детали были получены с

  • 1 только Arduino Uno R3 в комплекте с USB-кабелем
  • Только 2 ультразвуковых преобразователя HY-SRF05 или HC-SR04

Следующие детали были получены на месте:

  • 1 только мужская полоса заголовка Arduino
  • 2 только женские полоски заголовка Arduino
  • 2 только куска алюминиевого лома
  • 2 только маленьких деревяшки
  • 2 маленьких винта
  • 3 только кабельные стяжки
  • 4 отрезка проволоки с пластиковым покрытием (разные цвета) [1]

Примечание

[1]

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

Шаг 3: теория

Теория
Теория
Теория
Теория
Теория
Теория

Образцы лучей

На фото 1 показаны диаграммы направленности перекрывающихся лучей для преобразователя A и преобразователя B.

Датчик A получит эхо от любого объекта в «красной зоне».

Датчик B будет получать эхо только в том случае, если объект находится в «лиловой области». Вне этой области невозможно определить координаты объекта. [1]

Если датчики расположены на большом расстоянии друг от друга, возможны большие «розовато-лиловые» зоны обнаружения.

Расчеты

Со ссылкой на фото 2:

Площадь любого треугольника можно рассчитать по формуле:

площадь = основание * высота / 2 ……………………………………………………………………. (1)

Преобразование уравнения (1) дает нам высоту (координату Y):

высота = площадь * 2 / основание ……………………………………………………………………. (2)

Пока все хорошо … но как рассчитать площадь?

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

На фото 2 показано, как это возможно.

Преобразователь A посылает импульс, который отражается от объекта во всех направлениях. Этот импульс слышен как датчиком A, так и датчиком B. Никакой импульс не отправляется датчиком B… он только прослушивает.

Обратный путь к датчику A показан красным. При делении на два и учете скорости звука мы можем вычислить расстояние «d1» по формуле: [2]

d1 (см) = время (микросекунды) / 59 ……………………………………………… (3)

Путь к датчику B показан синим цветом. Если мы вычтем расстояние «d1» из этой длины пути, мы получим расстояние «d2». Формула для вычисления «d2»: [3]

d2 (см) = время (микросекунды / 29,5 - d1 …………………………………….. (4)

Теперь у нас есть длина всех трех сторон треугольника ABC… введите «Цапля».

Формула Герона

В формуле Герона используется так называемый «полупериметр», в котором вы складываете каждую из трех сторон треугольника и делите результат на два:

s = (a + b + c) / 2 …………………………………………………………………………. (5)

Теперь площадь можно рассчитать по следующей формуле:

площадь = sqrt (s * (s-a) * (s-b) * (s-c)) ………………………………………………………. (6)

Как только мы узнаем площадь, мы можем вычислить высоту (координату Y) из уравнения (2) выше.

Пифагор

Координата X теперь может быть вычислена путем опускания перпендикуляра из вершины треугольника к базовой линии для создания прямоугольного треугольника. Теперь координату X можно рассчитать с помощью Пифагора:

c1 = sqrt (b2 - h2) …………………………………………………………………….. (7)

Примечания

[1]

Целевую область можно полностью «осветить» звуком, разместив датчики ниже базовой линии.

[2]

Значение 59 для константы получается следующим образом:

Скорость звука составляет примерно 340 м / с, что составляет 0,034 см / мкс (сантиметры / микросвет).

Обратное значение 0,034 см / мкСм равно 29,412 мкСм / см, что при умножении на 2, чтобы учесть обратный путь, равняется 58,824 или 59 при округлении.

Это значение может быть увеличено / уменьшено с учетом температуры, влажности и давления воздуха.

[3]

Значение 29,5 для константы получается следующим образом:

Обратного пути нет, поэтому мы используем 29,5, что составляет половину значения, использованного в [2] выше.

Шаг 4: Строительство

Строительство
Строительство
Строительство
Строительство

Монтажные кронштейны

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

Размеры моих кронштейнов показаны на фото 1.

Два отверстия с пометкой «baseline» предназначены для крепления веревки к каждому датчику. Просто привяжите шнур на необходимом расстоянии для легкой установки.

Гнезда для датчиков

Гнезда датчиков (фото 2) были изготовлены из стандартных гнезд разъемов Arduino.

Все ненужные штифты были вытащены, а в пластике просверлено отверстие диаметром 3 мм.

При пайке соединений старайтесь не закоротить провода на алюминиевый кронштейн.

Снятие напряжения

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

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

Шаг 5: Установка программного обеспечения

Установите следующий код в таком порядке:

IDE Arduino

Загрузите и установите Arduino IDE (интегрированную среду разработки) с https://www.arduino.cc/en/main/software, если она еще не установлена.

Обработка 3

Загрузите и установите Processing 3 с

Эскиз Arduino

Скопируйте содержимое прикрепленного файла «dual_sensor _echo_locator.ino» в «эскиз» Arduino, сохраните и загрузите его на свой Arduino Uno R3.

Закройте Ardino IDE, но оставьте USB-кабель подключенным.

Обработка эскиза

Скопируйте содержимое прикрепленного файла «dual_sensor_echo_locator.pde» в «Эскиз» обработки.

Теперь нажмите кнопку «Выполнить» в верхнем левом углу… на вашем экране должен появиться графический экран.

Шаг 6: Тестирование

Тестирование
Тестирование
Тестирование
Тестирование

Подключите USB-кабель Arduino к компьютеру.

Запустите «dual_sensor_echo_locator.pde», щелкнув кнопку запуска «в верхнем левом углу» в IDE Processing 3 (интегрированная среда разработки).

Числа, разделенные запятой, должны начать перемещаться по экрану, как показано на фото1.

Сообщение об ошибке при запуске

Вы можете получить сообщение об ошибке при запуске.

В таком случае измените [0] в строке 88 фото 1, чтобы он соответствовал номеру, связанному с вашим COM-портом.

В зависимости от вашей системы может быть указано несколько COM-портов. Один из номеров будет работать.

На фото 1 номер [0] связан с моим «COM4».

Размещение ваших датчиков

Расположите датчики на расстоянии 100 см друг от друга, а объект на 100 см впереди.

Медленно поверните оба датчика к диагонально противоположному углу воображаемого квадрата в 1 метр.

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

Дополнительные данные также появятся (фото 2), как только датчики обнаружат ваш объект:

  • расстояние1
  • расстояние2
  • исходный уровень
  • компенсировать
  • полупериметр
  • площадь
  • Координата X
  • Координата Y

Шаг 7: Дисплей

Отображать
Отображать

Дисплей был написан с использованием Обработки 3… показана базовая линия 100 см.

Изменение базовой линии

Давайте изменим нашу базовую линию со 100 см на 200 см:

Измените «float Baseline = 100;» в заголовке «Обработка» читать «float Baseline = 200;»

Измените метки «50» и «100» в процедуре обработки «draw_grid ()» на «100» и «200».

Изменение смещения

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

Если вы решите это сделать, необходимо изменить переменную «Смещение» в заголовке «Обработка».

Щелкните здесь, чтобы просмотреть другие мои инструкции.

Рекомендуемые: