Как определить расстояние при помощи звука? Задача - определить расстояние, на котором находится звукоизлучатель, подключенный к девайсу на STM32. Решил использовать частоту 20-22 кГц. Вижу устройство так: излучаем сигнал, запускаем таймер и ждем, пока услышим его на микрофоне. Как можно с достаточной точностью определить, в какой момент времени появился звук конкретной частоты на микрофоне?

21 Авг 2019 в 06:10
189 +1
0
Ответы
1

Для определения расстояния при помощи звука можно использовать метод временного замера звуковых сигналов. Для этого нужно выполнить следующие шаги:

Излучите звуковой сигнал с заданной частотой (20-22 кГц) с помощью устройства на STM32.Запустите таймер на STM32 в момент начала излучения звукового сигнала.Передайте излученный звук микрофону и начните слушать сигнал.Как только микрофон зафиксирует звуковой сигнал заданной частоты, остановите таймер на STM32.Рассчитайте время, прошедшее с момента начала излучения звука до его получения микрофоном.Используйте измеренное время для определения расстояния с использованием скорости звука в воздухе (приблизительно 343 м/с при температуре 20 градусов Цельсия).

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

Важно также осуществить калибровку устройства и провести тестирование для проверки корректности измерений.

20 Апр в 13:22
Не можешь разобраться в этой теме?
Обратись за помощью к экспертам
Название заказа не должно быть пустым
Введите email
Бесплатные доработки
Гарантированные бесплатные доработки
Быстрое выполнение
Быстрое выполнение от 2 часов
Проверка работы
Проверка работы на плагиат
Интересные статьи из справочника
Поможем написать учебную работу
Название заказа не должно быть пустым
Введите email
Доверьте свою работу экспертам
Разместите заказ
Наша система отправит ваш заказ на оценку 94 888 авторам
Первые отклики появятся уже в течение 10 минут
Прямой эфир